tencent cloud

文档反馈

PUT Bucket lifecycle

最后更新时间:2023-12-21 11:40:42

    功能描述

    COS 支持用户以生命周期配置的方式来管理 Bucket 中 Object 的生命周期。生命周期配置包含一个或多个将应用于一组对象规则的规则集 (其中每个规则为 COS 定义一个操作)。 这些操作分为以下两种:
    转换操作:定义对象转换为另一个存储类的时间。例如,您可以选择在对象创建30天后将其转换为低频存储(STANDARD_IA,适用于不常访问)存储类别。同时也支持将数据沉降到智能分层存储(INTELLIGENT_TIERING,访问模式不固定)和归档存储(ARCHIVE,成本更低)。具体参数查看请求示例说明中 Transition 项。
    过期操作:指定 Object 的过期时间。COS 将会自动为用户删除过期的 Object。
    

    细节分析

    PUT Bucket lifecycle 用于为 Bucket 创建一个新的生命周期配置。
    注意
    如果该 Bucket 已配置生命周期,使用该接口创建新的配置的同时则会覆盖原有的配置。
    同一条生命周期规则中不可同时支持 Days 和 Date 参数,请分成两条规则分别传入,具体请参见下文 实际案例
    开启了 多 AZ 配置的存储桶,不支持将多 AZ 存储类型沉降到单 AZ 存储类型。
    每个存储桶最多可添加1000条生命周期规则。

    请求

    请求示例

    PUT /?lifecycle HTTP/1.1
    Host: <BucketName-APPID>.cos.<Region>.myqcloud.com
    Content-Length: length
    Date: GMT Date
    Authorization: Auth String
    Content-MD5: MD5
    说明
    Host: <BucketName-APPID>.cos.<Region>.myqcloud.com,其中 <BucketName-APPID> 为带 APPID 后缀的存储桶名字,例如 examplebucket-1250000000,可参阅 存储桶概览 > 基本信息存储桶概述 > 存储桶命名规范 文档;<Region> 为 COS 的可用地域,可参阅 地域和访问域名 文档。
    Authorization: Auth String(详情请参见 请求签名 文档)。

    请求头

    此接口仅使用公共请求头部,详情请参见 公共请求头部 文档。

    请求体

    该 API 接口请求的请求体具体节点内容为:
    <LifecycleConfiguration>
    <Rule>
    <ID></ID>
    <Filter>
    <And>
    <Prefix></Prefix>
    <Tag>
    <Key></Key>
    <Value></Value>
    </Tag>
    </And>
    </Filter>
    <Status></Status>
    <Transition>
    <Days></Days>
    <StorageClass></StorageClass>
    </Transition>
    <NoncurrentVersionExpiration>
    <NoncurrentDays></NoncurrentDays>
    </NoncurrentVersionExpiration>
    </Rule>
    <Rule>
    <ID></ID>
    <Filter>
    <Prefix></Prefix>
    </Filter>
    <Status></Status>
    <Transition>
    <Days></Days>
    <StorageClass></StorageClass>
    </Transition>
    <NoncurrentVersionTransition>
    <NoncurrentDays></NoncurrentDays>
    <StorageClass></StorageClass>
    </NoncurrentVersionTransition>
    </Rule>
    <Rule>
    <ID></ID>
    <Filter>
    <Prefix></Prefix>
    </Filter>
    <Status></Status>
    <Expiration>
    <ExpiredObjectDeleteMarker></ExpiredObjectDeleteMarker>
    </Expiration>
    <NoncurrentVersionExpiration>
    <NoncurrentDays></NoncurrentDays>
    </NoncurrentVersionExpiration>
    <AbortIncompleteMultipartUpload>
    <DaysAfterInitiation></DaysAfterInitiation>
    </AbortIncompleteMultipartUpload>
    </Rule>
    </LifecycleConfiguration>
    具体内容描述如下:
    节点名称(关键字)
    父节点
    描述
    类型
    是否必选
    LifecycleConfiguration
    生命周期配置
    Container
    Rule
    LifecycleConfiguration
    规则描述
    Container
    ID
    LifecycleConfiguration.Rule
    用于唯一地标识规则,长度不能超过255个字符
    String
    Filter
    LifecycleConfiguration.Rule
    Filter 用于描述规则影响的 Object 集合
    Container
    And
    LifecycleConfiguration.Rule.Filter
    对象筛选器中的一个子集,仅当需要指定多种筛选规则时才需要此元素,例如:同时指定 Prefix 和 Tag 筛选,或同时指定多个 Tag 筛选。
    Container
    Prefix
    LifecycleConfiguration.Rule.Filter.And
    指定规则所适用的前缀。匹配前缀的对象受该规则影响,Prefix 最多只能有一个
    String
    Tag
    LifecycleConfiguration.Rule.Filter.And
    标签集合,最多支持10个标签
    Container
    Key
    LifecycleConfiguration.Rule.Filter.And.Tag
    标签的 Key,长度不超过128字节,支持英文字母、数字、空格、加号、减号、下划线、等号、点号、冒号、斜线
    String
    Value
    LifecycleConfiguration.Rule.Filter.And.Tag
    标签的 Value,长度不超过256字节, 支持英文字母、数字、空格、加号、减号、下划线、等号、点号、冒号、斜线
    String
    Status
    LifecycleConfiguration.Rule
    指明规则是否启用,枚举值:Enabled,Disabled
    String
    Expiration
    LifecycleConfiguration.Rule
    规则过期属性
    Container
    Transition
    LifecycleConfiguration.Rule
    规则转换属性,用于描述对象何时进行存储类型的转换和转换的存储类型
    Container
    Days
    LifecycleConfiguration.Rule.Transition 或 Expiration
    指明规则对应的动作在对象最后的修改日期过后多少天操作:
    如果是 Transition,该字段有效值是非负整数
    如果是 Expiration,该字段有效值为正整数,最大支持3650天
    Integer
    ExpiredObjectDeleteMarker
    LifecycleConfiguration.Rule.Expiration
    删除过期对象删除标记,枚举值 true,false
    String
    AbortIncompleteMultipartUpload
    LifecycleConfiguration.Rule
    设置允许分片上传保持运行的最长时间
    Container
    DaysAfterInitiation
    LifecycleConfiguration.Rule.AbortIncompleteMultipartUpload
    指明分片上传开始后多少天内必须完成上传
    Integer
    NoncurrentVersionExpiration
    LifecycleConfiguration.Rule
    指明非当前版本对象何时过期
    Container
    NoncurrentVersionTransition
    LifecycleConfiguration.Rule
    指明非当前版本对象何时进行存储类型的转换和转换的存储类型
    Container
    NoncurrentDays
    LifecycleConfiguration.Rule.NoncurrentVersionExpiration或 NoncurrentVersionTransition
    指明规则对应的动作在对象变成非当前版本多少天后执行
    如果是 Transition,该字段有效值是非负整数
    如果是 Expiration,该字段有效值为正整数,最大支持3650天
    Integer
    StorageClass
    LifecycleConfiguration.Rule.Transition 或 NoncurrentVersionTransition
    指定 Object 沉降后的存储类型,枚举值: STANDARD_IA,MAZ_STANDARD_IA,INTELLIGENT_TIERING,MAZ_INTELLIGENT_TIERING,ARCHIVE,DEEP_ARCHIVE。关于存储类型的介绍,请参见 存储类型概述
    String

    响应

    响应头

    此接口仅返回公共响应头部,详情请参见 公共响应头部 文档。

    响应体

    该响应体为空。

    错误码

    此接口遵循统一的错误响应和错误码,详情请参见 错误码 文档。

    实际案例

    请求

    PUT /?lifecycle HTTP/1.1
    Host:examplebucket-1250000000.cos.ap-beijing.myqcloud.com
    Date: Wed, 16 Aug 2017 11:59:33 GMT
    Authorization:q-sign-algorithm=sha1&q-ak=AKIDZfbOAo7cllgPvF9cXFrJD0a1ICvR****&q-sign-time=1502855771;1502935771&q-key-time=1502855771;1502935771&q-header-list=content-md5;host&q-url-param-list=lifecycle&q-signature=f3aa2c708cfd8d4d36d658de56973c9cf1c2****
    Content-MD5: LcNUuow8OSZMrEDnvndw1Q==
    Content-Length: 348
    Content-Type: application/x-www-form-urlencoded
    
    
    
    <LifecycleConfiguration>
    <Rule>
    <ID>id1</ID>
    <Filter>
    <Prefix>documents/</Prefix>
    </Filter>
    <Status>Enabled</Status>
    <Transition>
    <Days>100</Days>
    <StorageClass>ARCHIVE</StorageClass>
    </Transition>
    </Rule>
    <Rule>
    <ID>id2</ID>
    <Filter>
    <Prefix>logs/</Prefix>
    </Filter>
    <Status>Enabled</Status>
    <Transition>
    <Days>10</Days>
    <StorageClass>STANDARD_IA</StorageClass>
    </Transition>
    </Rule>
    </LifecycleConfiguration>

    响应

    HTTP/1.1 200 OK
    Content-Type: application/xml
    Content-Length: 0
    Date: Wed, 16 Aug 2017 11:59:33 GMT
    Server: tencent-cos
    x-cos-request-id: NTk5NDMzYTRfMjQ4OGY3Xzc3NGRf****