iceScrum Forums Discutez d'iceScrum
- Ce sujet contient 6 réponses, 2 participants et a été mis à jour pour la dernière fois par Kagilum, le il y a 9 années et 8 mois.
-
AuteurMessages
-
01/12/2014 à 1:49 #10691
KagilumMaître des clésBonjour,
Je rencontre actuellement un problème à comprendre l’architecture en base de donnée MySQL utilisée par IceScrum.
Plus précisément, je cherche à accéder aux tables d’association Utilisateur / Role au sein du projet.Pour que vous compreniez la problématique, je dois développer un script récupérant depuis la base de donnée tous les projets et les utilisateurs y étant attribués. De plus (c’est là ou intervient mon problème), je dois récupérer pour chaque personne affectée à un projet son « rôle » (ScrumMaster, ProductOwner…)
Actuellement j’arrive bien à récupérer la liste des utilisateurs par projet, sans ce fameux rôle.
Voici la requête mysql actuelle (ne vous sera pas forcement utile):
SELECT * FROM icescrum2_user u LEFT JOIN icescrum2_team_members t ON u.id = t.user_id LEFT JOIN icescrum2_product_teams pt ON t.team_id = pt.team_id LEFT JOIN icescrum2_product p ON pt.product_id = p.id
Je vous remercie par avance.
03/12/2014 à 11:17 #11004
Nicolas NoulletMaître des clésBonjour Marc,
La sécurité est gérée dans iceScrum à l’aide de Spring Security. Nous utilisons les ACL de Spring Security pour les rôles, c’est donc dans les tables correspondantes qu’il faut regarder : acl_*. Vous trouverez plus d’informations sur le contenu de ces tables ici : http://docs.spring.io/spring-security/site/docs/3.0.x/reference/domain-acls.html.
Voici comment récupérer ce que vous souhaitez :
1. Récupérer les membres des équipes à l’aide de votre requête (ceci n’inclut pas les membres qui ne sont que Product Owner)
2. Faire une requête dans les ACL de l’équipe pour déterminer lesquels parmi ces membres sont Scrum Master (mask 2 dans la table acl_entry)
3. Faire une requête dans les ACL du projet pour déterminer quels sont les Product Owners (mask 2 dans la table acl_entry), certains peuvent déjà avoir été récupéré dans par la première requête (ceux avec le rôle PO & SM), d’autres non (rôle Product Owner seul).Les requêtes pour les étapes 2. et 3. nécessitent les jointures appropriées entre les tables acl_*, icescrum2_product, icescrum2_team, et icescrum2_user.
13/03/2015 à 4:29 #11053
KagilumMaître des clésBonjour,
Je m’intéresse également aux droits des utilisateurs, j’ai remarqué que le champ mask pouvait prendre 3 valeurs : 1 2 et 16. 2 étant product owner.
Que représente chacune de ces valeurs ?Egalement, je cherche à comprendre l’utilité du champ ace_order dans acl_entry, je n’ai pas trouvé de réponses dans la doc linké, quelques indices ne seraient pas de refus.
Cordialement, Meyrueix O.
16/03/2015 à 10:44 #11054
Nicolas NoulletMaître des clésBonjour,
En quoi ces informations peuvent-elles vous aider ?
Je pose la question car il faudrait, autant que possible, ne pas se reposer sur ces détails d’implémentation.
16/03/2015 à 2:25 #11055
KagilumMaître des clés@Nicolas : Dans le but de développer un script qui récapitule la liste d’utilisateurs sur un projet et qui entre autre décrit le « grade » de chaque utilisateurs.
Après avoir fait mes jointures, je remarque qu’il peux y avoir plusieurs valeurs de mask pour un même utilisateur, par exemple, un utilisateur peux avoir le mask 2 et 16 et ce pour le même projet, je pense que ace_order intervient justement ici pour décider de la permission qu’on applique à cet utilisateur.
Merci d’avance.
16/03/2015 à 3:29 #11056
Nicolas NoulletMaître des clésMerci pour ces précisions, tant que c’est de la lecture seule ça ne devrait pas poser de problème.
Vous avez raison concernant le ace_order mais vous pouvez ignorer les masques à 16. En effet, les masques à 1 et 2 suffisent à déterminer tous les rôles Scrum :
ACL de projet :
– 1 : StakeHolder
– 2 : Product OwnerACL d’équipe :
– 1 : Team Member
– 2 : Scrum MasterIl existe un dernier rôle, le « owner », que vous devriez pouvoir retrouver facilement via la colonne dédiée. Le « owner » affiché dans la vue équipe d’iceScrum est celui du projet (celui de l’équipe n’est pas utilisé).
16/03/2015 à 4:09 #11057
KagilumMaître des clésMerci de votre réponse rapide, ça va beaucoup m’aider.
Bonne journée 😛
-
AuteurMessages
Le forum ‘Questions and help’ est fermé à de nouveaux sujets et réponses.