ASP.NET accéder à un server SQL dans un server différent

J'ai installé une nouvelle application Web qui accède à une database SQL Server dans un server différent. J'utilise l'authentification Windows et j'obtiens l'erreur suivante:

La connection a échoué pour l'user XXX

Lorsque j'essaie de définir l' identity impersonate="true" dans le file web.config , cela génère une erreur

La connection a échoué pour un user anonyme

En outre, j'utilise l'authentification par formulaire pour valider les users de mon site Web et utiliser un autre pool d'applications.

Mise à jour: string de connection Fondamentalement comme ceci:

 Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated Security=SSPI; 

Mettre à jour:

Mon directory virtuel a l'authentification anonyme et l'authentification Windows activée.

En règle générale, ASP.NET s'exécute en tant que count anonyme. Pour accéder à un server SQL distant à l'aide de l'authentification embeddede (SSPI), vous devez avoir une présence un peu plus "permenant". Un moyen simple serait de déplacer le pool d'applications pour utiliser le count embedded NETWORK SERVICE. Un peu plus délicat serait d'utiliser un count nommé. Du côté server SQL de l'équation, vous devrez atsortingbuer le même count (correspondant à user / pass ou NETWORK SERVICE) aux permissions appropriées à votre database.

Votre DBA devrait pouvoir vous aider.

Il est difficile de vous fournir une réponse exacte car vous n'avez pas fourni votre string de connection ni vos informations sur votre configuration SQL Server. Votre meilleur pari est de regarder la configuration IIS et de déterminer quel user tente d'accéder aux différents SQL Server. Vous devez ensuite donner access à ce count à la database. C'est un problème courant et la plupart des modifications doivent se produire dans SQL Server, sauf si vous pouvez modifier le count sous lequel le server Web s'exécute.