Was ist LDAP?

10

Wie würden Sie LDAP einem Systemadministrator erklären, der davon gehört und vielleicht damit interagiert hat, es aber nie wirklich verstanden hat?

Analogien sind in Ordnung, aber bitte geben Sie einige wichtige technische Details an, um sie zu erden.

Gefragt im Sinne von Active Directory erklärt

sh-beta
quelle
Weitere Informationen zu David Pashleys
sh-beta

Antworten:

10

Ich habe diesen Artikel vor einigen Jahren geschrieben, in dem die Grundlagen von LDAP erläutert werden

David Pashley
quelle
Auf jeden Fall die vollständigste Antwort, aber was würden Sie über das Kopieren und Einfügen des Textes in Ihre Antwort denken? Bessere Suchindizierung und wir vermeiden zukünftige Linkprobleme ...
sh-beta
3
Es ist etwas lang und steht nicht unter einer CC-Lizenz. Der Artikel ist seit drei Jahren dort und ich habe nicht vor, diese Links zu verlieren.
David Pashley
Hoffen wir, dass es so bleibt. Hervorragender Artikel.
Sh-Beta
Dieser Artikel ist ein Juwel für diejenigen von uns, die davon gehört haben, aber nicht das Privileg hatten, es zu versuchen. Ich habe es zu diesem Zeitpunkt noch nicht fertig gelesen, aber nach dem, was ich gelesen habe, hat es mir geholfen, einen Großteil meines bisher neu gewonnenen Wissens anzupassen. Ich hoffe, Sie machen so lange weiter, wie es gültig bleibt.
Dark Star1
5

LDAP (Lightweight Directory Access Protocol) ist ein Protokoll auf Anwendungsebene, mit dem Clients eine Schnittstelle zu kompatiblen Verzeichnisdiensten herstellen können, um Verzeichnisentitäten zu bearbeiten oder das Verzeichnis nach Informationen abzufragen. Einer der Hauptvorteile besteht darin, eine standardisierte Schnittstelle für Systeme auf mehreren Plattformen bereitzustellen.

Auf den meisten Verzeichnissystemen ist LDAP nicht die einzige verfügbare Schnittstelle für die Kommunikation mit dem Server. In der Regel gibt es andere native Schnittstellen, die Leistung und andere Vorteile bieten können.

Das Standardkonzept hinter einer LDAP-Sitzung lautet:

  1. Stellen Sie eine Verbindung zum LDAP-kompatiblen Server her
  2. Binden Sie auf einer Basisebene (BaseDN genannt) an das Verzeichnis. Dies ist normalerweise ein Containerobjekt irgendwo in der Struktur des Verzeichnisses, z. B. eine Organisationseinheit. Je nachdem, ob das Verzeichnis für den anonymen Zugriff konfiguriert ist oder nicht, können Sie möglicherweise anonym binden
  3. Führen Sie Ihre Abfrage oder Anweisung aus

Abfragen können wie folgt ausgeführt werden:

  • innerhalb derselben Ebene in der Struktur, an die Sie gebunden sind (eine Basisbereichsabfrage)
  • innerhalb derselben Ebene oder einer Ebene unterhalb der Ebene, an die Sie gebunden sind (eine One-Level-Bereichsabfrage)
  • rekursiv entlang der gesamten Struktur, beginnend an der Stelle, an der Sie gebunden sind (eine Subtree-Sceop-Abfrage)

Da Verzeichnisse sehr verteilt sein können und übermäßig viele Informationen enthalten, haben Verzeichnisadministratoren normalerweise die Möglichkeit, LDAP-Abfragen auf eine bestimmte Anzahl von Ergebnissen zu beschränken (1000 ist ein allgemeines Maximum für eine Ergebnismenge).

Squillman
quelle
1
LDAP-Verzeichnisse sind leseoptimiert und weisen im Vergleich zu SQL-ähnlichen Datenbanken normalerweise eine schlechte Schreibleistung auf. Die LDAP-Datenbank kann auf verschiedene Arten verwendet werden. Die typischste Anwendung (außerhalb von Microsoft AD) ist jedoch ein Backend-Datenspeicher für die Benutzer- / Gruppenauthentifizierung.
Matt
5

Stellen Sie sich eine Datenbank vor, die in einem Baum organisiert ist. So können Sie beispielsweise eine typische Struktur eines Unternehmens auf natürliche Weise organisieren. Ein Unternehmen der obersten Ebene mit Gruppen / Abteilungen und Mitarbeitern am Ende, die selbst mehrere Eigenschaften haben können (wie Name, Telefon, Post, Adresse usw.). Sagen Sie ihm dann, dass es auch für alle anderen Daten geeignet ist, die auf ähnliche Weise organisiert sind, und dass ein offenes Protokoll von verschiedenen Plattformen / Sprachen darauf zugreift.

