AWS报错信息模糊时如何查询详细内容及缺失的对应权限
AWS模糊报错(权限类)排查方案
示例报错场景
你遇到的报错内容如下:
Terminated with errors Service role bundle-release-import-AWSDataPipelineRole has insufficient EC2 permissions. EC2 Message: AmazonEC2Exception: You are not authorized to perform this operation. (Service: AmazonEC2; Status Code: 403; Error Code: UnauthorizedOperation; Request ID: e2614d7b-ef8f-467d-81cf-14ee9c4671c8; Proxy: null)
具体排查步骤
- 首先拿报错中的请求ID
e2614d7b-ef8f-467d-81cf-14ee9c4671c8到对应AWS区域的CloudTrail控制台,在事件历史中筛选请求ID,找到匹配的事件记录 - 查看事件详情的
eventName字段,即可获知当时实际执行的EC2操作,比如RunInstances、DescribeInstances等 - 事件详情的
errorMessage、additionalEventData字段会明确标注缺失的权限项、请求访问的资源ARN - 如果CloudTrail中没有对应记录,也可以用AWS CLI解码报错附带的加密信息:实际完整的
UnauthorizedOperation报错会返回EncodedMessage字段,执行命令aws sts decode-authorization-message --encoded-message <替换为你的EncodedMessage内容>,解码结果会直接给出缺失的权限和操作信息
本场景额外注意事项
本次报错关联的是DataPipeline服务角色 bundle-release-import-AWSDataPipelineRole,排查权限时需要检查该角色的IAM权限策略,无需调整个人用户的权限配置。
通用模糊报错排查技巧
所有AWS服务的报错,都可以优先用报错中的错误码+服务名作为关键词排查,权限类403报错固定优先查询CloudTrail事件即可获取完整上下文。
内容的提问来源于stack exchange,提问作者Marcin Rogacki
相关产品推荐
相关产品推荐

