零信任身份与访问管理:身份认证、多因素认证、单点登录

零信任有个核心理念:不信任任何网络位置,持续验证每个请求。而验证的起点,就是身份。你想想看,如果连敲门的人是谁都搞不清,后面所有的策略都是白搭。所以我把身份与访问管理(IAM)看作零信任的“第一道门锁”。

这一章我们重点聊三个东西:身份认证、多因素认证(MFA)和单点登录(SSO)。它们不是孤立的,而是环环相扣的组合拳。我个人习惯在每次项目开始时,先跟团队把这三者的优先级和落地顺序过一遍,避免后期再返工。

零信任身份与访问管理核心逻辑 策略决策点 (PDP) 持续评估信任 身份认证 你是谁? 多因素认证 (MFA) 多维度验证 单点登录 (SSO) 一次认证,多处访问 访问决策 允许 / 拒绝 / 限制 核心原则:身份是信任的锚点,认证是持续的过程,SSO/MFA 互补而非替代 传统边界已消失,每一次访问请求都必须经过身份验证、MFA 检测和会话令牌校验

为什么身份是零信任的第一道防线

传统安全模型里,只要进了内网,身份就几乎被信任了。零信任直接推翻这个假设——甚至可以说,它假设内部用户已经失陷。那怎么办?只能靠持续验证身份。

我曾经帮一家金融客户做零信任改造,他们有个深刻教训:一个拥有合法域账号的实习生,用弱口令登录后,被外部钓鱼工具直接拿到令牌,在内网横向移动了三层才被阻断。事后复盘,如果当时启用了MFA和实时身份校验,第一关就能拦住。

所以你看,身份认证不再是“进门查一次票”那么简单。它需要动态、多维度、持续地进行。

身份认证:不止是密码

说到身份认证,很多人第一反应是账号+密码。但说实话,密码早就靠不住了。我在项目里见过太多转发重置链接、明文存储的案例。零信任环境下的身份认证,通常包含以下要素:

因素类型示例安全性常见场景
知识因素(你知)密码、PIN、安全问题低(易泄露)基础登录
拥有因素(你有)手机令牌、硬件Key、智能卡中(可劫持)MFA第二因素
生物因素(你是)指纹、面部识别、虹膜高(难以复制)移动设备解锁
行为因素(你如何)击键节奏、鼠标轨迹、地理位置很高(持续评估)风险评分

零信任推荐至少使用两种不同因素组合。我习惯把密码看作“最低要求”,真正起作用的是后三个因素。

实战技巧:不要只依赖静态密码。即使强密码,也会被撞库。内部系统推荐硬件安全密钥(如FIDO2),用户侧体验尚可,安全提升明显。

多因素认证(MFA):增加攻击成本

MFA 的核心逻辑不是防住,而是大幅度提高攻击的“成本”。攻破一个密码只要几秒,但攻破密码+手机令牌+生物识别?攻击者往往会选择其他更软的柿子。

我遇到过一家初创公司,他们只用了短信验证码做MFA,结果SIM swapping攻击直接接管了管理员手机号。嗯,这提醒我们,不是什么MFA都靠谱:

  • 短信验证码:易被劫持,不推荐作为唯一MFA方式(NIST已不建议使用)
  • 动态口令(TOTP):推荐,如Google Authenticator、Authy
  • 推送通知:用户体验好,但需要防范疲劳攻击(用户误点)
  • 硬件安全密钥:如YubiKey、FIDO2,防钓鱼能力强,我首推
  • 生物识别:适合作为本地解锁因素,但远程传输需WebAuthn等标准

曾经有个客户问:“MFA会不会影响员工效率?”我的回答是:比起一次数据泄露导致的停工,MFA那几秒钟的等待成本根本不算什么。何况现在的无密码方案(Passkey)已经能做到无感认证。

避坑指南:我曾经见过一个项目,MFA只部署在VPN入口,内部应用没有任何二次认证。攻击者一旦突破VPN,内网一路畅通。记住:MFA应该覆盖所有敏感操作和资源。

单点登录(SSO):兼顾体验与安全

SSO 解决的是认证风暴问题。想象一下,员工每天要登录十几个应用,每个都配不同密码……结果必然是密码贴显示器、反复重置,最终反而降低了安全。SSO让用户一次认证,获得一个令牌,后续访问其他系统自动携带该令牌。

零信任架构里,SSO 不是简单的“统一登录”,它必须与策略引擎联动:

  1. 认证代理拦截请求,发现未带有效令牌则重定向到IdP(身份提供者)
  2. IdP要求用户完成MFA并评估信任等级
  3. 策略决策点根据上下文(设备状态、地理位置、访问时间)决定是否颁发令牌
  4. 令牌通常使用JWT,包含用户身份、角色和有效时间
  5. 会话管理需支持吊销、刷新、短生命周期

我个人习惯在SSO中配置“持续验证”:即使用户已登录,如果检测到异常地理位置或设备指纹变化,立即要求重新认证。这不是打扰,而是必要保护。

关键点:SSO + MFA 是一对黄金搭档。SSO 减少你的操作摩擦,MFA 守住认证大门。两者缺一不可,不能因为SSO方便就放松认证强度。

实战中的融合策略

说了这么多理论,到底怎么落地?这里分享一个我参与过的案例框架(已脱敏):

  • 统一身份源:所有员工、外包、合作伙伴都归到Azure AD / Okta 里,同步HR和流程系统。
  • 认证分级:核心系统(财务、代码仓库)强制 FIDO2 + 设备证书;普通办公应用 TOTP + 密码即可。
  • SSO 网关:使用OAuth 2.0 / OIDC 标准,内部应用全部改造为支持SAML/OIDC,遗留应用通过反向代理加认证中间件解决。
  • 连续评估:策略引擎每5分钟检查一次用户信任度,若发现异常(如同时两个IP登录),立即撤销令牌并触发MFA挑战。
  • 日志与审计:所有认证事件写入安全信息事件管理(SIEM),定期验证未使用旧会话。

最后说句实在的:身份认证不是买一个产品就完事了。它需要流程、培训和持续运营。否则再强的MFA也会被人为绕过——我曾经见过员工为了省事,把硬件Key挂在工位上……嗯,你要知道,零信任里最薄弱的环节往往是人。所以,技术+管理缺一不可。

身份与访问管理就聊到这儿。下个环节我们会深入密钥管理,看看如何守住第二道防线。