Problèmes d’authentification pour ADSI avec ASP
Selon la configuration de votre intranet, des problèmes d’authentification peuvent se produire lorsque le code ADSI est exécuté à partir d’une page ASP.
L’authentification permettant d’accéder au contrôleur de domaine peut être accordée à l’aide de la délégation. La délégation permet à un service d’agir en tant qu’utilisateur, afin qu’il puisse accéder à une ressource réseau à l’aide de ces informations d’identification. Si votre intranet suit cette configuration, vous devez configurer IIS pour utiliser la délégation. Définissez le mécanisme d’authentification IIS sur Anonyme ou NTLM. Si vous choisissez anonyme, votre contexte de sécurité est mappé à IUSR_MACHINE compte. Si vous sélectionnez NTLM, le contexte de sécurité change, selon l’utilisateur qui se connecte à votre site web.
Si vous utilisez un serveur IIS qui utilise la demande/réponse NT ou un client de navigateur qui ne prend pas en charge Kerberos, l’authentification à double tronçon n’est pas prise en charge. L’authentification à double tronçon signifie que les informations d’identification de l’utilisateur sont passées du client de navigateur au serveur IIS, puis que le serveur IIS transmet les informations d’identification au serveur principal. Dans ce cas, vous pouvez utiliser l’une des solutions suivantes pour autoriser l’accès au répertoire à partir de la page ASP :
- Utilisez IADsOpenDSObject::OpenDSObject ou ADsOpenObject pour transmettre les informations d’identification à Active Directory. La page web authentifie l’utilisateur connecté auprès du serveur IIS. Une fois l’utilisateur authentifié, la page web peut utiliser OpenDSObject ou ADsOpenObject pour transmettre un nom d’utilisateur et un mot de passe au service d’annuaire afin d’obtenir l’authentification sur le serveur principal. La page web peut ensuite accéder aux données à partir du répertoire.
- Ajoutez votre code à un objet COM et placez cet objet dans une application COM+ (précédemment appelée package MTS). L’application COM+ peut ensuite être exécutée en tant que compte d’utilisateur de domaine.
- Utilisez plusieurs pages ASP, où une page authentifie le client et une autre page transmet les informations d’identification au répertoire à l’aide de l’authentification anonyme sur un compte d’utilisateur de domaine.
Ces méthodes impliquent l’authentification du client web, puis la modification des informations d’identification lors du contact de l’annuaire, car l’authentification à double tronçon, avec les mêmes informations d’identification, n’est pas possible.