not decode password username on passport stratergy

This commit is contained in:
srgooglo 2022-05-06 12:27:17 +02:00
parent 3190fba4b7
commit d498a03505

View File

@ -1,3 +1,13 @@
// patches
const { Buffer } = require("buffer")
global.b64Decode = (data) => {
return Buffer.from(data, "base64").toString("utf-8")
}
global.b64Encode = (data) => {
return Buffer.from(data, "utf-8").toString("base64")
}
Array.prototype.updateFromObjectKeys = function (obj) {
this.forEach((value, index) => {
if (obj[value] !== undefined) {
@ -16,14 +26,6 @@ import passport from "passport"
import { User, Session, Config } from "./models"
import jwt from "jsonwebtoken"
const { Buffer } = require("buffer")
const b64Decode = global.b64Decode = (data) => {
return Buffer.from(data, "base64").toString("utf-8")
}
const b64Encode = global.b64Encode = (data) => {
return Buffer.from(data, "utf-8").toString("base64")
}
const ExtractJwt = require("passport-jwt").ExtractJwt
const LocalStrategy = require("passport-local").Strategy
@ -188,11 +190,11 @@ class Server {
passwordField: "password",
session: false
}, (username, password, done) => {
User.findOne({ username: b64Decode(username) }).select("+password")
User.findOne({ username }).select("+password")
.then((data) => {
if (data === null) {
return done(null, false, this.options.jwtStrategy)
} else if (!bcrypt.compareSync(b64Decode(password), data.password)) {
} else if (!bcrypt.compareSync(password, data.password)) {
return done(null, false, this.options.jwtStrategy)
}