说起来挺有意思,这周有几个客户的 IT 群几乎同时热闹起来,话题出奇一致:Salesforce 强制 MFA 了。
Salesforce 生产环境从 2026 年 7 月 20 日起分批强制 MFA,滚动周期大概 30 天,8 月正在覆盖中。沙盒环境同样适用。所有员工登录入口都被覆盖,无论直接走 UI 还是走 SSO,都得过这道关。
折腾这几天下来,我最大的感受是:很多人把"开 MFA"当成一件事,其实是两件事。Salesforce 这次搞的是两级 MFA,普通员工和特权用户走的根本不是同一条路。搞错了,要么员工被多绕弯路,要么管理员直接卡在登录外。
两级 MFA 怎么分:先看权限,再看身份
Salesforce 这次不是"全员上 MFA",而是按权限分级。判定标准不是岗位 title,是实打实的权限点。
为什么管理员要求更严?特权用户能动数据全量,能改配置,能跑 Apex。一旦被钓鱼攻陷,整个 org 都得遭殃。TOTP 这种"密码+一次性码"组合挡得住撞库,但挡不住实时钓鱼——攻击者可以在中间页把六位码转发走。而钓鱼抗性 MFA 在协议层绑定源域,钓鱼页面拿不到正确的 challenge,没法转发。
记牢一点:TOTP 不等于钓鱼抗性。这也是为什么 Salesforce 对特权用户根本不让选 TOTP。
普通员工配置 TOTP 验证器:5 步搞定
权限判定落在普通员工这一档,这条路最简单。以第三方 TOTP 验证器为例:
整个过程没几个动作,但有个坑提醒:绑定密钥的瞬间最好截图或记下恢复码。手机丢了或误删了条目,没有恢复码只能走管理员重置。
特权用户配置 Passkey 或安全密钥:流程更重,但别省
特权用户这条路稍繁琐,但绝不能图省事走 TOTP——Salesforce 根本不让你选。流程大致如下:
配置完,你就踩在了钓鱼抗性协议上——即便收到高仿钓鱼邮件、点进仿冒登录页,Passkey 也不会把认证材料交给错误域。
注意别踩坑
第一个坑:SSO 不是避风港。 不少公司以为"走了 SSO,MFA 应该由 IdP 管,Salesforce 这边就免了"。错。Salesforce 要求 SSO 信号也必须带 MFA 断言,IdP 没正确传递 MFA 完成信号,Salesforce 会强制用户在这边再补一次 MFA。IdP 侧的 SAML/Assertion 配置得一起检查。
第二个坑:旧豁免权限失效。 过去很多人靠"Waive Multi-Factor Authentication for Exempt Users"这个权限给服务账号、集成账号开豁免。这次更新后,该权限不再自动豁免 MFA。过去觉得"这事不会落到我头上"的账号,现在全部需要重新评估。
第三个坑:沙盒也要配。 不少团队只给生产配了 MFA,沙盒没动。这次强制 MFA 生产和沙盒均适用,沙盒登录也要走 MFA。CI/CD 流水线里用沙盒做测试的脚本都得更新认证方式——要么走 token,要么用支持 MFA 的连接器。
Free2FA 小程序可以用吗
这几天被问得最多的是"那我们用 Free2FA 行不行"。答案是:普通员工行,特权用户不行。
Free2FA 是微信小程序形态的 TOTP 验证器,可作为 Salesforce 普通员工的第三方 TOTP 验证器,员工不用再下新 App,微信里直接搜、直接用,添加条目后自动云备份,换机可通过"备份恢复"入口直接恢复。此外,密钥采用加密存储,开发者、运营、云服务商、微信平台读取不到密钥。
但它本质是标准 TOTP,满足的是"标准 MFA"这一档,替代不了特权用户的钓鱼抗性 MFA。公司里既有普通员工又有特权管理员,最合理的搭配是:普通员工用 Free2FA 或其他 TOTP 验证器,特权管理员配安全级别更高的 Passkey 或安全密钥。