Außerdem aus Wikipedia: "Ein Verzeichnis ist eine Reihe von Objekten mit Attributen, die logisch und hierarchisch organisiert sind. Das häufigste Beispiel ist das Telefonverzeichnis, das aus einer Reihe von Namen (entweder von Personen oder Organisationen) besteht, die alphabetisch organisiert sind Jeder Name hat eine Adresse und eine Telefonnummer. "

Das ist die neulingsfreundlichste Erklärung, die ich mir vorstellen kann, ohne auf technische Details einzugehen.

Buster
quelle
Eine solide untechnische Erklärung, aber ich denke, einige technische Details sind angemessen (Ihre Zielgruppe sind Systemadministratoren, keine Manager).
Sh-Beta
Dann hättest du deine Frage klarer machen sollen, denke ich. So würde ich einen Systemadministrator erklären, der mich fragte: "Hey, ich habe hier und da von dem LDAP-Ding gehört, und ich habe mir wurley.demo.phpldapadmin.info angesehen , es aber nicht wirklich verstanden." Von da an ist es so einfach wie das Lesen von Wikipedia, Tutorials, Büchern oder RFC.
Buster
Frage geklärt. Und ich glaube nicht, dass der Satz "So einfach wie das Lesen des [...] RFC" jemals zuvor geschrieben wurde.
Sh-Beta
3

Es handelt sich um ein zentrales System, das einen schnellen Zugriff auf Daten ermöglicht, bei denen die tatsächlichen Daten in einer baumartigen Formation strukturiert sind. Die Sprache, die Sie für die Kommunikation mit diesem zentralisierten System verwenden, heißt LDAP. Dies ist genau das, ein Protokoll, ähnlich wie POP und IMAP ein Protokoll. Es kann Daten im gesamten Baum aktualisieren und durchsuchen.

Martin P. Hellwig
quelle
3

Erstens ist LDAP für sich genommen nur ein Protokoll. Es tut nichts, es sei denn, es gibt einen LDAP-Server, mit dem es interagieren kann.

Sie können damit auf ein Verzeichnis auf dem LDAP-Server zugreifen . Eine gute Analogie wäre ein Telefonbuch aus Papier oder ein Verzeichnis von Diensten (letzteres ist wahrscheinlich besser). Wenn Sie einen Ort suchen, an dem Ihr Auto repariert werden kann, vorausgesetzt, Sie sind mit den örtlichen Werkstätten nicht vertraut, können Sie in einem Papierverzeichnis nach Mechanikern in Ihrer Nähe suchen.

In ähnlicher Weise können Sie mit LDAP Informationen in einem LDAP-kompatiblen Verzeichnis nachschlagen, das auf einem Server ausgeführt wird. Jeder Eintrag im Verzeichnis ist ein "Objekt", das verschiedene Eigenschaften haben kann, und eine Anwendung, die mit dem Verzeichnis interagiert, erwartet, dass die Dinge auf eine bestimmte Weise formatiert werden. Von Natur aus ist es flexibel und erweiterbar, sodass Sie nicht auf das beschränkt sind, woran jemand anderes gedacht hat.

Zurück zur Mechaniker-Analogie: Die Informationen können Name, Adresse, Kosten pro Stunde sein, ob er Ihr Auto sabotiert, damit er zusätzliche Geschäfte von Ihnen abwickelt, Größe des Bierdarms und so weiter. Automechaniker können in einem Knoten des Verzeichnisbaums gespeichert sein, HiFi-Mechaniker können in einem anderen Knoten gespeichert sein. Jeder dieser Objekttypen muss nicht dieselben Eigenschaften aufweisen, sodass einige Informationen für einen Automechaniker nicht bei einem HiFi-Mechaniker vorhanden sind, der wiederum über eigene eindeutige Informationen verfügt, die sich ausschließlich auf ihn beziehen.

Es wird am häufigsten verwendet, um Informationen über Benutzer in einem Netzwerk zu speichern, aber theoretisch kann man alles hineinstecken. In einem Netzwerkszenario handelt es sich um Organisationsinformationen zur Person sowie möglicherweise um Sicherheitsinformationen, Konfigurationsinformationen für Anwendungen usw. Da alles zentral gespeichert ist, können Sie viele Informationen einfach und flexibel in einer einzigen Datenbank zentralisieren, die für ultraschnelle Suchvorgänge optimiert ist und auf die jede kompatible Anwendung zugreifen kann.

Maximus Minimus
quelle