Ho una configurazione OpenLDAP su Debian 7.1, (OpenLDAP 2.4.31) e sto provando a configurare il membro di overlay. La mia configurazione è come ho letto in molti siti su Internet, tuttavia non funziona ancora per me.
Il problema è che gli attributi memberOf delle entità vengono aggiornati solo quando creo un gruppo, ma non vengono aggiornati quando modifico o cancello un gruppo. In realtà questo stesso problema è stato posto una volta qui prima: come configuro la manutenzione inversa dei gruppi su un server openldap? (memberOf) , ma anche se è selezionato come risposta, non sono riuscito a trovare alcuna informazione utilizzabile nelle risposte. (Anche il poster originale non poteva fare nulla con le risposte secondo i commenti ...)
La mia configurazione è così: cn = config / cn = module {0} .ldif
dn: cn=module{0}
objectClass: olcModuleList
cn: module{0}
olcModulePath: /usr/lib/ldap
olcModuleLoad: {0}back_hdb
olcModuleLoad: {1}memberof
structuralObjectClass: olcModuleList
E per il modulo: cn = config / olcDatabase = {1} hdb / olcOverlay = {0} memberof.ldif
dn: olcOverlay={0}memberof
objectClass: olcMemberOf
objectClass: olcOverlayConfig
olcOverlay: {0}memberof
structuralObjectClass: olcMemberOf
olcMemberOfGroupOC: groupOfNames
olcMemberOfMemberAD: member
olcMemberOfMemberOfAD: memberOf
olcMemberOfRefInt: TRUE
Il gruppo che aggiungo:
dn: cn=test,ou=services,dc=x,dc=y
cn: test
objectClass: groupOfNames
objectClass: top
description: test group
member: cn=Almafa Teszt,ou=users,dc=x,dc=y
La query che eseguo:
$ ldapsearch -LLL -h localhost -x -D cn=admin,dc=x,dc=y -b u=users,dc=x,dc=y -W '(memberOf=cn=test,ou=services,dc=x,dc=y)' memberOf
Quindi il problema non è su come interrogare l'attributo, ma che dopo aver modificato o rimosso il gruppo, il risultato della ricerca non cambia ...
Aggiornamento : Per quanto riguarda la risposta di Brian, ho anche impostato l'overlay di refint, con la seguente configurazione:
$ ldapsearch -LLL -b cn=module{0},cn=config
dn: cn=module{0},cn=config
objectClass: olcModuleList
cn: module{0}
olcModulePath: /usr/lib/ldap
olcModuleLoad: {0}back_hdb
olcModuleLoad: {1}memberof.la
olcModuleLoad: {2}refint
$ ldapsearch -LLL -b olcOverlay={1}refint,olcDatabase={1}hdb,cn=config
dn: olcOverlay={1}refint,olcDatabase={1}hdb,cn=config
objectClass: olcConfig
objectClass: olcOverlayConfig
objectClass: olcRefintConfig
objectClass: top
olcOverlay: {1}refint
olcRefintAttribute: memberof member manager owner
Ma né riparava il membro della sovrapposizione, né funzionava da solo. Quando ho modificato il nome di un membro di un gruppo, l'attributo membro del gruppo non è stato aggiornato. Queste due questioni potrebbero essere correlate?