Почему вы хотите иметь 2 места для получения пользовательских данных?
Иметь пользователей и назначать им роли.
Самая простая система контроля доступа: гостевая, вошедшая в систему, администратор.
Итак, в таблицу users
добавьте столбец role
со значениями: user, admin.
А теперь вы пишете промежуточное ПО:
const isLogged = function (req, res, next) {
if (req.user)
return next ();
res.send ('unauth')
}
const isAdmin = function (req, res, next) {
if (req.user.role == 'admin')
return next ();
res.send ('only admin')
}
И использование:
app.get('/', (req, res)=>{})
app.get('/profile',isLogged, (req, res)=>{})
app.get('/admin',isLogged, isAdmin, (req, res)=>{})
Для более сложных задач попробуйте найти некоторые модули ACL