Bug #10299
ferméManager d'espace mais n'apparait pas dans l'onglet "Administrateurs d'espace"
100%
Description
- Dans un cas, l'espace est bien gérable par l'utilisateur
- Si l'on se rend sur cette espace, l'utilisateur n’apparaît pas dans la liste des Administrateurs d'espace (ni dans aucun des groupes).
Il y a incohérence entre cette liste et le fait de déterminer si l'utilisateur peut gérer l'espace.
Mis à jour par David Lesimple il y a environ 6 ans
A noter que si on assigne à un nouvel utilisateur les mêmes droits que l'utilisateur concerné par le problème, on rencontre les mêmes symptômes pour le nouvel utilisateur.
Mis à jour par David Lesimple il y a environ 6 ans
- Statut changé de New à Qualified
- Assigné à mis à Yohann Chastagnier
Il est finalement aisé de reproduire le problème :
- créer un utilisateur
- créer un espace A et un sous-espace A1
- mettre l'utilisateur administrateur de l'espace A.
par héritage il se retrouve administrateur du sous-espace A1, il est visible dans l'onglet "administreur d'espace" du sous-espace A1
- Enlever ensuite l'utilisateur de l'onglet "administreur d'espace" de l'espace A
--> Résultat: l'utilisateur reste administrateur de l'espace A1, même si visuellement il n'apparait plus dans l'onglet "administreur d'espace"
il y a donc incohérence, il ne devrait plus rester administrateur de ce sous-espace.
Mis à jour par David Lesimple il y a environ 6 ans
1/ Le user 16428 est manager de l'espace A (id=29098), le sous-espace A1 ayant comme id 29099 :
la requete SQL
select * from st_spaceuserrole where spaceid=29098 or spaceid=29099;
retourne :104242;29098;"Manager d'espace";"Manager";"";0 104243;29099;"";"Manager";"";1
select * from st_spaceuserrole_user_rel where userid = 16428
retourne :spaceuserroleid;userid 104242;16428 104243;16428
2/ J'enlève le user 16428 du role admin de l'espace A
Mis à jour par David Lesimple il y a environ 6 ans
- Lié à Bug #10343: GED-Problème de droits-Administrateur et Manager ajouté
Mis à jour par David Lesimple il y a environ 6 ans
- Priorité changé de High à Urgent
Pose des problèmes non négligeables de confidentialité car un utilisateur précédemment admin de l'espace continue à avoir ce droit alors que visuellement on le lui a enlevé depuis la console d'administration.
Mis à jour par Nicolas Eysseric il y a presque 6 ans
- Statut changé de Qualified à In progress...
- Assigné à changé de Yohann Chastagnier à Nicolas Eysseric
Mis à jour par Nicolas Eysseric il y a presque 6 ans
- Statut changé de In progress... à Resolved
- Version cible mis à Version 6.1
- % réalisé changé de 0 à 100
Lors de la création d'un rôle d'administrateur d'espace, il était propagé à tort.
En effet, le rôle administrateurs d'espace s'applique forcément sur l'espace et tous ces sous espaces (différent des autres rôles).
Traité par PR : https://github.com/Silverpeas/Silverpeas-Core/pull/952
Voici quelques requêtes pour voir l'état de la base sur ce problème :
-- liste des espaces et utilisateurs concernés
select r.spaceid, u.userid
from st_spaceuserrole r, st_spaceuserrole_user_rel u
where r.isinherited = 1 and r.rolename = 'Manager'
and r.id = u.spaceuserroleid
order by u.userId;
-- liste des espaces et groupes concernés
select r.spaceid, g.groupid
from st_spaceuserrole r, st_spaceuserrole_group_rel g
where r.isinherited = 1 and r.rolename = 'Manager'
and r.id = g.spaceuserroleid
order by g.groupid;
Requêtes à passer pour corriger les données :
delete from st_spaceuserrole_user_rel
where spaceuserroleid in (select id from st_spaceuserrole where isinherited = 1 and rolename = 'Manager');
delete from st_spaceuserrole_group_rel
where spaceuserroleid in (select id from st_spaceuserrole where isinherited = 1 and rolename = 'Manager');
delete from st_spaceuserrole where isinherited = 1 and rolename = 'Manager';
Mis à jour par Yohann Chastagnier il y a presque 6 ans
- Statut changé de Resolved à Closed
Validé et intégré en 5.15.x, 6.0.x et 6.x