|
здравствуйте,
On 2012-11-21 12:11, Victor Sudakov wrote:
Dmitry Akindinov wrote:
Коллеги, извините за оффтопик, но где еще найдешь столько людей со
знанием почтовых клиентов и LDAP.
Кому-нибудь удавалось подружить OpenLDAP и Microsoft Office Outlook
таким образом, чтобы при вызове адресной книги Outlook он сразу
показал всю книгу, как это происходит в случае Communigate-овского
LDAP сервера?
На
ldapsearch -h openldap.host -b '' -s base supportedControl
отвечает?
Отвечает, вот такое выдает: http://pastebin.com/Kp7AzakF
Похоже, что не хватает 1.2.840.113556.1.4.473 - поддержки
майкрософтовского расширения протокола LDAP для сортировки результатов.
Включил "overlay sssvlv", теперь 1.2.840.113556.1.4.473 есть, а показа
книги по-прежнему нет.
[vas@gw ~] ldapsearch -h localhost -b '' -s base supportedControl | grep 1.2.840.113556.1.4.473
supportedControl: 1.2.840.113556.1.4.473
[vas@gw ~] pkg_info | grep ldap-ser
openldap-server-2.4.33 Open source LDAP server implementation
Тогда дело может быть в supportedCapabilities. CGPro притворяется, что
он - AD сервер, показывая вот эти OID в RootDSE:
supportedCapabilities: 1.2.840.113556.1.4.800
supportedCapabilities: 1.2.840.113556.1.4.1791
Тут по запросу " ldapsearch -h localhost -b '' -s base supportedCapabilities"
вообще пустое множество возвращает.
А не может быть дело в нехватке какого-нибудь обязательного атрибута в
схеме? Например какого-нибудь DisplayName?
Не, до схемы там не доходит. Я сейчас уже не помню деталей, мы с этим
довольно давно боролись, но всё там упирается в набор доступных controls
и capabilities. По логам Аутлук в начале запрашивает эти параметры из
корня директории и меняет поведение, в зависимости от наличия.
Тогда, насколько я понимаю, данное знание носит характер know-how и
получено путем reverse engineering :)
Ну да, а как с ними иначе? ;-)
Большое спасибо Вам за insightful ответы.
Судя по
http://forums.devshed.com/ldap-programming-76/open-ldap-and-rootdse-outlook-compatibility-214730.html
и другим ссылкам, народ этой проблемой периодически озадачивается, но
рецепта я пока не нашел.
Просто вернуть все controls и capability, которые Аутлук ожидает увидеть.
И ещё, если даже данные у вас хранятся в OpenLDAP, CGpro можно использовать в качестве LDAP proxy, определив для какого-нибудь поддерева Remote Unit, указывающий на OpenLDAP сервер. Аутлуки будут коннектиться к CGpro, получать необходимые controls и capability, а данные будут забираться с OpenLDAP. Правда, через один логин к OpenLDAP и для авторизации клиентов придётся использовать аккаунты CGpro или в записях OpenLDAP хранить пароли в открытом виде, чтобы можно было аутентифицироваться к Cgpro с использованием LDAP записей.
--
Best regards,
Dmitry Akindinov
|
|