核心概念
多因素认证 (MFA)
了解多因素认证 (MFA) 的概念以及如何利用它大幅提升账号安全性。
多因素认证 (MFA)
随着网络钓鱼、撞库攻击和数据泄露事件的频发,仅仅依赖单一的密码(无论密码多么复杂)已经无法满足现代应用程序的安全性需求。多因素认证 (Multi-Factor Authentication, MFA) 是一种通过要求用户在登录时提供两种或多种验证因素来确认身份的安全机制。
认证因素的三大分类
要构成真正的“多因素”认证,用户提供的验证凭据必须来自以下三个不同类别中的至少两个:
- 您所知道的 (Knowledge Factor)
- 这是目前最常见的因素,比如账号的密码、PIN 码或安保问题答案。
- 您所拥有的 (Possession Factor)
- 用户实际持有的物品,比如手机(接收短信验证码)、Authenticator 应用程序(如 Google Authenticator 产生的 TOTP 动态密码)、或者是物理硬件安全密钥(如 YubiKey)。
- 您所具备的特征 (Inherence Factor)
- 用户的生物特征,比如指纹、面部识别 (FaceID)、视网膜扫描或声纹。
[!NOTE]
为什么“密码 + 安保问题”不是真正的 MFA? 因为密码和安保问题都属于“您所知道的”类别。真正的 MFA 必须跨类别组合,例如“密码 (所知) + 手机短信 (所有)”。
常见的 MFA 方式
在 YeeAuth 中,我们支持并推荐以下 MFA 方式,安全性依次递增:
- 短信 / 邮件验证码:最普及的方式。虽然易于使用,但容易受到 SIM 卡劫持或中间人攻击。
- 动态口令 (TOTP):基于时间的一次性密码(Time-based One-Time Password)。用户在手机上安装 Authenticator 应用,每 30 秒生成一个六位数字。因为不需要网络连接且难以被拦截,安全性较高。
- WebAuthn / FIDO2:目前最安全的 MFA 标准。它利用设备的内置安全芯片(如 TouchID, Windows Hello)或外部硬件密钥(YubiKey)进行公私钥非对称加密验证,不仅防范密码泄露,还能 100% 抵御网络钓鱼攻击。
为什么需要 MFA?
根据安全机构的报告,开启 MFA 可以阻止高达 99.9% 的自动化网络攻击。即使黑客获取了用户的账号和密码,由于他们没有用户的手机或指纹,依然无法突破最后一道防线。
在 YeeAuth 中,管理员可以通过安全策略轻松为不同级别的用户或在特定的高危场景下(如异地登录、更换设备)强制触发 MFA 验证。