Im Active Directory-Schema sind verschiedene Arten von Attribute definiert. Die meisten davon sind in der Active Directory-Datenbank (NTDS.dit) gespeichert und können einen festen Wert enthalten.


 


Aber längst nicht alle Attribute für ein Objekt sind in der AD-Datenbank gespeichert. Diese Art von Attribut bezeichnet man als Constructed Attribute, auch bekannt als Computed Attribute.


 


Die Merkmale eines solchen Attributs sind:




  • Constructed Attribute, zu Deutsch „konstruierte Attribute“ sind zwar im Schema definiert, sie enthalten jedoch selbst keinen Wert. Die Attributwerte werden erst von einem Domänencontroller im Moment der LDAP-Anfrage gebildet.



  • Da diese Attribute “constructed” sind, können sie auch nicht repliziert werden. Die Werte können auch nicht in den globalen Katalog (GC) übertragen werden.



  • Wird eine Abfrage nach solch einem Attribut durchgeführt, bildet jeder DC eigenständig den Wert.



  • Ein Wert eines konstruierten Attributs kann nicht vergeben bzw. geschrieben werden. Diese Art von Attribut wird lediglich für eine gezielte Abfrage vom DC zusammengesetzt.



  • Konstruierte Attribute können in der Regel nicht für Abfragen verwendet werden (die Ausnahme stellt das Attribut aNR oder memberOf dar).



  • In einigen Fällen muss bei der Abfrage im Parameter -Scope die Option BASE angegeben werden, wie z.B. für das Attribut tokenGroups. Mit dieser Option wird auf ein einziges Objekt zugegriffen.



  • Eine Abfrage nach allen Objekten in einem Container, die ein konstruiertes Attribut der Objekte die sich in dem Container befinden anzeigt, bringt kein Ergebnis.

 


 


Ein konstruiertes Attribut wird durch das dritte Bit im System-Flags Attribut definiert. Verbindet man sich in LDP z.B. mit dem konstruierten Attribut CN=Token-Groups,CN=Schema,CN=Configuration,DC=Root-Domäne lässt sich das System-Flag folgendermaßen kontrollieren:


 


 



 


 


 


 


 


Die konstruierten Attribute einer Gesamtstruktur anzeigen


 


In der AD-Powershell


 


Get-ADObject -LDAPFilter “(&(objectClass=attributeSchema)(systemflags:1.2.840.113556.1.4.803:=4))” -Searchbase “CN=Schema,CN=Configuration,DC=Root-Domäne” | Select Name


 


 


Oder:


 


Get-ADObject -LDAPFilter “(objectClass=attributeSchema)” -Searchbase “CN=Schema,CN=Configuration,DC=Root-Domäne” -Properties Systemflags | Where {$_.Systemflags -band 4} | Select Name


 


 


 


 


Mit LDP




  •  Nach dem Starten von LDP gilt es zuerst eine Verbindung zu einem DC herzustellen.



  • Im zweiten Schritt muss man sich mit dem AD binden.



  • Anschließend gibt man im Suchfenster (unter Browse/Durchsuchen-Search/Suchen) als Basis-DN CN=Schema,CN=Configuration,DC=Root-Domäne ein und verwendet als Filter (&(objectcategory=attributeSchema)(systemFlags:1.2.840.113556.1.4.803:=4)).



  • Als Scope/Bereich gilt es One Level/Eine Ebene zu wählen.



  • Im Feld Attribute können dann die gewünschten Attribute angegeben werden.



 



 


 


In der Kommandozeile mit Dsquery, ab Windows Server 2003


 


dsquery * “CN=Schema,CN=Configuration,DC=Root-Domäne” -Scope Onelevel -attr Name -Filter “(&(objectcategory=attributeSchema)(systemFlags:1.2.840.113556.1.4.803:=4))”


 


 



 


 


Weitere Informationen:
AD-PowerShell Befehle


Microsoft Windows 2000 Scripting Guide – Operational Attributes


How to query Active Directory by using a bitwise filter


System-Flags Attribute


 

Comments are closed, but trackbacks and pingbacks are open.