Подтвердить что ты не робот

Однострочный LDAP-запрос, который перечисляет пользователей из группы в супергруппе

У меня есть схема, которая выглядит так:

  • Пользователи существуют как UserA, UserB, UserC.
  • Группы существуют как OverGroup, SubGroup.
  • OverGroup автоматически добавляет к членству новых пользователей, таких как UserA, UserB и т.д.
  • Подгруппа я создал сам. Я поставил OverGroup членом SubGroup.

Я хочу иметь возможность однострочного запроса SubGroup и извлекать не OverGroup, т.е.:

Values:  
CN=OverGroup,OU=Groups,DC=example,DC=com

но полное перечисление фактических пользователей (пользователя A, B, C) внутри OverGroup, т.е.

Values:  
CN=UserA,OU=OtherOU,DC=example,DC=com
CN=UserB,OU=OtherOU,DC=example,DC=com
CN=UserC,OU=OtherOU,DC=example,DC=com

Есть ли один-линейный LDAP-фильтр, который мог бы получить это? (Он будет помещен в раздел "ldap" конфигурации ExternalAuth в экземпляре Track Tracker. Довольно уверен, что я могу сделать это только с одним запросом, который может понять модуль ExternalAuth.)

Все, что я пытаюсь сделать, не работает, и из моего чтения не представляется возможным перечислить список пользователей в группе, которая является членом другой группы с любым однострочным запросом. Мысли?

4b9b3361

Ответ 1

В Active Directory предусмотрена специальная опция фильтра поиска, которая позволяет фильтровать через цепочку объектов, например вложенные группы. Возможности описаны здесь.

Ниже приведен пример извлечения всех пользователей в группе, включая вложенные группы:

(&(objectClass=user)(memberof:1.2.840.113556.1.4.1941:={0}))

где {0} - это DN родительской группы.

Ответ 2

(&(objectClass=user)(memberof:1.2.840.113556.1.4.1941:=CN=MPV_BedPlacement,OU=Security Groups,OU=Groups,OU=CCHCS,DC=CCHCS,DC=LDAP))

Вы должны добавить полное DN для группы и не фигурные скобки.