2013-10-08 97 views
0

这是我创建的DirectoryEntry连接到AD服务器(13.198.123.456)默认行为

DirectoryEntry ldap_connection = new DirectoryEntry("LDAP://13.198.123.456/OU=Abc,DC=def,DC=ijk,DC=com", "username", "password"); 

但如果我创建的DirectoryEntry没有LDAP URL,它会连接到该AD用于登录到我的PC

DirectoryEntry ldap_connection = new DirectoryEntry("", "username", "password"); 

这是预期的行为?有关这个的任何文档?

回答

1

这不是特别清楚,但您使用的版本是默认DirectoryEntry构造的另一种情况,但与非默认的凭据 - 为illustrated on this MSDN page,当你使用:

DirectoryEntry ent = new DirectoryEntry(); 

表示,绑定到为用户提供认证的域。

在的情况下:

DirectoryEntry ldap_connection = new DirectoryEntry("", "username", "password"); 

空字符串意味着绑定到提供认证给登录用户域,但使用用户名和密码备用凭据。

我没有一个Windows系统来测试传递空字符串"",而不是null参考之间的差异,如果有的话,它可能会在这种情况下。