Federated Credential Management API 即将推出

Federated Credential Management API (FedCM) 已在 Chrome 108(目前为 Beta 渠道)中推出。FedCM API 将于 2022 年 11 月底在 Chrome 稳定版中推出,届时无需标记或源试用令牌即可在 Chrome 中运行。

FedCM 是一种 Privacy Sandbox API,可为网络上的联合身份流提供特定于用例的抽象。FedCM 提供了由浏览器参与的对话框,允许用户从身份提供方处选择账号以登录网站。

累计更新页面中查看最新的 API 更改。

根据从身份提供方 (IdP)、依赖方 (RP) 和浏览器供应商处收到的反馈,我们计划引入一些新功能。虽然我们希望身份提供方采用 FedCM,但请注意,FedCM 仍处于积极开发阶段,并且预计在 2023 年第 4 季度之前会进行不向后兼容的更改。

为了尽量减少部署向后不兼容更改带来的挑战,我们目前针对身份提供方提供两条建议:

  • 订阅我们的简报,我们将随着 API 的发展为您提供最新动态。
  • 在 FedCM API 成熟的过程中,我们强烈建议 IdP 通过 JavaScript SDK 分发该 API,并不建议 RP 使用自托管 SDK。这将确保 IdP 可以随着 API 的发展进行更改,而无需让所有依赖方进行重新部署。

背景

过去十年中,与每个网站的用户名和密码相比,身份联合在提高 Web 身份验证的可信度、易用性(例如,无密码单点登录)和安全性(例如,更能抵御钓鱼式攻击和凭据填充攻击)方面发挥了核心作用。

遗憾的是,身份联合所依赖的机制(iframe、重定向和 Cookie)正被积极滥用以跟踪网络中的用户。由于用户代理无法区分身份联合和跟踪,因此针对各种滥用行为类型的缓解措施会使身份联合的部署变得更加困难。

FedCM 涉及多个步骤,旨在改善网络身份。在第一步,我们的重点是降低逐步停用第三方 Cookie 对联合身份的影响(请参阅下文,了解后续步骤)。

用户正在使用 FedCM 为 RP 签名

Chrome 一直在从 Chrome 101 开始对 FedCM 进行实验

Google Identity 服务团队参与了源试用,并证明,通过对现有库进行向后兼容更新,可以透明地切换到不依赖第三方 Cookie 且更加安全可靠的登录流程。他们在源试用期间为 20 个不同的依赖方启用了 FedCM,并有 30 多万名登录了它们的用户。详细了解他们如何计划取消对第三方 Cookie 的依赖

我们很高兴能够发现 Mozilla 与众不同之处,他们一直在积极参与设计讨论开始在 Firefox 中设计 FedCM 原型。Apple 已表明他们对该规范的全面支持,并且将开始在 FedID CG 上参与讨论。

后续步骤

我们正在努力对 FedCM 进行一些更改。

我们知道,还有一些事情仍然需要解决,包括我们从 IdP、RP 和浏览器供应商了解到的问题。我们相信自己知道如何解决这些问题:

  • 跨源 iframe 支持:IdP 可以从跨源 iframe 中调用 FedCM。
  • 个性化按钮:IdP 可以在跨源 iframe 中的登录按钮上显示回访用户的身份。
  • 指标端点:向 IdP 提供性能指标。

此外,我们正在积极探索一些未解决的问题,包括我们正在评估或进行原型设计的特定提案:

最后,根据 MozillaAppleTAG 审核人员的反馈,我们认为仍有一些事情需要改进。 我们正在努力评估以下待解决问题的最佳解决方案:

  • 提高用户的理解和匹配意图:正如 Mozilla 所指出的,我们希望继续探索不同的用户体验方案和表面区域以及触发条件。
  • 身份属性和选择性披露:正如我们的 TAG 审核人员所述,我们希望提供一种机制,让您有选择地分享更多或更少的身份属性(例如电子邮件地址、年龄段、电话号码等)。
  • 提高隐私属性:正如 Mozilla 此处的建议,我们想要继续探索旨在提供更好的隐私保护的机制,例如 IdP 盲人和定向标识符。
  • 与 WebAuthn 的关系:正如 Apple 所建议的那样,我们非常高兴看到通行密钥取得的进展,并致力于在 FedCM、Passwords、WebAuthn 和 WebOTP 之间提供一致的体验。
  • 登录状态:正如 Apple 通过 Privacy CG 的 Login status API 所建议的那样,我们分享了一个直觉,即用户的登录状态是可以帮助浏览器做出明智决策的实用信息,我们迫不及待地想要看到用户的登录状态会带来什么机会。
  • 企业和教育:正如 FedID CG 所明确,仍有许多用例未能得到 FedCM 的良好满足,我们仍希望继续改进,例如前端渠道退出(IdP 能够向 RP 发送信号以退出登录)和对 SAML 的支持。
  • 与 mDL、VC 及其他组织的关系:继续努力了解这些模块在 FedCM 中的用途,例如借助 Mobile Document Request API 实现。

资源