0

我使用以下代码访问 AD 没有问题:

DirectoryEntry ldapConnection = 新的 DirectoryEntry (ldap, ldapUser, ldapPassword);

有没有办法通过 DirectoryEntry 访问 AD 而无需提供用户名/密码。在这种特殊情况下,我只需要读取一些属性。

4

2 回答 2

1

是的你可以

  String strPath="LDAP://DC=onecity,DC=corp,DC=fabrikam,DC=com";

  // Create a new DirectoryEntry with the given path.
  DirectoryEntry  objDE=new DirectoryEntry(strPath);

  foreach(DirectoryEntry objChildDE in objDE.Children)
    Console.WriteLine(objChildDE.Path);

检查DirectoryEntry 类构造函数部分,您也可以找到一些其他方法。

对您的 AD 启用匿名访问,检查

于 2012-05-24T02:59:44.113 回答
1

默认情况下,Server 2003 及更高版本不允许对 AD 进行匿名查询(大部分情况下)。确保您的 AD 服务器已正确配置为允许匿名访问。

如何修复(适用于 Win 2k8): http ://technet.microsoft.com/en-us/library/cc816788(v=ws.10).aspx

于 2012-05-24T03:03:48.073 回答