Bug #35158
hobo_notify: le provisionning des rôles se base aussi sur les noms, mais ne devrait pas
0%
Description
Quand wcs reçoit via hobo_notify un utilisateur, il fait :
user.roles = [] for role_ref in o.get('roles', []): role = Role.resolve(role_ref['uuid'], name=role_ref.get('name')) if role and role.id not in user.roles: user.add_roles([role.id])
Le Role.resolve reçoit un "name". Or Authentic envoie tous les rôles de toutes les OU, et un rôle avec un nom "foo" peut exister dans le wcs alors qu'en fait il s'agissait d'un rôle "foo" d'une autre OU, liée à un wcs voisin.
Conséquence sur un Publik multicollectivités : si dans une ville X j'ai un rôle "foo" et dans une ville Y un rôle "foo", quand je vais mettre un utilisateur dans l'un de ces deux rôles au niveau d'Authentic, il va en fait gagner le rôles dans les deux wcs des deux villes.
A priori il faudrait juste se baser sur les uuid, comme le fait le hobo_notify de hobo.
Fichiers
Demandes liées
Révisions associées
hobo_notify: search role only by uuid, not name (#35158)
Historique
Mis à jour par Thomas Noël il y a plus de 4 ans
Ca viendrait de #14207 commit 03123e9742ce1b4b292a967f22609998effd0660 ; avant ce patch on ne se basait que sur l'uuid j'ai bien l'impression.
Mis à jour par Thomas Noël il y a plus de 4 ans
- Fichier 0001-hobo_notify-search-role-only-by-uuid-not-name-35158.patch 0001-hobo_notify-search-role-only-by-uuid-not-name-35158.patch ajouté
- Statut changé de Nouveau à Solution proposée
- Patch proposed changé de Non à Oui
En attendant, voici ma proposition de correction.
Mis à jour par Thomas Noël il y a plus de 4 ans
- Lié à Development #35168: provisioning des users: ne diffuser que les rôles liés à l'ou cible ajouté
Mis à jour par Benjamin Dauvergne il y a plus de 4 ans
- Statut changé de Solution proposée à Solution validée
Branche pas poussée.
Mis à jour par Thomas Noël il y a plus de 4 ans
- Statut changé de Solution validée à Résolu (à déployer)
commit f637f9544651c25267b350b293f3a23ac7d1e8af Author: Thomas NOEL <tnoel@entrouvert.com> Date: Wed Jul 31 21:08:40 2019 +0200 hobo_notify: search role only by uuid, not name (#35158)
Mis à jour par Frédéric Péters il y a plus de 4 ans
- Statut changé de Résolu (à déployer) à Solution déployée
hobo_notify: search role only by uuid, not name (#35158)