问题描述
问题是什么?
是否可以通过通用链接或其他方式将 otp 设置信息(名称、密码)发送到已安装的身份验证应用(Google 身份验证器或 authy)?
这里的目标是什么?
想象一下用户想要在网站上激活 2FA 的场景。
可用的选项是:
但是,我们想要第三个选项,用户只需点击一个按钮,身份验证应用就会自动打开并带有预填充的数据。
完美解决方案的要求
- 它必须同时适用于 android 和 ios(如果它也适用于桌面,那就太棒了)
- 最好它应该同时适用于 Google 身份验证器和 authy
- 最好不应该仅限于 PWA 网站
Android 几乎是类似的问题
Intent to Open Google Authenticator
解决方法
这里是 Twilio 开发者布道者。
我认为没有办法从网络应用程序打开 Google 身份验证器。我还没有尝试过,但链接到您用于 QR 码的 otpauth://
URL 可能会触发身份验证器应用程序。但是,对于未安装身份验证器应用程序的用户来说,这将是一个断开的链接。
使用 Authy,当您 register a user with the Authy API 使用他们的电话号码和电子邮件地址时,如果他们拥有 Authy 应用程序,那么您的应用程序将被添加,他们无需执行任何操作。然后,当您从他们那里 request a one time password 时,他们会收到一条推送通知,点击该通知后,将根据您的应用程序的一次性密码打开 Authy 应用程序。
此外,您可以实施 push authentications with the Authy API 发送推送通知,并在打开时为用户提供批准或拒绝身份验证的选项,而无需跨 OTP 复制。
我们可以使用 Authy 应用程序和 Authy API 来做到这一点,因为两者之间的紧密集成。 Google 身份验证器不提供此类集成。
请注意,在用户尚未安装 Authy 应用程序的情况下,验证码会回退到通过 SMS 传送。