Автор Тема: Сравнение LDAP и X.500  (Прочитано 23485 раз)

fred

  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Сравнение LDAP и X.500
« : 02 Июнь 2012, 13:18:40 »
Для начала скажу, что я не практик. То есть никогда осознано не исползовал LDAP и X.500.

X.500 - стек протоколов который дает все (даже избыточно) возможности по созданию, ведению и использованию "глобальных справочников", но он сложен для реализации и использования. Кстати, есть протокол, позволяющий работать с X.500 через TCP.
Потом был разработан более простой протокол, работающий только через TCP - это LDAP.

В X.500 есть четыре основных протокола (DAP, DSP, DOP, DISP).
1. DAP - протокол обмена между клиентом и сервером.
Тут все ясно - в технологии LDAP есть одноименный LDAP-протокол, он проще.

2. DSP - протокол обмена между двумя серверами для внесения изменений и поиска записей.
Я знаю, что в LDAP есть "механизм отсылок", когда клиенту возвращается ответ, отсылающий его к другому серверу.
ВОПРОСЫ:
- Как сервер LDAP возвращает ответ, если надо клиента отослать к двум и более серверам;
- Как сервер LDAP узнает к кому отослать клиента (если поиск идет глобальный);
- Как сервер LDAP возвращает ответ, если часть запроса выполняется на текущем сервере, а для остального его надо отослать к другому серверу.
 
3. DOP - протокол обмена между серверами для связывания двух серверов (вертикального или горизонтального).
При работе этого протокола появляются обоюдные (согласованые) ссылки друг на друга двух серверов.
В LDAP возможно только вертикальное связывание.
ВОПРОСЫ:
- Как в LDAP создаются отсылочные записи, в ручную или как-то еще.

4. DISP - протокол обмена между серверами для репликации данных с целью повышения надежности или скорости обработки.
По этому протоколу можно инициировать процесс репликации с двух сторон (и источник изменений и потребитель).
В LDAP тоже есть протокол  репликации.
ВОПРОСЫ:
- Поддерживается ли протокол всеми производителями серверов LDAP;
- Могут ли два сервера LDAP от разных производителей взаимодействовать по этому протоколу.

Вообще хочется узнать какие неудобства (костыли) есть у LDAP серверов (из практики использования)

С Уважением!

egor

  • Администратор
  • Старожил
  • *****
  • Сообщений: 486
    • Просмотр профиля
Re: Сравнение LDAP и X.500
« Ответ #1 : 04 Июнь 2012, 15:22:19 »
С протоколами X.500 я не знаком, поэтому могу рассаказать то, что знаю о LDAP, точнее о реализации LDAP от OpenLDAP. По механизму отсылок. В OpenLDAP можно настроить так называемые общие отсылки, а также делегирование полномочий. Общие отсылки будут возвращаться клиенту, когда, во-первых, сервер не может удовлетворить запрос клиента путём поиска в своих DIT, а во вторых, сервер настроен на возврат таких отсылок (иначе он будет возвращать ошибку). Обычно общие отсылки настраиваются на вышестоящий (глобальный) сервер, теоретически способный удовлетворить запрос клиента. Например, сервер обслуживает DIT с суффиксом dc=dep1,dc=mycompany,dc=ru и настроен на возврат общей отсылки с URL ldap://global-ldap.mycompany.ru . Тогда при поступлении запроса от клиента с базой поиска, отличной от dc=dep1,dc=mycompany,dc=ru, например dc=dep2,dc=mycompany,dc=ru или dc=mycompany,dc=org , клиенту будет возвращена отсылка на ldap://global-ldap.mycompany.ru . Таких отсылок можно настроить несколько на одном сервере, клиенту будут возвращаться все.

Делегирование полномочий -- противоположная ситуация, когда вышестоящий сервер делегирует полномочия по обслуживанию части своего DIT нижестоящему. Например, сервер, обслуживающий DIT с суффиксом dc=mycompany,dc=ru при поступлении запроса с базой поиска dc=dep1,dc=mycompany,dc=ru возвращает клиенту отсылку с URL того сервера, который обслуживает данный участок DIT. Делегирование полномочий реализуется с помощью так называемых именованных отсылок, то есть специальных записей в DIT с объектным классом referral, в атрибуте ref которого находится URL соостветствующего нижестоящего сервера. Пример:

dn: dc=dep1,dc=mycompany,dc=ru
objectClass: referral
objectClass: extensibleObject
dc: dep1
ref: ldap://dep1-ldap.mycompany.ru/dc=dep1,dc=mycompany,dc=ru

Такие записи добавляются и редактируются вручную. Чтобы при обращении к записи не возвращалась отсылка, клиент при запросе должен использовать элемент управления ManageDsaIT (параметр -M в консольных утилитах OpenLDAP). Именованные отсылки описаны в RFC 3296.

