跳至主要內容

安全驗證 (Security verification)

當已驗證的使用者嘗試執行敏感或高風險操作時——例如變更密碼、付款,或存取薪資單、銀行帳戶等敏感資訊——就需要額外的安全措施。這種流程在銀行、醫療、政府等敏感應用中特別重要。

這個過程稱為 安全驗證 (Security verification),要求使用者重新驗證其身分,以確認其為授權帳號持有人。透過實施安全驗證,系統能加強對未經授權存取的防護,為高風險操作增添關鍵的安全層,協助保護敏感資料。

建議應用程式與 API 採用 OIDC 進階驗證 (step-up authentication):

若要對你的應用程式與受保護的 API 資源強制執行近期驗證或多重要素驗證 (MFA),或使用標準權杖授權敏感 Account API 呼叫,請使用 OIDC 進階驗證 (step-up authentication)(acr_values、max_age 與 RFC 9470 挑戰)。

當你的第一方應用程式直接呼叫 Account API 並帶上 logto-verification-id 標頭,或在綁定新電子郵件或手機號碼前需驗證其所有權時,請使用下方的 Verification API。

透過 Account API 實作安全驗證​

備註:

請先啟用 Account API,並取得該使用者的 access_token。

密碼驗證​

當使用者透過直接整合 Account API 嘗試變更密碼或其他安全設定時,請提示他們輸入目前密碼,以取得 10 分鐘有效的 verificationRecordId,用於 logto-verification-id 標頭。

methodpathdescription
POST/api/verifications/password驗證目前使用者密碼。

電子郵件/簡訊一次性驗證碼驗證​

向使用者的電子郵件或手機號碼發送驗證碼,並提示他們輸入驗證碼以確認身分。這些端點可用於驗證使用者身分,或確認特定電子郵件或手機號碼的所有權。當使用者嘗試將新電子郵件或手機號碼綁定至帳號時,強烈建議執行此驗證步驟,以確保資訊的真實性。

methodpathdescription
POST/api/verifications/verification-code發送電子郵件或手機號碼驗證碼。
POST/api/verifications/verification-code/verify透過驗證碼驗證電子郵件或手機號碼。