name: 零信任架构 description: 用于设计安全架构、实施零信任原则或评估安全态势。涵盖从不信任总是验证、微细分、基于身份的访问和ZTNA模式。 allowed-tools: Read, Glob, Grep
零信任架构
全面指南零信任安全架构 - 现代安全的“永不信任,始终验证”方法。
何时使用此技能
- 为新系统设计安全架构
- 从基于边界的安全迁移
- 实施微细分
- 评估基于身份的访问控制
- 理解ZTNA(零信任网络访问)
- 评估安全态势
核心原则
零信任支柱:
1. 永不信任,始终验证
└── 每个请求无论来源都需验证
└── 不基于网络位置的隐式信任
└── 持续认证和授权
2. 最小权限访问
└── 任务所需的最小权限
└── 尽可能使用即时访问
└── 操作所需的足够访问
3. 假设被入侵
└── 设计时假设攻击者已在内部
└── 最小化任何妥协的爆炸半径
└── 持续监控和验证
4. 明确验证
└── 验证用户身份
└── 验证设备健康
└── 验证请求上下文
└── 在每个请求处做出访问决策
架构组件
身份层
身份提供商(IdP):
├── 多因素认证(MFA)
├── 单点登录(SSO)
├── 联合身份
└── 特权访问管理(PAM)
用户身份:
- 需要强认证
- 持续会话验证
- 基于风险的认证
- 上下文感知的访问决策
服务身份:
- 机器身份管理
- 带轮换的服务账户
- 基于证书的认证
- 工作负载身份
设备层
设备信任评估:
├── 设备健康证明
├── 端点检测和响应(EDR)
├── 移动设备管理(MDM)
├── 基于证书的设备身份
└── 姿态评估
设备信任信号:
- 设备是否受管理/注册?
- 操作系统是否最新?
- 安全软件是否运行?
- 是否有已知漏洞?
- 是否有异常行为?
网络层
微细分:
┌─────────────────────────────────────────┐
│ 传统 │
│ ┌──────────────────────────────────┐ │
│ │ 扁平内部网络 │ │
│ │ 信任内部一切 │ │
│ └──────────────────────────────────┘ │
│ ↓ │
│ 零信任 │
│ ┌─────┐ ┌─────┐ ┌─────┐ ┌─────┐ │
│ │ 段 │ │ 段 │ │ 段 │ │ 段 │ │
│ │ A │ │ B │ │ C │ │ D │ │
│ └──┬──┘ └──┬──┘ └──┬──┘ └──┬──┘ │
│ │ │ │ │ │
│ 所有流量在每个跳点验证 │
└─────────────────────────────────────────┘
网络控制:
- 软件定义边界(SDP)
- 网络访问控制(NAC)
- DNS安全
- 加密通信(mTLS)
应用层
应用安全:
├── 带认证的API网关
├── 服务到服务的服务网格
├── Web应用防火墙(WAF)
├── 运行时应用自保护(RASP)
└── 安全软件供应链
访问控制:
- 基于属性的访问控制(ABAC)
- 基于角色的访问控制(RBAC)
- 基于策略的访问控制
- 即时访问配置
数据层
数据保护:
├── 分类和标记
├── 静态和传输中加密
├── 数据丢失防护(DLP)
├── 权限管理
└── 令牌化/掩码
数据访问:
- 需要知道基础
- 细粒度访问控制
- 所有访问的审计日志
- 数据驻留合规
实施模式
模式1:身份感知代理
┌───────────────────┐
│ 身份代理 │
│ (BeyondCorp风格)│
└─────────┬─────────┘
│
┌─────────────────────┼─────────────────────┐
│ │ │
┌────▼────┐ ┌────▼────┐ ┌────▼────┐
│ 用户 │ │ 设备 │ │ 上下文 │
│ 身份 │ │ 信任 │ │ 评估 │
└────┬────┘ └────┬────┘ └────┬────┘
│ │ │
└─────────────────────┼─────────────────────┘
│
┌─────────▼─────────┐
│ 访问决策 │
└─────────┬─────────┘
│
┌─────────▼─────────┐
│ 应用 │
└───────────────────┘
工作原理:
1. 用户请求访问应用
2. 代理检查用户身份(认证)
3. 代理评估设备信任分数
4. 代理考虑上下文(位置、时间、行为)
5. 策略引擎做出访问决策
6. 如果批准,代理提供访问
模式2:服务网格零信任
┌─────────────────────────────────────────────────┐
│ 控制平面 │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ 策略 │ │ 证书 │ │ 配置 │ │
│ │ 引擎 │ │ 权威 │ │ 存储 │ │
│ └────┬─────┘ └────┬─────┘ └────┬─────┘ │
└───────┼─────────────┼─────────────┼────────────┘
│ │ │
┌───────▼─────────────▼─────────────▼────────────┐
│ 数据平面 │
│ ┌─────────────┐ ┌─────────────┐ │
│ │ 服务 A │◄──mTLS──►│ 服务 B │ │
│ │ ┌───────┐ │ │ ┌───────┐ │ │
│ │ │ 代理 │ │ │ │ 代理 │ │ │
│ │ └───────┘ │ │ └───────┘ │ │
│ └─────────────┘ └─────────────┘ │
└─────────────────────────────────────────────────┘
服务网格提供:
- 所有服务之间的mTLS
- 细粒度授权策略
- 服务到服务身份
- 处处流量加密
- 代理处的策略执行
模式3:ZTNA(零信任网络访问)
传统VPN:
用户 ──► VPN ──► 完全网络访问
ZTNA(零信任网络访问):
用户 ──► ZTNA代理 ──► 特定应用仅
│
┌─────▼─────┐
│ 评估: │
│ - 身份 │
│ - 设备 │
│ - 上下文 │
│ - 策略 │
└─────┬─────┘
│
访问一个应用
(非整个网络)
ZTNA好处:
- 应用级访问,非网络级
- 隐形基础设施(无暴露IP)
- 无论位置一致策略
- 减少攻击面
信任评估
持续信任评分
信任评分组件:
用户信任:
├── 认证强度 [0-25分]
├── 会话年龄/新鲜度 [0-15分]
├── 行为异常 [0-20分]
└── 历史模式 [0-10分]
设备信任:
├── 设备管理状态 [0-20分]
├── 安全姿态 [0-20分]
├── 补丁级别 [0-15分]
└── 证书有效性 [0-10分]
上下文信任:
├── 网络位置 [0-15分]
├── 地理位置 [0-10分]
├── 访问时间 [0-10分]
└── 请求模式 [0-15分]
总分:0-185分
策略示例:
- 分数 > 150:完全访问
- 分数 100-150:有限访问 + 升级认证
- 分数 50-100:只读访问
- 分数 < 50:阻止访问
基于风险的访问决策
访问决策矩阵:
│ 低风险资源 │ 高风险资源
────────────────────┼─────────────┼─────────────
高信任分数 │ 允许 │ 允许
中信任分数 │ 允许 │ MFA挑战
低信任分数 │ MFA挑战 │ 阻止 + 警报
动态因素:
- 时间基础:异常访问时间?
- 位置基础:异常地理?
- 行为基础:异常模式?
- 资源基础:敏感数据访问?
实施路线图
阶段1:可见性和身份
持续时间:3-6个月
步骤:
1. 盘点所有用户、设备、应用
2. 实施强身份管理
3. 到处启用MFA
4. 部署全面日志
5. 建立基线行为
成功标准:
□ 100%用户MFA覆盖
□ 完整资产盘点
□ 集中认证
□ 安全事件可见性
阶段2:设备信任
持续时间:3-6个月
步骤:
1. 实施设备管理(MDM/UEM)
2. 部署端点安全(EDR)
3. 建立设备信任策略
4. 启用设备健康证明
5. 执行设备合规
成功标准:
□ 所有设备受管理/注册
□ 设备姿态评估活跃
□ 非合规设备阻止
□ 基于证书的设备身份
阶段3:微细分
持续时间:6-12个月
步骤:
1. 映射应用依赖
2. 定义细分策略
3. 实施网络控制
4. 部署软件定义边界
5. 启用东西流量检查
成功标准:
□ 关键应用微细分
□ 东西流量加密
□ 横向移动限制
□ 段级监控
阶段4:自适应访问
持续时间:3-6个月
步骤:
1. 实施风险评分
2. 部署策略决策点
3. 启用持续认证
4. 实施即时访问
5. 自动化访问决策
成功标准:
□ 基于风险的访问决策
□ 上下文感知策略
□ 自动化访问审查
□ 即时特权访问
反模式
零信任反模式:
1. “仅名零信任”
❌ 添加MFA并称之为零信任
✓ 全面身份 + 设备 + 网络 + 数据控制
2. “边界替换”
❌ 用ZTNA替换VPN而无其他控制
✓ ZTNA作为全面架构一部分
3. “信任内部网络”
❌ 仅在边缘应用零信任
✓ 验证所有流量,包括内部
4. “一次性验证”
❌ 登录时验证,会话期间信任
✓ 整个会话持续验证
5. “安全剧场”
❌ 复杂控制用户绕过
✓ 无缝安全难以绕过
技术选项
身份和访问:
- Azure AD / Entra ID
- Okta
- Ping Identity
- Google Identity
ZTNA解决方案:
- Zscaler Private Access
- Cloudflare Access
- Palo Alto Prisma Access
- Tailscale
服务网格:
- Istio
- Linkerd
- Consul Connect
- AWS App Mesh
设备管理:
- Microsoft Intune
- Jamf
- VMware Workspace ONE
- Google Endpoint Management
相关技能
api-security- OAuth, OIDC, JWT模式mtls-service-mesh- 服务到服务安全secrets-management- 凭证和秘密处理observability-patterns- 安全监控和检测