无服务器绑定和 RootDSE

尽可能不要对服务器名称进行硬编码。 此外,在大多数情况下,绑定不应不必要地绑定到单个服务器上。 Active Directory 域服务支持无服务器绑定,这意味着可以在默认域上绑定 Active Directory,而无需指定域控制器的名称。 对于普通应用程序,这通常是登录用户的域。 对于服务应用程序,这要么是服务登录帐户的域,要么是服务模拟的客户端的域。

在 LDAP 3.0 中,rootDSE 被定义为目录服务器上的目录数据树的根目录。 rootDSE 不是任何命名空间的一部分。 rootDSE 的目的是提供有关目录服务器的数据。 以下是用于绑定到 rootDSE 的绑定字符串。

LDAP://<servername>/rootDSE

<servername> 是服务器的 DNS 名称。 <servername> 为可选,其格式如下所示。

LDAP://rootDSE

在此情况下,将使用调用线程的安全上下文所在域中的默认域控制器。 如果在站点内无法访问域控制器,则将使用能找到的第一个域控制器。

在每个目录服务器上,rootDSE 都是一个众所周知的可靠位置,可用于获取域、架构和配置容器的可分辨名称,以及有关服务器及其目录数据树内容的其他数据。 这些属性在特定服务器上很少发生变化。 应用程序可以在启动时读取这些属性,并在整个会话期间使用它们。

总之,应用程序应使用无服务器绑定绑定到当前域上的目录,使用 rootDSE 获取命名空间的可分辨名称,并使用该可分辨名称绑定到命名空间中的对象。

有关 rootDSE 支持的属性的详细信息,请参阅 Active Directory 架构文档中的 RootDSE

有关如何使用无服务器绑定和 rootDSE 的详细信息以及代码示例,请参阅获取域的可分辨名称的示例代码