Ative uma política de retenção no nível do objeto (ObjectWorm) em um bucket e, opcionalmente, configure uma política de retenção padrão. Esta ação é irreversível: após ativar o ObjectWorm para um bucket, não é possível desativá-lo.
Observações de uso
Atualmente, este recurso está disponível apenas mediante convite. Para solicitar acesso, entre em contato com o suporte técnico.
Esta operação é irreversível. Após ativar uma política de retenção no nível do objeto para um bucket, não é possível desativar os recursos ObjectWorm ou versionamento associados a ele.
Antes de chamar esta operação, ative o versionamento do bucket. Caso contrário, a operação retornará um erro.
O ObjectWorm é mutuamente exclusivo com uma política de retenção no nível do bucket (BucketWorm). Se já houver uma política de retenção no nível do bucket ativada, a chamada falhará e retornará um erro.
A configuração de uma política de retenção padrão é opcional. Quando configurada, o sistema a aplica automaticamente a todos os novos objetos carregados no bucket. A política não se aplica a objetos existentes. Para aplicar uma política de retenção a um objeto existente, chame a operação PutObjectRetention.
A ativação do ObjectWorm desabilita o suporte a uploads de anexação.
Conceda aos usuários as permissões
oss:PutObjectRetentioneoss:GetObjectRetentionpara permitir que eles gerenciem políticas de retenção de objetos.
Sintaxe da solicitação
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
Cabeçalhos da solicitação
|
Parâmetro |
Tipo |
Obrigatório |
Exemplo |
Descrição |
|
Content-MD5 |
String |
Sim |
B2M2Y8AsgTpgAmY7PhC**** |
O hash MD5 codificado em Base64 do corpo da solicitação. O OSS utiliza este cabeçalho para verifique a integridade dos dados. |
|
Content-Length |
Inteiro positivo |
Sim |
188 |
O tamanho do corpo da solicitação em bytes. |
Elementos da solicitação
|
Parâmetro |
Tipo |
Obrigatório |
Exemplo |
Descrição |
|
ObjectWormConfiguration |
Contêiner |
Sim |
N/A |
Contêiner para a configuração da política de retenção no nível do objeto do bucket. Elemento pai: Nenhum Elementos filhos: ObjectWormEnabled, Rule |
|
ObjectWormEnabled |
String |
Sim |
Enabled |
Indica se a política de retenção no nível do objeto deve ser ativada. O valor deve ser Elemento pai: ObjectWormConfiguration |
|
Rule |
Contêiner |
Não |
N/A |
Contêiner para a política de retenção padrão no nível do objeto do bucket. Elemento pai: ObjectWormConfiguration Elemento filho: DefaultRetention |
|
DefaultRetention |
Contêiner |
Não |
N/A |
Contêiner da política de retenção padrão. Elemento pai: Rule Elementos filhos: Mode, Days, Years |
|
Mode |
String |
Não |
COMPLIANCE |
Modo de retenção padrão para a política de retenção no nível do objeto. O valor válido é:
Elemento pai: DefaultRetention |
|
Days |
Inteiro positivo |
Não |
1 |
Período de retenção padrão em dias. Valores válidos: 1 a 36500. Especifique Nó pai: DefaultRetention |
|
Years |
Inteiro positivo |
Não |
1 |
Período de retenção padrão em anos. Valores válidos: 1 a 100. É necessário especificar Days ou Years, porém nunca os dois simultaneamente. Elemento pai: DefaultRetention |
Exemplos
Exemplo 1: Ative o ObjectWorm com uma política padrão
Este exemplo ativa o ObjectWorm para um bucket e configura uma política de retenção padrão que protege objetos no modo de conformidade por um dia.
-
Solicitação de exemplo
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> -
Resposta de exemplo
HTTP/1.1 200 OK x-oss-request-id: 5374A2880232A65C2300**** Date: Thu, 17 Mar 2026 11:18:32 GMT Content-Length: 0 Server: AliyunOSS
Exemplo 2: Ative o ObjectWorm sem uma política padrão
Neste cenário, o ObjectWorm é ativado para um bucket sem defina uma política de retenção padrão. Posteriormente, chame a operação PutObjectRetention para estabelecer políticas de retenção em objetos individuais.
-
Solicitação de exemplo
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> -
Resposta de exemplo
HTTP/1.1 200 OK x-oss-request-id: 6485B3990232A65C3400**** Date: Thu, 17 Mar 2026 11:20:15 GMT Content-Length: 0 Server: AliyunOSS
Códigos de erro
|
Código de erro |
Código de status HTTP |
Descrição |
|
InvalidBucketState |
409 |
O versionamento não está ativado para o bucket, impedindo a ativação do ObjectWorm. Ative o versionamento e tente novamente. |
|
BucketWormAlreadyEnabled |
409 |
Já existe uma política de retenção no nível do bucket (BucketWorm) ativada. Não é possível habilitar simultaneamente uma política de retenção no nível do objeto (ObjectWorm). |