Skip to content

Instantly share code, notes, and snippets.

@callmephilip
Created March 28, 2020 10:55
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save callmephilip/ed7d1548d1561f958a9dccac5124dc78 to your computer and use it in GitHub Desktop.
Save callmephilip/ed7d1548d1561f958a9dccac5124dc78 to your computer and use it in GitHub Desktop.
function comparePasswords(password, hash, callback) {
bcrypt.compare(crypto.createHash('sha256').update(password).digest('hex'), hash, callback);
}
new LocalStrategy(function getUserPassport(username, password, done) {
User.findOne({
'emails.address': username,
}, (findError, userModel) => {
if (findError) {
return done(findError);
}
if (!userModel) {
return done(null, false, { message: 'Incorrect username.' });
}
const user = userModel.toJSON();
comparePasswords(password, user.services.password.bcrypt, (hashError, goodPassword) => {
if (hashError) {
return done(hashError);
}
if (!goodPassword) {
return done(null, false, { message: 'Incorrect password.' });
}
return done(null, user);
});
});
})
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment