PutBucketObjectWormConfiguration

更新时间:
复制为 MD 格式

调用PutBucketObjectWormConfiguration接口在Bucket上启用对象级别保留策略(ObjectWorm),并可选配置默认保留策略。此操作不可逆,一旦为Bucket启用ObjectWorm,将无法关闭。

注意事项

重要

该功能目前为邀测功能,如需使用,请联系技术支持申请开通。当前仅支持华东1(杭州)、西南1(成都)、华南1(深圳)、华南3(广州)、华北1(青岛)、华北2(北京)、华北5(呼和浩特)、华南2(河源)、中国香港、德国(法兰克福)、日本(东京)、韩国(首尔)、新加坡、马来西亚(吉隆坡)、印度尼西亚(雅加达)、菲律宾(马尼拉)、泰国(曼谷)、沙特(利雅得)、阿联酋(迪拜)地域。

  • 此操作不可逆。一旦为Bucket启用对象级别保留策略,将无法关闭ObjectWorm功能,同时也将无法关闭Bucket的版本控制功能。

  • 调用该接口前,Bucket必须已开启版本控制。如果未开启版本控制,调用将返回错误。

  • ObjectWormBucket级别保留策略(BucketWorm)互斥,不支持同时开启。如果Bucket已开启BucketWorm,调用将返回错误。

  • 默认保留策略为可选配置。如果设置了默认保留策略,后续新上传的文件将自动应用该策略。存量文件不会自动生效,需通过PutObjectRetention接口单独设置。

  • 开启ObjectWorm后,不支持Append上传方式。

  • 需要给相关用户授予oss:PutObjectRetentionoss:GetObjectRetention权限后才可完成文件读写。

请求语法

PUT /?objectWorm HTTP/1.1
Content-MD5: ContentMD5
Content-Length: ContentLength
Content-Type: application/xml
Host: BucketName.oss-cn-hangzhou.aliyuncs.com
Date: GMT Date
Authorization: SignatureValue

请求头

参数名称

类型

是否必选

示例值

描述

Content-MD5

字符串

B2M2Y8AsgTpgAmY7PhC****

请求体的MD5哈希值,用于数据完整性校验。

Content-Length

正整数

188

请求体的长度。

请求元素

名称

类型

是否必须

示例值

描述

ObjectWormConfiguration

容器

不涉及

配置Bucket对象级别保留策略的容器。

父节点:无

子节点:ObjectWormEnabled、Rule

ObjectWormEnabled

字符串

Enabled

启用对象级别保留策略。取值固定为Enabled

父节点:ObjectWormConfiguration

Rule

容器

不涉及

保存Bucket对象级别默认保留策略的容器。

父节点:ObjectWormConfiguration

子节点:DefaultRetention

DefaultRetention

容器

不涉及

默认保留策略的容器。

父节点:Rule

子节点:Mode、Days、Years

Mode

字符串

COMPLIANCE

Bucket对象级别保留策略的默认保留模式。取值:

  • COMPLIANCE(合规模式):保留期内,任何用户(包括根用户)都无法删除或覆盖写受保护的对象版本。

父节点:DefaultRetention

Days

正整数

1

默认保留天数,取值范围为1~36500。Days 和 Years 必须设置其中之一,且不可同时设置。

父节点:DefaultRetention

Years

正整数

1

默认保留年数,取值范围为1~100。DaysYears只能选择其一进行设置。

父节点:DefaultRetention

示例

示例1:开启ObjectWorm并设置默认合规保留策略

以下示例为Bucket开启ObjectWorm并设置默认保留策略为合规模式保留1天。

  • 请求示例

    PUT /?objectWorm HTTP/1.1
    Date: Thu, 17 Mar 2026 11:18:32 GMT
    Content-Length: 188
    Content-Type: application/xml
    Content-MD5: B2M2Y8AsgTpgAmY7PhC****
    Host: examplebucket.oss-cn-hangzhou.aliyuncs.com
    Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20260317/cn-hangzhou/oss/aliyun_v4_request,AdditionalHeaders=content-length,Signature=a7c3554c729d****
    
    <?xml version="1.0" encoding="UTF-8"?>
    <ObjectWormConfiguration>
      <ObjectWormEnabled>Enabled</ObjectWormEnabled>
      <Rule>
        <DefaultRetention>
          <Mode>COMPLIANCE</Mode>
          <Days>1</Days>
        </DefaultRetention>
      </Rule>
    </ObjectWormConfiguration>
  • 返回示例

    HTTP/1.1 200 OK
    x-oss-request-id: 5374A2880232A65C2300****
    Date: Thu, 17 Mar 2026 11:18:32 GMT
    Content-Length: 0
    Server: AliyunOSS

示例2:仅开启ObjectWorm不设置默认策略

以下示例仅为Bucket开启ObjectWorm,不设置默认保留策略。后续可通过PutObjectRetention接口为单个Object单独设置保留策略。

  • 请求示例

    PUT /?objectWorm HTTP/1.1
    Date: Thu, 17 Mar 2026 11:18:32 GMT
    Content-Length: 102
    Content-Type: application/xml
    Content-MD5: C3N3Z9BthUpgBnZ8QiD****
    Host: examplebucket.oss-cn-hangzhou.aliyuncs.com
    Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20260317/cn-hangzhou/oss/aliyun_v4_request,Signature=****
    
    <?xml version="1.0" encoding="UTF-8"?>
    <ObjectWormConfiguration>
      <ObjectWormEnabled>Enabled</ObjectWormEnabled>
    </ObjectWormConfiguration>
  • 返回示例

    HTTP/1.1 200 OK
    x-oss-request-id: 6485B3990232A65C3400****
    Date: Thu, 17 Mar 2026 11:20:15 GMT
    Content-Length: 0
    Server: AliyunOSS

错误码

错误码

HTTP状态码

描述

InvalidBucketState

409

Bucket未开启版本控制,无法启用ObjectWorm。请先开启版本控制后重试。

BucketWormAlreadyEnabled

409

Bucket已开启桶级别保留策略(BucketWorm),不支持同时开启对象级别保留策略(ObjectWorm)。