Problemas de autenticación para ADSI con ASP
En función de la configuración de la intranet, pueden producirse problemas de autenticación cuando se ejecuta el código ADSI desde una página ASP.
La autenticación para acceder al controlador de dominio se puede proporcionar mediante la delegación. La delegación permite que un servicio actúe como el usuario, por lo que puede acceder a un recurso de red mediante esas credenciales de usuario. Si la intranet sigue esta configuración, debe configurar IIS para usar la delegación. Establezca el mecanismo de autenticación de IIS como Anónimo o NTLM. Si elige anónimo, el contexto de seguridad se asignará a IUSR_MACHINE cuenta. Si selecciona NTLM, el contexto de seguridad cambiará, dependiendo de qué usuario inicie sesión en su sitio web.
Si usa un servidor IIS que usa el desafío o la respuesta de NT, o un cliente del explorador que no admite Kerberos, no se admite la autenticación de doble salto. La autenticación de doble salto significa que las credenciales de usuario se pasan desde el cliente del explorador al servidor IIS y, a continuación, el servidor IIS pasa las credenciales al servidor back-end. En esta situación, puede usar una de las siguientes soluciones para permitir el acceso al directorio desde la página ASP:
- Use IADsOpenDSObject::OpenDSObject o ADsOpenObject para pasar credenciales a Active Directory. La página web autentica al usuario conectado en el servidor IIS. Cuando se ha autenticado el usuario, la página web puede usar OpenDSObject o ADsOpenObject para pasar un nombre de usuario y una contraseña al servicio de directorio para obtener la autenticación en el servidor back-end. A continuación, la página web puede acceder a los datos desde el directorio.
- Agregue el código a un objeto COM y coloque este objeto en una aplicación COM+ (anteriormente denominada paquete MTS). La aplicación COM+ se puede ejecutar como una cuenta de usuario de dominio.
- Use varias páginas ASP, donde una página autentica el cliente y otra página pasa las credenciales al directorio mediante la autenticación anónima en una cuenta de usuario de dominio.
Estos métodos implican autenticar el cliente web y, a continuación, cambiar las credenciales al ponerse en contacto con el directorio porque la autenticación de doble salto, con las mismas credenciales, no es posible.