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

上次更新日期:2022 年 5 月 11 日

我想通过允许特定用户对 CloudWatch 资源执行特定操作来限制对 Amazon CloudWatch 控制台的访问。我该如何操作?

简短描述

如果您是 AWS 账户的管理员,则可以使用基于身份的策略向 AWS Identity and Access Management(IAM)实体(用户、组或角色)附加权限。这些基于身份的策略可以向您的 IAM 实体授予对 CloudWatch 资源执行操作所需的权限。为此,请执行以下操作:

  • 使用 IAM 控制台为 CloudWatch 资源创建自定义读写策略
  • 将策略附加到 IAM 用户

解决方法

为 CloudWatch 资源创建自定义策略

注意:要查看使用 CloudWatch 所需的所有权限,请参阅使用 CloudWatch 控制台所需的权限

要为您的 CloudWatch 资源创建自定义策略,请执行以下步骤:

1.    打开 IAM 控制台

2.    依次选择 Policies(策略)和 Create Policy(创建策略)。

3.    选择 JSON,然后使用以下结构创建自定义策略:

{
  "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "Description_1”, 
            "Effect": "Allow",
            "Action": [premissions required],
            "Resource": "*"
        },
        {
            "Sid": "Description_2”, 
            "Effect": "Allow",
            "Action": [premissions required],
            "Resource": "*"
        },
        .
        .
        .
        .
        {
            "Sid": "Description_n”, 
            "Effect": "Allow",
            "Action": [premissions required],
            "Resource": "*"
        }
    ]
}

注意:CloudWatch 不支持基于资源的策略。因此,您无法在 IAM 策略中使用任何 CloudWatch ARN。在编写策略以控制对 CloudWatch 操作的访问权限时,您可以使用“*”作为资源。

4.    可以选择向策略添加标签。

5.    选择 review the policy(查看策略),然后输入策略的名称和描述。例如,CWPermissions。

6.    选择 Create Policy(创建策略)。

向 IAM 用户附加自定义策略

要将您创建的自定义策略附加到 IAM 用户,请执行以下步骤:

1.    打开 IAM 控制台

2.    在导航窗格中,选择 Users(用户)。

3.    选择要向其添加权限的用户,然后选择 Add permissions(添加权限)。

4.    选择 Attach existing policies directly(直接附加现有策略),然后选择您创建的自定义 CloudWatch 策略。

5.    选择 Next: Review(下一步:查看),然后选择 Add permissions(添加权限)。

此示例策略允许用户在 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": "*"
        }
    ]
}

注意


这篇文章对您有帮助吗?


您是否需要账单或技术支持?