2012-03-05 3 views
2

Active Directory의 다른 그룹에있는 사용자를 검색하는 코드가 있습니다.도메인 사용자가 Active Directory에있는 사용자를 가져올 수 없습니까?

string sADPath = "LDAP://" + tbDomain.Text; 
string username = tbUsername.Text; 
string password = tbPassword.Text; 
DirectorySearcher mySearcher = new DirectorySearcher(directoryEntry); 


int MaxResults = Int32.MaxValue - 1; 


ComboBoxItem selectItem = (ComboBoxItem)ddlGroups.SelectedItem; 
String value = selectItem.Value; 

mySearcher.Filter = ("(&(objectCategory=person)(objectClass=User)(memberOf=" + value + "))"); 

mySearcher.SearchScope = SearchScope.Subtree; 


foreach (SearchResult temp in mySearcher.FindAll()) 
{ 
} 

이 코드는 일부 그룹에서는 문제가 없지만 모두 제대로 작동합니다.

예를 들어 Domain Admins의 값은 가져 오지만 Domain Users의 사용자는 가져 오지 않습니다.

사용자 폴더 그룹에도 내 사용자가 표시되지 않습니까?

FindAll()의 도메인 사용자는 0 값을 얻습니다.

답변

3

다른 문제가 발생했습니다.

Domain Users의 사용자 구성원을 찾을 수 없다는 사실은 작성한 각 새 사용자의 기본 기본 그룹이 Domain Users이라는 사실로 설명됩니다. primarygroup은 memberof 속성에 없지만 primaryGroupID 속성에 있습니다. primaryGroupID은 고유 이름이 아니고 기본 그룹의 RID (Relative Identifier)입니다. 작성한 응답에 C# 코드가 있습니다. How to retrieve Users in a Group, including primary group users

관련 문제