Описание изменений

This commit is contained in:
2025-03-03 20:43:58 +03:00
parent 13e240f871
commit d36fc255d8
56 changed files with 4451 additions and 3390 deletions

View File

@@ -1,4 +1,32 @@
export const authMiddleware = (req, res, next) => {
// Логика аутентификации
next();
const { checkAccess } = require('../utils/access-check');
// Middleware для проверки роли
const requireRole = (requiredRole) => async (req, res, next) => {
try {
const address = req.headers['x-wallet-address'];
if (!address) {
return res.status(401).json({ error: 'No wallet address' });
}
const { hasAccess, role } = await checkAccess(address);
if (!hasAccess) {
return res.status(403).json({ error: 'No access token' });
}
if (requiredRole && role !== requiredRole) {
return res.status(403).json({ error: 'Insufficient permissions' });
}
// Добавляем информацию о роли в request
req.userRole = role;
next();
} catch (error) {
console.error('Auth check error:', error);
res.status(500).json({ error: 'Auth check failed' });
}
};
module.exports = {
requireRole
};