在成功完成源试用后,我们将在 Chrome 132 中发布多项新的 FedCM 更新:Mode API、Use Other Account API 和 Continuation API 捆绑包。
Mode API
模式 API 允许进行不同的用户体验模式配置,并引入了一种新的用户体验模式:活动模式。主动模式是现有被动 模式(以前称为微件模式)的替代方案,FedCM 默认使用被动模式。
在主动模式(以前称为按钮模式)下,即使在调用 navigator.credentials.get() 时用户已从身份提供方 (IdP) 退出,IdP 也可以使用 FedCM API。登录流程由用户手势(例如点击 Sign in with IdP 按钮)发起,这样可以更好地反映用户的意图。
主动模式登录对话框界面与被动模式界面不同:前者更大、居中,且品牌图标更大。
如需了解如何在主动模式下使用 FedCM,请参阅开发者文档。
使用其他账号
借助 Use Other Account API,如果 IdP 支持多个账号或替换现有账号,用户可以选择切换到与当前登录账号不同的账号:
延续 API 软件包
Continuation API 软件包自 Chrome 132 起提供。该软件包包含多项 FedCM 功能:
这些功能捆绑在一起,是因为 IdP 可以使用它们来实现授权流程,例如允许用户向 RP 授予对其日历的访问权限。
continue_on 网址。用户可以在登录 RP 之前查看并授予其他权限。Fields API 会修改披露声明界面消息。Continuation API
借助 Continuation API,IdP 可以在 ID 断言端点响应中提供重定向网址,以实现多步登录流程。当 IdP 需要请求其他信息或权限时,此功能非常有用,例如:
- 用于访问用户服务器端资源的权限。
- 验证联系信息是否为最新状态。
- 家长控制。
如需了解如何使用 Continuation API,请参阅 FedCM 开发者文档。
Parameters API
借助 Parameters API,RP 可以向 ID 断言端点提供其他键值对参数。借助 Parameters API,RP 可以向 IdP 传递其他参数,以请求对基本登录以外的资源的权限。
当 RP 需要请求其他权限(例如账单邮寄地址或日历访问权限)时,传递其他参数会很有用。用户可以通过使用 Continuation API 启动的 IdP 控制的 UX 流程来授权这些权限,然后 IdP 会共享此信息。
如需了解如何使用 Parameters API,请参阅开发者文档。
Fields API
借助 Fields API,RP 可以指定需要 IdP 与其分享的用户信息(姓名、电子邮件地址和个人资料照片的任意组合)。所请求的信息将包含在 FedCM 对话框的披露界面中。如果用户选择登录,系统会显示一条消息,告知用户 idp.example 将与 rp.example 分享所请求的信息。
如需了解如何使用 Fields API,请参阅开发者文档。
多个 config网址
多个 config网址 允许 IdP 通过在知名文件中指定 accounts_endpoint 和 login_url(与配置文件相同)来容纳 IdP 的多个配置文件。此功能在以下情况下非常有用:
- IdP 需要支持多种不同的测试和生产配置。
- IdP 需要支持每个区域的不同配置(例如
eu-idp.example和us-idp.example)。
如需了解实现详情,请参阅开发者文档。
自定义账号标签
借助自定义账号标签,IdP 可以使用标签注释用户账号,RP 可以通过为特定标签指定 configURL 来选择仅提取具有特定标签的账号。当 RP 需要按特定条件过滤账号时,这会非常有用,例如仅显示特定角色的账号(如 developer 或 hr)。
互动和分享反馈
如果您有任何反馈或遇到任何问题,可以提交问题。我们会及时更新 FedCM 开发者文档以及累积的更新日志页面。