三个核心概念

概念 含义
Identity(身份) 谁——人 / 服务 / 设备
Permission(权限) 能做什么——列表 / 读 / 写 / 删 某个资源
Policy(策略) 把权限和身份关联的规则

各家云商名字略有不同(AWS IAM / GCP IAM / Azure RBAC / 阿里 RAM / 腾讯 CAM),模型一致

用户 vs 角色 vs 服务账号

人类用户(IAM User)
  → 通常应该 SSO,不直接 attach 长期凭据
角色(Role)
  → 一组权限的"帽子",由用户 / 服务"扮演"
  → AWS STS / GCP Service Account Impersonation 临时签发
服务账号(Service Account)
  → 给非人类身份用——CI、Pod、定时任务

最小权限原则(Principle of Least Privilege)

"每个身份只拥有完成它工作所必需的权限——不多不少。"

实操:

  • 不要给 *:*(全权限)——除非明确就是 admin role
  • 不要把 prod 权限给 dev 账户
  • 服务账号按服务划分——不要"一个 account 走天下"
  • 临时需要更高权限 → JIT(just-in-time)申请,限时

多账号策略(Multi-Account)

大公司标准做法:

Management Account(顶层)
├── Audit Account     (日志聚合)
├── Security Account  (SecOps 用)
├── Prod Account      (生产)
├── Staging Account
├── Dev Account
└── Sandbox Account   (试验)

好处:

  • 爆炸半径小(生产被入侵 ≠ 全部被入侵)
  • 账单分离
  • 权限边界清晰

工具:

  • AWS Organizations + Control Tower
  • GCP Resource Hierarchy + Folders
  • 阿里云 资源目录 / 腾讯云 集团账号

短期凭据(再强调一次)

第 29 篇讲过 secrets 角度,IAM 视角再说一次:

  • 长期 access key几乎没必要存在——除非要临时给外部脚本用
  • Pod / Lambda / Cloud Run / 函数计算 → 一律用 Workload Identity(IRSA / Workload Identity Federation / RAM Role for Pod)
  • 人类用户 → SSO + STS assume role

长期 access key 泄露(git 误推、CI 日志暴露、备份外泄)至今仍是常见的事故来源——新建账号默认不要给长期凭据,要用 SSO + STS 或 Workload Identity。

审计日志

每个云都有:

服务名
AWS CloudTrail
GCP Cloud Audit Logs
Azure Activity Log + Microsoft Entra Audit
阿里云 ActionTrail
腾讯云 CloudAudit

默认开 + 日志写到独立 audit 账号 + 长期保留——这是合规审计的基础证据。

查询场景:

  • 谁删了某个生产桶
  • 这条 IAM 策略上次什么时候改的
  • 出事时段哪些 API 被异常频率调用

离职 / 权限回收的纪律

离职第一天

  • SSO 账号停用
  • 长期凭据全部作废 + 轮换
  • Slack / Jira / 文档系统 退出
  • 个人邮箱 forwarding 到 manager(视情况)

很多公司故事是"两周后才意识到 Foo 还有 prod admin"——把这套流程自动化:HR 离职单 → 触发权限回收脚本 → 多个系统同步停用。

几个反模式

  • 应用直接用根 / Owner 账号:撞上漏洞 → 全公司被接管
  • K8s ServiceAccount 全用 default:每个 Pod 都有"很多权限"
  • IAM 策略写完不审:策略数量 6 个月翻一番,没人知道哪些过时
  • MFA 没强制开:弱密码 + 没 MFA = 等被钓鱼
  • 生产 console 权限给 10+ 人:减到 2-3 个,其他人通过工单 / IaC 改

检查清单(最低安全配置)

  • 根账号绑定 MFA + 锁起来不日常用
  • 所有人类用户 SSO + 强制 MFA
  • 没有任何长期 access key 在生产用(用 STS / Workload Identity)
  • 审计日志开了 + 写到独立账号 + 保留 ≥ 1 年
  • 生产管理员人数 ≤ X(你团队定)
  • 服务账号按服务划分,最小权限
  • 有定期权限审查流程(季度)

推荐阅读

下一篇是这一批最重的话题——合规框架,只指官方文档不解读条款