0
は私のパスポートのjsローカル戦略です:Passport戦略でプレーンテキストのパスワードの代わりにSaltを使用できますか?ここ
'use strict';
/**
* Module dependencies.
*/
var passport = require('passport'),
LocalStrategy = require('passport-local').Strategy,
User = require('mongoose').model('User');
module.exports = function() {
// Use local strategy
passport.use(new LocalStrategy({
usernameField: 'username',
passwordField: 'password'
},
function(username, password, done) {
User.findOne({
//username: new RegExp(username, 'i')
username: String(username).toLowerCase()
}, function(err, user) {
if (err) {
console.log('ERR: ', err);
return done(err);
}
if (!user) {
return done(null, false, {
message: 'Unknown user or invalid password'
});
}
if (!user.authenticate(password)) {
return done(null, false, {
message: 'Unknown user or invalid password'
});
}
return done(null, user);
});
}
));
};
私は、電子メールと(のlocalStorageに保存されている)塩漬けパスワードを使用してのWebView(いないブラウザ)での再認証私のユーザーに必要です。
ハッシュ/ソルトパスワードを使用してユーザーを再認証するには、この戦略をどのように変更しますか? (またはそれはひどいアイデアです?)
ああ$時間* tの:最良の方法は、トークンを保存し、それが有効なもの(JWTトークンは素晴らしいです)
一例だかどうかを確認することです。ここでは、再認証するためにsessionIdを使用して見つけたより良いアプローチです:http://justbuildsomething.com/cordova-and-express-session/ – tonejac