Паспорт JWT против паспорта локальной сессии - PullRequest
0 голосов
/ 30 января 2019

Я использую библиотеку Express-session и Passport.

, в этом случае я хочу создать сайт React SPA, но меня смущает правильная система безопасности.

Я вижу тамЕсть много способов аутентификации, и это то, что меня смущает.

в паспорте есть 2 аутентификации: Passport-jwt и Passport-local

потому что я использую сеанс Express, я решил использовать passport-local

мне все еще нужно использовать passport-jwt?для каждого запроса, который вставляется в заголовки, как это, чтобы указать, что пользователь вошел в систему?

const opts = {};
opts.jwtFromRequest = ExtractJwt.fromAuthHeaderAsBearerToken();
opts.secretOrKey = keys.passport.secretOrPrivateKey;

    passport.use(new JwtStrategy(opts,(jwt_payload,done)=>{
        let queryFindAdmin = 'select * from admin where id = ?';
        db.query(queryFindAdmin,[jwt_payload.id],(err,result)=>{
            if(err) return done(err,null);
            if(result.length > 0){
                console.log(result);
                return done(null, result[0]);
            }
            return done(null, false);
        })
    }));
...