Evolution #83

Améliorer l'interface de gestion des droits

Added by Grégory MARIGOT - TEICEE over 11 years ago. Updated about 10 years ago.

Status:Fermé Start date:02/03/2011
Priority:Normal Due date:
Assignee:Grégory MARIGOT - TEICEE % Done:

100%

Category:-
Target version:ProxyEPN 2.2
Version ProxyEPN:1.0

Description

L'interface mise en place pour la version 1.2 (ProxyEPN) est globalement satisfaisante pour définir les permissions de chaque profil (Animateur, Coordinateur, Usager, Visiteur).
Mais le système de droits propose également une gestion plus fine, permettant si besoin de définir une politique de droits propre à un utilisateur en particulier.

Si l'interface actuelle permet déjà de définir des permissions au cas pas cas, elle ne fait pas suffisament ressortir ces exceptions. Il serait judicieux de mettre en avant les usagers pour lesquels une politique individuelle a été définie. Aussi à l'édition, les droits par défaut du profil correspondant pourraient apparaitre pour mieux percevoir les changements de ces profils individuels.


Related issues

related to Evolution #78: Nouveau module d'administration des droits Fermé 12/13/2010

Associated revisions

Revision 557
Added by Grégory MARIGOT - TEICEE over 10 years ago

NEW #83: Mise en place d'un 3ème contexte 'OTHER' pour les permissions extra-GEPN

Revision 558
Added by Grégory MARIGOT - TEICEE over 10 years ago

NEW #83: Mise en application des droits administrables sur les supports et filtrage GEPN par défaut

Revision 560
Added by Grégory MARIGOT - TEICEE over 10 years ago

NEW #83: Refonte de l'interface d'administration des droits

Revision 561
Added by Grégory MARIGOT - TEICEE over 10 years ago

NEW #83: Améliorations sur l'administration des droits personnalisés

Revision 632
Added by Grégory MARIGOT - TEICEE over 8 years ago

FIX #83: création automatique des droits par roles à l'ajout d'un module

History

Updated by Grégory MARIGOT - TEICEE over 11 years ago

  • Target version set to ProxyEPN 2.x

Updated by Grégory MARIGOT - TEICEE over 10 years ago

  • Status changed from Nouveau to In Progress
  • Target version changed from ProxyEPN 2.x to ProxyEPN 2.2
  • Version ProxyEPN changed from 1.2 to 1.0

Jusqu'à présent l'application se contentait de 2 contextes pour gérer les droits : son EPN et son GEPN (ou "ses" EPN/GEPN avec le cas par exemple d'animateurs multi-sites). Le GEPN représente donc un cloisonnement fort puisqu'on se désintéresse complètement des entités appartenant à d'autres GEPN : l'utilisateur n'y a généralement pas accès.

Mais pour apporter encore plus de finesse dans les permissions il demeurre intéressant de pouvoir définir les droits d'accès aux entités autres (externes à son GEPN). Ceci est particulièrement vrai avec l'apparition de la gestion documentaire, puisqu'on souhaite généralement que celles-ci soient partagées par tous. Mais pour ne pas imposer un mode d'accès aux supports il devient utile de gérer les droits sur ce 3ème contexte (appelé 'OTHER').

Updated by Grégory MARIGOT - TEICEE over 10 years ago

  • Status changed from In Progress to Résolu
  • % Done changed from 0 to 100

Mise en place du contexte OTHER (r557)

La gestion des permissions compte désormais 3 contextes : EPN / GEPN / OTHER

Modification de la base de données :

ALTER TABLE `app_module_rights` ADD `other` SMALLINT NOT NULL DEFAULT '0';

UPDATE `app_module` SET `name`='theme' WHERE `name`='workshop_theme';

Au passage le nom du module concernant les thèmes est raccourci. Il n'était pas utilisé puisque l'édition des thèmes restait un domaine réservé au superadmin, mais cela est amené à évoluer pour devenir paramétrable (cf r54).

Avant le contexte OTHER, tout objet n'appartenant pas aux contextes EPN ou GEPN était considéré extérieur et généralement non accessible à l'utilisateur (exceptions pour les utilisateurs sans contexte comme le superadmin ou à l'opposé les visiteurs anonymes). L'apparition du 3ème contexte permet d'appliquer un niveau de permission paramétrables (par module / role ou utilisateur) plutot qu'une règle en dur par défaut.

Refonte de l'interface d'administration (r560 et r561)

Plusieurs modifications de l'interface visent à améliorer l'ergonomie et les fonctionnalités sur la gestion des permissions de l'application :

  • personnalisation de droits pour des usagers simples (sans roles)
  • liste des utilisateurs disposant de droits personnalisés
  • affichage graphique des niveaux de permissions sur les roles
  • affichage des niveaux par défaut sur les personnalisations de droits
  • édition des niveaux de droits avec curseur jquery-ui
  • interface d'édition imposant automatiquement le principe EPN >= GEPN >= OTHER
  • remaniement des menus et amélioration des libellés

L'objectif est de rendre l'interface plus pratique et plus claire. Quelques rendus graphiques permettent de mieux visualiser les niveaux attribués à chaque module ou role. Les utilisateurs pour lesquels les droits sont personnalisés peuvent être listés pour ne pas être oubliés, de plus les niveaux du profil par défaut (role de l'usager) sont rappelés pour voir les différences avec la personnalisation.

L'interface d'édition utilise javascript pour maintenir une cohérence dans les permissions : une modification sur un contexte impose un minimum/maximum sur les autres contextes (EPN >= GEPN >= OTHER). Ceci n'est pas une limitation théorique, mais avant tout une aide pratique : dans la plupart des cas il serait possible pour l'application de gérer des niveaux quelconques, mais cela ne présente aucun intérêt à l'usage.

Updated by Grégory MARIGOT - TEICEE about 10 years ago

  • Status changed from Résolu to Fermé

Also available in: Atom PDF