app2-api/middlewares/accessValidator.js

19 lines
524 B
JavaScript
Raw Normal View History

2019-04-24 21:01:54 +00:00
'use strict';
2019-04-25 09:25:33 +00:00
const passport = require('passport');
2019-04-24 21:01:54 +00:00
2019-04-25 09:25:33 +00:00
exports.isRegisteresUser = passport.authenticate('local', { session: false });
exports.isLoggedUser = passport.authenticate('jwt', { session: false });
2019-04-24 21:01:54 +00:00
/**
* Authorization Required middleware.
*/
exports.isAuthorized = (req, res, next) => {
const provider = req.path.split('/').slice(-1)[0];
const token = req.user.tokens.find(token => token.kind === provider);
if (token) {
next();
} else {
res.redirect(`/auth/${provider}`);
}
};