RFC: 4511
Оригинал: Lightweight Directory Access Protocol (LDAP): The Protocol
Предыдущие версии: RFC 2251, RFC 2830, RFC 3771
Категория: Предложенный стандарт
Дата публикации:
Автор:
Перевод: Pro-LDAP.ru
4.5.3.1. Примеры

Для примера, предположим, что на сервере, к которому происходит обращение (hosta), хранятся записи <DC=Example,DC=NET> и <CN=Manager,DC=Example,DC=NET>. Этот сервер знает, что на двух других LDAP-серверах (hostb) и (hostc) (один из них главный (master), а второй — теневая копия) хранится <OU=People,DC=Example,DC=NET>, а на LDAP-совместимом сервере (hostd) хранится поддерево <OU=Roles,DC=Example,DC=NET>. Если на сервере, к которому происходит обращение, был запрошен поиск Search по <DC=Example,DC=NET> с диапазоном wholeSubtree, он может вернуть следующее:

SearchResultEntry for DC=Example,DC=NET
SearchResultEntry for CN=Manager,DC=Example,DC=NET
SearchResultReference {
  ldap://hostb/OU=People,DC=Example,DC=NET??sub
  ldap://hostc/OU=People,DC=Example,DC=NET??sub }
SearchResultReference {
  ldap://hostd/OU=Roles,DC=Example,DC=NET??sub }
SearchResultDone (success)

Тем, кто занимается реализацией клиентов, следует иметь ввиду, что при следовании по ссылкам из сообщения SearchResultReference могут быть сгенерированы дополнительные сообщения SearchResultReference. В продолжение нашего примера, если клиент обращается к серверу (hostb) и выполняет запрос Search по поддереву <OU=People,DC=Example,DC=NET>, этот сервер может ответить следующим образом:

SearchResultEntry for OU=People,DC=Example,DC=NET
SearchResultReference {
  ldap://hoste/OU=Managers,OU=People,DC=Example,DC=NET??sub }
SearchResultReference {
  ldap://hostf/OU=Consultants,OU=People,DC=Example,DC=NET??sub }
SearchResultDone (success)

Другой вариант, если на сервере, к которому происходит обращение, был запрошен поиск Search по <DC=Example,DC=NET> с диапазоном singleLevel, он может вернуть следующее:

SearchResultEntry for CN=Manager,DC=Example,DC=NET
SearchResultReference {
  ldap://hostb/OU=People,DC=Example,DC=NET??base
  ldap://hostc/OU=People,DC=Example,DC=NET??base }
SearchResultReference {
  ldap://hostd/OU=Roles,DC=Example,DC=NET??base }
SearchResultDone (success)

Если на сервере, к которому происходит обращение, не содержится базовый объект поиска Search, но у него есть информация о его возможном местонахождении, то он может вернуть клиенту отсылку referral. В этом случае, если клиент запрашивает у сервера hosta поиск Search по поддереву <DC=Example,DC=ORG>, сервер возвращает сообщение SearchResultDone, содержащее отсылку:

SearchResultDone (referral) {
  ldap://hostg/DC=Example,DC=ORG??sub }
2007 - 2017 © Русские переводы RFC, IETF, ISOC.