拥有Amazon CloudWatch只读权限遇AccessDenied问题及可用方法咨询
CloudWatch AccessDenied错误原因及只读权限可用操作解析
错误原因
你触发的AccessDenied错误核心原因是:当前IAM用户的身份型策略未授予cloudwatch:DescribeAlarms权限。尽管你认为自己拥有CloudWatch只读权限,但实际绑定的IAM策略要么遗漏了这个特定操作,要么权限的资源范围、区域限制与当前请求不匹配。错误信息明确说明:没有任何身份型策略允许该用户在eu-central-1区域的所有告警资源上执行cloudwatch:DescribeAlarms操作。
你的代码(中文注释版)
import boto3 cloudwatch = boto3.client('cloudwatch') # 通过分页接口列出状态为INSUFFICIENT_DATA的告警 paginator = cloudwatch.get_paginator('describe_alarms') for response in paginator.paginate(StateValue='INSUFFICIENT_DATA'): print(response['MetricAlarms'])
翻译后的错误信息
botocore.exceptions.ClientError: 调用DescribeAlarms操作时发生错误(AccessDenied): 用户: arn:aws:iam::996323886532:user/XxxXx 未被授权执行: cloudwatch:DescribeAlarms 操作,资源: arn:aws:cloudwatch:eu-central-1:996323886532:alarm:*,原因是没有任何身份型策略允许cloudwatch:DescribeAlarms操作
只读权限下可探索的CloudWatch操作
只要IAM策略包含对应的只读权限,你可以执行以下CloudWatch相关操作:
- 指标类操作
get_metric_statistics:获取指定指标的历史统计数据list_metrics:列出当前账户下的所有可用指标describe_metric_streams:查看已配置的指标流信息
- 日志类操作(需CloudWatch Logs只读权限)
describe_log_groups:列出所有日志组get_log_events:读取指定日志流中的日志事件describe_log_streams:查看日志流的基本信息
- 仪表盘类操作
describe_dashboards:列出所有仪表盘的概要信息get_dashboard:获取指定仪表盘的完整配置和内容
- 其他只读操作
describe_insight_rules:查看已创建的洞察规则get_insight_rule_report:获取洞察规则的分析报告describe_anomalies:查看指标的异常检测结果
内容的提问来源于stack exchange,提问作者Shamim Mahbub
相关产品推荐
相关产品推荐

