[Groupes] Gestion des intersections entre groupes

cancel
Showing results for 
Search instead for 
Did you mean: 
sebr
Member II

[Groupes] Gestion des intersections entre groupes

Effectivement toutes mes excuses! Je repose ma question en français. J'étudie actuellement la solution Alfresco pour une implémentation possible au sein de mon organisation. Actuellement, je suis confronté à un problème lié à la gestion des groupes. Je souhaiterais en effet pouvoir attribué à un fichier une permission de type "Accessible aux utilisateurs du groupe A ET du groupe B". Visiblement ça n'est pas possible au sein de l'interface graphique standard livré avec Alfresco 3.0. En parcourant ce forum, j'ai vu qu'il restait néanmoins possible de réaliser un Web Script réalisant cette opération.

Auriez vous éventuellement des informations sur l'implémentation d'un tel concept voir même un Web script déjà créé?

Merci

Cordialement

Sébastien
6 Replies
michaelh
Active Member

Re: [Groupes] Gestion des intersections entre groupes

Bonjour,
Vous avez du vous tromper de forum (ou alors de langue), c'est la déclinaison francophone ici  :wink:
sebr
Member II

Re: [Groupes] Gestion des intersections entre groupes

Une question un peu plus simple serait : Est il possible d'implémenter une fonctionnalité permettant
- soit de créer un groupe dynamique issu de l'intersection de X autres groupes
- soit de gérer des permissions de type accès aux membres faisant partie de l'intersection de X groupes?!

Si c'est possible, cela vous semble t'il facile?

Merci
rivarola
Active Member

Re: [Groupes] Gestion des intersections entre groupes

Bonjour,

En dehors de la piste WebScript un moyen assez simple de faire ça est d'implémenter une Dynamic Authority qui attribue des permissions supplémentaires aux utilisateurs appartenant aux deux groupes. Un avantage est qu'on est sûr que tout changement aux groupes (ajout ou suppression de membre) est immédiatement pris en compte.
sebr
Member II

Re: [Groupes] Gestion des intersections entre groupes

Merci pour votre réponse, je commençais à désespérer Smiley Wink Je suis actuellement entrain d'étudier la solution des "Dynamic Authorities". Auriez-vous éventuellement des docs, scripts ou autres illustrant ce concept?

Merci d'avance

Sébastien
rivarola
Active Member

Re: [Groupes] Gestion des intersections entre groupes

Bonjour,

Non, il n'existe pas beaucoup de littérature sur le sujet. Par contre ce n'est pas très compliqué, et on peut s'inspirer de la classe OwnerDynamicAuthority développée par Alfresco pour allouer tous les droits sur un document à son créateur :
public class OwnerDynamicAuthority implements DynamicAuthority, InitializingBean
{
    private OwnableService ownableService;

    public OwnerDynamicAuthority()
    {
        super();
    }

    public void setOwnableService(OwnableService ownableService)
    {
        this.ownableService = ownableService;
    }

    public void afterPropertiesSet() throws Exception
    {
        if (ownableService == null)
        {
            throw new IllegalArgumentException("There must be an ownable service");
        }
    }

    public boolean hasAuthority(final NodeRef nodeRef, final String userName)
    {
        return AuthenticationUtil.runAs(new RunAsWork<Boolean>(){

            public Boolean doWork() throws Exception
            {
                // TODO Auto-generated method stub
                return EqualsHelper.nullSafeEquals(ownableService.getOwner(nodeRef), userName);
            }}, AuthenticationUtil.getSystemUserName());
      
    }

    public String getAuthority()
    {
       return PermissionService.OWNER_AUTHORITY;
    }

}

Pour la déclaration dans le contexte XML, s'inspirer aussi du code Alfresco…
sebr
Member II

Re: [Groupes] Gestion des intersections entre groupes

Hummm? Y'a t'il des ressources, autres que le wiki, sur le sujet?