Я пытаюсь получить список всех групп в моей Active Directory, и я хотел бы получить отдельный список членов всех пользователей, которые являются частью группы. Будь то прямо (они являются членами группы) или косвенно (они являются членами группы, которая является членом основной группы).
Насколько я знаю, следующий запрос LDAP может частично выполнить работу, которую я хочу для одной группы
(&(objectCategory=person)(objectClass=user)(memberOf:1.2.840.113556.1.4.1941:=CN=MyGroup,OU=User,OU=Groups,OU=Security,DC=domain,DC=com))
Используя приведенный выше запрос LDAP, мы можем получить список всех вложенных членов одной группы.
Я хочу получить все группы в моем AD со свойствами members , а затем в members вместо подгрупп получить вложенные элементы .
Есть прямой способ сделать это?
Если нет, то при использовании c#, что было бы лучше, если у меня чрезвычайно огромный AD (более миллиона пользователей и три миллиона групп):
Будет ли это работать? Использовать запрос LDAP для получения всех групп, а затем запускать циклы для поиска подгрупп и замены их пользователями? Или размер будет проблемой. Я хотел бы, чтобы это была обобщенная реализация, поскольку я использую ее для создания собственного AD Syn c Tool