PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Schema-Definitionen von LDAP-Verzeichniseinträgen?



sham
20.12.06, 21:49
Hallo,
ich mache grad ein Referat über Serverbetriebssysteme und ein wichtiger Teil der Arbeit ist auch LDAP. Bei Wikipedia wird dies einigermaßen gut erklärt aber ich habe noch ein kleine Verständnisproblem.
Es geht um die Verzeichniseinträge, auf dem Bild http://upload.wikimedia.org/wikipedia/de/0/06/Ldapentry.gif gibt es noch die
objectclass: top
objectclass: person
etc. aber wofür sind die gut?

Danke
sham

emwe
21.12.06, 07:19
Hallo,

na das wird noch was :).

Ich würde Dir ein gutes LDAP-Howto zur Einführung empfehlen. Aber die wichtigsten Dinge kann ich Dir hoffentlich hier kurz erklären:

1. LDAP ist eine hierarchisch aufgebaute Datenbank (baumähnlich, man denke an OO-Strukturen).
2. Der DN ist der eindeutige Bezeichner eines jeden Eintrags. Er besteht aus dem eigentlichen Identifier des Objekts und seinem logischen "Speicherort", also dem Pfad (ähnlich wie in einem Dateisystem: "/" in einem FS wäre das LDAP-Root (hier etwa: "o=acme").
3. Wie in der Objektorientierten Programmierung hat ein LDAP-Objekt so etwas wie "Klassen", also Schablonen, die festlegen, welche Attribute ("cn", "mail") ein bestimmtes Objekt hat. Das sind die "objectClass"-Angaben.
Jedes LDAP-Objekt braucht z.B. das "dn"-Attribut. Ist ein Objekt auch vom Typ "person", kommt z.B. noch "givenName" (Vorname) dazu. Mit der Angabe der verschiedenen Schemata legst Du also fest, welche Attribute ein bestimmtes Objekt besitzen kann und/oder muss.

Soweit mein Versuch, Dich zu verwirren ;).

Viel Spass mit LDAP und lies Dir mal eine Einführung durch, die ist hoffentlich verständlicher und gehaltvoller als mein Geschreibsel.

Gruß,

emwe

sham
21.12.06, 08:14
Hallo emwe,

also das Prinzip und den Aufbau von LDAP hab ich im Grunde verstanden, was ich jedoch nicht ganz verstehe, sind diese Schema-Definitionen, was ich oben beschrieben hab.
Auf der Grafik http://upload.wikimedia.org/wikipedia/de/0/06/Ldapentry.gif steht was von objectclass Attributen, ich verstehe nicht wofür diese sind.
Was haben die Attribute cn, givenname, sn etc. mit objectclass: top, objectclass: person, objectclass: organizationalPerson, objectclass: inetorgPerson zu tun?

fladi.at
21.12.06, 08:31
Wenn ein Objekt die objectClass (Schemadefinition) "person" als Attribut besitzt, so ist für dieses Objekt festgelegt, dass es die Attribute "sn" und "cn" haben MUSS und die Attribute "description", "seeAlso", "telephoneNumber" und "userPassword" haben KANN.
Jedes objecLasss Attribut zieht somit (meist) zusätzliche neue Attribute mit in das Objekt, die gefüllt werden müssen, oder nur optional sind. Du wirst einem Objekt also das Attribut "userPassword" nur geben können, wenn es mindestens die objectClass "person" als Attribut hat. Allerdings kann es auch sein, dass eine andere objectClass als "person" ein Attribut "userPassword" mitbringt, wie z.b. die objectClass "simpleSecurityObject".

sham
21.12.06, 21:17
Verstehe ich das richtig, diese objectclass Attribute sind bereits fest definiert?

MiGo
21.12.06, 21:49
Verstehe ich das richtig, diese objectclass Attribute sind bereits fest definiert?
Ja. Such mal auf deinem Rechner nach ".schema"-Dateien, das sind die Dateien, in denen die objectclass definiert/beschrieben ist. Ist allerdings nicht so ganz intuitiv :)