Abrufen bestimmter Active Directory-Eigenschaften

8

Ich verwende das integrierte .NET System.DirectoryServices.ActiveDirectory, um auf einen Active Directory-Domänencontroller zuzugreifen.

Ich versuche, die Sammlung von Benutzereigenschaften vom Server aufzuzählen - nicht die Werte, sondern eine Liste modifizierbarer Einstellungen für jeden Benutzer.

Dies ist im Wesentlichen eine Spiegelung schreibbarer Attribute aus dem "Attribut-Editor" in Active Directory:

Ich habe versucht, diese Daten mit dem folgenden Code zu erfassen:

%Vor%

Aber das gibt eine Menge von Eigenschaften zurück, die einfach nicht in diesem Dialog sind, aber ich weiß nicht, was diese Eigenschaften einzigartig / besonders macht.

Ich habe auch FindClass ("person") ausprobiert;

Gibt es einen Weg dies zu erreichen?

Aktualisieren

Wie gewünscht, hier ist, was ich bekomme, wenn ich das obige anfordere:

Verwenden von FindClass ("person")

%Vor%

Verwenden von FindClass ("Benutzer")

%Vor%

Erläuterung der zurückgegebenen Daten

userSchema

userProperties

    
Dan 20.09.2012, 15:48
quelle

2 Antworten

1

Die Liste der Attribute, die für ein Objekt geändert werden dürfen, wird im Attribut allowedAttributesEffective gespeichert.

Es werden die Attribute für den Sicherheitskontext angezeigt, unter dem die Abfrage durchgeführt wurde.

Sehen Sie sich diesen Blogeintrag für einige mehr Informationen .

    
skutruger 25.10.2012 22:07
quelle
0

"Aber das bringt eine Menge Eigenschaften zurück, die einfach nicht in diesem Dialog sind, aber ich weiß nicht, was diese Eigenschaften einzigartig / besonders macht."

Der Windows-Server wird mit einem vordefinierten AD-Schema ausgeliefert. Das ist die Grundliste der einzigartigen / speziellen Werte. Wenn Sie beispielsweise den Exchange-Server installiert haben, fügt Exchange der Liste eine ganze Reihe weiterer eindeutiger / spezieller Eigenschaften hinzu, da sie ein Exchange-AD-Schema an Ihr Basis-Windows-AD-Schema anfügt. Im Wesentlichen zeigt eine Basisfenster-AD-Installation Ihre garantierten Schemaobjekte an, und alle anderen Objekte sind optional, abhängig von Konfigurationen und installierter Software in Ihrem Netzwerk.

Ich würde den Adsi-Editor-Snapin sehr empfehlen, um diese Art von Programmierung zu machen: Ссылка . Dies wird Ihnen helfen zu wissen, welche magischen Zeichenfolgen Sie in die FindClass einfügen können und wie Aufrufe als Parameter aussehen und Ihnen erlauben, herauszufinden, was Sie von AD über Ihren C # -Aufruf erhalten, bevor Sie in den Code eintreten.

    
John S. 27.09.2012 01:36
quelle

Tags und Links