sql server 2008 échec de la Connexion de l'utilisateur "NT AUTHORITY\NETWORK SERVICE"
J'essaie de connecter mon site à mes sql server 2008 r2 sur un ordinateur windows server 2003 .net framework 4
C'est la chaîne de connexion:
<add name="TestDbConnectionString"
connectionString="Data Source=(local);Initial Catalog=RESv5;integrated security=SSPI;"
providerName="System.Data.SqlClient" />
J'ai eu une exception, qui est:
Échec de la connexion de l'utilisateur "NT AUTHORITY\NETWORK SERVICE".
Description: Une exception non gérée s'est produite pendant l'exécution de la demande web actuelle. Veuillez consulter la trace de la pile pour plus d'informations sur l'erreur et où elle a son origine dans le code.Détails De L'Exception: System.Les données.SqlClient.SqlException: échec de la Connexion de l'utilisateur "NT AUTHORITY\NETWORK SERVICE".
Source De L'Erreur:
Une exception non gérée s'est produite lors de l'exécution de la demande web actuelle. Informations concernant l'origine et l'emplacement de l'exception peut être identifié à l'aide de la trace de pile d'exception ci-dessous.
J'ai vu cette question Échec de la connexion de l'utilisateur "NT AUTHORITY\NETWORK SERVICE" et j'ai essayé de faire un utilisateur nommé comme NT AUTHORITY\NETWORK SERVICE
mais j'ai toujours le problème,
edit1
J'ai déjà essayé d'utiliser un nom d'utilisateur et mot de passe. c'est la chaîne de connexion
<add name="TestDbConnectionString"
connectionString="Data Source=(local);Initial Catalog=RESv5;integrated security=SSPI;User Id=sa;Password=myPassword;"
providerName="System.Data.SqlClient" />
mais toujours le problème
J'ai vraiment vraiment préfèrent cette solution, mais comment faire, s'il vous plaît? l'utilisateur de IIS est l'une des mentions ci-dessus
Au lieu de
integrated security=SSPI;
, spécifiez User Id=myUsername; Password=myPassword;
Je viens de comprendre ce que vous avez dit. J'ai essayé d'utiliser le
sa
avec le mot de passe mais toujours le même problèmeJe vais vous montrer la chaîne de connexion de connexion
OriginalL'auteur user3432257 | 2014-03-22
Vous devez vous connecter pour publier un commentaire.
Vous utilisez l'authentification Windows pour entrer dans le serveur, de sorte qu'il utilise le compte Windows de l'accès du client pour valider l'accès/autorisations. Lors du développement, le "client" est vraiment le VS serveur de développement, mais lorsque vous déployez un vrai serveur web, le "client" s'exécute comme un autre compte, celui qui est utilisé pour démarrer le service, PAS le vôtre.
Souvent SQL Serveurs sont configurés lors de l'installation pour vous permettre de vous
sysadmin
d'accès, mais à peine quelque chose d'autre pour d'autres utilisateurs, c'est pourquoi vous obtenez un accès refusé.Une option serait d'utiliser l'authentification SQL avec l'utilisateur/mot de passe. Sécurité-sage, ce serait la meilleure option si le même serveur web s'exécute de nombreux sites web (sites web, car ils peuvent être isolés les uns des autres données).
Si vous voulez absolument utiliser l'authentification Windows, la vraie solution serait de donner les autorisations pour le compte intégré
NT AUTHORITY\NETWORK SERVICE
au SSM:OriginalL'auteur Alejandro
Essayez de supprimer le integrated security=SSPI de la chaîne de connexion, ou le mettre à false. Voir ci-dessous ma connexion réussie avec sa utilisateur:
EDIT: Voici une explication détaillée, peut-être vous aider à trouver l'endroit où vous avez tort:
http://msdn.microsoft.com/en-us/library/ff648340.aspx
<add name="TestDbConnectionString" connectionString="Data Source=(local);Initial Catalog=RESv5;User Id=William;Password=mypassword;" providerName="System.Data.SqlClient" />
, mais j'ai eu que william ne peux pas me connecter. Je veux me connecter à l'aide de sa. est-il possible? ou que dois-je faire pour ouvrir une session. s'il vous plaît aider. il a été 7 heures sans résoudre le problèmeJe travaille sur windows server. peut-être que cette information aide
Veuillez voir une mise à jour de mon post, ce qui peut vous aider avec des explications pas à pas 🙂
OriginalL'auteur Milica Medic
Votre site web s'exécute sous le compte de service NETWORK_SERVICE dans IIS, c'est un utilisateur de l'ordinateur et ne peut pas accéder à votre SQL. Pour corriger cela, vous devez configurer votre site web pour l'utilisation "identity impersonate=true" dans votre site web.config. Toutefois, si vous exécutez ce sur le serveur, vous risquez de perdre l'utilisateur authentifié dans ce qu'on appelle un " double-hop où votre serveur IIS ne peut pas relayer votre utilisateur authentifié sur le serveur SQL dans une autre étape (PC (1)-> IIS (2)-> SQL).
Milica Medic est correct dans sa réponse, mais dans votre réponse, vous avez défini un utilisateur "william" est-ce un utilisateur SQL ou un utilisateur de windows? Si l'utilisateur de Windows puis cela ne fonctionne pas, pour relayer les utilisateurs de windows SQL, vous devez le faire dans le web.config (voir 1. ci-dessus). La connexion sql suppose que l'utilisateur est un utilisateur SQL pas d'utilisateur windows.
votre tentative avec le nom d'utilisateur/mot de passe est proche, mais vous êtes toujours en spécifiant Integrated Security=SSPI qui tente de forcer l'utilisateur de windows, l'authentification SQL.
Essayer et de faire une chaîne de connexion comme ceci:
OriginalL'auteur Iztoksson