設定多重要素驗證 (MFA, Multi-factor authentication)
在 Logto 設定多重要素驗證 (MFA)
Logto 提供彈性的多重要素驗證 (MFA) 設定選項,以滿足不同的安全需求。你可以針對所有使用者進行全域 MFA 設定,或在多租戶應用程式中,依據每個組織 (Organization) 單獨啟用 MFA。
全域 MFA 設定
依照以下步驟,於使用者的 Logto 登入流程中啟用 MFA:
- 前往:控制台 > 多重要素驗證 (Multi-factor auth)。
- 啟用你希望提供給使用者的驗證因子。
- 主要因子:
- 驗證器 App 一次性密碼 (Authenticator App OTP):最常見且廣泛接受的方法。使用如 Google Authenticator 或 Authy 等驗證器 App 產生的基於時間的一次性密碼 (TOTP)。
- Passkeys (WebAuthn):適用於支援裝置生物辨識或安全金鑰等網頁產品的高安全性選項,確保強大防護。
- 備用因子:
- 備用碼 (Backup codes):當使用者無法驗證上述任何主要因子時,可作為備用選項。啟用此選項可降低使用者存取失敗的阻力。
- 主要因子:
- 選擇是否啟用 強制 MFA (Require MFA):
- 啟用:使用者在登入流程中會被要求設定 MFA,且無法跳過。若使用者未完成 MFA 設定或刪除 MFA 設定,將無法登入帳號,直到重新設定 MFA。
- 停用:使用者可於註冊流程中跳過 MFA 設定,日後可透過自助帳號設定頁面設定 MFA。進一步了解如何實作使用者帳號設定頁面。你還可以選擇 MFA 設定提示的政策:
- 不提示使用者設定 MFA:登入時不會提示使用者設定 MFA。
- 註冊時提示使用者設定 MFA:新使用者於註冊時會被提示設定 MFA,現有使用者則於下次登入時看到提示。使用者可跳過此步驟,且不會再次出現。
- 註冊後首次登入時提示使用者設定 MFA:新使用者於註冊後第二次登入時會被提示設定 MFA,現有使用者於下次登入時看到提示。使用者可跳過此步驟,且不會再次出現。

組織層級 MFA 設定
對於支援 組織 (Organizations) 的多租戶架構產品,大多數情況下你不需要對所有使用者強制啟用 MFA。你可以依據每個組織 (Organization) 的需求,單獨啟用 MFA。請參考 要求組織成員啟用 MFA 以開始設定。
MFA 使用者流程
MFA 設定流程
啟用 MFA 後,使用者在登入與註冊流程中會被提示設定 MFA。僅當啟用「使用者自控 MFA」政策時,使用者才可選擇跳過此設定流程。
- 造訪登入或註冊頁面:使用者前往登入或註冊頁面。
- 完成登入或註冊:使用者於登入或註冊流程中完成身分驗證。
- 設定 MFA 主要因子:系統提示使用者設定主要 MFA 因子(驗證器 App OTP 或 WebAuthn)。若啟用多個主要因子,使用者可選擇偏好的方式。若啟用「使用者自控 MFA」政策,使用者也可點選「跳過」按鈕略過此步驟。
- 設定 MFA 備用因子:若啟用 備用碼 (Backup codes),使用者於成功設定主要驗證因子後會被提示設定備用碼。系統會自動產生備用碼並顯示給使用者,使用者可下載並妥善保存。使用者必須手動確認備用碼以完成 MFA 設定流程。

MFA 驗證流程
已設定 MFA 的使用者,在登入時會被提示以已設定的 MFA 因子驗證身分。實際驗證因子取決於 Logto 的 MFA 設定與使用者個人設定。
- 若使用者僅設定一種因子,將直接驗證該因子。
- 若使用者設定多種因子作為二階段驗證 (2FA),需選擇其中一種進行驗證。
- 若所有啟用的主要因子皆無法使用,且已啟用備用碼,則可使用一次性備用碼驗證身分。

MFA 管理
除了首次登入/註冊時的設定外,使用者可透過自助帳號中心管理 MFA 設定,靈活綁定或解除 MFA 因子以符合自身需求。
建立帳號中心
你可以利用 Logto 的 Account API 建立完整的帳號中心,讓使用者可以:
- 綁定新 MFA 因子:新增其他驗證器 App、Passkey 或重新產生備用碼
- 解除現有 MFA 因子:移除不再使用的 MFA 方法
- 檢視目前 MFA 狀態:查看目前已設定的 MFA 因子
登入後 MFA 設定提示
對於註冊時未強制要求 MFA 的應用程式,你可以實作智慧提示以鼓勵使用者設定 MFA:
- 條件式提示:根據使用者行為或帳號價值顯示 MFA 設定建議
- 安全儀表板:顯示安全分數,啟用 MFA 後分數提升
- 漸進式導入:將 MFA 設定作為逐步提升安全性的流程之一
進一步了解如何利用 Account API 實作這些模式。