Nous migrons un site IIS / SQL Server de 2008 à 2012 et j'ai un problème d'authentification. Nous utilisons l'authentification Windows pour authentifier en tant que DOMAIN\COMPUTER$
, mais cela ne fonctionne pas, ce qui donne une erreur disant:
La connexion a échoué pour l'utilisateur «DOMAIN \ COMPUTER $». Motif: impossible de trouver une connexion correspondant au nom fourni. [CLIENT: <machine locale>]
J'ai vérifié que le compte existe, et même supprimé et recréé
create login "DOMAIN\COMPUTER$" from windows
Si je recommence, j'obtiens la réponse:
Msg 15025, niveau 16, état 2, ligne 1
Le principal du serveur 'DOMAIN \ COMPUTER $' existe déjà.
( DOMAIN\COMPUTER
remplace le vrai domaine et le nom de l'ordinateur)
Il semble donc que le site interroge le serveur SQL, mais le serveur SQL ne regarde pas très attentivement ses connexions.
Qu'est-ce que j'ai raté?
@Cha et @alt ont tous deux de bons indices - le message d'erreur est trompeur et
Application Pool Identity
est impliqué (enfin, du moins c'était dans mon cas).Si le pool d'applications de votre application IIS utilise
Application Pool Identity
, le compte d'utilisateur que vous devez ajouter à SQL Server estIIS APPPOOL\your_app_pool_name
. Remarque: n'utilisez pas leSearch...
bouton dans les propriétés de connexion pour trouver cet utilisateur - il le trouvera, mais le remplacera par celuiMACHINE_NAME\your_app_pool_name
qui ne fonctionnera pas - saisissez simplementIIS APPPOOL\your_app_pool_name
le nom de connexion.la source
Ce problème doit être traité différemment selon la configuration du serveur.
Le serveur SQL et IIS sont sur la même machine.
une. changer l'identité du pool d'applications en
Network Service
b. ajoutez NT
AUTHORITY\NETWORK SERVICE
à votre connexion au serveur SQLLe serveur SQL et IIS sont sur une machine différente.
une. ajoutez un compte
DOMAIN\computer-name$
d'ordinateur,, à votre connexion au serveur SQL.b. l'identité du pool d'applications reste
Application Pool Identity
la source
J'ai réussi à le faire fonctionner en modifiant le site dans IIS pour utiliser le
Application Pool Identity
, puis en changeant l'identité du pool d'applications enNetwork Service
. N'hésitez pas à commenter tout problème de sécurité que cela pourrait soulever.la source
J'obtenais la même erreur. Erreur d'ouverture de session: 18456, gravité: 14, état: 5. La désactivation de CEIP à partir de SQL Server et des rapports d'utilisation a résolu le problème pour moi.
la source