Advertisement
archit_jain

Confif for passport.js

Jul 11th, 2021
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.02 KB | None | 0 0
  1. const Admin = require("../models/admin");
  2. const bcrypt = require("bcryptjs");
  3. const localStrategy = require("passport-local").Strategy;
  4.  
  5. module.exports = function (passport) {
  6. passport.use(
  7. new localStrategy((username, password, done) => {
  8. Admin.findOne({ username: username }, (err, user) => {
  9. if (err) throw err;
  10. if (!user) return done(null, false);
  11. bcrypt.compare(password, user.password, (er, result) => {
  12. if (er){throw er;}
  13. if (result === true) {return done(null, user);}
  14. else {return done(null, false);}
  15. });
  16. });
  17. })
  18. );
  19.  
  20. passport.serializeUser((user, cb) => {
  21. cb(null, user.id);
  22. });
  23.  
  24. passport.deserializeUser((id, cb) => {
  25. Admin.findOne({ _id: id }, (err, user) => {
  26. const userInformation = {username: user.username, org_id: user.org_id};
  27. cb(err, userInformation);
  28. });
  29. });
  30. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement