Add password validation to passport strategy

This commit is contained in:
Adrian Obelmejias
2016-02-11 17:55:41 -05:00
parent 35fc841fc7
commit 64ed3568a5
+12 -3
View File
@@ -18,12 +18,21 @@ passport.deserializeUser(async (id, done) => {
passport.use('local', new Strategy({
usernameField: 'username',
passwordField: 'password'
}, async (email, password, done) => {
}, async (username, password, done) => {
try {
const user = await User.findOne({ email, password })
const user = await User.findOne({ username })
if(!user) { return done(null, false) }
done(null, user)
try {
const isMatch = await user.validatePassword(password)
if(!isMatch) { return done(null, false) }
done(null, user)
} catch(err) {
done(err)
}
} catch(err) {
return done(err)
}