Lightweight Directory Access Protocol: Różnice pomiędzy wersjami

[wersja przejrzana][wersja przejrzana]
Usunięta treść Dodana treść
m drobne redakcyjne
Linia 1:
{{Źródła|data=2011-02}}
 
'''LDAP''' ([[Język angielski|ang.]] '''''Lightweight Directory Access Protocol''''' - dosł. Lekki Protokół Usług Katalogowych) - protokół przeznaczony do korzystania z [[Usługa katalogowa|usług katalogowych]], bazujący na standardzie [[X.500]]. Jest to również nazwa usługi katalogowej pozwalającej na wymianę informacji za pośrednictwem [[Model TCP/IP|TCP/IP]].
 
LDAP jest wykorzystywany praktycznie w adresacji sieci [[Internet]]/[[Intranet]] w celu zapewnienia niezawodności, skalowalności i bezpieczeństwa danych. W odróżnieniu od X.500 nie potrzebuje ani szerokiego pasma, ani dużej mocy obliczeniowej. Pracuje w oparciu o protokół [[Model TCP/IP|TCP/IP]] lub inne połączeniowe usługi transportu. Dane grupowane są w strukturze przypominającej drzewo katalogów. Każdy obiekt jest jednoznacznie identyfikowany poprzez swoje położenie w drzewie, tzw. ''Distinguished Name'' (''DN'').
Linia 9:
== Funkcje protokołu ==
Klient LDAP ma możliwość wykonania następujących operacji:
* ''bind'' - uwierzytelnienie użytkownika, czyli powiązanie jego tożsamości (i obiektu LDAP) z połączeniem sieciowym i sesją. Wymaga potwierdzenia odbioru od serwera, w którym znajduje status żądania klienta. Operacja ta może też przestawić sesję w stan "anonimowy"„anonimowy” jeśli podany zostanie pusty ''DN'' i hasło. W ramach jednej sesji można wielokrotnie dokonywać operacji ''bind'', zmieniając w ten sposób kontekst uwierzytelniania.
 
* ''unbind'' - zakończenie sesji i połączenia sieciowego LDAP. Nie potrzebuje potwierdzenia. Nie jest (wbrew popularnemu przekonaniu) odwrotnością operacji ''bind''.
* ''search'' - zgłoszenie żądania poszukiwanego zasobu, które będzie realizowane przez serwer, co pozwala na pobieranie oraz wyszukiwanie informacji
 
* ''modify'' – umożliwia klientowi modyfikowanie, wprowadzanie nowych pozycji oraz ich usuwanie z bazy danych znajdującej się na serwerze
* ''search'' - zgłoszenie żądania poszukiwanego zasobu, które będzie realizowane przez serwer, co pozwala na pobieranie oraz wyszukiwanie informacji
* ''add'' - daje klientowi możliwość zgłoszenia żądania dodania wpisów do katalogu, zmiany istniejącego wpisu oraz zmiany nazwy wpisu.
 
* ''modifydelete'' - umożliwia klientowi modyfikowanie,żądanie wprowadzanieusunięcia nowych pozycji oraz ich usuwaniewpisów z bazy danych znajdującej się na serwerzekatalogu.
 
* ''add'' - daje klientowi możliwość zgłoszenia żądania dodania wpisów do katalogu, zmiany istniejącego wpisu oraz zmiany nazwy wpisu.
 
* ''delete'' - umożliwia klientowi żądanie usunięcia wpisów z katalogu.
 
== Wpisy i klasy ==
Informacje w katalogu są przechowywane w postaci wpisów (ang. ''Entries''). Każdy wpis jest obiektem jednej lub wielu klas. Klasy mogą być dziedziczone. Każda klasa składa się z jednego lub wielu atrybutów, które mogą być opcjonalne lub obowiązkowe.
 
Istnieje wiele podstawowych typów atrybutów. Atrybuty mogą mieć więcej niż jedną wartość. Można tworzyć własne klasy i atrybuty.
 
Wszystkie wpisy zorganizowane są w postaci struktury drzewa katalogowego, najczęściej bazującego na politycznej, geograficznej lub organizacyjnej strukturze (struktura hierarchiczna). Są identyfikowane jednoznacznie przez ''DN'' (ang. ''Distinguished Name''), mogą być również identyfikowane względem nadrzędnego wpisu (kontekstu) poprzez ''RDN'' (ang. ''Relational Distinguished Name'').
 
Dostęp do danego wpisu chroniony jest poprzez listy kontroli dostępu (''ACL'', ang. ''[[Access Control List]]''). Można tworzyć uprawnienia dla kontekstów, wpisów oraz poszczególnych atrybutów.
 
Dane zawarte w systemie LDAP mogą być eksportowane/importowane do/z plików tekstowych w specjalnym formacie [[LDAP Data Interchange Format|LDIF]] (ang. ''LDAP Data Interchange Format'').
Linia 34 ⟶ 30:
== Atrybuty ==
Atrybuty występujące w pliku schematów ''core.schema'':
* ''UID'' (ang. ''User Identifier'') - identyfikator użytkownika
* ''RID'' (ang. ''Relative Identifier'') - liczba reprezentująca względny identyfikator użytkownika
* ''CN'' (ang. ''Common Name'') - imię
* ''SN'' (ang. ''Surname'') - nazwisko
* ''OU'' (ang. ''Organizational Unit'') - jednostka organizacyjna
* ''O'' (ang. ''Organization'') - jednostka lub organizacja
* ''DC'' (ang. ''Domain Component'') - składnik nazwy domenowej
* ''C'' (ang. ''Country'') - państwo
 
== Uwierzytelnianie i autoryzacja ==
W LDAP istnieją następujące sposoby [[Uwierzytelnianie|uwierzytelnień]]:
* anonimowe – klient ma prawa "wbudowanego"„wbudowanego” użytkownika ''guest'',
* na hasło – użytkownik loguje się poprzez podanie ''DN'' i hasła,
* z użyciem [[Transport Layer Security|SSL]] – następuje wymiana [[Certyfikat (kryptografia)klucza publicznego|certyfikatów]],
* z użyciem [[Serwer pośredniczący|PROXY]] – wykorzystywane przez aplikację, która uwierzytelnia się na hasło użytkownika PROXY, a następnie działa w imieniu zadanego użytkownika. Takie uwierzytelnienie stosuje usługa [[Active Directory]] firmy [[Microsoft]], będąca jedną z komercyjnych implementacji LDAP.
 
Linia 53 ⟶ 49:
 
== LDAPS ==
Jest to niestandardowe rozszerzenie protokołu LDAP wykorzystujące [[Transport Layer Security|SSL]] do szyfrowania komunikacji między serwerem a klientem. Serwery udostępniają połączenie LDAPS na oddzielnym [[Port protokołu|porcie TCP]], domyślnie 636. W obecnej (trzeciej) wersji protokołu LDAP zdefiniowany jest, nie wymagający osobnego portu, standardowy tryb szyfrowania, oparty ona funkcjęfunkcji [[StartTLS]] - co czyni LDAPS niepotrzebnym.
 
{{Protokoły stosu TCP/IP}}