I can't use a resource arn to restrict cloudwatch access
但我可以使用条件。我是否可以使用条件仅允许用户在特定区域执行云监视操作?我没有看到任何使用这种条件的例子。
答案 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"
}
}
}
]
}
希望它会有所帮助!