是否有一种方法可以监听s3存储桶,但仅在特定的“文件夹”内部,因此例如,如果我有一个名为input的文件夹,我会说在“ s3:// bucket-name / folder1 / *”上监听? 现在看来您只能收听整个存储桶。我的问题是我想基于特定的密钥路径使用相同的存储桶来触发CloudWatch,当然所有CloudWatch规则都将被触发。 这是我的流程: CloudTrail(监视器s3:// bucket / path)-> CloudWatch(该s3:// bucket / path中的任何PUT都有事件规则)触发器-> StepFunction-> LambdaFunctions 我还尝试将其限制为CloudWatch角色,以仅向该特定S3存储桶路径授予权限,而不会带来麻烦。 这是我的活动规则:
{ "source": [ "aws.s3" ], "detail-type": [ "AWS API Call via CloudTrail" ], "detail": { "eventSource": [ "s3.amazonaws.com" ], "eventName": [ "PutObject" ], "requestParameters": { "bucketName": [ " bucketname" ] } } }
有什么解决方法吗?
答案 0 :(得分:1)
截至撰写本文时,我目前尚不知道一种完成“规则”的方法。该规则可能有解决方法,但我没有找到...
...但是:
这可以通过使用CloudTrail
来实现。
bucketname/folder1/folder2
现在,您仅具有该路径的日志记录。 cloudwatch规则或eventBridge规则现在可以指定存储桶以及要监视的任何操作。
答案 1 :(得分:0)
尝试添加
"requestParameters": { "bucketName": [ " bucketname" ],"key":["folder1"] }
可能有用。