Marco Gaiarin wrote: > Mandi! Marco D'Ettorre > In chel di` si favelave... > >> http://www.openldap.org/doc/admin23/slapdconfig.html#Access%20Control > > L'avevo visto ma non mi aveva detto nulla. > >> man slapd.access > > Oh, hai la soluzione sotto il naso e non lo sai, scusate, questa mi era > proprio sfuggita. > > Solo che ancora qualcosa non mi quadra. Non ho provato, ma a naso io > dovrei scrivere: > > by group/posixGroup/memberUid.exact=ced,ou=Group,dc=sv,dc=lnf,dc=it > > Solo che questa cosa a me torna solo 'gaio', 'walter', ... e credo che > sia necessario da questo costruire una dn. > > Aia. Vedo: > > http://www.openldap.org/lists/openldap-software/200411/msg00439.html > > dimmi che dal 2004 qualcosa รจ cambiato... ;-(((
Non e' cambiato niente perche' non c'e' niente da cambiare: il gruppo POSIX e' una cosa che riguarda il sistema operativo, mentre LDAP conosce solo il gruppo LDAP, ovvero il groupOfNames o la sua variante tarocca groupOfUniqueNames (da evitare). Il groupOfNames e' il gruppo LDAP per eccellenza in quanto contiene i membri sotto forma di DN, ovvero l'unico nome LDAP delle entries, mentre il gruppo POSIX contiene i memberUid, cioe' degli identificativi che per LDAP non hanno nessun significato. E' pur vero che se nel tuo albero censisci gli utenti di un solo dominio POSIX (cosa che non esiste, ma facciamo finta di si'), allora e' probabile che tu possa definire una corrispondenza univoca memberUid => DN (magari non il contrario, DN => memberUid, ma questo e' quesi irrilevante). Allora, se vuoi farti del male e usare i gruppi POSIX per le regole di accesso, puoi usare i set (non documentati in slapd.access(5), ma nelle FAQ: <http://www.openldap.org/faq/data/cache/1133.html>; occhio che ancora nella 2.3.38 c'e' un baco, fisato nella 2.3.39), oppure provare il modulo ultra-sperimentale contrib/slapd-modules/acl/posixgroup.c Nel caso dei set, in pratica devi usare il memberUid per costruire il DN con cui fare i confronti (piuttosto inefficiente); per esempio, la regola che confronta l'identita' del client con i membri di un gruppo POSIX il cui DN sia "cn=POSIX,cn=Groups", assumendo che i DN degli utenti si costruiscano con "uid=" + memberUid + ",cn=Users", e': access to * by set="([uid=]+[cn=POSIX,cn=Groups]/memberUid+[,cn=Users]) & user" read In oni caso, tieni presente che usare i gruppi POSIX per l'accesso LDAP e' in generale la risposta sbagliata ad una domanda mal posta. Ciao, p. Ing. Pierangelo Masarati OpenLDAP Core Team SysNet s.r.l. via Dossi, 8 - 27100 Pavia - ITALIA http://www.sys-net.it --------------------------------------- Office: +39 02 23998309 Mobile: +39 333 4963172 Email: [EMAIL PROTECTED] --------------------------------------- _______________________________________________ OpenLDAP mailing list OpenLDAP@sys-net.it https://www.sys-net.it/mailman/listinfo/openldap