您可以通过API级命令开启存储空间的对象级别保留策略(Object Worm),并配置默认保留策略。
注意事项
要开启对象级别保留策略,您必须有
oss:PutBucketObjectWormConfiguration权限。具体操作,请参见为RAM用户授予自定义的权限策略。此操作不可逆。开启后,Object Worm功能和版本控制都无法关闭。
开启Object Worm前,Bucket必须已开启版本控制,且未开启桶级别保留策略(Bucket Worm)。Object Worm与Bucket 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。取值为 |
Mode | string | 默认保留模式。当前仅支持 |
Days | integer | 默认保留天数。新上传的Object将自动继承此保留天数。取值范围为1~36500。Days与Years互斥,不能同时设置。 |
关于支持的全局命令行选项,请参见支持的全局命令行选项。
使用示例
为存储空间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\"}}}"