Adresářové služby

 - přístup k hodnotám atributů vázaných na jména objektů
- často hiererchická, jmenný kontext
- struktura: uživatel (klient) a server(y) adresářové služby
- pouze pro čtení nebo možnost aktualizace databáze
(s ohledem na přístupová práva)

* Jmenné služby (name services): mapování mezi "čitelnými" logickými jmény
pro člověka a adresami na úrovni technologie
* Jmenný prostor (namespace)
- kolekce všech jmen přístupných přes jmennou službu
- definuje konvence a syntaxi pojmenovávání objektů

X.500

- 1993
- globální adresářová struktura
- informační model pro ukládání informací v adresáři - hierarchicky


* Directory User Agent (DUA), entita na straně klienta pro přístup
k adresářové službě

* Directory Information Tree (DIT) - logické uspořádání informací
adresářové služby

DIT může být distribuován mezi více adresářových serverů
- podle geografické nebo organizační hierarchie

* Každá položka má distinguished name, hierarchie C, O, OU, CN
* relative distinguished name

* Directory Information Base (DIB) - uchovává jednotlivé položky (objekty)
adresáře

Položka definována několika atributy, atribut má typ a hodnotu, existují
povinné a volitelné atributy

Každá položka má povinný atribut typu ObjectClass, ten definuje
další atributy

Práce s adresářovou službou
----------------------------
- připojení klienta k adresářovému serveru a vytvoření relace
- autentikace
- pak práce se stromem - operace je možné podepisovat

- dosti složitá implementace, protokol DAP založem na protokolech OSI

Protokoly
---------
DAP: Directory Access Protocol - mezi DUA a serverem
DSP: Directory System Protocol - mezi servery, pro zprostředkované vyhledávání
informace
DISP: Directory Information Shadowing Protocol
- replikace databáze mezi servery, možnost vyvažování zátěže mezi více
serverů

-> klient musí dostat stejný obraz dat bez ohledu na server, na který
se přpojuje

-> v případě, že server nespravuje požadovanou informaci, vyhledá ji u ostatních
serverů (chaining), nebo odkáže klienta na příslušný server (referral)
-> možnost vícesměrného dotazování současně na více serverů

Lightweight Directory Access Protocol (LDAP)

- otevřený standard adresářové služby v prostředí Internetu (RFC 1777), 
podporují i komerční firmy
- podmnožina X.500
- nad protokolem TCP - nepotřebuje implementaci složitých OSI protokolů
- zjednodušená autentikace při přihlašování k serveru, možnost anonymního
přihlašování
- servery nevracejí odkaz na jiný server, klientovi se stačí připojit
k jednomu serveru
- jednodušší kódování dat oproti X.500
- k dispozici knihovna v C pro klienta (RFC 1823)
- Práva přístupu k distinguished name:
žádná, compare, browse, delete, read, write,
- definice tříd objektů přímou součástí protokolu

vzniká v.3:
- server LDAP nemusí být současně serverem X.500
- původně se LDAP server řešil konverzí LDAP na DAP na straně serveru
- povoleno vracení odkazu na jiný server
- možnost zjistit třídy objektů a jimi podporované atributy
-> rozšiřitelnost schematu
- bezpečnostní mechanismy certifikátů X.509, SSL
- podpora Unicode
- podpora nespojované služby Connectionless LDAP (CLDAP)
- nad UDP, pro jednoduché dotazy a rychlou odezvu

Novell Directory Services - NDS

Implementace distribuované replikované adresářové služby ve stylu X.500 v prostředí Novell