LDAPv 3 B

You might also like

Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 22

Łukasz

ŁukaszSędek,
Sędek,Bernard
Bernardvan
vander
derEsch
Esch
Sieci
SieciIP
IP
Politechnika
PolitechnikaWarszawska
Warszawska

1
 Baza danych zawierająca zasoby sieciowe:
Użytkowników i hasła, aplikacje, urządzenia,
woluminy
 Katalog – uporządkowany zbiór informacji o
obiektach w postaci drzewa
np. książka telefoniczna
 Przykłady usług katalogowych: DNS, NIS, Active
Directory, OpenLDAP
Łukasz Sędek, Bernard van der Esch
WEITI, Politechnika Warszawska 2
 Zasobożerny
 Skomplikowana implementacja na

komputerach osobistych
 Oficjalny standard ITU.
 Trudny w zrozumieniu ASN.1
 Powstał na początku lat 90 tych. - popularny

Łukasz Sędek, Bernard van der Esch


WEITI, Politechnika Warszawska 3
Łukasz Sędek, Bernard van der Esch
WEITI, Politechnika Warszawska 4
 „…is designed to provide access to the X.500 Directory while not
incurring the resource requirements of the Directory Access Protocol
(DAP)”
 Dosłownie Lekki Protokół Dostępu do Usług Katalogowych
 Ewolucja przestarzałego X.500
 Oparty na architekturze klient-serwer

Łukasz Sędek, Bernard van der Esch WEITI, Politechnika Warszawska 5


Łukasz Sędek, Bernard van der Esch WEITI, Politechnika Warszawska 6
LDAP:
 używa stosu TCP/IP zamiast OSI,
 Lepsze zarządzanie danymi - X.500 korzysta

z trudnego ASN.1,
 ma wiele API np. C (zestandaryzowany – RFC

1823), C++, JAVA JNDI, Perl,


 Odwołuje się do serwerów

zewnętrznych(referrals)
 Zwiększone bezpieczeństwo (SASL)

Łukasz Sędek, Bernard van der Esch


WEITI, Politechnika Warszawska 7
 Dane są przechowywane w postaci drzewa
(Directory Information Tree),
 Drzewo zbudowane jest z wpisów (Entries), które
opisują obiektowo świat. Jedna klasa – wiele
wpisów (dziedziczenie, polimorfizm),
 Atrybuty opisują klasy.
 Wpisy mają unikalną nazwę DN (Distinguished
Name – nazwa wyróżniona) – pozycja
bezwzględna…
 …lub przez pozycję węzła nadrzędnego RDN
(Relational Distinguished Name)
 Wpisy są definiowane przez LDIF (LDAP Data
Interchange Format – RFC 2849)

Łukasz Sędek, Bernard van der Esch


WEITI, Politechnika Warszawska 8
 Przykład nazwy wyróżnionej
CN=Joe Doe, DC=example, DC=com, C=PL
 … i pliku LDIF

dn: cn=John Doe,dc=example,dc=com, C=PL


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: top

Łukasz Sędek, Bernard van der Esch WEITI, Politechnika Warszawska 9


 Podobieństwo do DNS (spowodowane
drzewiastym porządkiem wpisów)
Np.. http://www.google.pl
 LDAP URL
ldap://host:port/DN?attributes?scope?filter?extensions
◦ Np.
ldap://ldap.example.com/cn=John%20Doe,dc=example,dc=com

Łukasz Sędek, Bernard van der Esch


WEITI, Politechnika Warszawska 10
 UID (User Identifier) Identyfikator użytkownika ,
 RID (Relative Identifier) czyli liczba reprezentująca względny
identyfikator użytkownika ,
 CN (Common Name) Nazwa,
 SN (Surname) Nazwisko,
 OU (Organizational Unit) Jednostka organizacyjna,
 O (Organization) Jednostka,
 DC (Domain Component) Składnik nazwy domenowej,
 C (Country) Państwo

Łukasz Sędek, Bernard van der Esch


WEITI, Politechnika Warszawska 11
Łukasz Sędek, Bernard van der Esch
WEITI, Politechnika Warszawska 12
PDU jest w pełni tekstowe;LDAPMessage korzysta z UTF-8

Łukasz Sędek, Bernard van der Esch WEITI, Politechnika Warszawska 13


 MessageID musi być unikalny dla sesji

Łukasz Sędek, Bernard van der Esch


WEITI, Politechnika Warszawska 14
Łukasz Sędek, Bernard van der Esch
WEITI, Politechnika Warszawska 15
 Uwierzytelnienie
◦ Bind – uwierzytelnianie użytkownika z serwerem,
◦ Unbind – zamyka połączenie (nie jest operacją
odwrotną bind!),
◦ Abandon – Przerywa operację z id wiadomości,
 Wyszukiwanie
◦ Search – wyszukiwanie wpisu,
◦ Compare – porównanie,
 Modyfikacja
◦ Modify – zmiana instniejącego wpisu,
◦ Add – dodawanie,
◦ Delete – usuwanie
Łukasz Sędek, Bernard van der Esch
WEITI, Politechnika Warszawska 16
 Uwierzytelnia użytkownika-łączy go z sesją LDAP
 Wymaga odpowiedzi od serwera
 Może połączyć się „anonimowo”
 Można zmienić kontekst uwierzytelnienia sesji

Łukasz Sędek, Bernard van der Esch


WEITI, Politechnika Warszawska 17
 Służy nie tylko do wyszukiwania, ale i do czytania obiektu.
 Jego parametry to:
◦ Scope - zasięg {base, one, sub}
◦ Filter – np. wyszukanie „Jana Kowalskiego”
◦ derefAliases
◦ Attributes - lista atrybutów które mają być zwrócone
◦ sizeLimit, timeLimit 
◦ typesOnly

Łukasz Sędek, Bernard van der Esch


WEITI, Politechnika Warszawska 18
 Pozwala na zmiany wpisu w imieniu
użytkownika
 Parametry modyfikacji

◦ Obiekt, który będzie modyfikowany


◦ Rodzaj modyfikacji(add, delete, replace)
 Zwracany
LDAPResult

Łukasz Sędek, Bernard van der Esch


WEITI, Politechnika Warszawska 19
 pozwala klientowi na żądanie dodania wpisu
   do katalogu.
 Parametry
◦ entry-nazwa wyróżniająca nowego wpisu
◦ attributes –lista atrybutów z których składa się nowy wpis.
 Zwraca AddResult:=LDAPResult

Łukasz Sędek, Bernard van der Esch


WEITI, Politechnika Warszawska 20
 Unbind – żądanie zerwania połączenia
◦ Nie wymaga odpowiedzi
 Abandon – prośba anulowania żądania
◦ AbandonRequest:: = MessageID 
◦ AbandonRequest nie żąda odpowiedzi z serwera
 Compare
◦ CompareResponse ::= LDAPResult

Łukasz Sędek, Bernard van der Esch


WEITI, Politechnika Warszawska 21
 W jakiej strukturze LDAP przechowuje dane?
◦ Drzewiastej
◦ Tablicy
◦ Zależnej od systemu operacyjnego
 Rozwiń skrót LDAP
◦ Long Directory Access Protocol
◦ Light Directory Access Protocol
◦ Language Directory Access Protocol
 Która z poniższych operacji nie wchodzi w skład
LDAPv3?
◦ Abandon
◦ Bind
◦ Create

Łukasz Sędek, Bernard van der Esch


WEITI, Politechnika Warszawska 22

You might also like