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的)在網頁視圖(不是瀏覽器)重新驗證自己的用戶。
在這種策略中,如果使用哈希/鹽密碼重新驗證用戶,我會改變什麼? (或者是一個可怕的想法?)
啊$ H * T你說得對。以下是使用sessionId重新進行身份驗證的更好方法:http://justbuildsomething.com/cordova-and-express-session/ – tonejac