我在 AD 中使用以下查询来恢复用户的邮件地址:
// get a DirectorySearcher object
DirectorySearcher search = new DirectorySearcher();
// specify the search filter
search.Filter = "(&(objectClass=user)(anr=" + login + "))";
// specify which property values to return in the search
search.PropertiesToLoad.Add("mail"); // smtp mail address
// perform the search
SearchResult result = search.FindOne();
if (result != null)
{
return result.Properties["mail"][0].ToString();
}
else
{
return null;
}
对于登录为“SRB”的特定用户,查询将带回一个名为“SRB-PC”的计算机对象。
我不明白为什么过滤器说 objectClass 应该是“用户”。
另外 - 为什么将它作为“喜欢”查询带回来 - 我希望它只带回名称与过滤器完全匹配的对象。