LDAP je zkratka za Lightweight Directory Access Protocol, tedy odlehčený protokol pro přístup k adresářovému serveru (obsahuje informace o některých objektech světa). Tento protokol umožňuje přístup k datům a jejich ukládání na adresářový server, kde jsou data uložena ve stromové datové struktuře, stejně jako v klasické adresářové struktuře. Základní jednotkou je záznam, který má své povinné a nepovinné atributy. Podle povinných atributů lze identifikovat jednotlivé záznamy, tato identifikace jej jedinečná jak v rámci jednoho patra stromu, tak i v rámci celého adresáře. Záznamy jsou hierarchicky uspořádány (dědičnost). LDAP je založena na doporučení X.500, oproti kterému je, jak je již zmíněno v názvu, odlehčenou verzí. LDAP funguje na bázi server-klient. Používá UNICODE. Podporuje přihlašování přes TLS/SSL.
LDAP je užitečný především pro udržování adresářů, práci s informacemi o uživatelích, vyhledávání uživatelů v adresářích, ověřování uživatelů služeb (telnet, ftp, ...), distribuce klíčů, DNS apod. LDAP je optimalizován pro rychlé vyhledávání nad nepříližš měnící se databází (četnost zápisů do struktury je oproti jejich čtení minimální). K záznamům lze přistupovat jak pomocí jejich jména, tak pomocí množiny jejich atributů.
LIDF (LDAP Data Interchange Format) je standardizovaný formát pro reprezantaci dat v adresářovém serveru. Pomocí tohoto formátu lze upravovat adresář (modifikovat, přidávat a mazat záznamy).
Příklad LIDF záznamu:
dn: cn=John Doe,dc=example,dc=com cn: John Doe givenName: John sn: Doe telephoneNumber: +1 888 555 6789 telephoneNumber: +1 888 555 1232 mail: john@example.com manager: cn=Barbara Doe,dc=example,dc=com objectClass: inetOrgPerson objectClass: organizationalPerson objectClass: person objectClass: topKaždý záznam obsahuje
dn: distinguished name
, což je jednoznačná (unikátní) identifikace záznamu, která je tvořená z atributů a jejich hodnot (jsou z něj patrné hierarchickém postavení ve struktuře). Dále pak obsahuje atributy, z nichž některé jsou relative distinguished name
, to jsou takové, jež identifikují záznam na úrovni patra ve stromu záznamů (např. mail: mail address
), jsou to atruibuty obsažené v dn
. Poslední informací, kterou záznamy nesou, jsou typy, z nichž je záznam odvozen (tyto typy nesmějí být v různých hierarchických větvích).
Atributy, které lze u záznamu použít, stejně tak i to, zda mají být obligatorní či fakultativní, určuje directory schema, ve kterém jsou definovány odjekty a atributy. Standardní schemata lze najít v souboru /etc/openldap/schema/core.schema
Příklad schematu pro objekt:
objectclass ( 2.5.6.6 NAME 'person' DESC 'RFC2256: a person' SUP top STRUCTURAL MUST ( sn $ cn ) MAY ( userPassword $ telephoneNumber $ seeAlso $ description ) )a atribut
attributeType ( 2.5.4.41 NAME 'name' DESC 'name(s) associated with the object' EQUALITY caseIgnoreMatch SUBSTR caseIgnoreSubstringsMatch )
Adresářové služby poskytují následující programy:
Ke správě záznamů v v OpenLDAP lze pouřít následující konsolové nástroje:
ldapsearch
- vyhledávání záznamůldapadd
- přidání záznamuldapmodify
- změna záznamůldapdelete
- smazání zázanmuldapmodrdn
- přejmenování záznamu/etc/nsswitch.conf
.
Simple Authentication and Security Layer- metoda pro zlepšování ověřování při komunikaci server-klient. Poskytuje používání různých mechanismů ověřování. Pro OpenLDAP existuje plugin, který tuto možnost poskytuje.
OpenLDAP podporuje replikaci. Daemon slurpd
sleduje log a posílá informace dalším adresářovým serverům.
OpenLDAP podporuje tkaé jadnorázová hesla, která jsou důležiná při nebezpečí odposlechu hesel.
yakua