Matrice d'autorisation — EduRegie
Enregistrement formel de qui est autorisé à voir et faire quoi, en cohérence avec les rôles de docs/product-blauwdruk.md et tel qu'effectivement appliqué dans le tableau de bord web (navigation basée sur les rôles dans components/DashboardNav.tsx, contrôles de rôle côté serveur par page, et sécurité au niveau des lignes (RLS) par école dans la base de données).
| Rôle | Aperçu | Signaler une absence | Emploi du temps et remplacement | Statut d'équipe | Signalements d'absence | Statistiques | Personnel | Utilisateurs | Paramètres |
|---|---|---|---|---|---|---|---|---|---|
| Employé | ✓ | ✓ (son propre signalement) | — | — | — | — | — | — | — |
| Centre d'appels/opérateur | ✓ | — | — | — | — | — | — | — | — |
| Planificateur | ✓ | — | ✓ | — | ✓ | — | — | — | — |
| Chef d'équipe | ✓ | — | — | ✓ | ✓ | ✓ | — | — | — |
| RH/coordinateur absentéisme | ✓ | — | — | — | ✓ | ✓ | ✓ | — | — |
| Remplaçant | ✓ | — | — | — | — | — | — | — | — |
| Administrateur d'école | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
Application (technique, pas seulement procédurale)
- Niveau base de données (RLS) : chaque requête est limitée côté serveur à sa propre école via
current_school_id()— un utilisateur ne peut jamais consulter les données d'une autre école, quelle que soit l'autorisation accordée par la couche applicative (supabase/migrations/0002_auth_and_rls.sql). - Niveau application (contrôle de rôle par page) : chaque page du tableau de bord contrôle elle-même le rôle de l'utilisateur connecté (par ex.
app/dashboard/rooster/page.tsxrefuse l'accès à tous sauf àscheduler/admin), pas uniquement en masquant l'élément de navigation. - Gestion des comptes : les nouveaux comptes ne sont créés que sur invitation d'un administrateur d'école (
app/api/internal/gebruikers/uitnodigen/route.ts) — pas d'auto-inscription, donc pas d'attribution de rôle incontrôlée.
Pas encore mis en œuvre
- Rôles granulaires au sein d'une école (par exemple RH limité à un seul site dans un groupe scolaire) — délibérément reporté à la phase 3 (entreprise/multi-sites), voir
docs/mvp-roadmap.md.
La MFA pour les RH et l'administrateur est désormais bien appliquée (
middleware.ts,/dashboard/beveiliging) — voir l'Annexe Sécurité.