Fixed a bug that prevented the mfa to be enabled

This commit is contained in:
Julian Gassner
2025-02-06 17:01:46 +00:00
parent 0bfd2f901d
commit da22e0777e
3 changed files with 27 additions and 20 deletions

View File

@@ -1,5 +1,5 @@
const authModel = require('../models/auth');
const error = require('../lib/error');
const error = require('../lib/error');
const speakeasy = require('speakeasy');
module.exports = {
@@ -13,10 +13,10 @@ module.exports = {
throw new error.AuthError('MFA is not enabled for this user.');
}
const verified = speakeasy.totp.verify({
secret: auth.mfa_secret,
secret: auth.mfa_secret,
encoding: 'base32',
token: token,
window: 2
token: token,
window: 2
});
if (!verified) {
throw new error.AuthError('Invalid MFA token.');
@@ -58,10 +58,10 @@ module.exports = {
throw new error.AuthError('MFA is not set up for this user.');
}
const verified = speakeasy.totp.verify({
secret: auth.mfa_secret,
secret: auth.mfa_secret,
encoding: 'base32',
token: token,
window: 2
token: token,
window: 2
});
if (!verified) {
throw new error.AuthError('Invalid MFA token.');

View File

@@ -1,16 +1,16 @@
const express = require('express');
const jwtdecode = require('../lib/express/jwt-decode');
const express = require('express');
const jwtdecode = require('../lib/express/jwt-decode');
const apiValidator = require('../lib/validator/api');
const schema = require('../schema');
const internalMfa = require('../internal/mfa');
const qrcode = require('qrcode');
const speakeasy = require('speakeasy');
const userModel = require('../models/user');
const schema = require('../schema');
const internalMfa = require('../internal/mfa');
const qrcode = require('qrcode');
const speakeasy = require('speakeasy');
const userModel = require('../models/user');
let router = express.Router({
caseSensitive: true,
strict: true,
mergeParams: true
strict: true,
mergeParams: true
});
router
@@ -35,7 +35,7 @@ router
.then(({ secret, user }) => {
const otpAuthUrl = speakeasy.otpauthURL({
secret: secret.ascii,
label: user.email,
label: user.email,
issuer: 'Nginx Proxy Manager'
});
qrcode.toDataURL(otpAuthUrl, (err, dataUrl) => {