Löschen von Objektversionen
Sie können jederzeit Objektversionen löschen. Darüber hinaus können Sie Lebenszykluskonfigurationsregeln für Objekte definieren, die einen definieren Lebenszyklus haben, um Amazon S3 aufzufordern, die aktuellen Objektversionen ablaufen zu lassen, oder die nicht aktuellen Objektversionen ständig zu entfernen. Wenn Ihr Bucket versionsfähig ist oder das Versioning ausgesetzt ist, funktionieren die Lebenszykluskonfigurationsaktionen wie folgt:
-
Die
Expiration
-Aktion wird auf die aktuelle Objektversion angewendet, und statt die aktuelle Objektversion zu löschen, behält Amazon S3 die aktuelle Version als nicht aktuelle Version bei, indem es eine Löschmarkierung hinzufügt, die anschließend zur aktuellen Version wird. -
Die
NoncurrentVersionExpiration
-Aktion wird nur auf nicht aktuelle Objektversionen angewendet, und Amazon S3 entfernt diese Objektversionen dauerhaft. Dauerhaft entfernte Objekte können nicht wiederhergestellt werden.
Weitere Informationen finden Sie unter Verwaltung des Objektlebenszyklus.
Eine DELETE
-Anforderung hat die folgenden Anwendungsfälle:
-
Wenn das Versioning aktiviert ist, kann ein einfaches
DELETE
ein Objekt nicht dauerhaft löschen.Stattdessen fügt Amazon S3 eine Löschmarkierung in den Bucket ein, und die Löschmarkierung wird zur aktuellen Objektversion mit einer neuen ID. Wenn Sie versuchen,
GET
für ein Objekt auszuführen, dessen aktuelle Version eine Löschmarkierung ist, verhält sich Amazon S3 so, als wäre das Objekt gelöscht worden (obwohl es nicht vollständig entfernt wurde), und gibt einen 404-Fehler zurück.Die folgende Abbildung zeigt, dass ein einfaches
DELETE
das spezifizierte Objekt nicht wirklich löscht. Stattdessen fügt Amazon S3 eine Löschmarkierung ein. -
Um Objektversionen dauerhaft zu löschen, müssen Sie
DELETE Object versionId
verwenden.Die folgende Abbildung zeigt, dass das beim Löschen einer angegebenen Objektversion dieses Objekt dauerhaft gelöscht wird.
Über die Konsole
Anleitungen finden Sie unter Wie erkenne ich die Versionen eines S3-Objekts? im Konsolenbenutzerhandbuch für Amazon Simple Storage Service.
Verwenden der AWS SDKs
Beispiele für das Löschen von Objekten mit den AWS SDKs for Java, .NET und PHP finden Sie unter Löschen von Objekten. Die Beispiele für das Löschen von Objekten in versionsfähigen und nicht versionsfähigen Buckets sind gleich, aber bei versionsfähigen Buckets weist Amazon S3 eine Versionsnummer zu. Andernfalls ist die Versionsnummer null.
Weitere Informationen zur Verwendung anderer AWS SDKs finden Sie unter Beispiel-Code und Bibliotheken.
Verwenden von REST
Löschen einer spezifischen Objektversion
-
Geben Sie in einem
DELETE
eine Versions-ID ein.
Beispiel Löschen einer spezifischen Version
Das folgende Beispiel zeigt, wie Version UIORUnfnd89493jJFJ von photo.gif
gelöscht wird.
DELETE /photo.gif?versionId=UIORUnfnd89493jJFJ HTTP/1.1 Host: bucket.s3.amazonaws.com Date: Wed, 12 Oct 2009 17:50:00 GMT Authorization: AWS AKIAIOSFODNN7EXAMPLE:xQE0diMbLRepdf3YB+FIEXAMPLE= Content-Type: text/plain Content-Length: 0
Verwandte Themen
Arbeiten mit Löschmarkierungen