Benutzer-Werkzeuge

Webseiten-Werkzeuge


it:ldap

Dies ist eine alte Version des Dokuments!


Bisherige Erfahrungen gibt's mit OpenLdap, der 389 Directory Server soll aber auch ganz gut sein.

OpenLDAP

Gruppenmanagement

Um LDAP-User (oder auch andere Objekte) in Gruppen zu verwalten, gibt es die Objectklassen (~GroupOfNames und ~GroupOfUniqueNames) die mit ihrem Attribut „member“ auf andere LDAP-Objekte verweisen. Wenn jetzt das Problem aufkommt, heraus zu finden, ob ein LDAP-Objekt Mitglied einer Gruppe ist bzw. in welchen Gruppen es Mitglied ist, ist das durchsuchen aller defionierten Gruppen eine Möglichkeit. Die bessere Möglichkeit ist das Overlay-Modul „~MemberOf“. Diese Modul sorgt selbstständig für die Referenz des „Member“-Attributes entsprechend der Definition im „~GroupOf(Unique)Names“-Objekt, indem es das member-Attribut virtuell erstellt. Dieses Overlay ist in der Standard-Konfiguration nicht aktiv, das kann mit folgenden Code geändert werden:

#> ldapmodify

dn: cn=module{0},cn=config
changetype: modify
add: olcModuleLoad
olcModuleLoad: memberof

jetzt muss noch separat für jede Datenbank das Overlay eingerichtet werden, wobei es einen Unterschied zwischen „~GroupOfNames“ und „~GroupOfUniqueNames“ gibt:

#> ldapadd

dn: olcOverlay=memberof,olcDatabase={__xx__}hdb,cn=config
olcMemberOfGroupOC: groupOfUniqueNames
objectClass: olcMemberOf
objectClass: olcOverlayConfig
objectClass: olcConfig
objectClass: top
olcOverlay: memberof
olcMemberOfRefInt: TRUE
# die folgenden 2 Zeilen werden nur für "GroupOfUniqueNames" benötigt
# für  "GroupOfNames" stimmen die Defaultwerte des Overlays
olcMemberOfMemberAD: uniqueMember
olcMemberOfMemberOfAD: memberOf

WEnn das alles ohne Fehler geklappt hat, werden bei Änderungen im Gruppen-Objekt die entsprechenden Member-Objekte angepast.

it/ldap.1616358149.txt.gz · Zuletzt geändert: 2021/03/21 20:22 von sven