Was ist der beste Weg, wenn ein Benutzer auf bestimmte AD-Benutzergruppe gehört, zu bestimmen, ohne C# müssen aufzählen durch die Gruppen des alle Benutzer. Kann dies mit einer einzigen LDAP-Abfrage oder Suche durchgeführt werden?fest, ob ein Benutzer auf eine bestimmte AD-Gruppe gehört mit .Net
Antwort
Ich glaube, Sie haben Gruppen aufzuzählen.
Werfen Sie einen Blick auf diese beiden Antworten für eine Vielzahl von Techniken:
See if user is part of Active Directory group in C# + Asp.net
How to write LDAP query to test if user is member of a group?
Wenn Sie den aktuellen Benutzer werden überprüft und Sie kennen den Namen der Gruppe, die Sie möchten, können Sie sollte nicht durch alle Gruppen aufzählen müssen. Hier ist Beispielcode in VB.NET:
Public Function IsInGroup(ByVal GroupName As String) As Boolean
Dim MyIdentity As System.Security.Principal.WindowsIdentity = System.Security.Principal.WindowsIdentity.GetCurrent()
Dim MyPrincipal As System.Security.Principal.WindowsPrincipal = New System.Security.Principal.WindowsPrincipal(MyIdentity)
Return MyPrincipal.IsInRole(GroupName)
End Function
Ähnlich ist es in C#:
private static bool IsInGroup(string GroupName)
{
System.Security.Principal.WindowsIdentity MyIdentity = System.Security.Principal.WindowsIdentity.GetCurrent();
System.Security.Principal.WindowsPrincipal MyPrincipal = new System.Security.Principal.WindowsPrincipal(MyIdentity);
return MyPrincipal.IsInRole(GroupName);
}
Weitere Beispiele in der WindowsIdentity documentation gefunden werden kann, wenn Sie es zwicken eines anderen Benutzers zu Mitgliedschaft oder was auch immer zu überprüfen.
Dies ist für mich enorm hilfreich war. Wenn Sie die Mitgliedschaft eines anderen Benutzers überprüfen müssen, tun Sie dies einfach: var userPrincipal = new WindowsPrincipal (new WindowsIdentity (username)); –
Dies funktioniert, aber Sie erhalten keine Informationen für alle Gruppen, nur einige von ihnen. Um eine vollständige Liste der Gruppen zu erhalten, die Benutzer Mitglied ist, überprüfen Sie diese Antwort: (http://stackoverflow.com/questions/5252108/query-from-ldap-for-user-groups) – Roboblob
Interessant. Danke, @Roboblob! – ewall
- 1. fest, ob ein bestimmtes Fenster wird derzeit
- 2. Wie überprüft man, ob ein .NET-Typ eine bestimmte .NET-Schnittstelle abstrakt implementiert?
- 3. ASP.NET MVC überprüfen, ob Benutzer zu [x] Gruppe gehört
- 4. Testen, ob ein Objekt von current_user gehört oder erstellt wird
- 5. Datenbankentwurf: Benutzer mit Zugriff auf bestimmte Seiten
- 6. Finden Sie die benannten Bereiche, die eine bestimmte Zelle gehört
- 7. Wie kann ich überprüfen, ob ein Benutzer eine bestimmte Rolle in JSP hat?
- 8. Was ist der optimale Weg zu finden, ob eine bestimmte Stunde zur Hauptsaison gehört
- 9. Laravel Validierung Seite gehört Benutzer
- 10. Ermitteln, ob CodeElement zum Projekt gehört
- 11. Überprüfen Sie, ob eine Nummer gehört zu einer Liste
- 12. einschränken Seitenansicht Zugriff auf bestimmte Benutzer/Kunden
- 13. Wie überprüfe ich, ob ein Benutzer eine bestimmte Rolle in Meteor hat?
- 14. fest, ob die Seite mit WebDriver
- 15. Gruppen innerhalb einer bestimmten Organisationseinheit, zu der ein Benutzer gehört
- 16. Ermitteln, ob eine MemberExpression zu einer Instanz gehört
- 17. Benutzer auf bestimmte Seite umleiten, wenn Benutzer für eine bestimmte Zeit inaktiv ist
- 18. NLP: Stellen Sie fest, ob eine bestimmte semantische Bedeutung in einem Satz gefördert wird
- 19. fest, ob collection.forEach erfolgt
- 20. Prüfen, ob ein Objekt zu einer Klasse in Java gehört
- 21. Laravel: Ein Benutzer kann viele Geräte haben, aber jedes Gerät gehört zu maximal einem Benutzer
- 22. Wie überprüft man, ob ein Objekt eine bestimmte Methode hat?
- 23. Wie kann ich feststellen, ob ein Benutzer zu einer Rolle im Active Directory gehört - mithilfe von ColdFusion
- 24. Überprüfen Sie, ob eine Zeichenfolge eine bestimmte Zeichenfolge mit Array
- 25. So erkennen Sie, ob der Benutzer angemeldet ist, um auf eine bestimmte Seite umzuleiten. JavaScript
- 26. Ermitteln, ob der aktuelle Benutzer eine Domäne oder ein lokaler Benutzer ist?
- 27. Finden, ob ein Satz eine bestimmte Phrase in Ruby enthält
- 28. prüfen, ob ein String eine bestimmte Teilzeichen in Velocity enthält
- 29. Gibt es eine Möglichkeit festzustellen, ob ein QObject zu einem "toten" QThread gehört?
- 30. Prüfen, ob ein Objekt eine bestimmte Schnittstelle in VB6 implementiert
möglich Duplikat [Siehe, wenn der Benutzer Teil der Active Directory-Gruppe in C# + Asp.net ist] (http://stackoverflow.com/questions/2188954/see-if-user-is-part-of-active- Verzeichnis-group-in-c-asp-net) –
möglich Duplikat von [Wie LDAP-Abfrage zu schreiben, zu testen, ob Benutzer Mitglied einer Gruppe ist?] (http://stackoverflow.com/questions/1032351/how-to- write-ldap-Abfrage-to-Test-if-Benutzer-is-Mitglied-of-a-Gruppe) –