Forum Ametys

Forum de la communauté Ametys

You are not logged in.

#1 19/06/2015 11:21:09

alexB
Guest
Registered: 18/06/2015
Posts: 22

Problème gestion des droits + JCR

Bonjour,

J'ai récemment essayé votre application Ametys ODF.
L'installation s'est globalement bien passée à ceux-ci près :

La gestion des droits :
J'ai un peu de mal à saisir le fonctionnement derrière l'administration des droits.

Pour l'instant j'utilise :
org.ametys.runtime.plugins.core.right.Basic

L'edition des profils n'est pas possible, que ce soit depuis l'interface d'administration ou directement dans l'appli CMS.

ERROR [org.ametys.runtime.plugins.core.right.profile.sitemap.action.view] (http-bio-8080-exec-4;/cms/_admin/plugins/core/servercomm/messages.xml)
Cannot retrieve a ProfileBasedRightsManager.java.lang.IllegalStateException: RightsManager is of class 'org.ametys.runtime.plugins.core.right.BasicRightsManager' that is not an instance of ProfileBasedRightsManager
at org.ametys.runtime.plugins.core.right.profile.actions.CreateProfileAction.act(CreateProfileAction.java:80)

Je dois surement définir des "contextes" ?

Lorsque je passe à :
org.ametys.runtime.plugins.core.right.DefaultProfileBased

Je peux éditer des profils. Cependant je n'ai aucun droit lorsque je m'identifie sur l'application cms malgrès un profil d'administrateur avec tout les droits.


-Le deuxième problème que je rencontre est lié au JCR.
Lorsque je veux éditer le contenu  du rootOrgUnit l'excepetion suivante est levée :

Caused by: javax.jcr.lock.LockException: Cannot add lock token:
lock already held by other session. (lock held by node /ametys:root/ametys:odf/ametys:contents/55/83/orgunit-root-orgunit
at org.apache.jackrabbit.core.lock.LockInfo.throwLockException(LockInfo.java:269)
at org.apache.jackrabbit.core.lock.LockManagerImpl.addLockToken(LockManagerImpl.java:805)

J'ai l'impression que la session est monopolisée par un utilisateur Anonyme, et je ne parviens pas à la dévérouiller depuis l'interface d'administration. Y'a-t-il à votre connaissance un moyen d'y remédier? En passant peut-être par la console ?

Quelques informations sur ma configuration :
L'application cms et site tournent sur le même Tomcat.

CredentialsProvider : org.ametys.runtime.plugins.core.authentication.CAS
AuthenticationManager : null
UsersManager : org.ametys.runtime.plugins.core.user.CoreModifiableJdbc

GroupManager :
org.ametys.runtime.plugins.core.group.ModifiableJdbcCore

Cordialement

Last edited by alexB (19/06/2015 11:25:21)

Offline

#2 19/06/2015 14:31:10

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,091

Re: Problème gestion des droits + JCR

Un sujet pour un problème smile

Parlons donc des droits. Le "Basic" est un gestionnaire de droit qui répond toujours oui : il est très utile en démo, mais moins en production smile. C'est pour cela que vous avez une erreur lorsque vous cherchez à éditer les droits.

Donc en revenant à la valeur fournie par défaut, vous devez d'abord vous affecter en tant que gestionnaire ou superadmin depuis l'espace administrateur (/odf/_admin). Mais une fois connecté vous n'aurez ces droits que pour le contexte applicatif : vous devez vous donner les droits sur les autres contextes de droits via les outils de l'onglet de gestion des droits.

Concernant le lock, il arrive parfois que JCR s’emmêle dans ses locks. Il faut alors couper tomcat, puis aller dans le répertoire du repository et effacer le fichier "locks".


Raphael Franchet
Expert Ametys

Offline

#3 19/06/2015 15:52:09

Cédric Damioli
Ametys Product Manager
From: Toulouse
Registered: 10/08/2010
Posts: 293

Re: Problème gestion des droits + JCR

Pour essayer d'être clair sur le chapitre complexe de la gestion des droits :
Dans Ametys, une autorisation correspond à un triplet (droit unitaire, utilisateur, contexte) : par exemple j'ai le droit de validation d'une formation dans le contexte de l'UFR de droit, mais pas dans le contexte de l'UFR de sciences

Il y a des dizaines de droits unitaires différents (un par action en général et parfois bien plus), donc on les regroupe en profils pour pouvoir les gérer.

Ensuite on affecte un profil à un utilisateur (ou un groupe) dans un contexte donné.

Là où ca se complique, c'est qu'il y a plusieurs types de contextes: les contextes métiers (ex. plan du site sur un site Web, composantes pour l'ODF, ...), le contexte applicatif, le contexte des contenus, ...
C'est pour ça que dire "j'ai le profil administrateur" ne suffit pas. Il faut préciser le contexte.
Et dans le cas de l'action "Affecter un gestionnaire" dans l'écran d'administration, ça a pour effet d'affecter un profil avec tous les droits sur le contexte applicatif.
Concrètement, l'effet principal est d'avoir le droit de donner des droits.
Pour le reste, il faut distribuer les droits (y compris à soi-même) sur les contextes métiers.

J'espère avoir été à peu près clair smile

Offline

#4 22/06/2015 16:38:42

alexB
Guest
Registered: 18/06/2015
Posts: 22

Re: Problème gestion des droits + JCR

Bonjour,

Merci à vous deux pour vos réponses.

Un sujet pour un problème

Au temps pour moi, oublions le JCR dans ce cas smile

Donc en revenant à la valeur fournie par défaut, vous devez d'abord vous affecter en tant que gestionnaire ou superadmin depuis l'espace administrateur (/odf/_admin). Mais une fois connecté vous n'aurez ces droits que pour le contexte applicatif : vous devez vous donner les droits sur les autres contextes de droits via les outils de l'onglet de gestion des droits.

Oui, j'ai choisi un gestionnaire pour mon site depuis la page "website" de l'espace administrateur.
Cependant lorsque je m'identifie en tant que contributeur avec le compte choisi comme gestionnaire, je ne peux pas donner des droits depuis la partie "Assignation des profils" (l'interface étant très limitée).
(En utilisant le plugin org.ametys.runtime.plugins.core.right.DefaultProfileBased) 

J'y parviens avec le plugin org.ametys.runtime.plugins.core.right.HierarchicalProfileBased. Mais les différents utilisateurs du site ne parviennent pas à se connecter à la partie CMS, et ce mal grès l'ajout de droit dans les différents contextes depuis "Assignation des profils".

J'espère avoir été à peu près clair smile

Oui très, la théorie est là, mais j'ai du négliger quelques étapes dans la pratique smile

Cordialement

Last edited by alexB (22/06/2015 18:05:30)

Offline

#5 23/06/2015 12:32:53

Cédric Damioli
Ametys Product Manager
From: Toulouse
Registered: 10/08/2010
Posts: 293

Re: Problème gestion des droits + JCR

Bonjour,

Je vous conseille d'utiliser l'implémentation par défaut 'org.ametys.runtime.plugins.web.right.WebHierarchicalProfileBased' pour le RightsManager, qui est celle qui est paramétrée en standard si vous téléchargez Ametys ODF depuis notre site Web.

A partir de là, il ne devrait pas y avoir de problème je suppose.
Essayez peut-être d'affecter un profil d'administration à quelqu'un, sur le contexte applicatif par exemple, il devrait accéder au CMS.
Sinon avez-vous quelque chose dans les logs ?

Offline

Board footer

Powered by FluxBB