Logo faq-o-matic.net
Logo faq-o-matic.net

Finden statt Stöbern in AD: Ambiguous Name Resolution

von veröffentlicht am16. Juni 2008, 07:22 Uhr Kurzlink und Zitatlink einblenden
Kategorie Kategorie: Active Directory, AD: Erweiterte Abfragen   Translate with Google Translate Translate EN   Die angezeigte Seite drucken

Seit seiner ersten Veröffentlichung mit Windows 2000 enthält Active Directory (AD) ein Feature, das viele Suchanfragen nach Benutzern oder anderen Objekten deutlich erleichtert: die „Ambiguous Name Resolution (ANR)“ oder „Mehrdeutige Namensauflösung“. Durch diese Funktion nimmt Active Directory eine Suchanfrage entgegen und führt diese gleich über mehrere Felder aus. Das ist insbesondere deshalb praktisch, weil AD über sehr viele Namensfelder verfügt, in denen sich Informationen verbergen können. Solche feldübergreifenden Suchen müssen dann nicht mehr umständlich durch den Client ausgeführt werden (was dann auch in vielen Anfragen an den Server resultieren würde), sondern werden gleich effizient vom Server bearbeitet und beantwortet. Mit ANR übergibt man eine Zeichenkette, die am Anfang des gesuchten Feldinhalts steht (z.B. findet „Schwein“ auch „Schweinsteiger“, aber nicht „Wildschwein“). Die Felder, die durch ANR berücksichtigt werden, beinhalten den Vor-, Nach- und Anzeigenamen, den Anmeldenamen, die Mailadresse und einige andere (siehe Link am Ende des Artikels).

Viele Programme nutzen ANR automatisch. Dazu gehören das Outlook-Adressbuch oder auch die einfache Suchfunktion im „Name“-Feld des Verwaltungsprogramms „Active Directory-Benutzer und -Computer“. Man kann ANR aber auch selbst anfordern. Hier ein Beispiel, wie man es als benutzerdefinierte Suche im eben genannten Verwaltungsprogramm nutzen kann:

ANR-Suche

Doch auch andere Programme lassen die ANR-Suche zu, beispielsweise AdFind von Joe Richards:

AdFind -b DC=faq-o-matic,DC=net -f „(anr=Nils)“

Dieses Kommando findet alle Objekte in der angegebenen Domäne, die in einem der ANR-Attribute einen Wert haben, der mit „Nils“ beginnt. Dazu wird ein LDAP-Suchfilter genutzt, der das „virtuelle“ Datenfeld „ANR“ abfragt (hier: „anr=Nils“). Um die Suche etwa auf Benutzer einzugrenzen, kann man den Filter auch erweitern: (&(anr=Nils)(objectClass=user)(objectCategory=person)). Mehr zu LDAP-Grundlagen findet sich hier:

[faq-o-matic.net » LDAP-Grundlagen für Active Directory]
http://www.faq-o-matic.net/2008/01/13/ldap-grundlagen-fuer-active-directory/

Ebenso lässt sich ANR natürlich gut in eigenen Skripten einsetzen, um eine komfortable Objektsuche für den Benutzer zu ermöglichen. Eine ANR-Abfrage lässt sich dabei nicht nur in LDAP formulieren, sondern auch in dem SQL-Dialekt, den AD versteht. Dadurch kann man es z.B. mit meinem kleinen Suchclient „Carmen“ nutzen:

[faq-o-matic.net » Carmen: Mit SQL das AD abfragen]
http://www.faq-o-matic.net/2004/10/20/carmen-mit-sql-das-ad-abfragen/

Eine SQL-Suchabfrage könnte dann so aussehen:

SELECT * FROM ‚LDAP://DC=faq-o-matic,DC=net‘ WHERE anr=’Nils‘

Eine Einschränkung sollte man aber beachten: Auch wenn Active Directory für diese Sorte von Suchanfragen vorbereitet und optimiert ist, sollten Features wie ANR nur sparsam genutzt werden. Eine „unscharfe“ Suche belegt natürlich mehr Ressourcen als eine genaue.

Mehr zu ANR:

[Mehrdeutige Namensauflösung für LDAP in Windows 2000]
http://support.microsoft.com/kb/243299

[Harnessing the power of Ambiguous Name Resolution (ANR)]
http://www.msexchange.org/articles/Ambiguous-Name-Resolution.html

© 2005-2019 bei faq-o-matic.net. Alle Rechte an den Texten liegen bei deren Autorinnen und Autoren.

Jede Wiederveröffentlichung der Texte oder von Auszügen daraus - egal ob kommerziell oder nicht - bedarf der ausdrücklichen Genehmigung durch die jeweiligen Urheberinnen oder Urheber.

Das Impressum findet sich unter: http://www.faq-o-matic.net/impressum/

Danke, dass du faq-o-matic.net nutzt. Du hast ein einfaches Blog sehr glücklich gemacht!