Refactor/migrate auth
Migration auth et permissions
Migration auth
Migration de l'authentification de redux à better-auth, afin d'avoir une gestion plus simple de l'authentification.
Concernant l'authentification per se :
-
Création du middleware requireSession, qui remplace le middleware d'auth précédent -
Configuration des principaux paramètres d'auth dans auth.ts
Permissions
Mise en place d'un système de permissions avec trois rôles utilisateur : reader (lecture seule), user (lecture + écriture), admin (lecture + écriture + gestion des comptes).
Modifications :
-
Ajout de utils/requireRole.js — factory middleware qui applique une hiérarchie de rôles (reader < user < admin) et bloque les comptes inactifs (403) -
Protection de toutes les routes existantes avec le rôle minimum approprié -
Ajout de routes/users.js avec deux endpoints réservés à l'admin : /users (GET) et /users/:userId (PATCH, modifie isActive et/ou role) -
- Montage de /users dans app.js
Note : je laisse /csv/bibliograph/public intentionnellement sans protection => à discuter avec @sapartis
Edited by Eli Fainstein