ivanfocsa/aws-iam-access-lifecycle
GitHub: ivanfocsa/aws-iam-access-lifecycle
该项目构建了一个涵盖入职分级、最小权限边界、审查与离职全流程的 AWS IAM 访问生命周期参考模型,附带可部署的策略文件和本地预检脚本。
Stars: 0 | Forks: 0

# AWS IAM 访问生命周期
[](#)
[](#)
[](#)
[](#)
本项目模拟了一个实用的 AWS IAM 访问生命周期:入职、分级、最小权限边界、审查和离职。它的规模特意设定得足够小,以便一次性读完,同时又足够具体,适合在技术面试中进行讨论。
## 本项目展示的内容
- 用于只读、操作员和安全审计员访问的角色分级。
- 限制委派管理的权限边界。
- 专为结合 IAM Access Analyzer 进行审查而设计的 JSON 策略。
- 一个用于标记高风险通配符模式的本地小工具。
- 一份将 IAM 操作与安全治理相连接的生命周期运行手册。
## 访问模型
```
Identity provider / SSO
|
v
+-------------------+ +----------------------+ +----------------+
| ReadOnly tier | ---> | Operator tier | ---> | Emergency tier |
| Observe only | | Scoped operations | | Time boxed |
+-------------------+ +----------------------+ +----------------+
| |
v v
Review evidence Permission boundary
```
## 仓库结构
```
.
|-- docs/
| |-- access-lifecycle.md
| `-- control-mapping.md
|-- policies/
| |-- boundary-delegated-admin.json
| |-- tier-operator.json
| |-- tier-readonly.json
| `-- tier-security-auditor.json
|-- scripts/
| `-- Test-IamPolicies.ps1
`-- terraform/
|-- main.tf
|-- outputs.tf
`-- variables.tf
```
## 本地策略审查
```
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass -Force
./scripts/Test-IamPolicies.ps1 -PolicyPath ./policies
```
该脚本不能替代 IAM Access Analyzer。它能在策略部署到 AWS 之前捕获明显的错误:宽泛的操作、宽泛的资源,以及敏感服务周围缺失的条件。
## 面试讨论要点
- 为什么权限边界本身不会授予访问权限。
- 基于身份的策略和边界是如何交叉起作用的。
- 为什么人类访问应该使用联合身份验证和临时凭证。
- 如何利用 CloudTrail 证据,从 AWS 托管策略转向生成的最小权限策略。
## 参考资料
- AWS IAM 最佳实践:https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html
- IAM 策略评估逻辑:https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html
- 权限边界:https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html
- IAM Access Analyzer 策略验证:https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html
标签:AI合规, AWS IAM, ECS, Homebrew安装, IPv6, PowerShell, Terraform, 最小权限原则, 权限管理, 模型越狱, 策略审查