如何在多个设备上使用web身份验证api,以及用户是否由系统预先创建



如果我要使用Web身份验证API对我的网站进行身份验证,请告知在以下情况下该怎么做?

  1. 我的网站有一个只有管理员用户才能访问的管理页面。在部署我的网站之前,我需要为管理员用户创建凭据,以便他们在登录时使用。这意味着他们不需要注册到我的网站。因为传统上,当我们创建管理员用户时,我们会配置他们可以使用的用户名和密码。在这种情况下,启用web身份验证的流程是什么?

  2. 如果设备(手机或笔记本电脑(没有生物特征,该怎么办?如果没有生物特征,但生物特征注册/登录将是默认设置,我是否启用密码输入?

  3. 我的网站可以通过手机和笔记本电脑访问。如果用户使用手机注册,因此将公钥发送到服务器,那么如果用户下次尝试从笔记本电脑登录,会发生什么?

  1. 您不能为管理员用户预先注册公钥,因为您无法提供要加载到用户验证器中的相应私钥。您所能做的是创建具有唯一链接和一次性密码的用户帐户,用户可以使用该帐户向Webauthn完成注册(私钥将在验证器上生成(
  2. 生物识别只是进行本地用户验证的一种方式。这取决于验证器,但有几个例子是PIN(例如基于USB的验证器(或滑动模式(Android(
  3. 有几种方法:
    • 密钥可以通过云同步,适用于两台设备属于同一生态系统(例如Apple iCloud(的情况
    • 桌面浏览器可以显示手机扫描的二维码,然后与桌面建立连接,这在整个生态系统中都很有效。这被称为"混合"运输

关于最后两点,请参阅https://passkeys.dev/有关此演示的更多信息:https://www.w3.org/2022/09/TPAC/demos/passkeys.html

最新更新