Der LDAP-Standard sieht unglücklicherweise vor, dass die Objektklasse "user" nicht nur Benutzerobjekte umfasst (wie man annehmen könnte). Setzt man also bei der AD-Abfrage einen Filter wie (objectClass=user), so erhält man nicht nur Benutzer-, sondern auch Computerobjekte zurück.
Der Trick liegt darin, dass man parallel das Attribut "objectCategory" abfragt, das in Kombination mit "objectClass" eine eindeutige Unterscheidung zulässt:
- für User:
(&(objectCategory=person)(objectClass=user)) - für Computer:
(&(objectCategory=computer)(objectClass=user))
Das hat gleichzeitig den Vorteil, dass die Suche bei großen Domänen beschleunigt wird, weil objectCategory ein indiziertes Attribut ist.
Verwandte Beiträge:
- Carmen: Query Active Directory Using SQL Syntax
My script-based query tool “Carmen” for Active Directory has been downloaded more than 10,000 times since its release. Now I... - Carmen: Mit SQL das AD abfragen
Mit Carmen kann man Daten aus dem AD mit SQL-Kommandos abfragen. Dazu stellt Carmen eine grafische Oberfläche bereit, in die... - Wie finde ich inaktive Computerkonten?
Im Laufe der Zeit sammeln sich leider durch Rechnertausch, Defekte usw. immer mehr Computerkonten an, zu denen die Rechner gar nicht mehr... - Wie bekomme ich heraus, wann ein User sich zuletzt ans AD angemeldet hat?
Es gibt für diesen Zweck im AD ein Attribut namens "lastLogon", in dem die Zeit des letzten erfolgreichen Anmeldevorgangs gespeichert... - Wie kann ich überprüfen, welche Benutzer gesperrt oder deaktiviert sind?
Das ist recht komplex. Es gibt zwar einen LDAP-Query, den du bei WS2003 in den Gespeicherten Abfragen verwenden kannst, der...
http://faq-o-matic.net/?p=588



Kategorie:
Translate EN

