MVC3-Autorisierung mit AD
Ist es möglich, zu gestatten/verweigern Sie Benutzern eine MVC3 Anwendung mit AD?
Meine app gesichert ist, mithilfe der Windows-Authentifizierung im moment, aber das bedeutet, dass das hinzufügen von Benutzern zu Gruppen auf der Win2007-server.
Möchte ich ändern, damit die Benutzer wurden erlaubt/verweigert den Zugriff auf die Applikation/und controller-Aktionen/anzeigen basierend auf Ihre AD-Rollen statt, so dass Sie entweder automatisch angemeldet (wie Windows-auth) oder Sie werden umgeleitet auf eine "verweigert" - Seite.
Jede Hilfe sehr dankbar angenommen...alles was ich finde scheint zu sein, basiert auf Windows-Gruppen, oder die forms-Authentifizierung.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Könnten Sie die Rollen Eigenschaft:
Hier ein tutorial, das erklärt die Schritte.
AspNetWindowsTokenRoleProvider
überflüssig? es sollte "nur-Arbeit" mit der Aktivierung der WindowsAuth?Global.asax
:filters.Add(new AuthorizeAttribute { Roles = @"SOMEDOMAIN\somegroup" });
. Ich möchte vermeiden, verwenden Sie die Zulassen-Abschnitt im web.config-control-Berechtigung in einem ASP.NET MVC-Anwendung.Ich bin mit der AD-Gruppen, für meine intranet-app.
dann einfach Hinzugefügt Authorization-Attribute, um meine controller-Aktionen, die ich brauchte, um sicherzustellen, dass:
Und in einer Ansicht, die Sie verwenden können
User.IsInRole
und den Namen Ihres AD/Windows-Gruppe.Oder Holen Sie sich eine Liste der Rollen, für die der webserver sieht aus, dass Benutzer:
System.Web.Security.Roles.GetRolesForUser();
Nachteil: mein server und meine clients sind alle auf der gleichen domain. das wird nicht funktionieren, wenn Sie müssen tun das gleiche für web-clients vor Ort, gegen Ihren ActiveDirectory.
Verwenden Sie einfach die Membership provider Rahmen, der kommt, built-in Asp.net. Finden Sie, dass es bereits eine ActiveDirectoryMembershipProvider out of the box, aber Sie implementieren müssen, um die
RoleProvider
sich, da die Mitgliedschaft definiert werden können verschiedene Möglichkeiten, in verschiedenen Netzwerken.