2019-04-15 10:13:17 +00:00
|
|
|
'use strict';
|
|
|
|
|
|
2019-04-15 15:58:58 +00:00
|
|
|
const config = require('../config');
|
|
|
|
|
const { logger } = require('../core');
|
|
|
|
|
|
|
|
|
|
const JwtStrategy = require('passport-jwt').Strategy;
|
|
|
|
|
const { ExtractJwt } = require('passport-jwt');
|
|
|
|
|
//const User = this.models.User;
|
2019-04-15 10:13:17 +00:00
|
|
|
|
2019-04-15 15:58:58 +00:00
|
|
|
const jwtOptions = {
|
|
|
|
|
secretOrKey: config.session.secret_token,
|
|
|
|
|
jwtFromRequest: ExtractJwt.fromAuthHeaderWithScheme('Bearer'),
|
|
|
|
|
};
|
2019-04-15 10:13:17 +00:00
|
|
|
|
2019-04-15 15:58:58 +00:00
|
|
|
const jwt = async (payload, done) => {
|
|
|
|
|
logger.info(payload);
|
|
|
|
|
try {
|
|
|
|
|
//const user = await User.findById(payload.sub);
|
|
|
|
|
//if (user) return done(null, user);
|
|
|
|
|
return done(null, false);
|
|
|
|
|
} catch (error) {
|
|
|
|
|
return done(error, false);
|
|
|
|
|
}
|
|
|
|
|
};
|
2019-04-15 10:13:17 +00:00
|
|
|
|
2019-04-15 15:58:58 +00:00
|
|
|
module.exports.jwt = new JwtStrategy(jwtOptions, jwt);
|