LDAP

LDAP (Lightweight Directory Access Protocolолекотен протокол за достъп до справочници) е протокол за достъп до онлайн справочни услуги.

IETF проектира и дефинира LDAP като по-добър начин за използване на X.500 справочниците, тъй като намира първоначалния DAP (Directory Access Protocolпротокол за достъп до справочници) твърде сложен, за да може да бъде използван от обикновени интернет клиенти. LDAP дефинира сравнително прост протокол за обновяване и претърсване на справочници, който използва TCP/IP.

Общият термин „LDAP справочник“ заблуждава. Няма определен тип справочник, който е „LDAP справочник“. Всеки справочник, достъпен чрез LDAP протокола и способен да идентифицира обектите в справочника чрез X.500 идентификатори, може да бъде обозначен с този термин. Въпреки че справочници като OpenLDAP и неговите предшественици от Мичиганския университет са били проектирани предимно като местни хранилища, оптимизирани за достъп чрез LDAP, а не като шлюз към X.500 протоколи, те не са „LDAP справочници“ до степен, по-голяма от всеки друг справочник, достъпен чрез LDAP протокола.

Един запис в LDAP справочника се състои от именуван набор от атрибути. Записът има уникален идентификатор – DN (distinguished nameотличително име), който се образува от стойността на един от атрибутите и пълния път в дървото – например cn=Петър Петров,ou=People,dc=example,dc=com. Всеки от атрибутите в записа има тип и една или повече стойности. Типовете обикновено са мнемонични символни низове като „cn“ за common name (обикновено име) или „mail“ за електронен адрес. Стойностите зависят от типа и повечето недвоични стойности в LDAPv3 са UTF-8 символни низове. Например един атрибут за електронен адрес би могъл да съдържа стойността „user@example.com“. Един jpegPhoto атрибут би могъл да съдържа снимка в двоичен JPEG/JFIF формат.

Записите в LDAP справочниците са подредени йерархично. Структурата се нарича DIT (Directory Information Tree, Информационно дърво на справочника) и отразява политически, географски или организационни граници. В първоначалния X.500 модел записите, представящи държави, са в корена на дървото; под тях са записите, представящи щати, области, провинции или национални организации. Моделът X.500 предполага национални регистратори, които раздават идентификаторите и се грижат те да са уникални. Типичните LDAP реализации обаче използват DNS имена за структуриране на горните нива на йерархията, т.е. стъпват на вече изградена структура за уникално идентифициране в световен мащаб. Например, ако българската Уикипедия имаше LDAP справочник, коренът му според DNS структурата би бил dc=bg,dc=wikipedia,dc=org. По-надолу може да има записи, представящи хора, организационни подразделения и единици, принтери, документи и др.

Примерна структура на справочник

[редактиране | редактиране на кода]
dc=example,dc=com
|
+ou=People
| |
| +cn=Петър Петров
| |
| +cn=Иванка Иванова
|
+ou=Groups
         |
         +cn=Управители
         |
         +cn=Счетоводство
         |
         +cn=Маркетинг

Официални стандарти

[редактиране | редактиране на кода]
  • RFC 2251 – LDAP версия 3
  • RFC 2252 – атрибути на записите в LDAP справочници
  • RFC 2253 – представяне на отличителните имена
  • RFC 2254 – филтри за търсене в LDAP справочници
  • RFC 2255 – LDAP URL
  • RFC 2256 – X.500 схема за ползване в LDAP справочници

Софтуер за реализиране на LDAP справочници

[редактиране | редактиране на кода]

LDAP сървъри, които са свободен софтуер:

  • OpenLDAP – доработка на първоначалната реализация на Мичиганския университет. Разработчиците му активно развиват протокола в IETF.
  • Fedora Directory Server Архив на оригинала от 2006-03-04 в Wayback Machine. – бившият Netscape Directory Server, който също води началото си от реализацията на Мичиганския университет.