====== Changer les permissions sous OpenDS ====== {{tag> ldap}} Les permissions (ACI = Access Control Instruction) dans OpenDS se regroupent en 2 catégories : - global_aci : qui concerne les permissions par défaut des bases hébergées sur le serveur - aci : les permissions locales 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 [[https://www.opends.org/wiki/page/AccessControlUsageExamples|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'. {{ressources:dossiers:opends:change_perm_opends.png|}}