使用此操作可以開啟合規保留功能,開啟后將對Bucket中所有文件生效。只有根用戶和有權限的子用戶才可以進行此操作,匿名用戶不能進行此操作。
開啟Bucket合規保留功能后,任何用戶(包括根用戶)都不能對此Bucket內處于合規保留期的文件進行修改和刪除。
可以重復調用此接口:
- 如果已經開啟合規保留策略:設置合規保留時長大于或等于上次設置的時長,才能生效。如果使用Years和Days兩種方式設置合規保留時長,年與天的換算關系為:1年等于365天。
- 如果未開啟合規保留策略:設置合規保留時長可以大于、等于或小于上次設置的時長。
注意
合規保留一旦開啟,不能關閉,不能縮短合規保留時長,但可以延長合規保留時長。
合規保留的時間精確到秒,例如對Bucket A設置合規保留時長為10天,文件A屬于Bucket A,A1的最后更新時間為2019-3-1 12:00:00,該文件會在2019-3-11 12:00:01過合規保留期。
任何用戶(包括根用戶)都不能修改、覆蓋、刪除處于合規保留期的文件。
處于合規保留期的文件,無法通過調用API、控制臺修改文件的存儲類型,只能通過生命周期修改存儲類型。
處于合規保留期的文件,如果設置了生命周期規則,則修改存儲類型的生命周期規則可以生效,設置刪除操作的生命周期規則待文件過了合規保留期后才能生效。
請求語法
PUT /?object-lock HTTP/1.1
Host: BucketName.oos-cn.ctyunapi.cn
Date: date
Content-MD5:md5
Content-Length:length
Authorization: SignatureValue
<ObjectLockConfiguration>
<ObjectLockEnabled>Enabled</ObjectLockEnabled>
<Rule>
<DefaultRetention>
<Mode>COMPLIANCE</Mode>
<Days>days</Days>
<Years>years</Years>
</DefaultRetention>
</Rule>
</ObjectLockConfiguration>
請求頭
| 名稱 | 描述 | 是否必須 |
|---|---|---|
| Content-MD5 | 數據的base64編碼的128位MD5。此請求頭必填,以便校驗數據的完整性。 | 是 |
請求參數
名稱 描述 是否必須 BucketName 存儲桶名稱。 是 ObjectLockConfiguration 合規保留配置信息的容器。
類型:容器。
子節點:ObjectLockEnabled。
是 ObjectLockEnabled Bucket是否開啟合規保留功能。
類型:枚舉
取值:
Enabled:開啟合規保留。
Disabled:不開啟合規保留。
父節點:ObjectLockConfiguration。
是 Rule 設置合規保留規則。
類型:容器。
父節點:ObjectLockConfiguration。
子節點:DefaultRetention。
否 DefaultRetention 默認的合規保留配置。
類型:容器。
父節點:Rule。
子節點:Mode、Days或Years二選一。
是 Mode 合規保留模式。
類型:枚舉。
取值:COMPLIANCE:合規保留。
父節點:DefaultRetention。
是 Days 合規保留的天數。
類型:整型。
取值:整數形式,1~36500。
說明年與天的換算關系:1年等于365天。
父節點:DefaultRetention。
條件
Days和Years必須二選一。
Years 合規保留的年數。
類型:整型。
取值:整數形式,1~100。
說明年與天的換算關系:1年等于365天。
父節點:DefaultRetention。
條件
Days和Years必須二選一。
請求示例
PUT /?object-lock HTTP/1.1
Host: example-bucket.oos-cn.ctyunapi.cn
Date: Tue, 12 May 2020 06:18:52 GMT
Content-Type: application/xml; charset=utf-8
Content-Length: 232
Content-MD5: m08Xh8w1oh6bZrLA6Hseaw==
Authorization: SignatureValue
<ObjectLockConfiguration>
<ObjectLockEnabled>Enabled</ObjectLockEnabled>
<Rule>
<DefaultRetention>
<Mode>COMPLIANCE</Mode>
<Days>1</Days>
</DefaultRetention>
</Rule>
</ObjectLockConfiguration>
響應示例
HTTP/1.1 200 OK
x-amz-request-id: a7ed9cfd3fc743c035afb1a8aab06f71776567696b6d6f7173
Date: Tue, 12 May 2020 03:24:38 GMT
Server: CTYUN