Я работаю в .net 2.0 и вам нужно получить всех пользователей данной группы AD. У меня есть следующий метод, который возвращает все члены группы, но он не возвращает пользователей, у которых прошедшая группа является их основной группой. Что мне нужно сделать, чтобы включить эти пользователи?Как получить пользователей в группе, включая пользователей первичной группы
/// <summary>
/// Gets the group child users.
/// </summary>
/// <param name="parentGroup">The parent group.</param>
/// <returns></returns>
public List<ADUser> GetGroupChildUsers(ADGroup parentGroup)
{
List<ADUser> list = new List<ADUser>();
DirectoryEntry entry = GetDirectoryEntry(LdapBaseString);
DirectorySearcher searcher = new DirectorySearcher(entry);
searcher.Filter = string.Format("(&(objectCategory=person)(memberOf={0}))", parentGroup.DN);
searcher.PropertiesToLoad.Add("objectGUID");
searcher.SizeLimit = MaxReturnCount;
SearchResultCollection results = searcher.FindAll();
foreach (SearchResult result in results) {
Guid guid = new Guid((byte[])result.Properties["objectGUID"][0]);
list.Add(GetUserByGuid(guid));
}
if (list.Count <= 0) {
return null;
} else {
return list;
}
}
У меня был подобный вопрос некоторое время назад, это может помочь. Мне нужно было извлечь только машины или только имена пользователей, а не все. http://stackoverflow.com/questions/6252785/winnt-giving-to-much-information-i-need-to-narrow-down-to-just-machine-names – sealz