@qelos/auth
Version:
Express Passport authentication service
33 lines (32 loc) • 1.3 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.onlyPrivileged = exports.onlyAuthenticated = void 0;
const config_1 = require("../../config");
const logger_1 = __importDefault(require("../services/logger"));
exports.onlyAuthenticated = function onlyAuthenticated(req, res, next) {
if (!req.userPayload) {
res.status(401).json({ message: 'you are not authorized. must be logged in.' }).end();
return;
}
next();
};
exports.onlyPrivileged = function onlyPrivileged(req, res, next) {
if (!(req.userPayload && req.userPayload.isPrivileged)) {
const message = req.userPayload ? 'you are not privileged.' : 'you are not authorized. must be logged in.';
res.status(401).json({ message }).end();
if (config_1.showLogs) {
logger_1.default.log('not privileged request to only-privileged route', {
tenant: req.headers.tenant,
tenanthost: req.headers.tenanthost,
url: req.url,
user: req.userPayload,
headers: req.headers,
});
}
return;
}
next();
};