Pregunta

Tengo un poco de una situación híbrida en mis manos. Estoy escribiendo una aplicación web de intranet asp.net. No quiero usar la autenticación de Windows completa, porque no tengo grupos adecuados configurados en Active Directory para poder autenticar a los usuarios simplemente en función de en qué grupo están. Hasta ahora, había creado una base de datos de membresía y autenticaba manualmente a los usuarios según su inicio de sesión de NT. La aplicación se está volviendo más compleja, y estoy buscando usar los proveedores de Membresía y Roles para autenticar a los usuarios. Aquí está mi problema: quiero poder autenticar a los usuarios solo en función de su NT, pero no quiero usar la autenticación de Windows. Quiero escribir mi propio proveedor para conectarme con los proveedores de membresía y roles, y usar la autenticación de formularios, pero hacerlo transparente. Basado en una tabla de usuarios, quiero poder autenticar al usuario o redirigirlo solo en su NT. ¿Es esto posible, o estoy atascado escribiendo mi propio pequeño marco para lograr esto? Me gustaría aprovechar el marco del proveedor si es posible.

¿Fue útil?

Solución

Configure su web.config para usar la autenticación de formularios.
Asegúrese de que la autenticación integrada esté activada en IIS (es posible que también deba deshabilitar anónimo). Esto le permitirá obtener el nombre NT del usuario.

Puede obtener el nombre NT del usuario con:

  Request.ServerVariables["LOGON_USER"]  

Puede iniciar sesión en el usuario, no necesita contraseña, con:

  FormsAuthentication.RedirectFromLoginPage( userName, false ); 
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top