外观
云安全与权限管理 (IAM)
云安全架构基础
云安全采用责任共担模型,云服务商负责平台安全,用户负责云内安全。IAM 作为云安全的基石,控制着对云资源的访问权限,是防止数据泄露和未授权访问的第一道防线。
责任共担模型示意图:
基础设施安全 <- 云服务商责任 -> 平台安全 <- 用户责任 -> 应用安全
↓ ↓ ↓ ↓ ↓
物理设施 <- 计算/存储/网络 -> 操作系统 -> 应用配置 -> 数据加密
硬件维护 <- 全球基础设施 -> 中间件 -> 身份管理 -> 访问控制IAM 核心概念
身份生命周期
身份全生命周期管理:
身份创建 -> 权限分配 -> 使用监控 -> 权限调整 -> 身份回收
↓ ↓ ↓ ↓ ↓
入职流程 -> 角色绑定 -> 行为审计 -> 职责变更 -> 离职流程
用户注册 -> 策略附加 -> 异常检测 -> 权限复审 -> 账户禁用云身份类型
主要身份实体:
用户身份: 真人用户,如员工、管理员
↓-- 通过认证 --> 临时安全凭证
服务身份: 应用程序、微服务、自动化脚本
↓-- 通过角色 --> 临时安全凭证
角色身份: 权限集合,被身份担任
↓-- 通过信任策略 --> 被身份担任身份认证机制
多因素认证
MFA 实施架构:
第一因素: 密码 -> 知识因素 (用户知道的信息)
第二因素: 验证器应用 -> 拥有因素 (用户持有的设备)
第三因素: 生物识别 -> 固有因素 (用户本身的特征)MFA 流程示意图:
用户登录 -> 输入密码 -> MFA挑战 -> 提供第二因素 -> 访问授权
↓ ↓ ↓ ↓ ↓
身份声明 -> 验证凭证 -> 推送通知 -> TOTP代码 -> 会话建立
-> 风险评估 -> 短信/邮件 -> 生物特征 -> 权限令牌联合身份认证
SAML 2.0 流程:
服务提供者 -> 重定向到IdP -> 用户认证 -> 返回SAML断言 -> 创建本地会话
↓ ↓ ↓ ↓ ↓
应用访问 -> 身份提供者 -> 企业登录 -> 属性声明 -> 单点登录
发起认证 -> 验证身份 -> 返回断言 -> 断言验证 -> 资源访问权限管理模型
基于角色的访问控制
RBAC 权限继承:
组织层级: 组织 -> 文件夹 -> 项目 -> 资源
↓ ↓ ↓ ↓
超级管理员 -> 文件夹管理员 -> 项目所有者 -> 资源用户
所有权限 -> 文件夹内权限 -> 项目内权限 -> 特定操作角色权限示例:
查看者角色:
- compute.instances.get
- storage.objects.list
- logging.logEntries.list
编辑者角色:
- 查看者所有权限 +
- compute.instances.create
- storage.objects.create
所有者角色:
- 编辑者所有权限 +
- resourcemanager.projects.setIamPolicy
- billing.account.get基于属性的访问控制
ABAC 决策引擎:
访问请求 -> 策略评估 -> 环境上下文 -> 决策结果
↓ ↓ ↓ ↓
用户属性 -> 规则匹配 -> 时间/位置 -> 允许/拒绝
资源属性 -> 条件验证 -> 设备安全 -> 权限级别
操作类型 -> 逻辑计算 -> 网络环境 -> 审计记录ABAC 策略示例:
json
{
"Effect": "Allow",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::example-bucket/*",
"Condition": {
"IpAddress": {"aws:SourceIp": "192.168.1.0/24"},
"NumericLessThanEquals": {"aws:CurrentTime": "17:00:00"},
"Bool": {"aws:MultiFactorAuthPresent": "true"}
}
}最小权限原则
权限收敛策略
权限优化流程:
当前权限 -> 使用分析 -> 权限调整 -> 持续监控 -> 定期审查
↓ ↓ ↓ ↓ ↓
宽松授权 -> 审计日志 -> 移除未用 -> 实时检测 -> 策略优化
风险较高 -> 识别模式 -> 精确授权 -> 异常告警 -> 安全加固即时权限提升
临时权限管理:
常规权限: 日常操作所需基础权限
↓
权限提升请求 -> 审批流程 -> 临时授权 -> 自动回收
↓ ↓ ↓ ↓
特殊需求 -> 经理批准 -> 时间限制 -> 强制过期
故障排查 -> 安全审查 -> 范围限定 -> 审计追踪密钥与凭证安全
访问密钥管理
密钥生命周期:
密钥生成 -> 安全分发 -> 轮换策略 -> 监控使用 -> 紧急撤销
↓ ↓ ↓ ↓ ↓
强随机性 -> 加密传输 -> 定期更新 -> 异常检测 -> 即时失效
唯一标识 -> 安全存储 -> 无缝切换 -> 行为分析 -> 全局清理服务账户管理
非人类身份安全:
应用标识 -> 最小权限 -> 密钥轮换 -> 访问监控 -> 生命周期管理
↓ ↓ ↓ ↓ ↓
服务账户 -> 精确授权 -> 自动更新 -> 行为基线 -> 及时清理
工作负载 -> 角色绑定 -> 证书管理 -> 异常告警 -> 资源回收云原生 IAM 特性
工作负载身份
容器与微服务身份:
Kubernetes Pod -> 服务账户 -> 云提供商角色 -> 临时凭证 -> 访问云服务
↓ ↓ ↓ ↓ ↓
工作负载 -> K8s身份 -> 角色绑定 -> 自动获取 -> API调用
应用容器 -> 命名空间 -> 信任关系 -> 安全令牌 -> 资源操作无服务器安全
函数级权限控制:
函数执行 -> 执行角色 -> 临时凭证 -> 资源访问 -> 自动回收
↓ ↓ ↓ ↓ ↓
事件触发 -> 最小权限 -> 自动生成 -> 限定操作 -> 会话结束
计算函数 -> 策略附加 -> 安全令牌 -> 仅需权限 -> 权限失效跨账户访问管理
资源分享架构
跨账户角色担任:
账户A(信任) -> 信任策略 -> 账户B(被信任) -> 担任角色 -> 访问资源
↓ ↓ ↓ ↓ ↓
资源所有者 -> 允许账户B -> 用户/服务 -> 获取凭证 -> 操作资源
创建角色 -> 担任角色 -> 请求访问 -> 临时权限 -> 审计日志组织级策略
SCP 服务控制策略:
组织根 -> 组织单元 -> 成员账户 -> 资源访问
↓ ↓ ↓ ↓
全局策略 -> OU策略 -> 账户策略 -> 最终权限
允许列表 -> 限制服务 -> 用户权限 -> 交集结果
拒绝列表 -> 权限边界 -> 角色策略 -> 生效权限权限分析工具
权限使用分析
权限审计方法:
云审计日志 -> 权限使用分析 -> 未使用权限识别 -> 权限优化建议
↓ ↓ ↓ ↓
操作记录 -> 行为分析 -> 权限收敛 -> 策略调整
API调用 -> 模式识别 -> 风险降低 -> 安全提升安全态势管理
CSPM 云安全态势管理:
配置扫描 -> 合规检查 -> 风险评分 -> 修复指导 -> 持续监控
↓ ↓ ↓ ↓ ↓
资源清单 -> 标准对照 -> 优先级排序 -> 具体步骤 -> 自动验证
策略分析 -> 法规要求 -> 安全评级 -> 最佳实践 -> 改进跟踪应急响应与恢复
权限滥用检测
异常行为监控:
基线行为 -> 实时监控 -> 异常检测 -> 告警触发 -> 自动响应
↓ ↓ ↓ ↓ ↓
正常模式 -> 操作日志 -> 偏离检测 -> 安全团队 -> 权限撤销
使用模式 -> API调用 -> 机器学习 -> 事件创建 -> 调查启动事件响应流程
IAM 安全事件处理:
事件检测 -> 影响评估 -> 权限隔离 -> 取证分析 -> 恢复改进
↓ ↓ ↓ ↓ ↓
监控告警 -> 范围确定 -> 临时禁用 -> 根本原因 -> 策略优化
用户报告 -> 业务影响 -> 权限撤销 -> 证据收集 -> 流程完善合规与审计
法规符合性
主要合规框架:
GDPR: 数据保护与隐私要求
↓-- 影响 --> 用户数据访问控制
HIPAA: 医疗信息保护
↓-- 影响 --> 健康数据权限管理
PCI DSS: 支付卡行业安全
↓-- 影响 --> 信用卡数据处理权限
SOC 2: 服务组织控制
↓-- 影响 --> 访问控制审计要求审计日志管理
云审计日志架构:
操作发生 -> 审计日志生成 -> 日志存储 -> 分析查询 -> 报告生成
↓ ↓ ↓ ↓ ↓
API调用 -> 结构化记录 -> 不可篡改 -> 安全分析 -> 合规证明
配置变更 -> 完整上下文 -> 长期保留 -> 异常检测 -> 证据提供成本优化与安全
权限与成本关联
权限滥用导致的成本风险:
过度权限 -> 资源滥用 -> 成本激增 -> 预算超支 -> 财务风险
↓ ↓ ↓ ↓ ↓
管理员权限 -> 过度配置 -> 费用上涨 -> 警报触发 -> 业务影响
宽松策略 -> 未使用资源 -> 浪费支出 -> 成本控制 -> 安全审查优化策略
安全与成本平衡:
权限审查: 定期审核和清理未使用权限
预算告警: 设置成本阈值和自动通知
资源标记: 通过标签实施成本分配和安全策略
自动化治理: 自动修复不安全配置和成本优化