Changer les permissions sous OpenDS

Les permissions (ACI = Access Control Instruction) dans OpenDS se regroupent en 2 catégories :

  1. global_aci : qui concerne les permissions par défaut des bases hébergées sur le serveur
  2. 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 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'.

fr/ressources/astuces/permission_opends.txt · Last modified: 2011/03/16 01:41 (external edit)
CC Attribution-Noncommercial-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0