¿Cómo puedo aplicar después de la aplicación ASP.NET MVC:¿Cómo admitir la autenticación NTLM con un repliegue para formar en ASP.NET MVC?
- usuario abre el sitio web de intranet
- usuario se autentica en silencio si es posible
- si la autenticación NTLM no funcionó, la forma de acceso al programa de usuario
- usuario indique la contraseña de acceso y seleccione dominio de la lista de dominios predefinidos
- usuario es autenticado en código usando AD
Sé cómo implementar 4 y 5 pero no puedo encontrar información sobre cómo combinar NTLM y formularios. Para que nunca se muestre el cuadro de diálogo de inicio de sesión/contraseña nativo de NTLM: autenticación transparente o página de inicio de sesión agradable.
¿Cómo debería funcionar? ¿Se debe solicitar al usuario el nombre de usuario y la contraseña? ¿Se pueden usar sus credenciales actuales (nombre de usuario del dominio) sin pedir ingresar el nombre de usuario y la contraseña?
UPDATE para éstos, que investiga mismo problema:
Cuando estaba pidiendo esto no se entiende completamente cómo funciona internamente la autenticación NTLM. Lo importante aquí es que si el navegador del usuario no admite NTLM correctamente o si el soporte NTLM está deshabilitado por el usuario, el servidor nunca tendrá la oportunidad de solucionar esto.
Cómo autenticación de Windows está funcionando:
- El cliente envía una solicitud HTTP normal al servidor
- servidor responde con el estado HTTP 401 y la indicación de que la autenticación NTLM se debe utilizar para acceder a los recursos
- cliente envíe NTLM Mensaje de tipo 1
- El servidor responde con mensaje NTLM de tipo 2 con desafío
- Cliente envía mensaje de tipo 3 con respuesta al desafío
- servidor responde con el contenido real solicitó
Como se ve, el navegador que no soporta NTLM no irá al paso (3), en lugar de IIS se mostrará un error generado por el usuario 401 página.
Si el usuario no tiene credenciales, después de cancelar la ventana de diálogo emergente de autenticación NTLM el navegador tampoco continuará (3).
Así que no tenemos ninguna posibilidad de redirigir automáticamente a los usuarios a la página de inicio de sesión personalizado.
La única opción aquí es tener una página de "puerta de enlace" donde decidamos si el usuario debe admitir NTLM y, de ser así, redirigir a la página de inicio protegida NTLM.
Y si no, muestre el formulario de inicio de sesión y permita la autenticación ingresando manualmente el nombre de usuario y la contraseña.
La decisión se toma generalmente en función de la dirección IP del usuario y/o el nombre de host ya sea al hacer coincidir rangos de IP o al consultar la tabla de direcciones IP predefinidas.
http: // stackoverflow. com/questions/492977/anonymous-access-and-ntlm-authentication-in-iis –