Назад | Перейти на главную страницу

openldap + активный каталог + вложенные группы + nss

Я использую nss и openldap в Linux, чтобы получить список записей passwd из активного каталога. Я получаю всех пользователей из вложенной группы, выполняя

nss_base_passwd OU=peopleOU,DC=x?sub?memberof:1.2.840.113556.1.4.1941:=cn=Group1,OU=groupsOU,DC=x

Мне пришла идея использовать 1.2.840.113556.1.4.1941 от http://msdn.microsoft.com/en-us/library/windows/desktop/aa746475%28v=vs.85%29.aspx

Однако производительность действительно плохая. Я предполагаю, что сервер LDAP связывает каждую группу каждого пользователя, чтобы узнать, входят ли они в группу. Есть ли более быстрый способ сделать это? Я полагаю, что было бы быстрее найти членов группы, чем проверять каждого пользователя, входят ли они в группу, но как я могу сделать для этого фильтр?

Кроме того, имена вложенных групп в каталоге могут быть объединены, т. Е. memberof=cn=Group1*,OU=groupsOU,DC=x также должен дать мне то, что я хочу, но это вернет 0 пользователей.