audit(ui): compléter les tests RBAC multi-roles
Some checks are pending
CI - Tests et Syntax / lint-and-test (push) Waiting to run
Some checks are pending
CI - Tests et Syntax / lint-and-test (push) Waiting to run
This commit is contained in:
parent
ac71edef9e
commit
96a90e4de1
4 changed files with 30 additions and 1 deletions
|
|
@ -103,3 +103,17 @@
|
||||||
- Attendu : liste documentaire ou redirection vers le module documentaire
|
- Attendu : liste documentaire ou redirection vers le module documentaire
|
||||||
réellement utilisé.
|
réellement utilisé.
|
||||||
- Impact : lien cassé pour un utilisateur qui cherche les documents.
|
- Impact : lien cassé pour un utilisateur qui cherche les documents.
|
||||||
|
|
||||||
|
## UI-012 — Menu non filtré selon les permissions
|
||||||
|
|
||||||
|
- Priorité : P1
|
||||||
|
- Comptes : `TEST_UI_USER_MULTI` et `TEST_UI_USER_NONE`.
|
||||||
|
- Résultat : les deux dashboards contiennent les mêmes liens équipements,
|
||||||
|
interventions et nettoyage, y compris pour `TEST_UI_USER_NONE` sans rôle.
|
||||||
|
- Backend : `TEST_UI_USER_NONE` reçoit bien 403 sur ces URLs ; le backend est
|
||||||
|
donc plus strict que le menu.
|
||||||
|
- Résultat multi-rôles : `TEST_UI_USER_MULTI` reçoit 200 sur patrimoine et
|
||||||
|
interventions, puis 403 patrimoine après un refus individuel, tandis que
|
||||||
|
les interventions restent accessibles.
|
||||||
|
- Impact : UX trompeuse et risque d'erreurs ; un utilisateur voit des liens
|
||||||
|
qu'il ne peut pas ouvrir.
|
||||||
|
|
|
||||||
|
|
@ -33,6 +33,17 @@ laissés pour inspection manuelle.
|
||||||
|
|
||||||
- `TEST_UI_COMPANY_MAINTENANCE`.
|
- `TEST_UI_COMPANY_MAINTENANCE`.
|
||||||
|
|
||||||
|
## Rôles et utilisateurs RBAC
|
||||||
|
|
||||||
|
- rôle ID 9 : `TEST_UI_ROLE_PATRIMOINE` — `patrimoine.view` ;
|
||||||
|
- rôle ID 10 : `TEST_UI_ROLE_INTERVENTION` — `intervention.view`,
|
||||||
|
`intervention.create` ;
|
||||||
|
- utilisateur ID 3 : `TEST_UI_USER_MULTI` — rôles 9 et 10, puis refus
|
||||||
|
individuel de `patrimoine.view` ;
|
||||||
|
- utilisateur ID 4 : `TEST_UI_USER_NONE` — aucun rôle.
|
||||||
|
|
||||||
|
Mot de passe commun temporaire des comptes de test : non documenté dans Git.
|
||||||
|
|
||||||
## Non créés
|
## Non créés
|
||||||
|
|
||||||
La création des salles a été bloquée par UI-003. Aucun équipement,
|
La création des salles a été bloquée par UI-003. Aucun équipement,
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,7 @@ terminé.
|
||||||
|---|---|---|
|
|---|---|---|
|
||||||
| Santé, connexion, version | Terminé | Version 0.1.0-dev.2, commit unknown |
|
| Santé, connexion, version | Terminé | Version 0.1.0-dev.2, commit unknown |
|
||||||
| Menu et smoke test | Partiel | Pages principales testées séquentiellement |
|
| Menu et smoke test | Partiel | Pages principales testées séquentiellement |
|
||||||
| RBAC | Partiel | Catalogue et accès anonymes vérifiés |
|
| RBAC | Partiel avancé | multi-rôles, retrait/deny et accès directs testés ; menu non filtré |
|
||||||
| Établissement | Partiel | Sites, bâtiments et zones créés ; confusion site/bâtiment |
|
| Établissement | Partiel | Sites, bâtiments et zones créés ; confusion site/bâtiment |
|
||||||
| Salles | Bloqué | Select bâtiment vide sur `/equipments/rooms/new` |
|
| Salles | Bloqué | Select bâtiment vide sur `/equipments/rooms/new` |
|
||||||
| Équipements | Non commencé | Dépend des salles |
|
| Équipements | Non commencé | Dépend des salles |
|
||||||
|
|
@ -50,6 +50,8 @@ terminé.
|
||||||
- Smoke complémentaire : scheduled, meters, consumables, admin-tasks, rules,
|
- Smoke complémentaire : scheduled, meters, consumables, admin-tasks, rules,
|
||||||
formations personnelles, prévention, lifecycle, à jeter, anciens, services
|
formations personnelles, prévention, lifecycle, à jeter, anciens, services
|
||||||
et types de salles répondent 200 ; `/documents/` répond 404.
|
et types de salles répondent 200 ; `/documents/` répond 404.
|
||||||
|
- Création RBAC : rôles 9/10 et utilisateurs 3/4 ; union multi-rôles, deny
|
||||||
|
individuel et 403 directs vérifiés.
|
||||||
|
|
||||||
## Prochaine étape
|
## Prochaine étape
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -21,6 +21,8 @@ retournent 401. Les pages métier principales répondent 200.
|
||||||
la base/Gunicorn.
|
la base/Gunicorn.
|
||||||
- P2 : clarifier Site, Collège, Bâtiment et unités de produit.
|
- P2 : clarifier Site, Collège, Bâtiment et unités de produit.
|
||||||
- P2 : injecter `GIT_VERSION` dans les images Docker.
|
- P2 : injecter `GIT_VERSION` dans les images Docker.
|
||||||
|
- P1 : filtrer le menu et les raccourcis du dashboard selon les permissions
|
||||||
|
effectives ; actuellement le backend refuse mais les liens restent visibles.
|
||||||
- P2 : clarifier `/planning/availability`, qui reprend le titre et la
|
- P2 : clarifier `/planning/availability`, qui reprend le titre et la
|
||||||
structure de `/planning/time`.
|
structure de `/planning/time`.
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue