Granularité des ACL

Cyril DAVID · le 22/11/13 à 10:38

Bonjour,

Dans le cadre d'un projet, j'ai eur recours aux ACL pour permettre aux membres d'administrer les groupes et les utilisateurs d'un espace de travail.

Cependant, mon besoin est un peu plus spécifique : permettre aux membres d'administrer les utilisateurs d'un groupe spécifique de l'espace de travail.

Il me semble que ce n'est pas possible avec le mécanisme des ACL, qui ne propose pas cette granularité.

Pouvez-vous m'indiquer s'il existe une méthode permettant de répondre à mon besoin ?

Merci d'avance,

12 pts
Olivier Jaquemet - le 25/11/13 à 10:58
Meilleure réponse

Bonjour Cyril,

Les ACLs ne proposent pas cette granularité.

Pour parvenir à ce besoin, une possibilité (parmis d'autres) :

  • accorder l'ACL d'édition des membres par espace aux utilisateur autorisés
  • développer en plus un DataController pour restreindre les droits d'éditions pour les utilisateurs en question (mais par pour un admin central)

Attention, ce développement n'est pas trivial !

  • il existe plusieurs droits qui donne accès à l'édition de membres : 
    • droits d'administration central : mbr.isAdmin()
    • droits d'édition de Member dans l'administration central : checkAccess("admin/users/member", ...)
    • droits d'édition de DB Member dans l'administration central : checkAccess("admin/users/dbmember", ...)
    • droits d'édition de membre dans un espace : mbr.checkAccess("admin-ws/member-edit", ...)
  • pensez aux choix liés aux autorisations d'ajout et de suppression de groupe !
    exemple : l'administrateur (via ACL) est-il autorisé à ajouter / retirer un membre dans ce groupe qui lui donne l'autorisation de l'éditer ?

Bon développement.

9 pts
Cyril DAVID · le 25/11/13 à 15:05

Merci beaucoup pour vos explications.

0 pt