Module MemberOf
Ce module est incompatible avec une synchronisation syncrepl. Dans ce contexte, il est conseillé d'utiliser le module dynlist en remplacement.
Dans les faits, ce module peut fonctionner avec une synchronisation syncrepl, en outre, en cas de redémarrage d'un serveur esclave, si celui-ci synchronise des changements au niveau de groupes, les modifications sur les attributs dynamiques des membres ne seront pas faites automatiquement. Il faudra alors attendre la prochaine modification du groupe pour que l'attribut dynamique soit mis à jour sur tous les membres. De la même manière, en cas de synchronisation d'un serveur esclave avec une base vide, les attributs dynamiques ne seront pas alimentés.
Installation
Il faut d'abord charger les modules memberof et refint :
ldapmodify -Y EXTERNAL -H ldapi:/// << EOF dn: cn=module{0},cn=config changetype: modify add: olcModuleLoad olcModuleLoad: memberof olcModuleLoad: refint EOF
Il faut ensuite activer ces modules pour votre database :
ldapadd -Y EXTERNAL -H ldapi:/// << EOF dn: olcOverlay={0}memberof,olcDatabase={1}mdb,cn=config objectClass: olcConfig objectClass: olcMemberOf objectClass: olcOverlayConfig objectClass: top olcOverlay: memberof olcMemberOfDangling: ignore olcMemberOfRefInt: TRUE olcMemberOfGroupOC: posixGroup olcMemberOfMemberAD: uniqueMember olcMemberOfMemberOfAD: memberOf dn: olcOverlay={1}refint,olcDatabase={1}mdb,cn=config objectClass: olcConfig objectClass: olcOverlayConfig objectClass: olcRefintConfig objectClass: top olcOverlay: {1}refint olcRefintAttribute: memberof member manager owner uniqueMember EOF
Toutes les inclusions d'utilisateurs faite à des groupes avant l'activation de ces modules ne seront pas pris en compte.