Lebenszyklus von Buckets festlegen

Standardmäßig ist für die Buckets die Verwaltung des Lebenszyklus nicht aktiviert. Um eine Lebenszykluskonfiguration für einen vorhandenen Bucket festzulegen oder zu ändern, stellen Sie eine PUT-Anfrage, die für den Bucket erfolgt, und verwenden den Abfragestringparameter lifecycle. Der Anfragetext muss ein XML-Dokument enthalten, das die Lebenszykluskonfiguration enthält. Beachten Sie, dass Sie für einen neuen Bucket, den Sie erstellen, keine Lebenszykluskonfiguration festlegen können.

Sie benötigen die Berechtigung FULL_CONTROL, um die Lebenszykluskonfiguration für einen vorhandenen Bucket festzulegen oder zu ändern. Außerdem müssen Sie authentifiziert sein, um die Methode PUT Bucket zu verwenden.

Abfragestringparameter

Parameter Beschreibung Erforderlich
lifecycle Hiermit können Sie die Lebenszykluskonfiguration für einen vorhandenen Bucket hinzufügen oder ändern. Sie müssen das LifecycleConfiguration-Dokument im Anfragetext angeben. Nein

Informationen zu den Parametern, die Sie beim Erstellen und Verwenden signierter URLs angeben müssen, finden Sie unter Stringparameter für signierte URLs.

Anfrageheader

Siehe Allgemeine Anfrageheader.

Anfragetextelemente

Die folgenden Anfragetexttextelemente sind nur verfügbar, wenn Sie den Abfragestringparameter lifecycle verwenden, um die Lebenszykluskonfiguration für einen vorhandenen Bucket anzugeben.

Element Beschreibung
LifecycleConfiguration Definiert die Richtlinien für die Lebenszyklusverwaltung für den Bucket, die 0 oder mehr (bis zu 100) Regeln enthalten. Verwenden Sie ein leeres Element (z. B. <LifecycleConfiguration/>), um die Lebenszyklusverwaltung für den Bucket zu deaktivieren.
Rule Definiert eine Lebenszyklusverwaltungsregel, die aus einer Aktion und den Bedingungen besteht, die erfüllt sein müssen, damit die Aktion ausgeführt wird.
Action Definiert die auszuführende Aktion. Muss nur ein einziges Aktionselement enthalten.
Delete Aktionselement zum Löschen von Objekten im Bucket.
SetStorageClass Aktionselement, um die Speicherklasse von Objekten im Bucket zu ändern.
Condition Bedingungen, die erfüllt sein müssen, damit die Aktion ausgeführt wird. Eine Regel muss mindestens ein Bedingungselement enthalten.
Age Bedingungselement, das mit Objekten über das angegebene Alter (in Tagen) übereinstimmt
CreatedBefore Bedingungselement, das mit Objekten übereinstimmt, die vor Mitternacht des angegebenen Datums in UTC erstellt wurden. Der Wert ist ein ISO-Datumsstring ohne Zeitzone, z.B. 2019-01-15.
CustomTimeBefore Bedingungselement, das mit Objekten übereinstimmt, deren Custom-Time-Metadaten ein Datum enthalten, das vor dem von dieser Bedingung festgelegten Datum liegt CustomTimeBefore ist ein ISO-Datumsstring ohne Zeitzone, z.B. 2020-02-25.
DaysSinceCustomTime Bedingungselement, das mit Objekten übereinstimmt, deren Custom-Time-Metadaten älter als DaysSinceCustomTime Tage sind
DaysSinceNoncurrentTime Bedingungselement, das nur für versionierte Objekte relevant ist. Gleicht Objekte ab, die seit längerer Zeit nicht mehr aktuell sind.
IsLive Das Bedingungselement wird normalerweise nur in Verbindung mit der Objektversionsverwaltung verwendet. Bei der Einstellung false ist diese Bedingung für jede nicht aktuelle Version eines Objekts erfüllt. Beim Wert true ist diese Bedingung für die Live-Version eines Objekts erfüllt. Wenn Sie die Objektversionsverwaltung nicht verwenden, werden alle Objekte als live betrachtet und übereinstimmen, wenn IsLive true ist.
MatchesStorageClass Bedingungselement, das mit Objekten der angegebenen Speicherklasse übereinstimmt Diese Bedingung kann mehrmals zu derselben Regel hinzugefügt werden, um mehrere Speicherklassen abzudecken.
NoncurrentTimeBefore Bedingungselement, das nur für versionierte Objekte relevant ist. Gleicht Objekte ab, die an einem Datum vor dem in dieser Bedingung angegebenen Datum nicht aktuell waren. NoncurrentTimeBefore ist ein ISO-Datumsstring ohne Zeitzone, z.B. 2020-02-25.
NumberOfNewerVersions Bedingungselement, das nur für versionierte Objekte relevant ist. Beim Wert N ist die Bedingung erfüllt, wenn mindestens eine N-Version (einschließlich der Live-Version) neuer als diese Version des Objekts ist.

Anfragesyntax

PUT /?lifecycle HTTP/1.1
Host: BUCKET_NAME.storage.googleapis.com
Date: DATE
Content-Length: REQUEST_BODY_LENGTH
Content-Type: MIME_TYPE_OF_THE_BODY
Authorization: AUTHENTICATION_STRING

XML_DOCUMENT_DEFINING_LIFECYCLE_CONFIGURATION

Antwortheader

Die Anfrage kann je nach verwendetem Anfrage-Header eine Vielzahl von Antwort-Headern zurückgeben.

Antworttextelemente

Die Antwort enthält kein XML-Dokument im Antworttext.

Beispiel

Im folgenden Beispiel wird die Lebenszyklusverwaltung für einen Bucket mit dem Namen example.com aktiviert. Weitere Beispiele finden Sie auf der Seite Lebenszyklen verwalten.

Anfrage

PUT /example.com?lifecycle HTTP/1.1
Host: storage.googleapis.com
Content-Length: 220
Authorization: Bearer ya29.AHES6ZRVmB7fkLtd1XTmq6mo0S1wqZZi3-Lh_s-6Uw7p8vtgSwg

<?xml version="1.0" ?>
<LifecycleConfiguration>
    <Rule>
        <Action>
            <Delete/>
        </Action>
        <Condition>
            <Age>30</Age>
        </Condition>
    </Rule>
</LifecycleConfiguration>

Antwort

HTTP/1.1 200 OK
Date: Mon, 07 Jan 2019 03:38:42 GMT
Expires: Mon, 01 Jan 1990 00:00:00 GMT
Cache-Control: no-cache, no-store, must-revalidate
Content-Length: 0
Content-Type: text/html