如何在 Firefox 中将 YubiKey 用作 discourse 的 2FA

看似简单的添加 YubiKey 用于双因素认证(2FA)的任务,但我却屡屡失败,对这些新东西感到非常困惑。

  • 我该如何配置我的 YubiKey?
    • OTP?
      • Yubico OTP?
      • 挑战 - 响应(Challenge Response)?
      • 静态密码?
      • OATH-HOTP?- 在 Firefox 中尝试后,返回“服务器不支持该证明格式。”
    • FIDO2?
  • 我需要使用哪个浏览器?
    • Firefox?
    • Chrome?
    • 其他浏览器?

嗯,您通常无需进行任何配置。请尝试以下步骤:

  1. 将您的 YubiKey 插入 USB 端口
  2. 在您的网站上导航至 /my/preferences/second-factor
  3. 点击 添加安全密钥 按钮
  4. 如需,可为该密钥命名,然后点击 注册 按钮
  5. “触碰”您的 YubiKey

它应在 Safari、Firefox 和 Chrome 上正常工作。如果您拥有兼容设备且 YubiKey 支持 NFC,在移动设备上也能使用。

已在 Chrome 和 OATH-HOTP 上成功运行。
尚未在 Firefox 上进行进一步测试。

嗯……有意思。
反正我还需要一个备用密钥,所以我会再试一次,也会在 Firefox 上尝试。

今天尝试在 Firefox 84.0.2 中为 meta.discourse.org 启用两步验证(2FA),按照上述步骤操作后,仍出现相同的错误提示。

随后在 Chrome 88.0.4324.96 上尝试相同操作,立即成功。

搜索错误信息“The attestation format is not supported by the server.”,仅找到 4 条结果,均与 Discourse 源代码相关。看来目前还没有其他人遇到这个问题…… :frowning:

有趣的是:在 Firefox 的隐私模式下,2FA 登录可以正常工作。

编辑:
我又尝试了十几次,禁用了 Firefox 扩展和脚本拦截器,并尝试了上述隐私模式浏览,结果 2FA 在 Firefox 中也能正常工作。

奇怪的是:重新启用 Firefox 扩展和脚本拦截器后,2FA 依然可以正常使用。

无论如何,现在功能正常了,我很高兴,问题已解决 :slight_smile: