Gerenciamento de marcadores de exclusão
Como configurar o ciclo de vida para limpar marcadores de exclusão expirados automaticamente
Em um marcador de exclusão de objeto expirado, todas as versões de objeto são excluídas e resta apenas um único marcador de exclusão. Se a configuração de ciclo de vida estiver definida para excluir versões atuais ou a ação ExpiredObjectDeleteMarker
estiver explicitamente definida, o Amazon S3 removerá o marcador de exclusão do objeto expirado. Para ver um exemplo, consulte Remover marcadores de exclusão de objetos expirados em um bucket com versionamento habilitado.
Como remover marcadores de exclusão para tornar uma versão mais antiga atual
Quando você exclui um objeto em um bucket ativado para versionamento, todas as versões permanecem no bucket, e o Amazon S3 cria um marcador de exclusão para o objeto. Para cancelar a exclusão do objeto, você deve excluir esse marcador de exclusão. Para obter mais informações sobre versionamento e marcadores de exclusão, consulte Reter várias versões de objetos com o Versionamento do S3.
Para excluir permanentemente um marcador de exclusão, inclua seu respectivo ID de versão em uma solicitação DeleteObject versionId
. A figura a seguir mostra como uma solicitação DeleteObject versionId
simples remove, permanentemente, um marcador de exclusão.
O efeito da remoção do marcador de exclusão é que uma simples solicitação GET
não recuperará o ID da versão atual do objeto (121212).
nota
Se você usar uma solicitação DeleteObject
em que a versão atual seja um marcador de exclusão (sem especificar o ID da versão do marcador de exclusão), o Amazon S3 não excluirá o marcador de exclusão, mas outro marcador de exclusão PUTs
.
Para excluir um marcador de exclusão com um ID de versão NULL
, você deve aprovar o NULL
como o ID da versão na solicitação DeleteObject
. A figura a seguir mostra como uma simples solicitação DeleteObject
feita sem um ID de versão em que a versão atual é um marcador de exclusão não remove nada. Em vez disso, ela adiciona um marcador de exclusão extra com um ID de versão exclusivo (7498372).
Use as etapas a seguir para recuperar objetos excluídos que não são pastas do seu bucket do S3, incluindo objetos que estão dentro dessas pastas.
-
Faça login no AWS Management Console e abra o console do Amazon S3 em https://console.aws.amazon.com/s3/
. -
Na lista Buckets, escolha o nome do bucket desejado.
-
Para ver uma lista das versões dos objetos no bucket, escolha a opção List versions (Listar versões). Você conseguirá ver os marcadores de exclusão dos objetos excluídos.
-
Para cancelar a exclusão de um objeto, você deve excluir o marcador de exclusão. Marque a caixa de seleção ao lado do delete marker (marcador de exclusão) do objeto a ser recuperado e escolha Delete (excluir).
-
Confirme a exclusão na página Delete objects (Excluir objetos).
-
Para a opção Permanently delete objects? (Excluir objetos permanentemente?), insira
permanently delete
. -
Escolha Delete objects (Excluir objetos).
-
nota
Você não pode usar o console do Amazon S3 para cancelar a exclusão de pastas. Você deve usar a AWS CLI ou o SDK. Para ver exemplos, consulte Como faço para recuperar um objeto do Amazon S3 que foi excluído em um bucket habilitado para versionamento?
Para remover permanentemente um marcador de exclusão
-
Defina
versionId
como o ID da versão do marcador de exclusão que você deseja remover. -
Envie uma solicitação
DELETE Object versionId
.
exemplo — Remover um marcador de exclusão
O exemplo a seguir remove o marcador de exclusão de photo.gif
com versão 4857693.
DELETE /photo.gif?versionId=4857693 HTTP/1.1 Host: bucket.s3.amazonaws.com Date: Wed, 28 Oct 2009 22:32:00 GMT Authorization: AWS AKIAIOSFODNN7EXAMPLE:0RQf4/cRonhpaBX5sCYVf1bNRuU=
Quando você exclui um marcador de exclusão, o Amazon S3 inclui o seguinte na resposta:
204 NoContent x-amz-version-id:
versionID
x-amz-delete-marker: true
Para obter informações sobre o uso de outros AWS SDKs, consulte o Centro do Desenvolvedor da AWS