38 lines
1.1 KiB
JavaScript
38 lines
1.1 KiB
JavaScript
const {PassCheck, PasswordGenerator } = require("auth-guardian")
|
|
|
|
const passwordPolicyOptions = {
|
|
minLength: process.env.PASSMINLENGTH,
|
|
maxLength: process.env.PASSMAXLENGTH,
|
|
minLower: process.env.PASSMINLOWERCASE,
|
|
minUpper: process.env.PASSMINUPPERCASE,
|
|
minNum: process.env.PASSMINNUMBERS,
|
|
minSpecial: process.env.PASSMINSYMBOLS,
|
|
specialChars: process.env.PASSSYMBOLS
|
|
}
|
|
|
|
const passwordPolicyOptionsGenerate = {
|
|
minLength: 12,
|
|
maxLength: 18,
|
|
minLower: process.env.PASSMINLOWERCASE,
|
|
minUpper: process.env.PASSMINUPPERCASE,
|
|
minNum: process.env.PASSMINNUMBERS,
|
|
minSpecial: process.env.PASSMINSYMBOLS,
|
|
specialChars: process.env.PASSSYMBOLS
|
|
}
|
|
|
|
const passWordCheck = new PassCheck(parseInt(process.env.SaltRounds), passwordPolicyOptions)
|
|
const passwordGen = new PasswordGenerator({passwordPolicyOptionsGenerate})
|
|
|
|
function verify(password, hash){
|
|
return passWordCheck.verifyPassword(password, hash)
|
|
}
|
|
|
|
function hash(password){
|
|
return passWordCheck.hashPassword(password)
|
|
}
|
|
|
|
function generatePassword(){
|
|
return passwordGen.Generate()
|
|
}
|
|
|
|
module.exports = {verify, hash, generatePassword} |