Nesta página, você verá o recurso Bloqueio de retenção de objetos, que permite definir uma configuração de retenção para objetos nos buckets do Cloud Storage que
ativaram o recurso. Uma configuração de retenção determina por quanto tempo o objeto
precisa ser retido e tem a opção de impedir permanentemente que o tempo de
retenção seja reduzido ou removido.
O Bloqueio de retenção de objetos permite definir os requisitos de retenção de dados
por objeto. Isso é diferente do Bloqueio de bucket, que define os requisitos de retenção de dados de maneira uniforme para todos os objetos em um bucket. Com o bloqueio de retenção de objetos, a configuração de retenção que você coloca em um objeto contém as seguintes propriedades:
Um horário de retenção até que especifica uma data e hora até que o objeto
precisa ser retido. Antes disso, não era possível excluir ou
substituir o objeto. Observe que um objeto que não atingiu esse valor até o tempo ainda pode
ser tornado não atual.
O período de retenção máxima tem um valor máximo de 3.155.760.000 segundos (100
anos) a partir da data e hora atuais.
Um modo de retenção que controla as mudanças que você pode fazer na
configuração de retenção.
Unlocked permite que usuários autorizados modifiquem ou removam a configuração de retenção
de um objeto sem limitações. Na API XML, esse
modo é denominado GOVERNANCE.
Locked impede permanentemente que a data de retenção seja reduzida ou
removida. Depois de definido como Locked, não é possível mudar o modo, e
o período de armazenamento só pode ser aumentado. Na API XML, esse
modo é denominado COMPLIANCE.
Só é possível definir configurações de retenção em objetos que residem em buckets
em que o recurso foi ativado.
Os buckets atuais só podem ativar o recurso usando o console Google Cloud .
Depois de ativado, o recurso não pode ser desativado em um bucket.
Depois que você ativa o recurso em um bucket, o Cloud Storage aplica uma
garantia à permissão projects.delete para o projeto que contém
o bucket, com o melhor esforço possível. Para saber se uma garantia foi aplicada, liste todas as garantias do projeto.
Enquanto estiver ativa, a garantia impede que o projeto seja excluído. Para excluir o projeto, primeiro remova a garantia.
Considerações
Um bucket que contém objetos retidos não pode ser excluído até que o tempo de retenção de todos os objetos no bucket tenha passado e todos os objetos dentro do bucket tenham sido excluídos.
Um objeto pode estar sujeito à própria configuração de retenção e a
uma política geral de retenção de buckets. Se esse for o caso, o objeto será retido até que
as retenções aplicáveis a ele sejam atendidas.
As solicitações que tentam definir uma configuração de retenção em um objeto
sujeito a uma retenção baseada em eventos falham.
As solicitações que definiriam simultaneamente uma configuração de retenção para um
objeto e colocariam uma retenção baseada em evento no objeto também falham.
Um objeto pode ter simultaneamente uma configuração de retenção e uma
retenção temporária.
É possível usar o Gerenciamento do ciclo de vida de objetos para excluir objetos automaticamente,
mas uma regra de ciclo de vida não excluirá um objeto até que ele
atinja a data de validade da retenção, mesmo que as condições dela
tenham sido atendidas.
Em buckets que usam o controle de versões de objetos, uma versão ativa de objeto que tenha um
período de retenção até no futuro ainda pode se tornar não atual.
Não defina configurações de retenção em objetos temporários, como partes de um upload composto paralelo.
Os metadados editáveis de um objeto não estão sujeitos à configuração de
retenção e podem ser modificados mesmo quando o próprio objeto não pode ser.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Informações incorretas ou exemplo de código","incorrectInformationOrSampleCode","thumb-down"],["Não contém as informações/amostras de que eu preciso","missingTheInformationSamplesINeed","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-08-18 UTC."],[],[],null,["# Object Retention Lock\n\n[Setup](/storage/docs/using-object-lock)\n\nThis page discusses the Object Retention Lock feature, which lets you set a\nretention configuration on objects within Cloud Storage buckets that\nhave enabled the feature. A retention configuration governs how long the object\nmust be retained and has the option to permanently prevent the retention time\nfrom being reduced or removed.\n\nIn conjunction with [Detailed audit logging mode](/storage/docs/org-policy-constraints#audit-logging), which logs\nCloud Storage request and response details, Object Retention Lock\n[can help with regulatory and compliance requirements](/security/compliance/sec-us), such as those\nassociated with FINRA, SEC, and CFTC. It can also help you address regulations\nin other industries such as health care.\n\nOverview\n--------\n\nObject Retention Lock lets you define data retention requirements on a\nper-object basis. This differs from [Bucket Lock](/storage/docs/bucket-lock), which defines data\nretention requirements uniformly for all objects in a bucket. With Object\nRetention Lock, the *retention configuration* that you place on an object\ncontains the following properties:\n\n- A *retain-until time* that specifies a date and time until which the object\n must be retained. Prior to this time, the object cannot be deleted or\n replaced. Note that an object that hasn't reached this retain-until time can\n still be [made noncurrent](/storage/docs/object-versioning).\n\n - The retain-until time has a maximum value of 3,155,760,000 seconds (100 years) from the current date and time.\n- A *retention mode* that controls what changes you can make to the retention\n configuration.\n\n - `Unlocked` allows authorized users to modify or remove an object's\n retention configuration without any limitations. In the XML API, this\n mode is named `GOVERNANCE`.\n\n - `Locked` permanently prevents the retention date from being reduced or\n removed. Once set to `Locked`, the mode cannot be changed, and\n the retention period can only be increased. In the XML API, this\n mode is named `COMPLIANCE`.\n\n - Locking a retention configuration can help your data\n [comply with record retention regulations](/security/compliance/sec-us).\n\nYou can only set retention configurations on objects that reside in buckets\nthat have enabled the feature.\n\n- Existing buckets can only enable the feature using the Google Cloud console.\n\n- Once enabled, the feature cannot be disabled on a bucket.\n\n- After you enable the feature on a bucket, Cloud Storage applies a\n [lien](/resource-manager/docs/project-liens) to the `projects.delete` permission for the project that contains\n the bucket, at best effort. To find out whether a lien has been applied,\n [list all project liens](/resource-manager/docs/project-liens#listing_liens_on_a_project).\n\n While in place, the lien prevents the project from being deleted. To delete\n the project, you must first [remove the lien](/resource-manager/docs/project-liens#removing_liens_from_a_project).\n\nConsiderations\n--------------\n\n- A bucket containing retained objects cannot be deleted until the retain-until\n time on all objects in the bucket has passed and all objects inside the\n bucket have been deleted.\n\n- An object can be subject to both its own retention configuration and an\n overall [bucket retention policy](/storage/docs/bucket-lock). If it is, the object is retained until\n both retentions that apply to it have been satisfied.\n\n - To see the earliest date that an object is eligible for deletion, [view the *retention expiration date* metadata](/storage/docs/viewing-editing-metadata#view) for the object.\n- Requests that attempt to set a retention configuration on a object that is\n subject to an [event-based hold](/storage/docs/object-holds) fail.\n\n - Requests that would simultaneously set a retention configuration for an\n object and place an event-based hold on the object similarly fail.\n\n - An object can simultaneously have a retention configuration and a\n [temporary hold](/storage/docs/object-holds).\n\n- You cannot destroy [Cloud Key Management Service key versions](/kms/docs/object-hierarchy#key_versions) that encrypt locked objects\n if the objects haven't met their retention expiration times. For more\n information, see [Key versions used to encrypt locked objects](/storage/docs/encryption/customer-managed-keys#locked-objects).\n\n- You can use [Object Lifecycle Management](/storage/docs/lifecycle) to automatically delete objects,\n but a lifecycle rule won't delete an object until after the object has\n reached its retention expiration date, even if the conditions of the\n lifecycle rule have been met.\n\n- In buckets that use [Object Versioning](/storage/docs/object-versioning), a live object version that has a\n retain-until time in the future can still be made noncurrent.\n\n- You shouldn't set retention configurations on objects that are meant to be\n temporary, such as component pieces of a [parallel composite upload](/storage/docs/parallel-composite-uploads).\n\n- An object's [editable metadata](/storage/docs/metadata#editable) is not subject to the retention\n configuration and can be modified even when the object itself cannot be.\n\nWhat's next\n-----------\n\n- [Use object retentions](/storage/docs/using-object-lock).\n- Learn about other Cloud Storage features that [protect objects and control their lifecycles](/storage/docs/control-data-lifecycles).\n- Learn about [Detailed audit logging mode](/storage/docs/org-policy-constraints#audit-logging), which can also help with regulatory and compliance requirements."]]