Автор: YurikGL
Дата сообщения: 16.06.2009 15:08
Кто сможет помочь по такому вопросу...
Поднят сервер Ejabberd
Поднята авторизация по LDAP на два Windows-домена .
Теперь нужны две вещи
1) Общий LDAP_Roster на оба домена
2) Поиск по LDAP_vcard на оба домена
Отмечу, что LDAP_Roster на каждый домен раздельно работает. Т.е. если подключается пользователь из домена 1 видит сформированный ростер домена 1. Если от второго, то видит от второго
LDAP_vcard не работает вообще никак. Т.е. если модуль объявить внутри хоста, то в клиенте появляется возможность искать по полям. Но ничего не ищет. Если модуль объявлять вне хоста, то клиент вообще не дает возможности искать.
Конфиг хоста
host1 и host2 - разные домены
{host_config, "host1.domain.com", [
{auth_method, ldap},
{ldap_servers, ["10.10.10.10"]},
{ldap_port, 389},
{ldap_uids, [{"sAMAccountName"}]},
{ldap_base, "dc=host1,dc=domain,dc=com},
{ldap_rootdn, "user@host1.domain.com"},
{ldap_password, "psw"},
{modules,
[
{mod_adhoc, []},
{mod_announce, [{access, announce}]}, % requires mod_adhoc
{mod_caps, []},
{mod_configure,[]}, % requires mod_adhoc
{mod_disco, []},
{mod_http_bind,[]},
{mod_muc, [
%%{host, "conference.@HOST@"},
{access, muc},
{access_create, muc},
{access_persistent, muc},
{access_admin, muc_admin}
]},
{mod_offline, []},
{mod_pubsub, [ % requires mod_caps
{access_createnode, pubsub_createnode},
{plugins, ["default", "pep"]}
]},
{mod_roster, []},
%%{mod_service_log,[]},
{mod_shared_roster,[]},
%%{mod_stats, []},
{mod_time, []},
% {mod_vcard, []},
{mod_version, []},
{mod_shared_roster_ldap,
[{ldap_groupattr,"department"},
{ldap_groupdesc,"department"},
{ldap_rfilter, "(&(memberOf=CN=JabberUsers,CN=Users,DC=host1,DC=domain,DC=com)))"},
{ldap_memberattr,"sAMAccountName"},
{ldap_userdesc,"cn"}
]}
]}
]}.
Для host2 конфиг аналогичный
Отдельно вне хостов пытаюсь вызывать
{modules,
[{mod_vcard_ldap,
[
{ldap_base, "ou=Users,dc=domain,dc=com"},
{ldap_uids, [{"userPrincipalName", "%u@domain.com"}]},
{ldap_filter, ""},
{ldap_vcard_map,
[{"NICKNAME", "%u", []}, % just use user's part of JID as his nickname
{"GIVEN", "%s", ["givenName"]},
{"FAMILY", "%s", ["sn"]},
{"FN", "%s, %s", ["sn", "givenName"]}, % example: "Smith, John"
{"EMAIL", "%s", ["mail"]},
{"PHOTO", "%s", ["jpegPhoto"]},
{"BDAY", "%s", ["birthDay"]}]},
{ldap_search_fields,
[{"User", "%u"},
{"Name", "givenName"},
{"Family Name", "sn"},
{"Email", "mail"},
{"Birthday", "birthDay"}]},
{ldap_search_reported,
[{"Full Name", "FN"},
{"Nickname", "NICKNAME"},
{"Birthday", "BDAY"}]}
]}
]}.