DirectoryEntry-memberOf-Eigenschaft gibt vollständigen Pfad
Brauche ich nur den commonName von Gruppen, denen der Benutzer Mitglied ist.
DirectoryEntry user = new DirectoryEntry("LDAP://cn=myuser....");
foreach(string path in user.Properties["memberOf"])
Console.WriteLine(path);
dann das memberOf-Eigenschaft enthält eine Reihe von strings, die vollständigen Pfade der Gruppen. Das macht Sinn, aber es ist nicht das, was ich will.
Ich bin mir ziemlich sicher, ich durfte nicht von neuen ein DirectoryEntry-für jeden dieser Pfade, um die gemeinsamen Namen, aber ist es die beste Idee einfach analysieren der cn aus dem Weg? (das scheint ziemlich Brutal)
Es muss einen besseren Weg, um einen SearchResults Gruppen ein Benutzer Mitglied ist.
BTW, ist dies .NET 2, so kann ich nicht tun, jeder der Lust LINQ to AD Zeug noch habe ich Zugriff auf die neuen bits in DirectoryServices für ActiveDirectory.
Du musst angemeldet sein, um einen Kommentar abzugeben.
CN ist nicht notwendigerweise gleich der name der Gruppe. Analyse es aus der DN ist nicht empfehlenswert, da die DN ist entkommen. Sie müssten, um das Verzeichnis Abfragen für die Objekte.
Zum abrufen eines einzelnen Objekts, bei der Suche die base zu definierten Namen, den Suchbereich zu "base" und die Ausgabe der Abfrage.
Caching die Ergebnisse der Abfrage in Ihre app zu vermeiden, die Erteilung der gleichen LDAP-Abfrage, die mehr als einmal ist ratsam (im Fall rufen Sie die
memberOf
von mehr als einem Objekt in einer Zeile).Beispiel-code (rechts von der MSDN, nur leicht modifiziert):
Leider gibt es keine bessere Möglichkeit, in .NET 2.0 als das, was Sie beschreiben. Die
memberOf
Attribut enthält einfach den vollständigen definierten Namen aller Gruppen, denen der Benutzer Mitglied ist, damit Sie Ihre beste Lösung ist, analysieren Sie jedes distinguished name.Fand diesen alten thread in der "Related" - Abschnitt.
Bekam zwei weitere Vorschläge zu dieser Frage.
Jeder von Ihnen bekommen können Objekte in memberOf-Attribut direkt als
SearchResult
in einer Suche.Alle code in C#.
Attribut Scope-Query (ASQ):
Einschränkungen:
LDAP_MATCHING_RULE_IN_CHAIN passende Regel:
Einschränkungen: