浏览器中的自动增量验证短信代码 (otp || 2fa)

Posted

技术标签:

【中文标题】浏览器中的自动增量验证短信代码 (otp || 2fa)【英文标题】:Autoincrement verification sms code (otp || 2fa) in browser 【发布时间】:2019-06-22 05:16:52 【问题描述】:

是否可以从浏览器(javascript)应用程序中获取验证短信代码(自动增量 || 自动填充)?

有文章说在ios 12 safari 上出现了自动填充短信验证码的功能(2fa)。但我找不到描述(html5 或 javascript)这是如何工作的?

UPD 它在 safari 中运行良好:

<input type="tel" id="single-factor-code-text-field" autocomplete="one-time-code">

【问题讨论】:

【参考方案1】:

我找到了这个功能的苹果文档

https://developer.apple.com/documentation/security/password_autofill/enabling_password_autofill_on_an_html_input_element

我还没试过。但我认为它仅适用于剪贴板中的密钥。当您点击带有代码的短信时,ios 建议您将代码复制到剪贴板。

【讨论】:

【参考方案2】:

2FA 的 iOS 自动填充似乎有点神秘。 Apple 尚未记录确保其有效的特定方法。我四处搜索,看看是否有一个特定的 HTML 属性可以用来确保设备尝试填写代码,但我找不到任何东西。

据我所知,Safari 会在您的页面和传入的 SMS 消息上运行一些启发式算法,如果在 SMS 中找到代码并且页面似乎有代码输入,那么它会提供自动填充。如果您希望确保这在您的网站上有效,我建议您检查您已经看到它在其上工作的另一个网站的 HTML,并为输入字段使用类似的名称。

【讨论】:

以上是关于浏览器中的自动增量验证短信代码 (otp || 2fa)的主要内容,如果未能解决你的问题,请参考以下文章

如何验证用户从数据库中的浏览器输入的otp?

firebase auth的自动检测验证码不起作用

如何在angular4的firebase电话身份验证中重新发送短信验证?

Firebase 电话身份验证 OTP 消息模板问题

用于 OTP 验证的 Ionic 3 读取 SMS 插件

firebase 的短信代码不匹配