2008-10-16 6 views
14

Ich versuche etwas Einfaches zu tun (dachte ich) - Sicherung meiner Anwendung mit rollenbasierter Sicherheit mit Active Directory Gruppen in unserer Domain.Asp.Net Rollenbasierte Authentifizierung mit Sicherheitsgruppen in Active Directory

Insbesondere muss ich Elemente auf einer Seite anzeigen/ausblenden, je nachdem, ob der aktuell angemeldete Benutzer Teil von domain\groupA in Active Directory ist. Aus irgendeinem Grund ist es schwierig, Informationen zur Verwendung von Active Directory zu finden. Alles, was ich zu finden scheint, geht in Details zur Verwendung der formularbasierten Authentifizierung mithilfe von Rollen über, oder es verwendet eine Datenbank zum Speichern der Informationen.

Alles, was ich tun möchte, ist die Verwendung unserer bereits beschriebenen Sicherheitsstruktur in unserem Active Directory. Kann mir bitte jemand erklären, was ich brauche?

Benötige ich:

  1. <roleManager enabled="true"/> in web.config
  2. <allow roles ="domain\groupA"/> in web.config
  3. zu Windows-Authentifizierung
  4. if (User.IsInRole(@"domain\groupA")){ //do stuff } in meiner Seite gesetzt IIS?

Was fehlt mir noch? Etwas? weil es nicht funktioniert. heh.

Vielen Dank für Ihre Hilfe.

Antwort

22

Sie müssen wahrscheinlich nur einen RoleProvider zu Ihrer web.config hinzufügen, um der App mitzuteilen, wie die Suche nach AD durchgeführt wird.

Beispielcode von here.

<roleManager defaultProvider="WindowsProvider" 
    enabled="true" 
    cacheRolesInCookie="false"> 
    <providers> 
    <add 
     name="WindowsProvider" 
     type="System.Web.Security.WindowsTokenRoleProvider" /> 
    </providers> 
</roleManager> 
Verwandte Themen