feat: fix issue that admin cannot enable MFA for user (#2702)

This commit is contained in:
Yaodong Yu
2024-02-14 23:29:04 +08:00
committed by GitHub
parent 7481b229a4
commit f35a5f9a47
2 changed files with 32 additions and 25 deletions

View File

@ -52,21 +52,10 @@ func (mfa *SmsMfa) Enable(user *User) error {
if mfa.MfaType == SmsType {
user.MfaPhoneEnabled = true
columns = append(columns, "mfa_phone_enabled")
if user.Phone == "" {
user.Phone = mfa.Secret
user.CountryCode = mfa.CountryCode
columns = append(columns, "phone", "country_code")
}
columns = append(columns, "mfa_phone_enabled", "phone", "country_code")
} else if mfa.MfaType == EmailType {
user.MfaEmailEnabled = true
columns = append(columns, "mfa_email_enabled")
if user.Email == "" {
user.Email = mfa.Secret
columns = append(columns, "email")
}
columns = append(columns, "mfa_email_enabled", "email")
}
_, err := UpdateUser(user.GetId(), user, columns, false)