Development #36783
Remonter toutes les OUs liés aux utilisateurs ayant accès à un service
0%
Description
Lorsque l'accès d'un service est limité par des rôles on souhaite remonter toutes les OUs des utilisateurs concernées dans le sélecteur d'OU, dans l'ordre inverse de leur population. Le cas d'usage étant une collectivité avec quelques utilisateurs venant de la collectivité mutualisatrice (une ville Belge et IMIO).
Fichiers
Révisions associées
Historique
Mis à jour par Benjamin Dauvergne il y a plus de 4 ans
- Fichier 0001-authenticators-add-easy-accesible-OU-based-on-servic.patch 0001-authenticators-add-easy-accesible-OU-based-on-servic.patch ajouté
- Statut changé de Nouveau à Solution proposée
- Patch proposed changé de Non à Oui
J'en ai profité pour corriger le placement du choix vide qui se retrouvait coincé entre les OUs préférées et les autres.
Le comportement est désormais : par défaut mettre en avant les dernières OUs sélectionnées, puis les OU adaptées au service, si pas de dernière OU sélectionnée c'est la première OU adaptée qui est pré-sélectionnée.
Mis à jour par Paul Marillonnet il y a plus de 4 ans
- Statut changé de Solution proposée à Solution validée
Dans get_service_ous
:
for ou_id, count in qs:
if not ou_id:
continue
Question d'affichage je pense qu'on peut aussi continuer
pour les OUs pour lesquelles count
vaut zéro.
Pour le reste c'est bon pour moi.
Mis à jour par Benjamin Dauvergne il y a plus de 4 ans
Paul Marillonnet a écrit :
Question d'affichage je pense qu'on peut aussi
continuer
pour les OUs pour lesquellescount
vaut zéro.
Ce n'est pas possible, si ou_id est non NULL alors count vaut au moins 1, sinon il ne serait pas dans le résultat du GROUP BY, sur un values+annotate(x=aggregate(y)), Django fait implicitement un GROUPBY. (en gros ça fait
SELECT ou_id, COUNT(ou_id) FROM auth_user GROUP BY ou_id).
Pour le reste c'est bon pour moi.
Ok.
Mis à jour par Benjamin Dauvergne il y a plus de 4 ans
- Statut changé de Solution validée à Résolu (à déployer)
commit 94f4ec8c7d0abb44a3869681f95473014dabbb85 Author: Benjamin Dauvergne <bdauvergne@entrouvert.com> Date: Tue Oct 8 16:46:34 2019 +0200 authenticators: add easy accesible OU based on service's ACL (#36783) It replaces changes from #35213. OU are added after OU remembered through cookies; they are ordered based on their user subset's count (how many of their users can access the targeted service).
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
authenticators: add easy accesible OU based on service's ACL (#36783)
It replaces changes from #35213. OU are added after OU remembered
through cookies; they are ordered based on their user subset's count
(how many of their users can access the targeted service).