我正在使用C#.Net 4.5。我正在使用下面的代码来检查特定用户是否属于给定的AD组。但是,尽管我输入了有效的用户详细信息,但它没有给出结果。
DirectoryEntry de = new DirectoryEntry();
de.Path = "LDAP://xyz.com";
DirectorySearcher deSearch = new DirectorySearcher();
deSearch.SearchRoot = de;
string usr = "test1";
deSearch.Filter = string.Format("(&(objectCategory=person)(anr={0}))", usr);
SearchResult result = deSearch.FindOne();
我也尝试了以下过滤条件,但结果为空。请让我知道我的代码出了什么问题。
答案 0 :(得分:0)
像这样尝试userPrincipalName
:
deSearch.Filter = "(&(objectCategory=person)(objectClass=user)(userPrincipalName=" + usr + "@*))";
deSearch.PropertiesToLoad.Add("userPrincipalName");
deSearch.PropertiesToLoad.Add("displayName");
SearchResult result = deSearch.FindOne();