LDAP://mydomain.com/CN=Fred,DC=mydomain,DC=com
LDAP://server.mydomain.com/CN=Fred,DC=com.
应用程序负责目录中的读写操作.例如,在一个场景中,它会创建一个新OU,然后在该新OU中创建多个用户和组.在另一种情况下,它向交互式用户呈现目录视图,并允许用户创建新的组或用户帐户.
到目前为止,我一直在使用基于域的绑定(上面的第一个示例绑定字符串),基于MSDN的建议:
Under most circumstances,binding should not be unnecessarily tied to a single server. Active Directory Domain Services support serverless binding,which means that Active Directory can be bound to on the default domain without specifying the name of a domain controller
当域上有多个域控制器时,会出现此问题;我现在称他们为Lefty和Righty.如果我使用LDAP://mydomain.com/blah绑定到目录,我隐式连接到Lefty或Righty.以下是发生的情况的示例场景:
>绑定到mydomain.com的根目录. Active Directory胆量选择Lefty作为要与之通信的服务器.
>创建一个名为Container的新OU. OU是在Lefty上创建的.
>尝试绑定到新OU. Active Directory guts选择Righty作为要与之通信的服务器,因此绑定失败,因为Righty不知道新的OU.
>等待10-15秒再次尝试绑定.与任一服务器通信时绑定成功.
在步骤3中,不严格要求重新绑定,但在某些情况下涉及两个不同的可执行文件,因此我无法共享IAD或DirectoryEntry.在内部我认为Active Directory的内核正在使用DsGetDcName来选择要与之通信的服务器,并且其中的文档讨论了如何选择域控制器以及如何缓存该信息.不幸的是,据我所知,这不是应用程序可以真正控制的东西.在某些情况下,我看到应用程序始终连接到一个域控制器或另一个域控制器,但在其他情况下,应用程序似乎在域控制器之间来回切换(如上所述),并且事情不起作用.
解决实际问题:这只是基于域的绑定的基本限制吗?我认为如果我直接绑定到特定的域控制器,问题就会消失,但这会显着地复杂化应用程序代码,所以我希望避免它.
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。