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 richiestaGET
non recupera nulla perché un contrassegno di eliminazione non contiene dati. In particolare, quando la richiestaGET
non specifica unversionId
, 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 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 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).](images/versioning_DELETE_NoObjectFound.png)
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).](images/versioning_DELETE_NoObjectFound_405.png)
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 ListObjects chiamata ListObjectsV2 or non restituisca alcun indicatore di eliminazione.](images/versioning_GETBucketwithDeleteMarkers.png)