Durchsuchen von Active Directory

Eine wichtige Funktion von Active Directory besteht darin, Datenabfragen für Personen sowie Konfigurationsdaten für Computer und Dienste aufzulösen. Um effiziente Abfragen für Active Directory zu schreiben, ist es hilfreich, sich mit den folgenden Vertrautheiten vertraut zu machen:

  • Bestimmen des Abfragebereichs: Muss der Client Eigenschaften für Objekte finden, die sich möglicherweise innerhalb einer Gesamtstruktur oder nur innerhalb einer Domäne oder innerhalb einer bestimmten Organisationseinheit befinden?
  • Ermitteln der Tiefe der Abfrage: Muss die Abfrage nur eine Ebene durchsuchen, oder kann sie in andere LDAP-Verzeichnisse über kreuzen?
  • Leistung und Behandlung großer Resultsets: Wie sollte der Client das Potenzial eines großen Resultsets effektiv bewältigen?
  • Ermitteln der besten Abfragen: Welche Art von Abfragen liefert die effizientesten Ergebnisse? Welche Art von Abfragen sollte der Entwickler vermeiden?
  • Grundlegendes zur Abfragesyntax: ADSI unterstützt sowohl die IN RFC 2254 dokumentierte LDAP-Syntax als auch eine Teilmenge von SQL.
  • Auswahl der Schnittstellen: ADSI bietet sowohl OLE DB-Unterstützung als auch eine C/C++-Schnittstelle namens IDirectorySearch. Da ADSI für mehrere Namespaces funktioniert, können Sie diese Schnittstellen zum Abfragen anderer Namespaces wie Exchange und Active Directory verwenden. Da das ActiveX-Datenobjekt (ADO) ein einfaches skriptfähiges Datenzugriffsobjektmodell auf basis von OLE DB ist, eignen sich die OLE DB-Schnittstellen gut für Visual Basic-Programmierer und Webseitenskriptautoren. Die neuen Datenzugriffsfeatures in Visual Studio und Office-Anwendungen, die ADO und OLE DB nutzen, können jetzt auf die gleiche Weise auf Active Directory-Daten zugreifen wie auf Daten anderer OLE DB-Anbieter, z. B. SQL Server. Wenn ein C/C++-Entwickler jedoch eine einfache Verzeichnissuche durchführen muss, ist die IDirectorySearch-Schnittstelle möglicherweise besser geeignet als die OLE DB-Schnittstellen.

In den folgenden Themen wird beschrieben, wie Sie Active Directory durchsuchen, um sicherzustellen, dass Ihre Anwendung angesichts der Anforderungen des Clients die effizienteste Abfrage ausgibt: