Files
scouthub/scouthub-magazzino-be/src/auth/require-moderatore.middleware.ts
T

16 lines
551 B
TypeScript

import { Request, Response, NextFunction } from 'express';
// Guard per le route di moderazione (es. approvazione/rifiuto di un materiale
// proposto nel catalogo). Da usare dopo verifyToken, solo su quelle route: il
// possesso del ruolo realm moderatore non è richiesto altrove.
export function requireModeratore(req: Request, res: Response, next: NextFunction): void {
const roles = req.auth?.roles ?? [];
if (!roles.includes('moderatore')) {
res.status(403).json({ message: 'Ruolo moderatore richiesto' });
return;
}
next();
}