Hacktoberfest 2026:維護者為十月標記出來的 issue,仍然開放、適合新手。 瀏覽 Hacktoberfest issue

Updating MFA methods for user with TOTP active results in error

未關閉
#2,995 3 則留言 1 個 reaction 已指派 1 人 在 GitHub 檢視

維護者通常 1 天內回覆

@pashanka 已經在處理了。

開始於 2025年10月27日。

  • #3264 來自 @rootkiller6788 —— 未關閉

評估

這個 Issue 還沒有評估資料。

描述

api: auth
[REQUIRED] Step 2: Describe your environment
  • Operating System version: macOS 15.6.1
  • Firebase SDK version: 13.5.0
  • Firebase Product: auth
  • Node.js version: 20.19.2
  • NPM version: 11.6.2
[REQUIRED] Step 3: Describe the problem

When attempted to change anything in the MFA configuration of a user that has TOTP active, firebase throws.

Steps to reproduce:

See the following example, where I attempt to enroll user with phone factor.

let enrolledFactors = (user.multiFactor?.enrolledFactors || []) as unknown as firebase.auth.UpdateMultiFactorInfoRequest[];

if (enrolledFactors.find((f) => f.factorId === method)) {
    console.log(`User ${email} is already enrolled in MFA method: ${method}`);
    return;
}

await firebase.auth().updateUser(user.uid, {
    multiFactor: {
        enrolledFactors: [
            ...enrolledFactors,
            {
                uid: `phone:${sanitizePhoneNumber(phoneNumber)}`,
                factorId: FactorId.PHONE,
                phoneNumber,
            },
        ],
    },
});

If the enrolledFactors include an entry with factorId totp, it throws:

FirebaseAuthError: Unsupported second factor "{"uid":"58637419-3818-4e95-b26c-7254aa11a85b","displayName":"TOTP","factorId":"totp","enrollmentTime":"Fri, 24 Oct 2025 09:34:05 GMT","totpInfo":{}}" provided.

It does look like the firebase-admin does not support TOTP fully, even though user was able to enroll and use the TOTP method on the client just fine - and the user.multiFactor?.enrolledFactors do return it (but you can't save it back to the firebase).

主要語言
TypeScript
星號
1.7k
分支
423
平均合併
1 天 54 分鐘
30 天內合併 PR
16

環境準備

從這裡開始

  1. 先讀完整個 Issue,再讀專案的貢獻指南。
  2. 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
  3. Fork 儲存庫,在一個分支上完成修改。
  4. 送出 Pull Request,並在描述裡引用這個 Issue 編號。

firebase/firebase-admin-node 的其他 Issue

查看 firebase/firebase-admin-node 的全部 Issue

相似的 Issue

更多 TypeScript Issue

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。