SqlException: Échec de la connexion pour l'utilisateur « NT AUTHORITY NETWORK SERVICE
Quand je lance l'application web via VS 2008, l'application peut se connecter sur le serveur Sql et vérifier les informations d'identification (nom d'utilisateur et mot de passe) saisis par la utilisateur, mais quand je passe en revue à cette application via IIS 7 et essayer de postback nom d'utilisateur et mot de passe, l'application signale une exception:
System.Data.SqlClient.SqlException: Échec de la connexion pour l'utilisateur « NT AUTHORITY \ RÉSEAU '
- Avec IIS 7 chaque processus exécute sous le compte Service réseau ... alors quels droits dois-je attribuer à ce compte pour l'application de pouvoir « contact » Sql server?
Thanx
EDIT:
Bonjour,
Cela fonctionne maintenant, même si je ne comprends pas pourquoi le compte machine avait besoin de ces droits. Je comprends que le compte machine a besoin de droits pour pouvoir "parler" avec un programme spécifique (serveur Sql), mais pourquoi a-t-il besoin de droits pour accéder à la base de données et à ses tables? N'est-ce pas au compte indiqué dans la chaîne de connexion
<add name="MyConnection" connectionString="data source=localhost; integrated security=sspi; initial catalog=aspnetdb;" />
d'avoir des droits d'accès appropriés à la base de données et à ses tables?
SourceC, votre chaîne de connexion n'utilise une combinaison nom d'utilisateur/mot de passe spécifique, par conséquent, il utilise sécurité intégrée de Windows. Lorsque vous utilisez Integrated Security dans la chaîne de connexion, l'application se connecte à la base de données en utilisant le compte sous lequel s'exécute le pool d'applications Web. Si vous souhaitez utiliser l'identité de l'appelant, alors vous devez lire sur l'usurpation d'identité ASP.NET - Je ne le recommande pas, mais il existe différents inconvénients de l'utilisation de cette approche. Vous pouvez utiliser une combinaison de mot de passe de nom d'utilisateur dans la chaîne de connexion en fonction de vos besoins. – RichardOD