Вкратце: как настроить ejabberd, чтобы разрешить доступ только некоторым членам группы Active Directory?
Привет,
После успешной настройки службы ejabberd, подключенной к нашему AD, я хотел бы сузить круг разрешенных пользователей до определенной группы.
Моя рабочая установка:
auth_method: [ldap]
ldap_серверы:
- 1.2.3.4
- 1.2.3.5
ldap_uids:
почта: "%[email protected]"
ldap_base: "OU=FON,OU=Domain,OU=Global,DC=domain,DC=lan"
ldap_rootdn: "CN=кто-то,CN=пользователи,DC=домен,DC=lan"
ldap_password: "секрет"
Это работает нормально, как есть.
Пользователи хранятся в:
"OU=Utilisateurs,OU=FON,OU=Domain,OU=Global,DC=domain,DC=lan"
но группы хранятся в другом OU:
"OU=Securite,OU=Groupes,OU=FON,OU=Domain,OU=Global,DC=domain,DC=lan"
Я хотел бы добавить фильтр, разрешающий доступ только пользователям, входящим в группу, которая определена в другом подразделении.
При попытке добавить фильтр ниже, нуль пользователь из разрешенной группы может подключаться:
ldap_filter:
(&(objectCategory=group)(CN=GG_XMPP_USERS,OU=Securite,OU=Groupes,OU=FON,OU=Domain,OU=Global,DC=domain,DC=lan))
Безрезультатно, я также попробовал некоторый синтаксис, похожий на:
(&(objectclass=group)(|(cn=admingroup)(cn=group1)(cn=group2)))
В Active Directory пользовательские объекты не имеют атрибута memberOf, который можно было бы запросить.
Итак, каков правильный путь?