Excluir objetos do Amazon S3 - Amazon Simple Storage Service

Excluir objetos do Amazon S3

Você pode excluir um ou mais objetos diretamente do Amazon S3 usando o console do Amazon S3, os AWS SDKs, a AWS Command Line Interface (AWS CLI) ou a API REST. Como todos os objetos em seu bucket do S3 incorrem em custos de armazenamento, você deve excluir os objetos de que não precisa mais. Se estiver coletando arquivos de log, por exemplo, é uma boa ideia excluí-los quando eles não forem mais necessários. Você pode definir uma regra de ciclo de vida para excluir automaticamente objetos como arquivos de log. Para obter mais informações, consulte Definir uma configuração de ciclo de vida em um bucket.

Para obter informações sobre os recursos e a definição de preço do Amazon S3, consulte a definição de preço do Amazon S3.

Você tem as seguintes opções da API para excluir um objeto:

  • Excluir um único objeto: o Amazon S3 fornece a operação de API DELETE (DeleteObject) que pode ser usada para excluir um objeto em uma única solicitação HTTP.

  • Excluir vários objetos: o Amazon S3 fornece a operação de API para exclusão de vários objetos (DeleteObjects) que pode ser usada para excluir até 1.000 objetos em uma única solicitação HTTP.

Ao excluir objetos de um bucket que não esteja habilitado para versionamento, você fornece apenas o nome da chave de objeto. No entanto, ao excluir objetos de um bucket habilitado para versionamento, você tem a opção de fornecer o ID da versão do objeto para excluir uma versão específica dele.

Excluir objetos de um bucket habilitado para versionamento de maneira programática

Se seu bucket for habilitado para versão, várias versões do mesmo objeto poderão existir no bucket. Ao trabalhar com buckets com versionamento ativado, as operações de API de exclusão permitem as seguintes opções:

  • Especificar uma solicitação de exclusão não versionada: especifique somente a chave do objeto, e não o ID de versão. Nesse caso, o Amazon S3 cria um marcador de exclusão e retorna o ID de versão na resposta. Isso faz com que o objeto desapareça do bucket. Para obter informações sobre versionamento de objetos e sobre o conceito de marcador de exclusão, consulte Usando o versionamento em buckets do S3.

  • Especificar uma solicitação de exclusão versionada: especifique a chave e um ID de versão. Nesse caso, os dois resultados a seguir são possíveis:

    • Se o ID de versão for mapeado para uma versão de objeto específica, o Amazon S3 excluirá versão específica do objeto.

    • Se o ID de versão for mapeado para o marcador de exclusão do objeto em questão, o Amazon S3 excluirá o marcador de exclusão. Isso faz com que o objeto reapareça no bucket.

Excluir objetos de um bucket com MFA habilitada

Ao excluir objetos de um bucket habilitado para autenticação multifator (MFA, Multi-Factor Authentication), observe:

  • Se você fornecer um token de MFA inválido, a solicitação falhará sempre.

  • Se você tiver um bucket habilitado para MFA e fizer uma solicitação de exclusão em versões (fornecendo uma chave de objeto e um ID de versão), a solicitação falhará se você não fornecer um token de MFA válido. Além disso, ao usar a operação de API de exclusão de vários objetos em um bucket habilitado para MFA, se alguma exclusão for uma solicitação de exclusão versionada (se você especificar uma chave de objeto e um ID de versão), a solicitação inteira falhará se o token de MFA não for fornecido.

No entanto, nos seguintes casos a solicitação é bem-sucedida:

  • Se você tiver um bucket habilitado para MFA, fizer uma solicitação de exclusão não versionada (sem excluir um objeto versionado) e não fornecer um token de MFA, a exclusão será concluída.

  • Se você tiver uma solicitação de exclusão de vários objetos que especifica somente objetos não versionados a serem excluídos de um bucket habilitado para MFA e não fornecer um token de MFA, as exclusões serão feitas com êxito.

Para obter informações sobre a exclusão de MFA, consulte Configurando a exclusão de MFA.