Secure-Share / src /middleware /requireAdmin.js
TITI14ONI
Configuration finale avec Docker et variables d'environnement
9cf1ab7
Raw
History Blame Contribute Delete
636 Bytes
// Middleware qui protège les routes admin.
// ADMIN_IDS dans le .env, séparés par des virgules : "123456789,987654321"
function getAdminIds() {
return (process.env.ADMIN_IDS || "")
.split(",")
.map(id => id.trim())
.filter(Boolean);
}
export function requireAdmin(req, res, next) {
if (!req.session.user) {
return res.status(401).json({ error: "Non connecté." });
}
const adminIds = getAdminIds();
if (!adminIds.includes(req.session.user.id)) {
return res.status(403).json({ error: "Accès refusé." });
}
next();
}
export function isAdmin(userId) {
return getAdminIds().includes(userId);
}