LDAP AD запрос. Что означает знак доллара в OU=$

Я пытаюсь собрать всех членов группы в двух разных доменах Active Directory (AD) одной и той же компании.

Для этого я сначала получаю полное отличительное имя (DN) каждой группы из редактора атрибутов пользователей и компьютеров Active Directory (ADUC), как указано здесь.

Первая группа DN это:

*CN=first-group,OU=organization-unit-name,DC=first,DC=company,DC=com*

DN второй группы:

*CN=second-group,OU=$Customer,OU=one,OU=two,OU=three,OU=four,DC=second,DC=company,DC=com*

Затем я использую два следующих фильтра запросов LDAP в C# (я также пробовал их в ADUC).

Для домена first.company.com и первой группы я применяю следующий фильтр:

*(&(objectCategory=*)(memberOf=CN=first-group,OU=organization-unit-name,DC=first,DC=company,DC=com))*

И я получаю 123 результатов, как ожидалось /

Для домена second.company.com и второй группы я применяю следующий фильтр:

*(&(objectCategory=*)(memberof=second-group,OU=$Customer,OU=one,OU=two,OU=three,OU=four,DC=second,DC=company,DC=com))*

Однако сейчас я получаю только один результат. поподробнее сам. Это не то, что ожидалось.

Я знаю альтернативные способы найти ожидаемый результат в ADUC, нажав на вкладке "Члены" один раз, выбрав вторую группу, но мне нужен фильтр LDAP, потому что я хочу получить результаты в C#.

Кто-нибудь знает, что делает $Customer? Что доллар вообще означает в фильтре LDAP?

Я пробовал фильтр без Ou=$Customer, но он не дал результатов.

Спасибо за помощь!

1 ответ

Существует два Запроса LDAP, которые будут работать для Microsoft Active Directory: Разрешает все члены (включая вложенные) группы безопасности (требуется как минимум Windows 2003 SP2)

(memberOf:1.2.840.113556.1.4.1941:=CN=GroupOne,OU=Security Groups,OU=Groups,DC=YOURDOMAIN,DC=NET) 

Или получить только пользователей:

(&(objectClass=user)(memberof:1.2.840.113556.1.4.1941:=CN=GroupOne,OU=Security Groups,OU=Groups,DC=YOURDOMAIN,DC=NET) 

Если вам нужны только прямые члены, удалите ":1.2.840.113556.1.4.1941:" из каждого запроса.

В фильтре LDAP $ означает "$". (т.е. это просто персонаж)

Другие вопросы по тегам