凭据管理 API

Meggin Kearney
Meggin Kearney

Credential Management API 是一种基于标准的浏览器 API,可在网站和浏览器之间提供编程接口,以实现跨设备无缝登录。

凭据管理 API:

  • 消除登录流程的阻力 - 即使用户的会话已过期或凭据已在其他设备上保存,用户也可以自动重新登录网站。
  • 允许使用帐号选择器一键登录 - 用户可以在原生帐号选择器中选择一个帐号。
  • 存储凭据 - 您的应用可以存储用户名和密码组合,甚至联合帐号详情。浏览器可以跨设备同步这些凭据。

想要看看实际运用情况?不妨试用 Credential Management API 演示并查看相关代码

检查 Credential Management API 浏览器支持

浏览器支持

  • 51
  • 18
  • 60
  • 13

来源

在使用 Credential Management API 之前,请先检查是否支持 PasswordCredentialFederatedCredential

if (window.PasswordCredential || window.FederatedCredential) {
  // Call navigator.credentials.get() to retrieve stored
  // PasswordCredentials or FederatedCredentials.
}

登录用户

如需让用户登录,请从浏览器的密码管理器中检索凭据,并使用这些凭据让用户登录。

例如:

  1. 当用户到达您的网站但并未登录的情况下,请调用 navigator.credentials.get()
  2. 使用检索到的凭据让用户登录。
  3. 更新界面以表明用户已登录。

如需了解详情,请参阅登录用户

保存或更新用户凭据

如果用户使用 Google 登录、Facebook、GitHub 等联合身份提供方服务登录:

  1. 用户成功登录或创建帐号后,使用用户的电子邮件地址作为 ID 创建 FederatedCredential,并使用 FederatedCredentials.provider 指定身份提供方。
  2. 使用 navigator.credentials.store() 保存凭据对象。

如需了解详情,请参阅登录用户

如果用户使用用户名和密码登录:

  1. 在用户成功登录或创建帐号后,使用用户 ID 和密码创建 PasswordCredential
  2. 使用 navigator.credentials.store() 保存凭据对象。

如需了解详情,请参阅保存表单中的凭据

退出账号

当用户退出帐号时,调用 navigator.credentials.preventSilentAccess() 以防止用户自动重新登录。

停用自动登录功能还可让用户轻松地在帐号之间切换,例如在工作帐号和个人帐号之间切换,或在共享设备上的帐号之间切换,而无需重新输入其登录信息。

如需了解详情,请参阅退出帐号

反馈