Android 版 Chrome 支援密碼金鑰的信號 API

Nina Satragno
Nina Satragno

發布日期:2025 年 12 月 5 日

從 Chrome 144 開始,Android 版 Chrome 支援 Signal API。信賴方 (RP) 可透過這個 API,確保使用者密碼金鑰提供者儲存的密碼金鑰,與伺服器上的憑證一致。

為何要使用 Signal API?

使用者建立密碼金鑰時,密碼金鑰供應商 (例如 Google 密碼管理工具) 會儲存私密金鑰和中繼資料 (例如使用者名稱和顯示名稱),而您的伺服器會儲存公開金鑰。

隨著時間推移,這些資料可能會不同步。例如:

  • 已刪除密碼金鑰:使用者在您的網站上刪除憑證,但密碼金鑰仍保留在密碼金鑰提供者服務中。下次嘗試登入時,密碼金鑰提供者會提供已失效的密碼金鑰。
  • 名稱變更:使用者更新網站上的使用者名稱,但密碼金鑰供應商仍顯示舊名稱。

Signal API 可讓網站「傳送」憑證的目前狀態給密碼金鑰提供者,解決這個問題。您可以要求提供者刪除無效的密碼金鑰或更新中繼資料,確保登入體驗順暢無阻。

最新資訊

Android 版 Chrome 的 Signal API 運作方式與電腦版實作相同,但針對行動生態系統進行了特定強化。

支援第三方密碼管理工具

所有支援的 Android 版本都能使用 Google 密碼管理工具的 Signal API。在 Android 14 以上版本中,Signal API 也會與系統的密碼金鑰供應商整合。Chrome 在這些裝置上廣播信號時,不只會通知 Google 密碼管理工具,Chrome 會將信號傳送至裝置上所有已啟用的密碼金鑰供應商

如果使用者透過支援 Signal API 的第三方供應商管理密碼金鑰,該供應商就會收到更新,並讓使用者的憑證保持同步。

使用密碼金鑰還原功能,確保同步處理安全無虞

Google 密碼管理工具支援 Android 和桌機的 Signal API 更新安全機制。

先前,當 RP 表示憑證不明或已移除時,系統會永久刪除密碼金鑰。現在,Google 密碼管理工具會隱藏密碼金鑰,而不是刪除。

  • 隱藏密碼金鑰:密碼金鑰不再顯示於自動填入或登入對話方塊,避免登入失敗。
  • 還原:如果訊號傳送錯誤,可以還原密碼金鑰。

使用 Signal API

Signal API 提供三種方法,可讓憑證保持同步:

  • 如果系統在伺服器上找不到憑證 ID,導致密碼金鑰登入失敗,請使用 signalUnknownCredential。這會向提供者發出信號,要求移除 (或隱藏) 無效的密碼金鑰。
  • 在使用者登入或管理帳戶設定後,使用 signalAllAcceptedCredentials 。您提供該使用者的所有有效憑證 ID 清單。密碼金鑰供應商會將清單與該信賴方的本機儲存空間進行比較。如果密碼金鑰供應商中找到的密碼金鑰未列於「allAcceptedCredentialIds」清單,系統會將其標示為「已隱藏」。系統不會再提供這些隱藏的密碼金鑰用於登入或自動填入,但不會立即永久刪除,因此如有需要,可以還原。反之,如果密碼金鑰供應商將 allAcceptedCredentialIds 中的密碼金鑰標示為「隱藏」,系統就會還原這些密碼金鑰。這樣一來,網站就能還原先前因錯誤而隱藏的密碼金鑰。
  • 當使用者在網站上更新個人資料 (例如顯示名稱) 時,以及每次登入後,請使用 signalCurrentUserDetails。這樣一來,日後登入時,密碼金鑰供應商就會顯示正確資訊。

摘要

Signal API 可協助您建構可靠且易於使用的驗證體驗。導入這些信號後,您就能避免過時的密碼金鑰造成混淆,並確保使用者一律看到正確的帳戶資訊。

Android 版 Chrome 現在也支援這項功能,因此您可以在裝置、密碼金鑰供應器和密碼管理工具之間,提供同步體驗。

瞭解詳情