传统模型:城堡与护城河
传统网络安全假设:
- 内网是可信的,外网是不可信的;
- 防御重点在边界(防火墙、VPN、入侵检测);
- 一旦进入内网,就获得了较大的访问权限。
问题:
- 边界正在消失:云、远程办公、移动设备、SaaS 应用,让"内网"的边界模糊;
- 横向移动:一旦攻击者突破边界(如通过钓鱼邮件),在内网中可以自由移动——因为内部系统之间默认互信;
- 内部威胁:不只有外部攻击者。
零信任的核心原则
"从不信任,始终验证"(Never Trust, Always Verify)
零信任假设网络已经被攻破——无论请求来自内网还是外网,都要验证。
几条关键原则:
一、不再区分内外网
每一个访问请求,无论来源,都要经过身份认证、授权、加密。
二、最小权限
只授予完成当前任务所必需的权限,且权限有时效。
三、持续的验证
不是"登录一次就一直信任"——而是持续评估:
- 用户身份与设备状态;
- 行为是否异常(如位置异常、访问时间异常、访问量异常);
- 访问的资源敏感度。
四、假设已被攻破(Assume Breach)
设计上要限制爆炸半径:
- 微分段(Micro-segmentation):把网络切得很细,服务之间默认不互通;
- 加密所有通信(mTLS);
- 减少横向移动的可能性。
关键组件
一、强身份认证
- 多因素认证(MFA);
- 基于短生命周期的凭证(而非长期有效的密钥);
- 设备态势检查(设备是否合规、是否打补丁、是否有 EDR)。
二、身份感知代理(IAP)/ 访问代理
所有访问都要经过代理,由代理做认证和授权——应用本身不直接暴露。
代表:Google 的 BeyondCorp(零信任的早期大规模实践)、Cloudflare Access、Zscaler。
三、软件定义边界(SDP)
"先认证,后连接"——未通过认证的设备连目标服务的端口都"看不见"(单包授权)。
四、服务间认证
mTLS(双向 TLS):服务之间互相验证身份。
服务网格(如 Istio)在服务间自动注入 mTLS,并做基于身份的授权——这是零信任在微服务架构中的落地方式。
与 VPN 的区别
VPN:一旦连上,用户获得对整个内网的访问("打通了网络")。
零信任访问:按每个应用授权。用户通过验证后,只能访问被授权的特定应用,而非整个网络。
这就是为什么很多组织正在用零信任方案替代传统 VPN。
落地的挑战
一、不是买一个产品就够了。
零信任是一个架构理念,不是单一产品。它涉及身份、设备、网络、应用、数据的全面改造。
二、遗留系统的兼容
老系统可能不支持现代认证协议(OIDC、SAML),需要额外的适配层。
三、用户体验的权衡
更频繁的验证会影响体验。需要在安全性和便利性之间找到平衡(如基于风险的自适应认证——低风险场景少验证,高风险场景多验证)。
四、迁移需要时间
不可能一次性替换。通常是渐进式:先保护最关键的应用,再逐步扩展。
一个务实起点
如果刚开始做零信任,优先级通常是:
- 全面启用 MFA(性价比最高的一步);
- 清点资产和访问关系(你无法保护你不知道的东西);
- 收紧权限(清理长期未使用的账号和过度授权);
- 对关键应用引入访问代理;
- 逐步推进微分段和服务间认证。
说明:本文为网络安全架构的知识整理。