Ldap grundlagen: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Zeile 25: Zeile 25:
 
{{#drawio:ldap-grundlagen1}}
 
{{#drawio:ldap-grundlagen1}}
 
=Blattobjekt=
 
=Blattobjekt=
 +
<pre>
 +
objectclass (
 +
    1.3.6.1.1.1.2.0
 +
    NAME 'posixAccount'
 +
    DESC 'Abstraction of an account with POSIX attributes'
 +
    SUP top
 +
    AUXILIARY
 +
    MUST ( cn $ uid $ uidNumber $ gidNumber $ homeDirectory )
 +
    MAY ( userPassword $ loginShell $ gecos $ description )
 +
)
 +
</pre>
 +
 +
 
{{#drawio:blattobjekt}}
 
{{#drawio:blattobjekt}}
  

Version vom 3. März 2023, 04:49 Uhr

Zu was dient ein Verzeichnisdienst

Ein Verzeichnisdienst dient der Verwaltung von Informationen zu Objekten wie Systeme,Netzkomponenten und Benutzer.

LDAP ein Verzeichnisdienst

  • Lightweight Directory Access Protocol
  • 1995 an der University of Michigan als
  • Alternative zu X.500 DAP entwickelt
  • Ursprünglich nur Zugriffsprotokoll auf X.500 Server
  • Es handelt sich um eine leseoptimiert Datenbank

Wie ist er umgesetzt

Ein LDAP-Verzeichnis ist durch eine einfache Baum-Hierarchie realisiert und enthält folgende Ebenen:

  • Am Anfang eine Baumes stehen die Domain Komponenten
  • Darunter stehen oft Organisations-Einheiten
  • Darunter können oft schon Blattobjekte stehen.
  • Alle Objekte werden durch einen eindeutigen Bezeichner gekennzeichnet.
  • Dieser nennt man Englisch Distinguish Name.
  • Man unterscheidet zwischen
Containerobjekte
Enthält untergeordneten Objekten. 
Blattobjekte
Endpunkt

Struktur

Blattobjekt

objectclass (
    1.3.6.1.1.1.2.0
    NAME 'posixAccount'
    DESC 'Abstraction of an account with POSIX attributes'
    SUP top
    AUXILIARY
    MUST ( cn $ uid $ uidNumber $ gidNumber $ homeDirectory )
    MAY ( userPassword $ loginShell $ gecos $ description )
)


Aufbau

  • Informationen werden als Einträge in einem Baum,dem Directory Information Tree (DIT) dargestellt.
  • Jedes Objekt 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.

Objektklassen

  • Eine Objektklasse stellt eine Kategorie von Objekten dar, wie z. B. Benutzer, Drucker oder Anwendungsprogramme, die gemeinsame Merkmale aufweisen.
  • Die Definition für jede Objektklasse enthält eine Liste der Attribute, mit denen Instanzen der Klasse beschrieben werden können.
  • Beispielsweise weist die Klasse Benutzer Attribute wie givenName, surname und streetAddress auf.
  • Die Liste der Attribute für eine Klasse ist unterteilt in die Attribute, die ein Objekt der Klasse enthalten muss, und in weitere Attribute, die ein Objekt enthalten kann.

Attribute

  • Im Schema werden auch alle Attribute definiert.
  • Die Definition jedes Attributs enthält eindeutige Bezeichner für das Attribut und die Syntax des Attributs
  • Desweiterenoptionale Bereichsgrenzen für die Attributwerte, ob das Attribut nur einen oder mehrere Werte aufweisen kann sowie ob das Attribut indiziert ist.
  • Jedes Attribut wird im Verzeichnisschema genau einmal definiert.
  • Anschließend kann von mehreren Objektklassen auf jedes Attribut verwiesen werden.
  • So ist beispielsweise das description-Attribut einmal definiert.
  • Anschließend wird von mehreren Objektklassen darauf verwiesen.

Schema

Ein Schema definiert die folgenden Punkte:

  • Attributstypen.
  • Objektklassen.
  • Filter- und Matching- Regeln bei Vergleichsoperationen.
  • Rechte zum Anlegen oder Modifizieren von Datensätzen

Quellen