理解 IAM(Identity and Access Management)里的 Policy、User、Role、Group 之间的关系,可以用一个通俗的比喻来帮你构建直觉理解:
想象你是某家公司的 IT 管理员,需要设置员工进入哪些办公室、能使用哪些设备:
每一个 User 就是一个具体的人,比如“张三”“李四”,他们需要自己的门禁卡来刷卡进门、使用电脑等。
公司有很多部门,比如“开发部”“测试部”“财务部”。一个人可以在某个部门,也可以在多个部门(比如兼任开发和安全)。
Policy 就是一张权限清单,比如:
你可以把 Policy 贴在:
Role 就像是一个“身份外衣”:
有些时候,不是公司正式员工来访问系统,而是:
这些情况不能直接建 User,而是要让他们“扮演”某个角色 —— Role。
概念 | 类比 | 说明 |
---|---|---|
User | 员工个人 | 有唯一身份,可以登录控制台 |
Group | 部门 | 把一堆 User 分组,统一授予权限 |
Policy | 门禁权限清单 | 写清楚谁能干什么,贴在谁身上都行 |
Role | 临时身份/机器人 | 没有固定人,谁来就穿这个身份做事 |
你公司在 AWS 上做项目,需求如下:
那么你的 IAM 设计可能是:
Developers
和 Testers
,分别绑定对应的 Policy;Developers
,李四加入 Testers
;CIUploadRole
,绑定上传 S3 的权限;