【发布时间】:2013-04-08 22:50:20
【问题描述】:
我目前正在研究获取用户订阅的邮件分发列表的列表。我以前从未使用过 Active Directory,在阅读了这里和 MSDN 上的各种答案后,我很困惑。
我的查询设置如下:
DirectorySearcher search = new DirectorySearcher();
search.Filter = String.Format("LDAP://CN={0},OU=<value here>,DC=<value>...", userName);
search.SearchScope = SearchScope.Subtree;
search.PropertiesToLoad.Add("memberOf");
SearchResult result = search.FindOne();
if(result != null)
{
// Do stuff here
}
这是我的问题:
- DirectorySearcher 中的 SearchRoot 属性有什么作用?我是否需要进行设置才能让此查询返回一个值?
- 我是否需要将 SearchScope 值设置为子树是我只列出 1 个 OU 作为基础 OU 并让它搜索所有子 OU?
- 发送到 PropertiesToLoad.Add() 的字符串是通用的,还是需要是我公司定义的字符串?
感谢您的建议!
【问题讨论】:
-
我建议你下载 directory.apache.org/studio 到 eclipse 并了解你的目录。如果你有时间。只需学习如何正确查询 AD/ldap,您的大部分问题都会得到解答。
标签: c# .net active-directory