按区域限制cloudwatch访问

时间:2017-08-31 05:11:18

标签: amazon-web-services aws-sdk amazon-iam amazon-cloudwatch

I can't use a resource arn to restrict cloudwatch access

但我可以使用条件。我是否可以使用条件仅允许用户在特定区域执行云监视操作?我没有看到任何使用这种条件的例子。

2 个答案:

答案 0 :(得分:2)

CloudWatch在访问控制方面非常糟糕,因为它既不提供“资源”中使用的资源也不提供条件键。在某些时候,特别是在美国区域执行了DescribeAlarms操作,并且在通过控制台访问时引起了不必要的错误,但是我在CloudTrail中看不到它现在正在执行。也许现在可以将其限制为所有操作了。

将Cloudwatch访问限制在eu-central-region的政策声明为:

         {
           "Sid": "CloudWatchInFrankfurtOnly",
           "Effect": "Deny",
           "NotAction": ["cloudwatch:DescribeAlarms"],
           "Resource": ["arn:aws:cloudwatch:*:*:alarm:*","arn:aws:cloudwatch::*:dashboard/*"],
           "Condition": {"StringNotEquals": {"aws:RequestedRegion": "eu-central-1"}}
         }

答案 1 :(得分:0)

是的,您可以在策略中使用条件,例如,以下策略仅允许访问eu-central-1中的cloudwatch操作。

{
        "Statement": [
            {    "Sid": "Stmt1338559372809",


                 "Action": [
             "cloudwatch:GetMetricStatistics",
             "cloudwatch:ListMetrics",
             "cloudwatch:DescribeAlarms"
              ],

                "Effect": "Allow",
                "Resource": "*",
                "Condition": {
                    "StringEquals": {
                        "ec2:Region": "eu-central-1"
                    }
                }
            }
        ]
  }

希望它会有所帮助!