Общий ростер с пользователями из разных доменов, mod_shared_roster_ldap

Здравствуйте.

Есть сервер ejabberd. Он держит несколько доменов domain1.ru, domain2.ru и т.д. Есть контроллер домена под win2008 server, в котором хранятся пользователи. У каждого пользователя есть поле userPrincipalName, в котором хранится его имя пользователя и домен (user1@domain1.ru, user8@domain2.ru). У меня без проблем получается разрешить логон этим пользователям с использованием этого поля

%% LDAP attribute that holds user ID:
{ldap_uids, [{"userPrincipalName", "%u@domain1.ru"}, {"userPrincipalName", "%u@domain2.ru"} ]}.

Но мне не удаётся получить общий список контактов (Shared roster) из ldap, в котором будут отображаться пользователи всех доменов.

Если использовать подобный конфиг:

{mod_shared_roster_ldap, [
      {ldap_servers, ["192.168.0.14"]},
      {ldap_base, "DC=profit,DC=local"},
      {ldap_rfilter, "(&(objectClass=user)(cn=*))"},
      {ldap_gfilter, "(&(objectClass=user)(cn=*)(department=%g))"},
      {ldap_groupattr, "department"},
      {ldap_groupdesc, "department"},
      {ldap_memberattr, "sAMAccountName"},
      {ldap_ufilter, "(&(objectClass=user)(sAMAccountName=%u))"},
      {ldap_useruid, "sAMAccountName"},
      {ldap_userdesc, "cn"}
      %{ldap_auth_check, "off"}
    ]},

То подключившись под пользователем user1@domain1.ru мы получим абсолютно всех пользователей в списке с domain1.ru. Параллельно подключившись с use2@domain2.ru получим тот же список, но только все пользователи domain2.ru.

По сути нужен общий ростер для различных доменов.

Syndicate content