AWS资源删除需成员审批的安全机制实现咨询
AWS资源删除审批机制实现方案
一、核心逻辑
直接收回所有用户删除AWS资源的权限,仅允许他们发起删除请求;必须经过指定成员审批后,由系统自动执行删除操作,从根源上避免凭证泄露后有人直接删除资源。
二、具体落地步骤
1. 收紧IAM权限
更新所有用户/角色的IAM策略,移除*:Delete*、*:Terminate*这类破坏性操作的权限,仅保留触发审批工作流的权限(比如调用SSM自动化、Step Functions的权限)。示例策略片段:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:StartAutomationExecution", "states:StartExecution" ], "Resource": "arn:aws:ssm:us-east-1:123456789012:automation-definition/DeleteResourceApprovalWorkflow" } ] }
2. 搭建审批工作流(两种常用方式)
方式一:SSM自动化文档+审批环节
- 创建SSM自动化文档,流程如下:
- 接收用户提交的待删资源ARN、删除原因等参数
- 通过SNS向指定审批组发送通知(支持邮件、Slack、企业微信等渠道)
- 等待审批结果:
- 审批通过:由SSM服务角色执行资源删除操作(需给该角色配置对应资源的删除权限)
- 审批拒绝:终止流程并通知提交请求的用户
- 审批人通过订阅SNS主题或AWS Chatbot集成团队工具接收、处理请求
方式二:Step Functions状态机
- 定义状态机,包含「收集删除请求」「等待审批」「判断审批结果」「执行删除/发送拒绝通知」等状态
- 审批环节通过SNS发送请求,再用Lambda函数接收审批反馈(比如审批人点击链接触发Lambda更新状态机状态)
3. 留痕与监控
- 开启CloudTrail记录所有请求触发、审批操作、资源删除事件,确保可追溯
- 配置CloudWatch告警,监控异常审批请求或删除操作
三、额外优化点
- 针对生产数据库这类高敏感资源,可设置多级审批,需2名以上成员确认才能执行删除
- 给审批请求添加超时机制,超过指定时间未处理则自动拒绝,避免悬而未决的请求
- 给审批人配置最小权限:仅允许查看待删资源信息和执行审批操作,无直接删除资源的权限
内容的提问来源于stack exchange,提问作者devops_gagan
相关产品推荐
相关产品推荐

