Nein nicht über Filter, sondern schlicht über die 'ldap suffix' Definition, slapd liest dann den Wert des Attributes 'member' als Alias auf den richtigen Eintrag.
Vielleicht stell ich mich zur Zeit auch nur zu dumm an !
Das hab ich mir auch schon einmal so gedacht, nur leider funktioniert das irgendwie nicht. Ich lege mir eine Gruppe an dn: cn=gruppe1,ou=service,o=system objectClass: groupofNames cn: gruppe1 member: uid=mschmid,ou=People,o=system Dann habe ich einen User: dn: uid=mschmid,ou=People,o=system ... ... mache ein ldapsearch -x -a always -b ou=service,o=system und bekomme ? dn: cn=gruppe1,ou=service,o=system objectClass: groupofNames cn: gruppe1 member: uid=mschmid,ou=People,o=system ich habs dann so zum Spass mal mit find, search probiert, immer das gleiche. Ach im übrigen habe ich 318 Seiten gelesen, aber über Verweise steht in meinem Buch leider so gut wie nichts drin.
Vielleicht solltest du dich vor deinem Projekt erst einmal grundsätzlich mit LDAP und speziell mit OpenLDAP auseinandersetzen. Ein vertieftes Wissen über Authentifizierungsmethoden wäre auch nicht schlecht.
Ich glaub das mache ich schon zugenüge ! Wen man mich fragen würde, sind verweise, entweder noch nicht richtig implementiert oder nicht gut genug dokumentiert. Oder ich bin einfach nur zu dumm ! Aber trotzdem danke ! Ihr Buch ist trotzdem ne gut Hilfe ! Und eins der wenigen in Deutsch !
Hallo,
"Manfred Schmid"
Nein nicht über Filter, sondern schlicht über die 'ldap suffix' Definition, slapd liest dann den Wert des Attributes 'member' als Alias auf den richtigen Eintrag.
Vielleicht stell ich mich zur Zeit auch nur zu dumm an !
Das hab ich mir auch schon einmal so gedacht, nur leider funktioniert das irgendwie nicht.
Ich lege mir eine Gruppe an
dn: cn=gruppe1,ou=service,o=system objectClass: groupofNames cn: gruppe1 member: uid=mschmid,ou=People,o=system
Dann habe ich einen User:
dn: uid=mschmid,ou=People,o=system ... ...
mache ein ldapsearch -x -a always -b ou=service,o=system
der Schalter -a ist hier nicht nötig, nur bei echtem 'alias dereferencing' und das gibt es in openldap-2.1.x nicht, da das darunter liegende Database Management System BerkeleyDB-4.1 dann nicht stabil arbeitet. Erst in openldap-2.2.x und BerkeleyDB-4.2.52 geht echtes alias dereferencing. Es macht sogar richtig Spaß. Ich habe in meiner Testumgebung mal 2.000 Aliases erstellt, die Lesezeit ist kaum reduziert.
und bekomme ?
dn: cn=gruppe1,ou=service,o=system objectClass: groupofNames cn: gruppe1 member: uid=mschmid,ou=People,o=system
das reicht ja schon. Ich habe mal meinen loglevel auf 128 gesetzt, sorry für die Überlänge, muß aber sein: ,----[ Logauszug ] |: <= acl_get: [6] acl cn=Unwichtiger Angestellter 1024,ou=benchmark,o=avci,c=de attr: sn |: => acl_mask: access to entry "cn=Unwichtiger Angestellter 1024,ou=benchmark,o=avci,c=de", attr "sn" requeste |: => acl_mask: to value by "cn=dieter kluenter,ou=partner,o=avci,c=de", (=n) |: => bdb_group: found group: "cn=administratoren,o=avci,c=de" |: <= bdb_group: found objectClass groupOfNames and member |: <= bdb_group: "cn=dieter kluenter,ou=partner,o=avci,c=de" is in "cn=administratoren,o=avci,c=de": member |: <= acl_mask: [1] applying write(=wrscx) (stop) |: <= acl_mask: [1] mask: write(=wrscx) |: => access_allowed: search access granted by write(=wrscx) |: => access_allowed: read access to "cn=Unwichtiger Angestellter 1024,ou=benchmark,o=avci,c=de" "entry" reques |: => acl_get: [1] check attr entry `---- Bei Gruppenzugeörigkeiten geht es doch nur darum, bei einem Authentifizierungsversuch zu prüfen, ob der auch einer bestimmten Gruppe zugehört, damit slapd die entsprechenden Rechte setzen kann.
ich habs dann so zum Spass mal mit find, search probiert, immer das gleiche.
Ach im übrigen habe ich 318 Seiten gelesen, aber über Verweise steht in meinem Buch leider so gut wie nichts drin.
Das wird sich in der nächsten Auflage ändern. Erscheinungstermin September 04.
Wen man mich fragen würde, sind verweise, entweder noch nicht richtig implementiert oder nicht gut genug dokumentiert. Oder ich bin einfach nur zu dumm !
Das Thema Gruppenbildung, gerade in Verbindung mit Samba, Exim und proFTP wird häufiger auf der OpenLDAP Mailingliste angesprochen, obwohl dort streng OFF TOPIC, aber eine Suche im Archiv der letzen 6 Monate bringt sicher einiges zu Tage. http://www.openldap.org/lists/openldap-software/
Aber trotzdem danke ! Ihr Buch ist trotzdem ne gut Hilfe ! Und eins der wenigen in Deutsch !
Das einzige deutschsprachige Buch zu dem Thema :-) Danke für die Blumen. -- Dieter Kluenter | Systemberatung Tel:040.64861967 | Fax: 040.64891521 mailto: dkluenter(at)dkluenter.de http://www.avci.de
der Schalter -a ist hier nicht nötig, nur bei echtem 'alias dereferencing' und das gibt es in openldap-2.1.x nicht, da das darunter liegende Database Management System BerkeleyDB-4.1 dann nicht stabil arbeitet. Erst in openldap-2.2.x und BerkeleyDB-4.2.52 geht echtes alias dereferencing. Es macht sogar richtig Spaß. Ich habe in meiner Testumgebung mal 2.000 Aliases erstellt, die Lesezeit ist kaum reduziert.
Leider, Leider ist bei meiner Umgebung noch kein openldap-2.2x drin ?
Bei Gruppenzugeörigkeiten geht es doch nur darum, bei einem Authentifizierungsversuch zu prüfen, ob der auch einer bestimmten Gruppe zugehört, damit slapd die entsprechenden Rechte setzen kann.
Wen ich es jetzt richtig verstanden habe, dann mache ich das über ACL in slapd.conf ! Und bekomme keinen Verweis auf den eigendlichen Eintrag. Erst ab 2.2 Wen ja, gibts vielleicht einen kurzen auszug aus der slapd.conf ?
Das wird sich in der nächsten Auflage ändern. Erscheinungstermin September 04.
Werde ich mir vormerken !
Wen man mich fragen würde, sind verweise, entweder noch nicht richtig implementiert oder nicht gut genug dokumentiert. Oder ich bin einfach nur zu dumm !
Das Thema Gruppenbildung, gerade in Verbindung mit Samba, Exim und proFTP wird häufiger auf der OpenLDAP Mailingliste angesprochen, obwohl dort streng OFF TOPIC, aber eine Suche im Archiv der letzen 6 Monate bringt sicher einiges zu Tage.
Danke werde ich mir mal ansehen !
Aber trotzdem danke ! Ihr Buch ist trotzdem ne gut Hilfe ! Und eins der wenigen in Deutsch !
Das einzige deutschsprachige Buch zu dem Thema :-) Danke für die Blumen.
Nicht ganz richtig es gibt noch eins, allerdings ist das mehr auf dem Stand Openldap 1.x Manfred
Hi,
Manfred Schmid
der Schalter -a ist hier nicht nötig, nur bei echtem 'alias dereferencing' und das gibt es in openldap-2.1.x nicht, da das darunter liegende Database Management System BerkeleyDB-4.1 dann nicht stabil arbeitet. Erst in openldap-2.2.x und BerkeleyDB-4.2.52 geht echtes alias dereferencing. Es macht sogar richtig Spaß. Ich habe in meiner Testumgebung mal 2.000 Aliases erstellt, die Lesezeit ist kaum reduziert. Leider, Leider ist bei meiner Umgebung noch kein openldap-2.2x drin ?
Doch sicher, ich habe das gerade auf einer SuSE-7.3 kompiliert. Dazu braucht man - BerkeleyDB-4.2.52 + 2 patches - cyrus-sasl-2.1.16 + - openldap-2.2.5 Damit kein Konflikt mit bestehenden Libraries entsteht, installiere ich alles nach /opt/avci, es kann natürlich jedes Verzeichnis gewählt werden. Die configure Umgebung mit den entsprechenden Preprozessor- und Linker flags, also CPPFLAGS und LDFLAGS, bekanntmachen.
Bei Gruppenzugeörigkeiten geht es doch nur darum, bei einem Authentifizierungsversuch zu prüfen, ob der auch einer bestimmten Gruppe zugehört, damit slapd die entsprechenden Rechte setzen kann. Wen ich es jetzt richtig verstanden habe, dann mache ich das über ACL in slapd.conf !
Ja, oder ACI's.
Und bekomme keinen Verweis auf den eigendlichen Eintrag. Erst ab 2.2 Wen ja, gibts vielleicht einen kurzen auszug aus der slapd.conf ?
Habe ich da noch keine Beispiele gebracht? ,----[ access Regeln ] | access to was auch immer | by group=cn=samba.o=meine firma write | by users read | by anonymous auth stop | | access to group=cn=samba,o=meine firma, | by cn=sambaAdmin,o=meine firma write | by dn.subtree=ou=noch nen gruppe,o=meine firma read `---- [...] Hier noch mal kurz ein Beispiel für einen alias (ab openldap-2.2.x) ,----[ alias Beispiel ] | dn: ou=samba,o=meine firma,c=de | objectclass: organizationalUnit | ou: samba | | dn: uid=franz,ou=samba,o=meine firma,c=de | objectclass: alias | objectclass: extensibleObject | aliasedObjectName: uid=franz,ou=users,o=meine firma,c=de | uid: franz | sn: franz | | dn: uid=franz,ou=users,o=meine firma,c=de | objectclass: posixaccount | objectclass: inetorgperson | uid: franz | sn: franz | usw. `---- Mit dieser Konstruktion kann dann der User Franz sowohl der Gruppe 'Samba' also auch der Gruppe proFTP zugeteilt werden. -Dieter -- Dieter Kluenter | Systemberatung Tel:040.64861967 | Fax: 040.64891521 mailto: dkluenter(at)dkluenter.de http://www.avci.de
participants (2)
-
Dieter Kluenter
-
Manfred Schmid