Pregunta

Estoy intentando hacer algo simple (pensé): asegurar mi aplicación usando seguridad basada en roles usando grupos de Active Directory en nuestro dominio.

Específicamente, necesito mostrar / ocultar elementos en una página dependiendo de si el usuario actualmente conectado es parte de domain\groupA en Active Directory. Por alguna razón, es difícil encontrar información sobre el uso de Active Directory para esto. Todo lo que parece encontrar entra en detalles sobre el uso de autenticación basada en formularios mediante roles, o utiliza una base de datos para almacenar la información.

Todo lo que quiero hacer es utilizar nuestra estructura de seguridad ya descrita en nuestro Active Directory. ¿Alguien puede explicar lo que necesito?

¿Necesito:

  1. <roleManager enabled="true"/> en web.config
  2. <allow roles ="domain\groupA"/> en if (User.IsInRole(@"domain\groupA")){ //do stuff }
  3. IIS configurado para la autenticación de Windows
  4. <=> en mi página?

¿Qué más me estoy perdiendo? ¿Cualquier cosa? Porque no está funcionando. heh.

Gracias a todos por su ayuda.

¿Fue útil?

Solución

Probablemente solo necesite agregar un RoleProvider a su web.config para decirle a la aplicación cómo hacer búsquedas contra AD.

Código de muestra de aquí .

<roleManager defaultProvider="WindowsProvider" 
  enabled="true"
  cacheRolesInCookie="false">
  <providers>
    <add
      name="WindowsProvider"
      type="System.Web.Security.WindowsTokenRoleProvider" />
  </providers>
</roleManager>
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top