前缀嵌套时,无法在s3存储桶上应用生命周期策略

时间:2019-08-06 07:31:35

标签: amazon-web-services amazon-s3

我已在前缀为async-download的s3存储桶名称(tmp_active_job_storage/)上应用了生命周期策略

当前缀位于存储桶名称之后时,此功能可以正常工作。

下面是对象键:

https://async-download.s3.amazonaws.com/tmp_active_job_storage/file_name.png

Lifecycle configuration

但是当我在存储桶名称和前缀之间引入一个文件夹时,这不起作用。前缀之前的文件夹名称是动态密钥,我无法对其应用规则。

现在修改的对象键为:

https://async-download.s3.amazonaws.com/1111-2222-3333-4444/tmp_active_job_storage/file_name.png

在API文档PUT Bucket lifecycle - Amazon Simple Storage Service中,我看不到对前缀的任何支持(如正则表达式)。

有什么办法可以做到这一点?

1 个答案:

答案 0 :(得分:1)

  

前缀前的文件夹名称是...

根据定义,键前缀“之前”没有任何内容。前缀是对象键的开头。 S3生命周期规则仅支持完全匹配的字符串,不支持正则表达式。

您需要在所有对象键的开头添加一个公共前缀,或者您需要专门使用存储桶来存储这些临时文件(没有其他内容),以便可以将生命周期策略应用于整个存储桶。