Задача -- авторизовать пользователя и в зависимости от его прав предоставлять или не предоставлять доступ к определёнными действиям.
Проверку на пользователя сделал с помощью функции :
function permit(username) {
return (request, response, next) => {
if (username === 'admin') {
return next();
}
response.status(403).json({ message: 'Forbidden' });
};
}
Пример вызова функции:
app.route('/test-page')
.get(permit('admin'), (req, res) => {
...
});
Проблема в том, чтобы понимать какой пользователь авторизовался и использует систему в данный момент.
Пробовал сделать сессии, но запутался в их реализации. Пример кода :
app.use(session({
secret: 'testtest',
resave: false,
saveUninitialized: true,
cookie: { secure: true }
}));
Как правильно сделать аутентификацию и авторизацию?