Есть, наконец, такая штука, как сцепление, то есть соответствующим образом настроенный сервер вместо возвращения клиенту отсылки сам выполняет запрос к следующему серверу и, возможно, к следующему и т.д. по цепочке, пока не получит результат, и этот результат вернётся клиенту.
Про механизм отсылок можно почитать в RFC 3296 (http://www.rfc-editor.org/rfc/rfc3296.txt), в руководстве администратора OpenLDAP (http://pro-ldap.ru/tr/admin24/referrals.html), и в учебнике LFRS (http://www.zytrax.com/books/ldap/ch7/referrals.html -- перевод скоро будет).

Надеюсь, я ответил на большинство Ваших вопросов по отсылкам, кроме, наверное, этого:
- Как сервер LDAP возвращает ответ, если часть запроса выполняется на текущем сервере, а для остального его надо отослать к другому серверу.
Честно говоря, ответа на него я не знаю, надо проверять.

Теперь о репликации. В OpenLDAP используется протокол LDAP Content Synchronization (RFC 4533). Этот RFC имеет статус экспериментального и выдвинут самими разработчиками OpenLDAP, поэтому у меня нет никакой уверенности, что он поддерживается другими реализациями LDAP-серверов. Стоит сказать, что механизм репликации в OpenLDAP сам по себе интересен и реализован довольно хорошо. Существуют и другие RFC по теме репликации (RFC 3384, RFC 4373), но они имеют статус информационных, и я не знаю, реализованы ли они где-нибудь. Про репликацию, кроме RFC, можно почитать ещё в руководстве администратора OpenLDAP (http://pro-ldap.ru/tr/admin24/replication.html), и в учебнике LFRS (http://www.zytrax.com/books/ldap/ch7/index.html -- перевод, опять же, скоро будет опубликован).

Теперь про неудобства и костыли. Несомненно, они есть у любой программы. Многое зависит от проектирования каталога, что в свою очередь, зависит от тех задач, которые Вы планируете решать с его помощью. Если говорить в целом -- OpenLDAP вполне зрелый продукт, пригодный для эксплуатации в промышленных масштабах. А чтобы обсуждать детали, ставьте более конкретные вопросы.

Егор

fred

  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Re: Сравнение LDAP и X.500
« Ответ #2 : 04 Июнь 2012, 21:30:54 »
Благодарю Вас за ответ.
Да, я понимаю, что обращаюсь к сообществу LDAP (а не X.500).
Ваши ответы полны (в рамках тех вопросов, которые я задавал), спасибо.
Если у меня будут более конкретные вопросы, обязательно задам.

egor

  • Администратор
  • Старожил
  • *****
  • Сообщений: 486
    • Просмотр профиля
Re: Сравнение LDAP и X.500
« Ответ #3 : 14 Июнь 2012, 14:59:31 »
Как и обещал, размести переводы статей об отсылках (http://pro-ldap.ru/tr/zytrax/ch7/referrals.html) и репликации (http://www.zytrax.com/books/ldap/ch7/index.html) в OpenLDAP из учебника "LDAP for Rocket Scientists".

Егор

 

Эта страница

Содержание

Новости:
Форум проекта Pro-LDAP.ru
OpenLDAP 2.4 Руководство

Содержание

Введение в службы каталогов OpenLDAPБыстрое развёртывание и начало работыОбщая картина - варианты конфигурацииСборка и установка OpenLDAPНастройка slapd

 

Конфигурационный файл slapdЗапуск slapdКонтроль доступаОграниченияИнструментыМеханизмы манипуляции даннымиНаложенияСпецификация схемы

 

БезопасностьSASLTLSРаспределённая служба каталоговРепликацияОбслуживаниеМониторингПроизводительностьУстранение неполадок
Перевод официального руководства OpenLDAP 2.4 Admin Guide
Полное содержание здесь
LDAP для учёных-ракетчиков

Содержание

О книгеКонцепции LDAPОбъекты LDAPУстановка LDAPПримерыНастройкаРепликация и отсылкиLDIF и DSMLПротоколLDAP API

 

HOWTOНеполадкиПроизводительностьИнструменты LDAPБезопасностьЗаметкиРесурсы LDAPRFC и X.500ГлоссарийОбъекты
Перевод "LDAP for Rocket Scientists"
Полное содержание здесь
Ресурсы

Книги

Руководство OpenLDAP 2.4LDAP для учёных-ракетчиков

Другие

СтатьиТермины LDAPman-страницы OpenLDAP 2.4Список RFCКлиенты LDAPФайлы наборов схемы
Полезные ресурсы
Форум

 

Разделы форумаНепрочитанные сообщенияПоследние сообщения
Форум проекта
Главная

Pro-LDAP.ru

О проектеНовости проектаУчастникиСтаньте участником!Сообщите об ошибке!Об авторских правахСоглашения проекта
Присоединяйсь!