Android WebView支持WebAuthn?

时间:2019-05-22 13:35:04

标签: android fido-u2f webauthn fido

我不是一名Android开发人员,并且坚持使用Android。我希望这里有人可以帮助我。

我正在我的网站上实施WebAuthn / FIDO2,与浏览器完美配合。 但是,当我在Android应用程序(android.webkit.webview)中打开网站时,出现错误

I/chromium: [INFO:CONSOLE(136)] "Got error-NotSupportedError: The user agent does not support public key credentials." 

我在网站上使用的代码示例如下:

navigator.credentials.create({ publicKey })

在我的应用中打开https://webauthn.io/时说:“当前不支持此浏览器”

我们不能以某种方式更新webView吗?

我正在使用sdk版本(API 26,Android 8.0 oreao)

有什么解决方法吗?

谢谢!

2 个答案:

答案 0 :(得分:1)

简而言之:出于安全原因,它不会在Android Webview(source)中实现。

要从应用程序中使用WebAuthn,您必须直接重定向到浏览器,或者使用SFSafariViewController(iOS)或Android自定义标签(Android)重定向,如RFC8252 - Appendix B中所述。

答案 1 :(得分:0)

虽然它不受官方支持,但可以使用第三方解决方案:https://hwsecurity.dev/guide/fido-webview/

他们注入了一个JavaScript桥,该桥将navigator.credentials调用重定向到其FIDO2实现。 对我来说很棒。