双因素认证(2FA)
双因素认证(2FA)为登录增加一层额外保护。除密码外,用户还需输入认证器应用生成的验证码(TOTP)。如果无法使用该应用,备用代码可用于恢复账户。为账户启用 2FA
- 进入
Profile → Security。 - 点击 启用双因素认证。
- 用认证器应用(Google Authenticator、Authy、1Password、Bitwarden 等)扫描二维码。
- 输入应用显示的 6 位验证码以确认。
- 将屏幕上的备用代码保存到安全位置(密码管理器、物理保险柜)。
- 确认完成。
此后每次登录都需要密码 + 应用验证码。
备用代码
备用代码是一次性代码,可在没有认证器应用时登录——手机丢失、更换设备或应用故障时尤为有用。工作方式
- 每个代码只能使用一次,使用后即失效。
- 启用 2FA 时会获得一组代码。快用完时,请重新生成一组。
- 代码以 BCrypt 哈希形式存储在数据库中(自
v1.0.0-rc3起,WTO-991)。即使是部署运维人员也无法读取明文代码。
重新生成代码
Profile → Security → Regenerate backup codes。
注意:重新生成后,旧代码立即失效。请仅在当前能访问认证器应用时执行,以便确认重新生成。
何时重新生成
- 使用过某个代码之后 —— 保持库存充足。
- 怀疑泄露之后 —— 如果你认为有人看到过代码列表。
- 组织变动之后 —— 如果你的角色发生变化,而旧列表存放在他人可接触的位置。
对于 v1.0.0-rc3 之前就已存在的部署:当时生成的代码以明文形式存储在数据库中。如果数据库历史记录曾被部署运维以外的人员访问,建议重新生成。
没有 2FA 和备用代码时的账户恢复
如果认证器应用和备用代码同时丢失:- 联系部署管理员(
super_admin)。 - 管理员可通过管理控制台停用你账户上的 2FA。
- 下次登录后,请立即用新设备重新启用 2FA,并保存新的备用代码。
部署管理员无法读取你的代码(以哈希存储)。唯一可执行的操作是清空账户上的 2FA 配置,以便你重新设置。
安全建议
- 使用认证器应用,不要用短信。 短信容易遭受 SIM 卡劫持攻击。
- 把备用代码存进密码管理器。 不要打印后随手塞进抽屉。
- 不要共享备用代码。 它等同于你的第二因素。
- 管理类账户必须启用 2FA。 尤其是
super_admin和account_owner。