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 API DELETE chiamata Amazon S3 su un marker di eliminazione. Per fare ciò, devi 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 marker di eliminazione non è associato a un valore di access control list (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 della chiave aggiunge 1-4 byte di spazio di archiviazione al bucket per ogni carattere del 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, consulta 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 Denominazione degli oggetti Amazon S3. 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 usano le operazioni or) HeadObjectGetObjectAPI

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 GetObject API chiamata su un oggetto la cui versione corrente è un marker di cancellazione 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 GetObject chiamata a un marker di eliminazione che restituisce un errore 405 (metodo non consentito).

L'unico modo per elencare i marker di eliminazione (e altre versioni di un oggetto) consiste nell'utilizzare la sottorisorsa in un versions ListObjectVersions. La figura seguente mostra che a ListObjectsV2 o ListObjectsrequest non restituisce oggetti la cui versione corrente è un marker di eliminazione.

Illustrazione che mostra come una ListObjects chiamata ListObjectsV2 or non restituisca alcun indicatore di eliminazione.