3. Ein Verzeichnisdienst dient der Verwaltung von
Informationen zu Objekten wie Systeme,
Netzkomponenten und Benutzer
Wieso Verzeichnisdienste?
1 GRUNDLAGEN
3
Motivation
Mail System
Personal
Verwaltung
TK-Anlage
Datenbank
Betriebssystem
Netzwerk
4. Motivation II
4
Wieso Verzeichnisdienste?
Informationen müssen über
Unternehmensgrenzen hinweg bereit
gestellt werden
E-Mail Adressen
Telefonnummern
FAX-Nummer
Konfigurationen
Benutzerdaten
X.509 Zertifikate (PKI)
Komplexe Unternehmensanforderung
fordern das Informationen global zur
Verfügung stehen
1 GRUNDLAGEN
5. Hohe Kosten und geringe Kontrolle
Unterschiedliche Messaging-Systeme in Organisationen
Verschiedene Betriebssysteme in einer Infrastruktur
viele Anwendungen, die administriert werden müssen
Schwachstellen in der Sicherheit
Ungeschützte elektronische Dokumente
Unzureichend verwalteter Zugriffschutz
Veraltete Einträge in Zugriffslisten
Schwer realisierbare Mehrwertdienste
unternehmensweite Datenbank-Integration
Unified Messaging (E-Mail, Fax, Telefonie)
Probleme bei unterschiedlichen Verzeichnisdiensten
1 GRUNDLAGEN
5
Motivation III
6. Am Anfang war der ISO Standard X.500
Das Directory Access Protocol (DAP) regelt den
Zugriff auf die Daten
DAP - umfangreich, komplex, schwierig zu
Implementieren
Dies führte zu einer geringer Verbreitung
Daher Entwicklung von LDAP
L ightweight
D irectory
A ccess
P rotokoll
Von 1988 bis heute
1 GRUNDLAGEN
6
Die Geschichte von LDAP
7. Von 1988 bis heute
1 GRUNDLAGEN
7
Die Meilensteine von LDAP
Entwicklungsschritte
X.500
ISO IS9594
LDAP v1
RFC 1487
LDAP v2
RFC 1777
LDAP v3
RFC 2251
LDAP v4
8. ist ein effizientes auf TCP/IP basiertes
Kommunikationsprotokoll für
Verzeichnisdienste
ist eine normierte Sprache wie LDAP Client und
Server miteinander kommunizieren
ist kompatibel zwischen LDAP Anbietern durch
standardisierte Daten-Schemen
ist ein hierarchisches objektorientiertes
Datenbankmodell
ist einfach zu implementieren, da es schlank
(lightweight) und effizient ist
1 GRUNDLAGEN
8
Was ist LDAP?
9. Das LDAP Modell
9
4 Schichten Architektur
1 GRUNDLAGEN
Informationsmodell –
beschreibt was in ein Verzeichnis abgelegt werden kann
Namensmodell –
beschreibt wie Daten angeordnet und angesprochen werden
Funktionsmodell –
beschreibt was man alles mit Daten machen kann
Sicherheitsmodell –
beschreibt wie Verzeichnisse geschützt werden können
10. Informationen werden als Einträge in einem Baum,
dem Directory Information Tree (DIT) dargestellt.
Jeder Eintrag besitzt einen eindeutigen
Distinguished Name
Jeder Eintrag gehört zu (mindestens) einer
Objektklasse
Objektklassen werden durch ihre Attribute
definiert
Ein Attribut besitzt einen Typ und einen oder
mehrere Werte
Wie werden Informationen gespeichert?
2 LDAPINFORMATIONSMODELL
10
LDAP Struktur
11. 2 LDAPINFORMATIONSMODELL
11
Einträge und Attribute
Objekt 1
Das Verzeichnis
Objekt 2
Objekt 3
Objekt n
Attribut 1 Attribut 2 Attribut nObjekt
+49 221 5551234Telefonnummer 0173 7716345
Typ Werte
Schema
12. LDAP Struktur
12
Was kann gespeichert werden?
Alphanumerische Daten
z.B. Namen, Adressen, E-Mail
Binärdaten
z.B. Fotos, Grafiken, X.509 Zertifikate
Zeiger auf andere Daten
Innerhalb des DIT können Zeiger auf
externe Daten gesetzt werden
Durch eigene Schemata beliebig
erweiterbar
2 LDAPINFORMATIONSMODELL
13. OID des Schemas
Eindeutiger Name und Klasse von der geerbt wird
Textliche Beschreibung
Attribute die angegeben werden müssen
Attribute die angegeben werden können
2 LDAPINFORMATIONSMODELL
13
Beschreibung der Objekte
objectclass ( 1.3.6.1.1.1.2.0 NAME ‘userAccount' SUP top AUXILIARY
DESC 'Beschreibung eines Nutzer Accounts mit Attributen'
MUST ( cn $ uid $ uidNumber $ serialNumber $ homeDirectory )
MAY ( userPassword $ loginShell $ gecos $ description ) )
14. Eindeutige OID des Attributs
Eindeutiger Name innerhalb des Schemas
Textliche Beschreibung
Vergleichsregeln (Matching Rules) die bei der
Suche gelten
Attribtsdefinition über Schema OID
2 LDAPINFORMATIONSMODELL
14
Beschreibung der Attribute
attributetype ( 2.5.4.5 NAME 'serialNumber'
DESC 'Seriennummer'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.44{64} )
15. Der OID ist eine durch Punkte getrennte dezimale
Ziffernfolge
OIDs werden von der der Internet Assigned
Numbers Authority (IANA) vergeben
Eine OID ist weltweit eindeutig
Zentrales Element des Informationsmodells
2 LDAPINFORMATIONSMODELL
15
Der Object Identifier (OID)
Auszug aus www.alvestrand.no
OID Bedeutung
1. Durch die ISO zugewiesen
1.3.6.1 Der Internet OID
1.3.6.1.1.1 RFC2307 NIS Netgroup
1.3.6.1.1.1.1 NISSchema Syntax
1.3.6.1.1.1.1.4 loginShell im NIS Schema
16. Das Verzeichnis organisiert die
Objekte in Baumform
Die Basiselemte zur Strukturierung sind:
Organisation des Verzeichnisses
3 LDAPNAMENSMODELL
16
Wie arbeitet LDAP
Symbol Bezeichnung
c country
l locality
o organsisation
ou organisational unit
cn common name
uid user id
17. Wie arbeitet LDAP
17
Aufbau des Verzeichnisses
Daten werden als Einträge gespeichert
Einträge werden als Baumknoten
gespeichert
Jeder Knoten hat 0 bis n Kinderknoten
Jeder Knoten hat genau 1
Elternknoten
Mit Ausnahme des Wurzelknotens
Jeder Knoten hat einen eindeutigen
Namen
RDN (Relative Distinguished Name)
DN (Distinguished Name)
3 LDAPNAMENSMODELL
18. Aufbau des Verzeichnisses
3 LDAPNAMENSMODELL
18
Wie arbeitet LDAP
o = root
ou = Firma ou = FHDW
c = de c = nl c = us
cn = Prof Y cn = Prof X
c = de
ou = FHDW
cn = Prof X
RDN: c=de
countryName
DIT
Directory Information Tree
RDN: ou = FHDW
organizationName
o = root
RDN: cn= Prof X
commonName
DN: cn = Prof X, ou = FHDW, c = de
Telefon = 0900 / 5551234
Fax = 0900 / 55512345
Mail = profX@fhdw.de
…
cn = Prof X
20. Mit dem Kommando "ldapsearch" können Objekte
auf Grund bestimmter Attribute gesucht werden.
Hier wird als Benutzer „prof“ nach einen CN
„Michael“ durchsucht (mit Passwort „prof“)
Hier wird als "anonymer Benutzer" nach der
Organisation „fhdw" gesucht. Als Ergebnis werden
nur die Attribute “mail“und „cn“ ausgegeben
Beispiele für den Suchen-Befehl
4 LDAPFUNKTIONSMODELL
20
Funktionenmodell
ldapsearch -h localhost -D "cn=prof, dc=fhdw, o=home"
"(cn=Michael)" -W
ldapseach -x -h localhost -LLL "(ou=fhdw)" mail cn
21. Der Sicherheitsgedanke
21
Informationen vor unbefugtem Zugriff
schützen
ACLs (Access Control Lists) regeln den
Zugriff bis auf Attributsebene
Bis LDAP v2 unsicher (Passwort als
Klartext)
LDAP v3 bietet SSL- TLS-
Verschlüsselung
Simple Authentification and Security
Layer (SASL) wird unterstützt um
verschiedene Authentifizierungs-
Methoden einzubinden
5 LDAPSICHERHEITSMODELL
22. 5 LDAPSICHERHEITSMODELL
22
Authentisieren als LDAP Nutzer
Benutzer Verzeichnisdienst
Authentisierung (bind Operation) als Person X
Abfrage/Suche/Änderung
Ergebnis gemäß Berechtigung
Abmeldung (unbind Operation) als Person X
23. Single Sign On
5 LDAPSICHERHEITSMODELL
23
LDAP als Authentisierungsdienst
Benutzer VerzeichnisdienstAnwendung
Ich bin Person X
mit „Passwort“
Bind als Person X
mit „Passwort“
Erfolg!OK
Anmeldung an weiteren Anwendungen über
Ticket ohne weitere Authentifizierung
24. LDAP unter Windows
24
Das Active Directory
Active Diretory (AD) ist seit 1999 ab
Windows 2000 verfügbar
Das AD ist ein objektorientierte
Datenbank bestehend aus Klassen,
Schemata und Objekten, die
hierarchisch angeordnet sind
Es werden Informationen über
Netzwerkobjekte und Ressourcen
gespeichert und verwaltet
Abwärtskompatibel zum Windows NT
Directory Service
6 LDAPAUSPRÄGUNG
25. LDAP unter Windows
25
Vorteile
Replikation über LDAP möglich
Gruppenrichtlinien können im AD
gespeichert werden
Integration von DNS und Exchange
Server in der Verzeichnisdatenbank
Single-Sign-On über Kerberos Tickets
Integration in den Webserver
(Authentifizierung im IIS)
Loadbalancing und Failover werden
unterstützt
6 LDAPAUSPRÄGUNG
26. LDAP ist standardisiert und durch Schemen
(unterschiedlicher) Hersteller beliebig erweiterbar
Funktionen sind optimiert für typische Aufgaben
eines Verzeichnisdienstes (performante Suche)
Hierarchische Struktur sorgt für einen global
Verteilbarkeit und eindeutigen Namen
Anwendungsübergreifender Zugriff auf
unterschiedliche Datenquellen
Verbesserte Aktualität der gespeicherten Daten
Zukunftssichere Plattform
7 ZUSAMMENFASSUNG
26
Fazit