Federated Credential Management API 正在上線

Federated Credential Management API (FedCM) 已於 Chrome 108 推出 (目前為 Beta 版)。FedCM API 在 2022 年 11 月底出貨後,不需要旗標或來源試用權杖,就能在 Chrome 中正常運作。

FedCM 是 Privacy Sandbox API,為網路上的聯合身分流程提供特定用途專用的抽象化機制。FedCM 會顯示瀏覽器中介對話方塊,可讓使用者從識別資訊提供者中選擇帳戶,以登入網站。

請前往累計更新頁面查看最新的 API 變更。

我們打算根據識別資訊提供者 (IdP)、依賴方 (RP) 和瀏覽器廠商的意見回饋,推出多項新功能。雖然我們希望識別資訊提供者將採用 FedCM,但請注意,FedCM 目前仍在積極開發階段,且預計到 2023 年第 4 季前都無法回溯相容的變更。

為了盡可能減少部署回溯不相容的變更時,我們針對識別資訊提供者提供兩項建議:

  • 訂閱我們的電子報,我們會隨著 API 的演進持續提供最新資訊。
  • 我們強烈建議 IdP 在 API 發展期時透過 JavaScript SDK 發布 FedCM API,並避免讓自我託管 SDK 採用 RP。這可確保 IdP 能隨著 API 的演進進行變更,而無須要求所有依賴方重新部署。

背景

在過去十年裡,與自家網站上的使用者名稱和密碼相比,身分聯盟在提高網路驗證標準方面扮演著重要的角色,其重點在於可信任性、易於使用 (例如無密碼的單一登入) 和安全性 (例如加強對網路釣魚和憑證填充攻擊的抵禦能力)。

遺憾的是,由於身分聯盟機制 (iframe、重新導向和 Cookie) 經常遭到濫用身分聯盟,藉此追蹤使用者在網路上的行為。由於使用者代理程式無法區分身分聯盟和追蹤,因此各種濫用行為的因應措施會讓身分聯盟部署更加困難。

FedCM 是讓網路身分更臻完善的多步驟流程,因此我們的第一步的重點是降低逐步淘汰第三方 Cookie 對聯合身分的影響 (請參閱下方後續步驟)。

使用者正透過 FedCM 簽署 RP

Chrome 自 Chrome 101 版本起便一直使用 FedCM 進行實驗

Google Identity Services 團隊參與了來源試用,並表示只要對現有程式庫進行回溯相容的更新,改用更私密且安全的登入程序,即可以公開透明的方式執行。他們讓 FedCM 得以涵蓋 20 個不同的依賴方,以及超過 30 萬名使用者在來源試用期間登入它們。進一步瞭解他們預計如何移除對第三方 Cookie 的依賴

我們很高興能找到 Mozilla 的許多常見議題,他們積極參與設計討論,並開始在 Firefox 中開始設計 FedCM 原型。Apple 已表示對這類規格的一般支援,因此正開始參與 FedID CG 的討論。

後續步驟

我們正在努力實現部分 FedCM 異動。

目前仍有一些必須完成的事項,包括我們從 IdP、RP 和瀏覽器廠商反映的問題。我們認為瞭解如何解決這些問題:

  • 跨來源 iframe 支援:IdP 可以在跨來源 iframe 中呼叫 FedCM。
  • 個人化按鈕:IdP 可以在跨來源 iframe 內的登入按鈕中顯示回訪使用者的身分。
  • 指標端點:為 IdP 提供成效指標。

此外,我們正在積極探索還有尚未解決的問題,包括正在評估或設計原型的特定提案:

  • CORS:我們正在與 Apple 和 Mozilla 討論,以確保改善 FedCM 擷取作業的規格。
  • 多重 IdP API:我們正在探索如何支援多個 IdP,進而透過 FedCM 帳戶選擇工具並存。
  • IdP Sign-in Status API:Mozilla 發現了攻擊期問題,而我們正設法讓 IdP 主動通知瀏覽器使用者登入狀態以降低問題。
  • 登入 IdP API:為了支援各種情境,當使用者未登入 IdP 時,瀏覽器會提供使用者介面,讓使用者不必離開 RP 即可登入。

最後,我們根據 MozillaAppleTAG 審查人員的意見回饋,相信還是需要做些什麼。我們正在針對以下開放式問題評估最佳解決方案:

  • 提升使用者理解力和比對意圖Mozilla 指出,希望能繼續探索不同的使用者體驗公式、途徑區域,以及觸發條件。
  • 身分屬性和選擇性揭露事項:如 TAG 審查人員所述,我們現在想提供特定機制,視需求分享更多或較少的身分屬性,例如電子郵件、年齡層、電話號碼等。
  • 提高隱私權屬性:根據 Mozilla 的建議 這裡,我們會持續探索相關機制,提供更高品質的隱私權保證,例如 IdP 盲和導向的 ID。
  • 與 WebAuthn 的關係:如 Apple 的建議,我們非常期待看到密碼金鑰的進展,同時致力在 FedCM、密碼、WebAuthn 和 WebOTP 之間提供連貫一致的體驗。
  • 登入狀態:Apple 建議使用 Privacy CG 的 Login Status API 建議,說明使用者的登入狀態是非常實用的資訊,可協助瀏覽器在充分掌握資訊的情況下做出決定,而我們迫不及待想瞭解這會導致哪些可能性。
  • 企業和教育:如 FedID CG 清楚瞭解,FedCM 仍有些有許多用途不足以獲得 FedCM 服務,例如前端登出 (IdP 將訊號傳送給 RP 傳送訊號) 和 SAML 支援服務。
  • 與 mDL、VC 和其他的關係:繼續瞭解這些格式在 FedCM 中的情況,例如使用 Mobile Document Request API

資源