fix: 修复mfa2Token为0开头时校验失败的bug

This commit is contained in:
chaos-zhu
2025-05-14 21:32:11 +08:00
parent 2c216105d3
commit 05b2e25e5b
2 changed files with 2 additions and 2 deletions
+1 -1
View File
@@ -63,7 +63,7 @@ const login = async ({ res, request }) => {
let loginPwd = await RSADecryptAsync(ciphertext)
let { user, pwd, enableMFA2, secret } = await keyDB.findOneAsync({})
if (enableMFA2) {
const isValid = speakeasy.totp.verify({ secret, encoding: 'base32', token: mfa2Token, window: 1 })
const isValid = speakeasy.totp.verify({ secret, encoding: 'base32', token: String(mfa2Token), window: 1 })
console.log('MFA2 verfify:', isValid)
if (!isValid) return res.fail({ msg: '验证失败' })
}
+1 -1
View File
@@ -124,7 +124,7 @@ const handleLogin = () => {
if (ciphertext === -1) return $message.error({ message: '公钥加载失败', center: true })
loading.value = true
try {
let { data, msg } = await $api.login({ loginName, ciphertext, jwtExpires, mfa2Token: Number(mfa2Token) })
let { data, msg } = await $api.login({ loginName, ciphertext, jwtExpires, mfa2Token })
const { token } = data
$store.setJwtToken(token, expireEnum.ONE_SESSION === expireTime.value)
$store.setUser(loginName)