ldap
Les permissions (ACI = Access Control Instruction) dans OpenDS se regroupent en 2 catégories :
Les permissions sont stockées en tant qu'attributs des feuilles de l'arbres et sont donc transportées en cas de réplications ou d'export/import.
Les permissions sont écrites dans un format particulier a OpenDS. Voir ce lien pour des détails sur la syntaxe.
Pour ajouter un accès en lecture sur des champs particuliers au sous arbre: o=Marketing,dc=Societe il faut dans un premier temps écrire la règle ACL et la sauvegarder dans un fichier :
Dans l'exemple ci-dessous, on donne accès aux utilisateurs sur les champs “mail” et “telephoneNumber” qui leurs sont propres (ldap:///self).
dn: o=Marketing,dc=Societe changetype: modify add: aci aci: (targetattr="mail || telephoneNumber")(version 3.0; acl "Write Access to Self"; allow (write) userdn="ldap:///self";)
On sauvegarde ce fichier sous le nom “ACI_Write_to_self.txt”. Cette règle ne sera pas globale, on va l'appliquer uniquement au sous-arbre qui nous intéresse. Elle va donc être chargée dans l'arbre via l'utilitaire “ldapmodify”.
note: si l'on souhaite ajouter un permission dans global_aci, il faut passer par l'utilitaire “configds”, en mode interactif ou non.
$ ./ldapmodify -h localhost -p 1389 -D "cn=Directory Manager" -w SUP3RP4SSWORD --filename ACI_Write_to_self.txt Processing MODIFY request for o=Marketing,dc=Societe MODIFY operation successful for DN o=Marketing,dc=Societe
Pour vérifier la prise en compte, on passe par l'interface pour vérifier les entrées aux format LDIF de l'objet 'o=Marketing'.