【问题标题】:How to use web authentication api on multiple devices and if user is pre-created by system如何在多个设备上使用 web 身份验证 api 以及用户是否由系统预先创建
【发布时间】:2022-12-20 07:21:34
【问题描述】:

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

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

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

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

【问题讨论】:

    标签: webauthn


    【解决方案1】:
    1. 您无法为管理员用户预注册公钥,因为您无法提供相应的私钥以加载到用户的身份验证器中。您可以做的是创建具有唯一链接和一次性密码的用户帐户,用户可以使用该帐户完成 Webauthn 的注册(私钥将在身份验证器上生成)。
    2. 生物识别技术只是进行本地用户验证的一种方式。这取决于身份验证器,但一些示例是 PIN(例如基于 USB 的身份验证器)或滑动模式 (Android)。
    3. 有几种方法可以做到这一点:
      • 密钥可以通过云同步,当两个设备属于同一生态系统(例如 Apple iCloud)时非常有用。
      • 桌面浏览器可以显示二维码供手机扫描,然后与桌面建立连接,这在整个生态系统中运行良好。这称为“混合”传输。

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

    【讨论】:

      猜你喜欢
      • 2016-04-21
      • 1970-01-01
      • 2017-07-24
      • 2015-04-27
      • 1970-01-01
      • 2022-01-25
      • 1970-01-01
      • 2015-12-06
      • 1970-01-01
      相关资源
      最近更新 更多