开启对象级别保留策略

更新时间:
复制为 MD 格式

您可以通过API级命令开启存储空间的对象级别保留策略(Object Worm),并配置默认保留策略。

注意事项

  • 要开启对象级别保留策略,您必须有oss:PutBucketObjectWormConfiguration权限。具体操作,请参见RAM用户授予自定义的权限策略

  • 此操作不可逆。开启后,Object Worm功能和版本控制都无法关闭。

  • 开启Object Worm前,Bucket必须已开启版本控制,且未开启桶级别保留策略(Bucket Worm)。Object WormBucket Worm互斥,不支持同时开启。

命令格式

ossutil api put-bucket-object-worm-configuration --bucket value --object-worm-configuration value [flags]

参数

类型

说明

--bucket

string

Bucket名称。

--object-worm-configuration

string

对象级别保留策略的配置信息。

说明

put-bucket-object-worm-configuration命令对应API接口PutBucketObjectWormConfiguration。关于API中的具体参数含义,请参见PutBucketObjectWormConfiguration

--object-worm-configuration

--object-worm-configuration配置选项既支持XML语法也支持JSON语法,当选项值包含file://前缀时,表示从文件中读取配置。

  • XML语法:

    <ObjectWormConfiguration>
      <ObjectWormEnabled>string</ObjectWormEnabled>
      <Rule>
        <DefaultRetention>
          <Mode>string</Mode>
          <Days>integer</Days>
        </DefaultRetention>
      </Rule>
    </ObjectWormConfiguration>
  • JSON语法:

    {
      "ObjectWormEnabled": "string",
      "Rule": {
        "DefaultRetention": {
          "Mode": "string",
          "Days": "integer"
        }
      }
    }

字段

类型

说明

ObjectWormEnabled

string

是否开启Object Worm。取值为Enabled

Mode

string

默认保留模式。当前仅支持COMPLIANCE(合规模式)。合规模式下,保留期内任何用户(包括根用户)都无法删除或覆盖写受保护的Object。

Days

integer

默认保留天数。新上传的Object将自动继承此保留天数。取值范围为1~36500。DaysYears互斥,不能同时设置。

说明

关于支持的全局命令行选项,请参见支持的全局命令行选项

使用示例

为存储空间examplebucket开启对象级别保留策略,并配置合规模式、默认保留天数为365天。

  • 使用XML配置文件,object-worm-configuration.xml内容如下:

    <?xml version="1.0" encoding="UTF-8"?>
    <ObjectWormConfiguration>
      <ObjectWormEnabled>Enabled</ObjectWormEnabled>
      <Rule>
        <DefaultRetention>
          <Mode>COMPLIANCE</Mode>
          <Days>1</Days>
        </DefaultRetention>
      </Rule>
    </ObjectWormConfiguration>

    命令示例如下:

    ossutil api put-bucket-object-worm-configuration --bucket examplebucket --object-worm-configuration file://object-worm-configuration.xml
  • 使用JSON配置文件,object-worm-configuration.json内容如下:

    {
      "ObjectWormEnabled": "Enabled",
      "Rule": {
        "DefaultRetention": {
          "Mode": "COMPLIANCE",
          "Days": "1"
        }
      }
    }

    命令示例如下:

    ossutil api put-bucket-object-worm-configuration --bucket examplebucket --object-worm-configuration file://object-worm-configuration.json
  • 使用JSON配置参数,命令示例如下:

    ossutil api put-bucket-object-worm-configuration --bucket examplebucket --object-worm-configuration "{\"ObjectWormEnabled\":\"Enabled\",\"Rule\":{\"DefaultRetention\":{\"Mode\":\"COMPLIANCE\",\"Days\":\"1\"}}}"