Utilizzo dei contrassegni di eliminazione - Amazon Simple Storage Service

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Utilizzo dei contrassegni di eliminazione

In Amazon S3, un contrassegno di eliminazione è il segnaposto (o contrassegno) di un oggetto con controllo delle versioni specificato in una richiesta DELETE semplice. Una richiesta DELETE semplice è una richiesta che non specifica un ID versione. Poiché l'oggetto si trova in un bucket con funzione Controllo delle versioni abilitata, non viene eliminato. Ma il contrassegno di eliminazione fa sì che Amazon S3 si comporti come se l'oggetto fosse stato eliminato. Puoi utilizzare una chiamata DELETE API di Amazon S3 su un contrassegno di eliminazione. A tale scopo, è necessario effettuare la DELETE richiesta utilizzando un utente o un ruolo AWS Identity and Access Management (IAM) con le autorizzazioni appropriate.

I contrassegni di eliminazione sono dotati di un nome chiave (o chiave) e di un ID versione, come qualsiasi altro oggetto. Tuttavia, differiscono da altri oggetti nei modi seguenti:

  • Un contrassegno di eliminazione non dispone di dati associati.

  • Un contrassegno di eliminazione non è associato a un valore della lista di controllo degli accessi (ACL).

  • Se invii una richiesta GET per un contrassegno di eliminazione, la richiesta GET non recupera nulla perché un contrassegno di eliminazione non contiene dati. In particolare, quando la richiesta GET non specifica un versionId, viene visualizzato un errore 404 (Not Found).

I contrassegni di eliminazione accumulano un addebito minimo per l'archiviazione in Amazon S3. Le dimensioni di storage di un contrassegno di eliminazione corrispondono a quelle del suo nome delle chiave. Un nome delle chiave è una sequenza di caratteri Unicode. La codifica UTF-8 per il nome chiave aggiunge da 1 a 4 byte di archiviazione al bucket per ogni carattere contenuto nel nome. I contrassegni di eliminazione sono archiviati nella classe di archiviazione S3 Standard.

Per scoprire quanti contrassegni di eliminazione sono impostati e in quale classe di archiviazione sono archiviati, puoi usare Amazon S3 Storage Lens. Per ulteriori informazioni, consultare Valutazione dell'attività e dell'utilizzo dello storage con Amazon S3 Storage Lens e Glossario dei parametri di Amazon S3 Storage Lens.

Per ulteriori informazioni sui nomi delle chiavi, consultare Creazione di nomi di chiavi oggetto. Per informazioni sull'eliminazione di un contrassegno di eliminazione, consultare Gestione dei contrassegni di eliminazione.

Solo Amazon S3 può creare un contrassegno di eliminazione e compie questa operazione ogni volta che si invia una richiesta DeleteObject relativa a un oggetto di un bucket con funzione Controllo delle versioni abilitata o sospesa. L'oggetto specificato nella richiesta DELETE non viene effettivamente eliminato. Invece il contrassegno di eliminazione diventa la versione corrente dell'oggetto Il nome delle chiave dell'oggetto (o chiave) diventa la chiave del contrassegno di eliminazione.

Quando ottieni un oggetto senza specificare un versionId nella richiesta, se la versione corrente è un contrassegno di eliminazione, Amazon S3 risponde con quanto segue:

  • Un errore 404 (Not Found)

  • Un'intestazione di risposta, x-amz-delete-marker: true

Quando ottieni un oggetto specificando un versionId nella richiesta, se la versione specificata è un contrassegno di eliminazione, Amazon S3 risponde con quanto segue:

  • Un errore di tipo 405 (metodo non concesso)

  • Un'intestazione di risposta, x-amz-delete-marker: true

  • Un'intestazione di risposta, Last-Modified: timestamp (solo quando si utilizzano le operazioni HeadObjecto l'GetObjectAPI)

L'intestazione della risposta x-amz-delete-marker: true indica che l'oggetto a cui è stato effettuato l'accesso è un contrassegno di eliminazione. Questa intestazione della risposta non restituisce mai false, perché quando il valore è false, la versione corrente o specificata dell'oggetto non è un indicatore di eliminazione.

L'intestazione della risposta Last-Modified fornisce l'ora di creazione dei contrassegni di eliminazione.

La figura seguente mostra come una chiamata API GetObject su un oggetto la cui versione corrente è un contrassegno di eliminazione risponde con un errore 404 (Not Found) e l'intestazione della risposta include x-amz-delete-marker: true.


            Illustrazione che mostra una chiamata GetObject per un contrassegno di eliminazione che restituisce un errore 404 (Not Found).

Se effettui una chiamata GetObject su un oggetto specificando un versionId nella richiesta e se la versione specificata è un contrassegno di eliminazione, Amazon S3 risponde con un errore 405 (Method Not Allowed) e le intestazioni della risposta includono x-amz-delete-marker: true e Last-Modified: timestamp.


            Illustrazione che mostra una chiamata GetObject per un contrassegno di eliminazione che restituisce un errore 405 (Method Not Allowed) se si specifica l'ID versione del contrassegno di eliminazione nella richiesta.

L'unico modo per ottenere un elenco dei contrassegni di eliminazione (e di altre versioni di un oggetto) è utilizzare la sottorisorsa versions in una richiesta ListObjectVersions. La figura seguente mostra che una richiesta ListObjectsV2 o ListObjects non restituisce gli oggetti la cui versione corrente è un contrassegno di eliminazione.


            Illustrazione che mostra come una chiamata ListObjectsV2 o ListObjects non restituisce alcun contrassegno di eliminazione nella risposta.