Development #16653
django_rbac: ajouter une méthode permettant de lister les OU dans lesquelles un utilisateur a une permission
100%
Description
Ce la doit permettre de renseigner les listes déroulantes d'OU de rattachement pour un utilisateur.
Fichiers
Demandes liées
Révisions associées
django_rbac: add an accessor method for the permission cache (#16653)
django_rbac: add method to list OUs covered by a permission (fixes #16653)
Historique
Mis à jour par Benjamin Dauvergne il y a presque 7 ans
- Fichier 0001-django_rbac-add-method-to-list-OUs-covered-by-a-perm.patch 0001-django_rbac-add-method-to-list-OUs-covered-by-a-perm.patch ajouté
- Patch proposed changé de Non à Oui
Mis à jour par Benjamin Dauvergne il y a presque 7 ans
- Fichier 0001-django_rbac-add-method-to-list-OUs-covered-by-a-perm.patch 0001-django_rbac-add-method-to-list-OUs-covered-by-a-perm.patch ajouté
J'avais oublié le cas évident où on a les droits sur toutes les OU, avec des tests c'est mieux.
Mis à jour par Frédéric Péters il y a presque 7 ans
self.get_all_permissions(user_obj) ou_ids = [] cache = user_obj._rbac_perms_cache
C'est plutôt évident à la lecture mais un commentaire au-dessus du self.get_all_permissions(user_obj) pour dire que ça sert à remplir le cache, ça me semblerait pas mal.
Aussi, mais ignore si tu veux, ce n'est quand même pas folichon d'avoir ce fonctionnement par effet de bord, il n'y a pas moyen d'avoir une méthode qui retournerait une information exploitable, sans devoir creuser un cache semi-privé ?
Mis à jour par Benjamin Dauvergne il y a presque 7 ans
- Fichier 0001-django_rbac-make-the-permission-hierarchy-customizab.patch 0001-django_rbac-make-the-permission-hierarchy-customizab.patch ajouté
- Fichier 0002-django_rbac-add-an-accessor-method-for-the-permissio.patch 0002-django_rbac-add-an-accessor-method-for-the-permissio.patch ajouté
- Fichier 0003-django_rbac-add-method-to-list-OUs-covered-by-a-perm.patch 0003-django_rbac-add-method-to-list-OUs-covered-by-a-perm.patch ajouté
Voilà, j'en profite au passage pour rendre la hiérarchie des permissions "customizable". J'ai ajouté un accesseur pour le cache des permissions dans le patch 0002 et le 0003 est modifié pour l'utiliser (sans le commentaire puisque ça devient évident).
Mis à jour par Benjamin Dauvergne il y a presque 7 ans
- Fichier 0001-django_rbac-make-the-permission-hierarchy-customizab.patch 0001-django_rbac-make-the-permission-hierarchy-customizab.patch ajouté
- Fichier 0002-django_rbac-add-an-accessor-method-for-the-permissio.patch 0002-django_rbac-add-an-accessor-method-for-the-permissio.patch ajouté
- Fichier 0003-django_rbac-add-method-to-list-OUs-covered-by-a-perm.patch 0003-django_rbac-add-method-to-list-OUs-covered-by-a-perm.patch ajouté
- j'ai remplacé tous les accès direct à _rbac_perms_cache par un appel à l'accesseur
- j'ai ajouté un commentaire décrivant le format du dictionnaire _rbac_perms_cache
Mis à jour par Benjamin Dauvergne il y a presque 7 ans
- Bloque Development #16763: Ajouter de nouvelles opérations pour les permissions ajouté
Mis à jour par Benjamin Dauvergne il y a presque 7 ans
- Statut changé de Nouveau à Résolu (à déployer)
- % réalisé changé de 0 à 100
Appliqué par commit authentic2|8fd02ed299b7ee192ab99c596d320859d9537b91.
Mis à jour par Benjamin Dauvergne il y a plus de 6 ans
- Statut changé de Résolu (à déployer) à Fermé
django_rbac: make the permission hierarchy customizable (#16653)