当模式不完全匹配时,是否可以创建触发SNS的CloudWatch规则?
通过以下示例,我希望这个问题会更加清楚:
{
"source": [
"aws.ec2"
],
"detail": {
"eventSource": [
"ec2.amazonaws.com"
],
"eventName": [
"RunInstances"
]
}
}
此外,我想指定区域:"awsRegion": "eu-central-1"
,但是(这里是棘手的部分)希望在awsRegion
不是eu-central-1
时触发SNS。
想法是在有人犯错并在错误的区域中运行实例时收到通知。
一旦我知道该怎么做,还将添加更多规则,因此问题不仅仅针对该地区,而是普遍的。
谢谢!
TeoVal
答案 0 :(得分:0)
当模式不匹配时,当前无法触发。
您将必须接收有关SNS主题的所有区域的通知,并通过订阅主题的Lambda函数(或直接将Lambda作为目标)来实现自己的逻辑。
还请注意,可以使用与以下类似的策略来限制用户在特定区域内进行API调用(限制对us-east-1
和eu-central-1
区域的调用):
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "RegionsRestriction",
"Effect": "Deny",
"Action": "*",
"Resource": "*",
"Condition": {
"StringNotEquals": {
"aws:RequestedRegion": [
"us-east-1",
"eu-central-1"
]
}
}
}
]
}