Dieser Artikel widmet sich dem Verzeichnisdienst LDAP. Ich bin gerade dabei, mich in dieses Thema einzuarbeiten und musste leider feststellen, dass sowohl Bücher wie auch Internetseiten zu diesem Thema nicht unbedingt sehr hilfreich sind. Ich möchte nun versuchen, hin und wieder einige Artikel zu LDAP zu schreiben in der Hoffnung, dem ein oder anderen Leser, der vor dem gleichen Problem steht wie ich, helfen zu können.

Was ist ein Verzeichnisdienst?

Aus dieser Überschrift können Sie bereits eines ersehen: LDAP ist ein Verzeichnisdienst. Bevor wir aber näher auf diesen speziellen Dienst eingehen, soll erst einmal die Frage geklärt werden: Was ist das eigentlich, ein Verzeichnidienst?

Ein Verzeichnisdienst ist prinzipiell eine im Netzwerk verteilte,hierarchisch aufgebaute Datenbank. Diese Verzeichnisdienste werden in Unternehmen hauptsächlich dafür benutzt, um Benutzer- und Objektdaten zentral zu speichern und zugreifbar zu machen. So können verschiedene Anwendungen und auch Betriebssysteme auf die Daten zugreifen. Somit können Benutzer und Rechte an einer zentralen Stelle geändert werden und die Änderungen sind für jedes Programm gültig. Verzeichnisdienste basieren auf dem X.500-Standard, der jedoch wegen seines hohen Umfangs nicht vollständig implementiert ist.

Was ist jetzt LDAP?

Widmen wir uns wieder der Frage vom Titel dieses Artikels. Was genau ist LDAP? Wir ahnen es schon: ein Verzeichnisdienst. LDAP steht für Light Directory Access Protocol, eine leichtgewichtige Form des Protokolls DAP. LDAP basiert auf X.500, implementiert aber nur einen kleinen Teil.des Standards; daher kommt das "L" (light) im Namen.

Aber warum hat man absichtlich eine geringe Funktionalität implementiert? Weil diese für die meisten Unternehmen vollkommen ausreicht. Verzeichnisdienste waren einfach zu komplex und zu schwer zu handhaben, um eine breitere Verbreitung zu finden. Mit der Einführung von LDAP änderte sich dies und zum ersten Mal wurden Verzeichnisdienste häufiger in Unternehmen eingesetzt.

Kleines Anwendungsbeispiel

Hier ein kleines Anwendungsbeispiel, wegen dem ich mich mit LDAP beschäftigen musste. An unserer Hochschule bzw. im Fachbereich Informatik verwalten wir die Benutzerkennungen unserer Mitarbeiter, Professoren und Studenten mit Hilfe von LDAP. Wir möchten unseren Studenten verschiedene Betriebssysteme zur Verfügung stellen: Windows, Linux, Unix, Mac OS. Aber unter jedem Betriebssystem sollen dieselbe Benutzerkennung und dasselbe Passwort gelten. Auch Informationen aus bestimmten Anwendungen sollen so gespeichert werden, dass sie von jedem Betriebssysten aus zugreifbar sind.

Hier kommt bei uns LDAP zum Einsatz. Mit Hilfe von LDAP werden Benutzerkennungen, Passwörter usw. zentral abgelegt. Wenn ein Student Probleme mit der Anmeldung an einem Betriebssystem hat, hat er einen zentralen Ansprechpartner, der in einem System nachschaut und auch nur dort den Fehler korrigiert. In Zukunft sollen auch Systeme wie die Notenabfrage an LDAP angeschlossen werden, aber das ist alles noch in der Arbeit.

Was unterscheidet einen Verzeichnisdienst von einer relationalen Datenbank?

Im Grunde ist ein Verzeichnisdienst ja eine Datenbank, wie bereits erwähnt. Aber wo liegt der genaue Unterschied? Datenbank sind meist schreib-/leseoptimiert, während Verzeichnisdienste auf häufigere Lese- als Schreiboperationen optimiert sind. Stellen Sie sich ein Verzeichnis vor, das Sie alle kennen: Ein Telefonbuch.

Bei einem Telefonbuch werden wesentlich seltener Einträge verändert als Einträge gelesen werden. Und ähnlich ist es bei einem Verzeichnisdienst. Verzeichnisdienste sind meistens über mehrere Server verteilt, während Datenbank in der Regel auf einem Server laufen.

Wie ist ein Verzeichnisdienst aufgebaut?

Verzeichnisdienste sind hierarchisch aufgebaut. Es gibt ein Wurzelelement, den rootDSE, wobei DSE für Directory Service Entry steht. Der rootDSE enthält Informationen über den LDAP-Server allgemein und über seine Fähigkeiten.Somit handelt es sich um einen in der Informatik üblichen Baum (wie auch in dem kleinen Vorschaubild dargestellt).

Das Wurzelelement selbst ist für den Benutzer unsichtbar. Wie bei einem Baum üblich, verzweigen von der Wurzel Äste auf untergeordnete Ebenen. Dieser Baum wird übrigens als DIT bezeichnet (Directory Information Tree). Dieser DIT soll in den Folgekapiteln weiter besprochen werden, denn er bildet die wichtigste Grundlage zum Verständnis von LDAP.

Anwendungen und Implementierungen von LDAP

LDAP wird in zahlreichen Unternehmen und Programmen eingesetzt. In vielen Anwendungen, die Sie kennen und benutzen, wird im Hintergrund LDAP verwendet. Da wären z.B. Emailprogramme wie Thunderbird und Outlook oder die Serienbrieferstellung von OpenOffice.

Hergestellt wird LDAP von verschiedenen Firmen in verschiedenen Versionen: Apche Software Foundation, Microsoft, Novell, Siemens usw. Natürlich heißen die jeweiligen Implementierungen unterschiedlich, haben auch unterschiedlichen Funktionsumfang und unterschiedlich nah am Standard.

Interessant ist OpenLDAP, eine freie und kostenlose Implementierung des Standards. Es ist Bestandteil vieler Linux-Distributionen und läuft auch unter MacOS, Unix und einigen Windows-Versionen. In dieser Artikelreihe wird auch OpenLDAP verwendet.

Ausblick

In weiteren Beiträgen werde ich zuerst noch einige theoretische Grundlagen wie den DIT und das Objektmodell von LDAP beschreiben, dann die Installation und Einrichtung von LDAP und anschließend einige ausgewählte Themen zur Benutzung.

cuchulainn, am 01.12.2011

Kommentare





Bildquelle:
Larry Ewing, Wikipedia (Herzlichen Glückwunsch: Linux wird in 2011 stolze 20 Jahre alt)

Autor seit 2 Jahren
72 Seiten
Pagewizz auf Facebook
Laden ...
Fehler!