通过控制台禁用 2FA

:bookmark: 本指南为管理员提供有关如何通过控制台禁用双因素身份验证 (2FA) 的说明。

:person_raising_hand: 所需用户级别:系统管理员

:wrench: 需要控制台访问权限

:warning: 此指南仅应在无法从用户管理页面禁用 2FA 时使用。


Discourse 支持三种类型的双因素选项:TOTP(每 30 秒轮换一次的 6 位数字代码)、安全密钥(Yubikey、生物识别等)和备份代码。有时用户会错误配置其双因素设备、丢失或重置其手机,或者以其他方式不再能够使用/获取双因素验证。然后,管理员可以协助为他们重置此功能。

:warning: 管理员应确保验证请求确实来自该用户。禁用双因素会使帐户更容易受到攻击,因此请确保不是恶意方请求重置。

为用户禁用 2FA

  1. 首先,您需要知道哪个用户遇到了问题。获取该用户的用户名:

  2. 通过 ssh 访问服务器上的 rails 应用程序。


    从您的本地机器:

    ssh root@=SERVER_IP=
    

    进入应用程序目录:

    cd /var/www/discourse
    sudo ./launcher enter app
    
  3. 使用提供的 rake 任务为用户禁用所有 2FA 方法:

    bundle exec rake users:disable_2fa[=USERNAME=]
    

    这将删除所有 TOTP 身份验证器、用于 2FA 的安全密钥和备份代码。请注意,此命令不会影响通行密钥 (passkeys)。

14 个赞