LDAP Zugiffe im Verzeichnis
LDAP Zugiffe im Verzeichnis
Hallo,
wer kennt sich mit LDAP aus?
Folgendes Beispiel:
dc=domain,dc=local
-cn=admin
-cn=manager
-ou=test
-ou=test1
in der slapd.conf steht u.a folgendes:
access to *
by dn="cn=admin,dc=domain,dc=local" write
Jetzt kann ich mit der Anmeldung cn=admin,dc=domain,dc=local
schreibend auf den kompletten Baum zugreifen.
Jetzt meine Frage:
Wenn ich mit dem "Manager" nur auf "test" schreibend zugreifen will
a) was muss in der slapd.con als access eingetragen werden
b) wie sieht die anmeldung dafuer aus?
Ich habe jetzt den ganzen Tag rumprobiert (mit subtree, children usw.) aber ich kriege es nicht hin.
Ich ware dankbar wenn mich mal einer auf den richtigen Weg bringen wuerde.
wer kennt sich mit LDAP aus?
Folgendes Beispiel:
dc=domain,dc=local
-cn=admin
-cn=manager
-ou=test
-ou=test1
in der slapd.conf steht u.a folgendes:
access to *
by dn="cn=admin,dc=domain,dc=local" write
Jetzt kann ich mit der Anmeldung cn=admin,dc=domain,dc=local
schreibend auf den kompletten Baum zugreifen.
Jetzt meine Frage:
Wenn ich mit dem "Manager" nur auf "test" schreibend zugreifen will
a) was muss in der slapd.con als access eingetragen werden
b) wie sieht die anmeldung dafuer aus?
Ich habe jetzt den ganzen Tag rumprobiert (mit subtree, children usw.) aber ich kriege es nicht hin.
Ich ware dankbar wenn mich mal einer auf den richtigen Weg bringen wuerde.
- McAldo
- Moderator
- Beiträge: 2069
- Registriert: 26.11.2003 11:43:36
- Lizenz eigener Beiträge: GNU Free Documentation License
- Wohnort: Terra / Sol-System / Milchstraße
Vielleicht geht das:
Für subtree könnte auch base oder onelevel der richtige Wert sein. Das musst du mal austesten.
Gib bitte Bescheid welches richtig ist und ob es klappt. Am besten auch mit einem [gelöst] in der Titelzeile.
McAldo
Code: Alles auswählen
access to dn.subtree="ou=test,dc=domain,dc=local"
by dn="cn=manager,ou=test,dc=domain,dc=local" write
by * none
Gib bitte Bescheid welches richtig ist und ob es klappt. Am besten auch mit einem [gelöst] in der Titelzeile.
McAldo
Achte auf deine Gedanken, denn sie werden Worte.
Achte auf deine Worte, denn sie werden Handlungen.
Achte auf deine Handlungen, denn sie werden Gewohnheiten.
Achte auf deine Gewohnheiten, denn sie werden dein Charakter.
Achte auf deinen Charakter, denn er wird dein Schicksal.
(Talmud)
Achte auf deine Worte, denn sie werden Handlungen.
Achte auf deine Handlungen, denn sie werden Gewohnheiten.
Achte auf deine Gewohnheiten, denn sie werden dein Charakter.
Achte auf deinen Charakter, denn er wird dein Schicksal.
(Talmud)
Ok, genauso hatte ich es schon.
Dann passiert folgendes:
Ich melde mich z.B. mit phpldapadmin an (cn=manager,dc=domain,=dc=local) oder
(cn=manager,ou=test,dc=domain,dc=local) an.
Das geht auch, aber er meldet "base entry does not exist, create it?
Create geht natuerlich nicht, hat kein Schreibrecht. Der Base Entry ist ja auch schon vorhanden.
Das gilt fuer subtree, base und onelevel, alle durchprobiert.
Ich will eigentlich nur einen zweiten Admin, der aber nur auf bestimmte Bereich zugreifen darf.
Dann passiert folgendes:
Ich melde mich z.B. mit phpldapadmin an (cn=manager,dc=domain,=dc=local) oder
(cn=manager,ou=test,dc=domain,dc=local) an.
Das geht auch, aber er meldet "base entry does not exist, create it?
Create geht natuerlich nicht, hat kein Schreibrecht. Der Base Entry ist ja auch schon vorhanden.
Das gilt fuer subtree, base und onelevel, alle durchprobiert.
Ich will eigentlich nur einen zweiten Admin, der aber nur auf bestimmte Bereich zugreifen darf.
- McAldo
- Moderator
- Beiträge: 2069
- Registriert: 26.11.2003 11:43:36
- Lizenz eigener Beiträge: GNU Free Documentation License
- Wohnort: Terra / Sol-System / Milchstraße
Der Manager ist schon im LDAP-Baum vorhanden, oder?
Der muss auch in der slapd.conf stehen:
Das Passwort machst du mit ldappasswd. Den Hash komplett mit {SSHA} übernehmen.
Das und die schon geposteten Codezeilen sollten aber funktionieren (jedenfalls bei mir ). Achja, der rootdn muss vor den Accessregeln stehen.
McAldo
Der muss auch in der slapd.conf stehen:
Code: Alles auswählen
rootdn "uid=manager,ou=test,dc=domain,dc=local "
rootpw {SSHA}/PZZJGcEQyBdudB+JjJwfK
Das und die schon geposteten Codezeilen sollten aber funktionieren (jedenfalls bei mir ). Achja, der rootdn muss vor den Accessregeln stehen.
McAldo
Achte auf deine Gedanken, denn sie werden Worte.
Achte auf deine Worte, denn sie werden Handlungen.
Achte auf deine Handlungen, denn sie werden Gewohnheiten.
Achte auf deine Gewohnheiten, denn sie werden dein Charakter.
Achte auf deinen Charakter, denn er wird dein Schicksal.
(Talmud)
Achte auf deine Worte, denn sie werden Handlungen.
Achte auf deine Handlungen, denn sie werden Gewohnheiten.
Achte auf deine Gewohnheiten, denn sie werden dein Charakter.
Achte auf deinen Charakter, denn er wird dein Schicksal.
(Talmud)
Es gibt die Moeglichkeit den Admin in der slapd.conf einzutragen.
(So wie von dir beschrieben)
Mache ich aber nicht.
Der steht mit verschlüsseltem Passwort im ldapbaum unter cn=admin.
Der funktioniert soweit auch. (Kann man per .ldif im Baum eintragen).
Mit dem Manager habe ich das genauso gemacht.
Kann man den alternativ ueberhaupt beliebig viele rootdn in der
slapd.conf eintragen? Ich haette gedacht das das nicht geht.
(So wie von dir beschrieben)
Mache ich aber nicht.
Der steht mit verschlüsseltem Passwort im ldapbaum unter cn=admin.
Der funktioniert soweit auch. (Kann man per .ldif im Baum eintragen).
Mit dem Manager habe ich das genauso gemacht.
Kann man den alternativ ueberhaupt beliebig viele rootdn in der
slapd.conf eintragen? Ich haette gedacht das das nicht geht.
- McAldo
- Moderator
- Beiträge: 2069
- Registriert: 26.11.2003 11:43:36
- Lizenz eigener Beiträge: GNU Free Documentation License
- Wohnort: Terra / Sol-System / Milchstraße
Der Defaultadmin (cn=admin,dc=localdomain) steht direkt im Verzeichnisbaum. Mit rootdn kann man weitere Admins eintragen, welche dann entsprechenden Zugriff bekommen können. Ob diese funktionieren wenn sie nur im LDAP-Verzeichnis stehen weiß ich nicht, da ich das nur mit Einträgen in der slapd.conf mache. Es funktioniert.
McAldo
McAldo
Achte auf deine Gedanken, denn sie werden Worte.
Achte auf deine Worte, denn sie werden Handlungen.
Achte auf deine Handlungen, denn sie werden Gewohnheiten.
Achte auf deine Gewohnheiten, denn sie werden dein Charakter.
Achte auf deinen Charakter, denn er wird dein Schicksal.
(Talmud)
Achte auf deine Worte, denn sie werden Handlungen.
Achte auf deine Handlungen, denn sie werden Gewohnheiten.
Achte auf deine Gewohnheiten, denn sie werden dein Charakter.
Achte auf deinen Charakter, denn er wird dein Schicksal.
(Talmud)
Ok, ich test weiter
Was komisch ist:
wenn ich per .ldif einmal den admin als cn und dann den manager (auch per .ldif, als cn) eintrage, dann kann ich mich mit
access to *
by dn="cn=admin,dc=domain,dc=local" write
by dn="cn=manager,dc=domain,dc=local" write
in der slapd.conf mit beiden anmelden und habe schreibrecht auf den ganzen Baum.
Wenn ich aber die zweite zeile aendere in:
by dn.subtree="cn=manager,ou=test,dc=domain,dc=local" write
dann kann ich mich mit Manager nicht anmelden.
Bin ich einfach zu bloede? (Ihr koennt offen antworten)
Was komisch ist:
wenn ich per .ldif einmal den admin als cn und dann den manager (auch per .ldif, als cn) eintrage, dann kann ich mich mit
access to *
by dn="cn=admin,dc=domain,dc=local" write
by dn="cn=manager,dc=domain,dc=local" write
in der slapd.conf mit beiden anmelden und habe schreibrecht auf den ganzen Baum.
Wenn ich aber die zweite zeile aendere in:
by dn.subtree="cn=manager,ou=test,dc=domain,dc=local" write
dann kann ich mich mit Manager nicht anmelden.
Bin ich einfach zu bloede? (Ihr koennt offen antworten)
- McAldo
- Moderator
- Beiträge: 2069
- Registriert: 26.11.2003 11:43:36
- Lizenz eigener Beiträge: GNU Free Documentation License
- Wohnort: Terra / Sol-System / Milchstraße
by dn.subtree="..."
Was soll das werden?
Das kommt bei access to hin (wie von mir weiter oben schon geschrieben)
Wenn der DN des zugreifenden Nutzers geschrieben wird, dann ohne Zusätze.
McAldo
Was soll das werden?
Das kommt bei access to hin (wie von mir weiter oben schon geschrieben)
Wenn der DN des zugreifenden Nutzers geschrieben wird, dann ohne Zusätze.
McAldo
Achte auf deine Gedanken, denn sie werden Worte.
Achte auf deine Worte, denn sie werden Handlungen.
Achte auf deine Handlungen, denn sie werden Gewohnheiten.
Achte auf deine Gewohnheiten, denn sie werden dein Charakter.
Achte auf deinen Charakter, denn er wird dein Schicksal.
(Talmud)
Achte auf deine Worte, denn sie werden Handlungen.
Achte auf deine Handlungen, denn sie werden Gewohnheiten.
Achte auf deine Gewohnheiten, denn sie werden dein Charakter.
Achte auf deinen Charakter, denn er wird dein Schicksal.
(Talmud)
OK, ich habe
rootdn "cn=manager,ou=test,dc=domain,dc=local" und
rootpw in die slapd.conf eingetragen.
Geht auch super, allerdings hat der genau die gleichen Schreibrechte wie mein Admin.
(d.h. er kann auch unter dc=domain,dc=local direkt schreiben, nicht nur unter
ou=test.
Vielleicht geht das auch einfach nicht, die meisten nutzen wohl den Standard,
das der Admin alles darf, die User nur ihre Passwoerter aendern usw.
Ich dachte halt ich kann auch weitere Admins einrichten die nur auf bestimmte
Teile des Baumes schreibend zugreifen duerfen.
rootdn "cn=manager,ou=test,dc=domain,dc=local" und
rootpw in die slapd.conf eingetragen.
Geht auch super, allerdings hat der genau die gleichen Schreibrechte wie mein Admin.
(d.h. er kann auch unter dc=domain,dc=local direkt schreiben, nicht nur unter
ou=test.
Vielleicht geht das auch einfach nicht, die meisten nutzen wohl den Standard,
das der Admin alles darf, die User nur ihre Passwoerter aendern usw.
Ich dachte halt ich kann auch weitere Admins einrichten die nur auf bestimmte
Teile des Baumes schreibend zugreifen duerfen.
- McAldo
- Moderator
- Beiträge: 2069
- Registriert: 26.11.2003 11:43:36
- Lizenz eigener Beiträge: GNU Free Documentation License
- Wohnort: Terra / Sol-System / Milchstraße
Und was passiert, wenn du folgendes noch in die slapd.conf einträgst:
Code: Alles auswählen
access to dn.subtree="ou=test,dc=domain,dc=local"
by dn="cn=manager,ou=test,dc=domain,dc=local" write
by * read
Achte auf deine Gedanken, denn sie werden Worte.
Achte auf deine Worte, denn sie werden Handlungen.
Achte auf deine Handlungen, denn sie werden Gewohnheiten.
Achte auf deine Gewohnheiten, denn sie werden dein Charakter.
Achte auf deinen Charakter, denn er wird dein Schicksal.
(Talmud)
Achte auf deine Worte, denn sie werden Handlungen.
Achte auf deine Handlungen, denn sie werden Gewohnheiten.
Achte auf deine Gewohnheiten, denn sie werden dein Charakter.
Achte auf deinen Charakter, denn er wird dein Schicksal.
(Talmud)
access to *
by dn="cn=admin,dc=domain,dc=local"
access to dn.subtree="ou=test,dc=domain,dc=local"
by dn="cn=manager,ou=test,dc=domain,dc=local" write
rootdn "cn=manager,ou=test,dc=domain,dc=local" (oder auch cn=manager,dc=dom...)
rootpw xxx
Damit habe ich Schreibzugriff auf alles. (Mit admin und manager)
(Das ist so, sobald ein rootdn in der slapd.conf angegeben ist, egal
mit welchem Teil des Baumes).
----------------------------------------------------------------------------------------
Also schon eher so:
admin.ldif:
dn: cn=admin,dc=domain,dc=local
objectClass: organizationalRole (usw...)
userPassword: xxx
manger.ldif
dn: cn=manager,dc=domain,dc=local (oder auch mit ...ou=test,dc=domain usw.. probiert)
objectClass: organizationalRole (usw...)
userPassword: xxx
mit ldapadd in den Baum eintragen.
Zusammen mit dem acces to dn.subtree con oben kann ich mich
auch anmelden, aber es kommt beim Manager die Meldung:
"base entry does not exist, create it?
by dn="cn=admin,dc=domain,dc=local"
access to dn.subtree="ou=test,dc=domain,dc=local"
by dn="cn=manager,ou=test,dc=domain,dc=local" write
rootdn "cn=manager,ou=test,dc=domain,dc=local" (oder auch cn=manager,dc=dom...)
rootpw xxx
Damit habe ich Schreibzugriff auf alles. (Mit admin und manager)
(Das ist so, sobald ein rootdn in der slapd.conf angegeben ist, egal
mit welchem Teil des Baumes).
----------------------------------------------------------------------------------------
Also schon eher so:
admin.ldif:
dn: cn=admin,dc=domain,dc=local
objectClass: organizationalRole (usw...)
userPassword: xxx
manger.ldif
dn: cn=manager,dc=domain,dc=local (oder auch mit ...ou=test,dc=domain usw.. probiert)
objectClass: organizationalRole (usw...)
userPassword: xxx
mit ldapadd in den Baum eintragen.
Zusammen mit dem acces to dn.subtree con oben kann ich mich
auch anmelden, aber es kommt beim Manager die Meldung:
"base entry does not exist, create it?