检测用户是否通过 webauthn 进行身份验证

1 webauthn

是否可以检测(在浏览器中运行的客户端 JavaScript 中)用户是否通过 webauthn 进行身份验证?对浏览器是否支持 webauthn 或凭据是什么不感兴趣,但只对是否发生身份验证感兴趣。我查看了https://www.w3.org/TR/webauthn-2/上的 api ,并在https://webauthn.io/上尝试了演示,但不知道这是否允许。

我需要在网站上运行的第三方脚本中检测到这一点。所以我无权访问将实现 webauthn 的代码。对我来说,检测网站是否通过 webauthn 实施 MFA 会更容易,但我认为这是不可能的;因此,作为后备措施,我希望能够检测 MFA 身份验证是否已发生。

Ack*_*riy 5

因此,让我们考虑一下一般的身份验证。身份验证是特定服务的一项功能,由服务以特定方式实现。Google 和 Facebook 之间的用户体验可能相似,但每个提供商的流程、API、密码散列都是独一无二的。

要确定您是否可以使用密码登录网站,您需要访问一个网站,看看它是否有登录表单。

与 WebAuthn 的方式相同。这不是什么浏览器内的魔法。如果您想查看是否可以在网站上使用 WebAuthn,您需要尝试登录网站并查看在登录过程中是否使用 WebAuthn API。

WebAuthn API 只是提供生成凭证并获取凭证断言(证明)的功能。您可以使用此信息来验证用户。每个服务的具体操作方式以及执行验证的过程都不同。

所以结论是:

WebAuthn API 没有确定用户是否登录的功能,因为这不是 WebAuthn API 的用途。

如果您有兴趣了解有关 WebAuthn 的更多信息:

我们有一个很酷的指南: https: //webauthn.guide/

有用资源的集合:https://github.com/herrjemand/awesome-webauthn

深入研究 WebAuthn API:https://medium.com/webauthnworks/introduction-to-webauthn-api-5fd1fb46c285