Serverlose Bindung und RootDSE
Wenn möglich, sollten Sie einen Servernamen nicht hart codieren. Außerdem sollte die Bindung in den meisten Fällen nicht unnötig an einen einzelnen Server gebunden werden. Active Directory Domain Services die serverlose Bindung unterstützen, was bedeutet, dass Active Directory in der Standarddomäne gebunden werden kann, ohne den Namen eines Domänencontrollers anzugeben. Bei gewöhnlichen Anwendungen ist dies in der Regel die Domäne des angemeldeten Benutzers. Bei Dienstanwendungen ist dies entweder die Domäne des Dienstanmeldungskontos oder die Domäne des Clients, den der Dienst angibt.
In LDAP 3.0 ist rootDSE als Stamm der Verzeichnisdatenstruktur auf einem Verzeichnisserver definiert. Der rootDSE ist nicht Teil eines Namespaces. Der Zweck von rootDSE besteht darin, Daten über den Verzeichnisserver bereitzustellen. Es folgt die Bindungszeichenfolge, die zum Binden an rootDSE verwendet wird.
LDAP://<servername>/rootDSE
Der <Servername> ist der DNS-Name eines Servers. Der <Servername> ist optional, wie im folgenden Format gezeigt.
LDAP://rootDSE
In diesem Fall wird ein Standarddomänencontroller aus der Domäne verwendet, in der sich der Sicherheitskontext des aufrufenden Threads befindet. Wenn innerhalb des Standorts nicht auf einen Domänencontroller zugegriffen werden kann, wird der erste gefundene Domänencontroller verwendet.
Der rootDSE ist ein bekannter und zuverlässiger Speicherort auf jedem Verzeichnisserver, um differenzierte Namen der Domänen-, Schema- und Konfigurationscontainer sowie andere Daten über den Server und den Inhalt seiner Verzeichnisdatenstruktur abzurufen. Diese Eigenschaften ändern sich auf einem bestimmten Server selten. Eine Anwendung kann diese Eigenschaften beim Start lesen und während der gesamten Sitzung verwenden.
Zusammenfassend kann gesagt werden, dass eine Anwendung eine serverlose Bindung zum Binden an das Verzeichnis in der aktuellen Domäne verwenden, rootDSE verwenden sollte, um den distinguished Name für einen Namespace abzurufen, und diesen distinguished Name verwenden, um an Objekte im Namespace zu binden.
Weitere Informationen zu attributen, die von rootDSE unterstützt werden, finden Sie unter RootDSE in der Active Directory-Schemadokumentation.
Weitere Informationen und ein Codebeispiel zur Verwendung der serverlosen Bindung und rootDSE finden Sie unter Beispielcode zum Abrufen des distinguished Name der Domäne.