Prochaine révision | Révision précédenteDernière révisionLes deux révisions suivantes |
informatique:reseau:ldap:memberof [2015/07/03 14:55] – créée bn8 | informatique:reseau:ldap:memberof [2021/03/24 10:02] – [Installation] bn8 |
---|
====== Module MemberOf ====== | ====== Module MemberOf ====== |
| |
| <note warning>**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.</note> |
===== Installation ===== | ===== Installation ===== |
| |
Il faut d'abord charger les modules //memberof// et //refint// : | Il faut d'abord charger les modules //memberof// et //refint// : |
* Créer le fichier ///tmp/load-modules.ldif// : <code>dn: cn=module{0},cn=config | * Créer le fichier ///tmp/load-modules.ldif// : <code bash>cat << EOF > /tmp/load-modules.ldif |
| dn: cn=module{0},cn=config |
changetype: modify | changetype: modify |
add: olcModuleLoad | add: olcModuleLoad |
olcModuleLoad: memberof | olcModuleLoad: memberof |
olcModuleLoad: refint</code> | olcModuleLoad: refint |
* Jouer ce LDIF via //ldapmodify// : <code>ldapmodify -x -D cn=admin,cn=config -W -f /tmp/load-modules.ldif</code> | EOF</code> |
| * Jouer ce LDIF via //ldapmodify// : <code bash>ldapmodify -x -D cn=admin,cn=config -W -f /tmp/load-modules.ldif |
| # Ou : |
| ldapmodify -Y EXTERNAL -H ldapi:/// -f /tmp/load-modules.ldif</code> |
| |
Il faut ensuite activer ces modules pour votre //database// : | Il faut ensuite activer ces modules pour votre //database// : |
* Créer le fichier ///tmp/config-modules.ldif// : <code>dn: olcOverlay={0}memberof,olcDatabase={1}hdb,cn=config | * Créer le fichier ///tmp/config-modules.ldif// : <code bash>cat << EOF > /tmp/config-modules.ldif |
| dn: olcOverlay={0}memberof,olcDatabase={1}mdb,cn=config |
objectClass: olcConfig | objectClass: olcConfig |
objectClass: olcMemberOf | objectClass: olcMemberOf |
olcMemberOfMemberOfAD: memberOf | olcMemberOfMemberOfAD: memberOf |
| |
dn: olcOverlay={1}refint,olcDatabase={1}hdb,cn=config | dn: olcOverlay={1}refint,olcDatabase={1}mdb,cn=config |
objectClass: olcConfig | objectClass: olcConfig |
objectClass: olcOverlayConfig | objectClass: olcOverlayConfig |
olcOverlay: {1}refint | olcOverlay: {1}refint |
olcRefintAttribute: memberof member manager owner uniqueMember | olcRefintAttribute: memberof member manager owner uniqueMember |
| EOF |
</code> | </code> |
* Jouer ce LDIF avec //ldapadd// : <code>ldapadd -x -D cn=admin,cn=config -W -f /tmp/config-modules.ldif</code> | * Jouer ce LDIF avec //ldapadd// : <code bash>ldapadd -x -D cn=admin,cn=config -W -f /tmp/config-modules.ldif |
| # Ou : |
| ldapadd -Y EXTERNAL -H ldapi:/// -f /tmp/config-modules.ldif</code> |
| |
<important>Toutes les inclusions d'utilisateurs faite à des groupes avant l'activation de ces modules ne seront pas pris en compte.</important> | <note important>Toutes les inclusions d'utilisateurs faite à des groupes avant l'activation de ces modules ne seront pas pris en compte.</note> |
| |