如何限制对 CloudWatch 控制台的访问?

2 分钟阅读
0

我想要限制对 Amazon CloudWatch 控制台的访问权限,以便只有特定用户才能对 CloudWatch 资源执行特定操作。

简短描述

如果您是 AWS 账户的管理员,则使用基于身份的策略将权限附加到 AWS Identity and Access Management(IAM)实体。基于身份的策略为您的 IAM 实体提供对 CloudWatch 资源执行操作所需的权限。

要查看可用于 CloudWatch 的所有权限,请参阅 Permissions required to use the CloudWatch console

解决方法

为 CloudWatch 资源创建自定义策略

完成下面的步骤:

  1. 打开 IAM 控制台
  2. 选择策略
  3. 选择创建策略
  4. 选择 JSON
  5. 创建一个自定义策略。
    策略示例:
    {    
        "Version": "2012-10-17",  
        "Statement": [  
            {  
                "Sid": "Description_1",   
                "Effect": "Allow",  
                "Action": [permissions required],  
                "Resource": "*"  
            },  
            {  
                "Sid": "Description_2",   
                "Effect": "Allow",  
                "Action": [permissions required],  
                "Resource": "*"  
            },  
            .  
            .  
            .  
            .  
            {  
                "Sid": "Description_n",   
                "Effect": "Allow",  
                "Action": [permissions required],  
                "Resource": "*"  
            }  
        ]  
    }
    **注意:**由于 CloudWatch 不支持基于资源的策略,因此您无法在 IAM 策略中使用 CloudWatch ARN。当您编写策略来控制对 CloudWatch 操作的访问时,请使用 "*" 作为资源。
  6. (可选)向您的策略添加标签。
  7. 选择查看策略
  8. 输入策略的名称和描述,例如 CWPermissions。
  9. 选择创建策略

向 IAM 用户附加自定义策略

完成下面的步骤:

  1. 打开 IAM 控制台
  2. 在导航窗格中,选择用户
  3. 选择要为其添加权限的用户。
  4. 选择添加权限
  5. 选择直接附加现有策略
  6. 选择自定义 CloudWatch 策略。
  7. 选择下一步: 审核
  8. 选择添加权限

下面的示例策略允许用户在 CloudWatch 中创建和可视化警报:

{  
    "Version": "2012-10-17",  
    "Statement": [  
        {  
            "Sid": "CreateAlarms",  
            "Effect": "Allow",  
            "Action": [  
                "cloudwatch:PutMetricAlarm",  
                "cloudwatch:DescribeAlarmHistory",  
                "cloudwatch:EnableAlarmActions",  
                "cloudwatch:DeleteAlarms",  
                "cloudwatch:DisableAlarmActions",  
                "cloudwatch:DescribeAlarms",  
                "cloudwatch:SetAlarmState"  
            ],  
            "Resource": "*"  
        },  
        {  
            "Sid": "visualizeAlarms",  
            "Effect": "Allow",  
            "Action": [  
                "cloudwatch:DescribeAlarmsForMetric",  
                "cloudwatch:ListMetrics"  
                "cloudwatch:GetMetricData"  
            ],  
            "Resource": "*"  
        }  
    ]  
}

注意

  • 要限制对 CloudWatch 命名空间的访问,请使用条件键
  • 要限制用户对 CloudWatch 指标的访问,请使用 PutMetricData 而不是 GetPutMetricData
AWS 官方
AWS 官方已更新 4 个月前