mirror of
https://github.com/R0m1k3/noteflow.git
synced 2026-10-21 06:08:17 +02:00
[dyad] wrote 5 file(s)
This commit is contained in:
1 parent
33b241f0c1
commit
5e6670d921
5 files changed
+218
-83
No files matched your search
@@ -0,0 +1,28 @@
|
||||
const jwt = require('jsonwebtoken');
|
||||
const { logger } = require('../config/database');
|
||||
|
||||
const authMiddleware = (req, res, next) => {
|
||||
try {
|
||||
const token = req.headers.authorization?.split(' ')[1];
|
||||
|
||||
if (!token) {
|
||||
return res.status(401).json({ message: 'Authentication required' });
|
||||
}
|
||||
|
||||
const decoded = jwt.verify(token, process.env.JWT_SECRET);
|
||||
req.user = decoded;
|
||||
next();
|
||||
} catch (error) {
|
||||
logger.error('Auth middleware error:', error);
|
||||
return res.status(401).json({ message: 'Invalid token' });
|
||||
}
|
||||
};
|
||||
|
||||
const adminMiddleware = (req, res, next) => {
|
||||
if (!req.user.is_admin) {
|
||||
return res.status(403).json({ message: 'Admin access required' });
|
||||
}
|
||||
next();
|
||||
};
|
||||
|
||||
module.exports = { authMiddleware, adminMiddleware };
|
||||
Reference in new issue
Block a user