AWS IAM用户访问密钥变更通知配置问题:已设AWS Config与SNS未收邮件
如何在AWS控制台配置IAM访问密钥变更通知
可以实现,以下是具体方案及你当前配置的排查要点:
推荐方案:CloudTrail + EventBridge(实时触发)
IAM访问密钥的创建、更新、删除操作会被CloudTrail自动记录,结合EventBridge可以直接捕获这些事件并发送通知:
- 确认CloudTrail已启用(默认AWS账号已启用,可在CloudTrail控制台验证事件历史是否包含
CreateAccessKey/UpdateAccessKey/DeleteAccessKey动作) - 打开EventBridge控制台创建规则:
- 规则类型选择事件模式
- 事件源选
AWS服务,服务名称选IAM,事件类型选AWS API Call via CloudTrail - 勾选具体API操作:
CreateAccessKey、UpdateAccessKey、DeleteAccessKey - 目标选择你已配置的SNS主题,完成规则创建
后续触发上述API操作时,SNS会自动向订阅邮箱发送通知
修正AWS Config配置的步骤
如果坚持使用AWS Config,需确保以下配置正确:
- 确认AWS Config已启用IAM用户资源跟踪:在Config控制台的“设置”中,检查资源类型是否包含
AWS::IAM::User - 启用或创建针对访问密钥变更的规则:
- 可使用预定义规则
iam-user-access-key-changed(若存在),或自定义Lambda规则检测访问密钥的创建/状态变更 - 将规则的触发类型设置为配置变更触发,而非定期评估
- 可使用预定义规则
- 关联SNS主题:在规则详情的“通知”设置中,指定你的SNS主题,确保触发时发送通知
排查当前未收到通知的原因
- 检查SNS订阅状态:确认邮箱订阅已完成验证(需点击SNS发送的确认链接)
- 检查CloudTrail事件:在CloudTrail事件历史中搜索
CreateAccessKey,确认操作已被记录 - 检查AWS Config权限:确保Config服务角色具备读取IAM用户信息、向SNS主题发送消息的权限
- 检查Config规则触发条件:确认规则的评估逻辑正确覆盖了访问密钥的变更场景
内容的提问来源于stack exchange,提问作者Yeshky
相关产品推荐
相关产品推荐

