ASP classique problème de connexion au Serveur SQL distant de la base de données
J'ai un classic ASP application que je suis en train d'essayer de se connecter à un Serveur SQL server 2008 de la base de données sur un serveur différent. L'ASP app est servi à partir de IIS7 sur Windows Server 2008.
J'ai changé le site web du pool d'applications pour s'exécuter sous un compte windows, qui j'ai vérifié a accès à la base de données sur le serveur distant.
Cependant, lorsque je lance l'application dans le navigateur, j'obtiens cette erreur:
Erreur D'Application Numéro: -2147217843 (0x80040E4D) Source: Fournisseur Microsoft OLE DB pour SQL Server Description: échec de la Connexion de l'utilisateur "NT AUTHORITY\ANONYMOUS LOGON'.
Pourquoi est-il tente de se connecter à l'aide de NT AUTHORITY\ANONYMOUS LOGON?
Le pool d'Application de l'identité s'applique pas à la classique code ASP?
Comment puis-je faire de ce connecter en tant qu'utilisateur spécifique?
MODIFIER
Ici est la chaîne de connexion, je suis en utilisant:
Provider=SQLOLEDB.1;Data Source=myDbServer;Initial Catalog=mabase;Integrated Security=SSPI
OriginalL'auteur Ronnie Overby | 2009-07-16
Vous devez vous connecter pour publier un commentaire.
Pour un site à utiliser l'identité du pool d'applications pour l'ASP classique, vous devez modifier les informations d'identification utilisées pour l'Authentification Anonyme. Par défaut, le site sera mis à utiliser un utilisateur spécifique, à savoir IUSR.
Sélectionnez Authentification de la zone IIS de votre site, puis sélectionnez l'Authentification Anonyme suivie par Modifier. Changement de utilisateur Spécifique à identité du pool d'Applications.
Il est recommandé d'utiliser l'authentification Windows (sécurité intégrée) au cours de l'authentification SQL, de sorte que vous n'avez pas les informations d'identification dans vos fichiers de configuration, de sorte que, si ces fichiers sont compromis, vous ne perdez pas le contrôle de l'identification.
Putain, cette situation a été délicate à moi pendant des jours. Merci de poster une solution.
Ce doit être la accepté de répondre! +1
OriginalL'auteur Robin Minto
Votre application emprunter l'identité de l'appelant? Vous devez activer la délégation contrainte: Configuration des Serveurs pour la Délégation.
Integrated Security=SSPI besoins NTLM/Kerberos fonctionne. Vous pouvez créer un nom de domaine et l'utilisation tru de l'Authentification Windows, utilisez l'authentification SQL au lieu de cela, ou de créer des locaux identiques d'utilisateur/mot de passe des comptes sur les deux machines et de l'application de la piscine d'utiliser ces informations d'identification.
ou de créer des locaux identiques d'utilisateur/mot de passe des comptes sur les deux machines et de l'application de la piscine d'utiliser ces informations d'identification." C'est exactement ce que j'ai fait, mais ça ne fonctionne pas. Je l'ai fait pour un ASP.NET site qui fonctionne avec le même compte. Ce qui est frustrant.
Je ne pense pas que votre classic ASP pool d'application est en cours d'exécution en tant qu'utilisateur, vous vous attendez à exécuter. Mais je ne suis pas assez familier avec l'ASP classique sur IIS7 caprices à deviner pourquoi.
OriginalL'auteur Remus Rusanu
vous devez spécifier un nom d'utilisateur et le mot de passe pour la chaîne de connexion http://www.connectionstrings.com ou un ensemble d'applications IIS exécuter en tant qu'utilisateur spécifique, cependant, que serait alors rendu beaucoup les paramètres de sécurité de IIS obsolètes.
Et jetez un oeil ici: aspfaq
Enfin, assurez-vous que l'accès anonyme est désactivé sur le site IIS alors qu'en fait, il emprunte l'identité de l'utilisateur que vous avez sélectionné au lieu de passer le anonyme des jetons de travers.
Vous ne devez pas spécifier un nom d'utilisateur et le mot de passe (c'est à dire l'authentification SQL) si vous pouvez l'éviter. À l'aide de l'authentification Windows (sécurité intégrée) signifie que vous n'avez pas besoin de mettre des informations d'identification dans vos fichiers de configuration, de sorte que, si ces fichiers sont compromis, vous ne perdez pas le contrôle de l'identification. J'ai ajouté une réponse qui montre comment obtenir l'authentification Windows de travail pour l'ASP classique.
Cela ne devrait pas être accepté de répondre! Voir @RobinM Réponse.
Je peux supprimer ce si ses pas plus.
OriginalL'auteur Mauro