AWS put-bucket-notification-configuration 不允许我使用 "Filter"

AWS put-bucket-notification-configuration won't let me use "Filter"

我使用的命令:

aws s3api put-bucket-notification-configuration --bucket bucket-name --notification-configuration file:///Users/chris/event_config.json

如果我取出 "Filter" 键,工作正常。只要我添加它,我就会得到:

Parameter validation failed:
Unknown parameter in NotificationConfiguration.LambdaFunctionConfigurations[0]: "Filter", must be one of: Id, LambdaFunctionArn, Events

这是我的 JSON 文件:

{  
  "LambdaFunctionConfigurations": [
   {
     "LambdaFunctionArn": "arn:aws:lambda:us-east-1:000000000:function:name",
     "Events": [
        "s3:ObjectCreated:*"
     ],
     "Filter": {
       "Key": {
         "FilterRules": [
           {
             "Name": "prefix",
             "Value": "images/"
           }
         ]
       }
     }
   }
  ]
}

当我查看命令的文档 (http://docs.aws.amazon.com/cli/latest/reference/s3api/put-bucket-notification-configuration.html) 时,我没有发现任何错误。我已经尝试 copy/pasting、仔细查看等...任何帮助将不胜感激!

您需要 运行 至少是 aws-cli 的 1.7.46 版本,发布于 2015 年 8 月 20 日。

This release adds Amazon S3 support for event notification filters and fixes some issues.

https://aws.amazon.com/releasenotes/CLI/3585202016507998

aws-cli 实用程序包含大量 built-in 智能和验证逻辑。新功能通常需要更新 aws-cli 中的代码,而 S3 事件通知上的 Filter 是一个相对较新的功能。

另请参阅: https://aws.amazon.com/blogs/aws/amazon-s3-update-delete-notifications-better-filters-bucket-metrics/