Auf dieser Seite wird beschrieben, wie Sie den Status der Objektversionsverwaltung für einen Bucket aktivieren, deaktivieren und prüfen. Weitere Informationen zum Auflisten, Wiederherstellen und Löschen von Objekten, die von der Objektversionsverwaltung beibehalten werden, finden Sie unter Versionierte Objekte verwenden.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle „Storage-Administrator“ (roles/storage.admin) für den Bucket oder das Projekt mit dem Bucket zuzuweisen, damit Sie die Berechtigungen zum Festlegen und Verwalten von Objektversionen für einen Bucket erhalten. Diese vordefinierte Rolle enthält alle erforderlichen Berechtigungen zum Festlegen und Verwalten von Objektversionen für einen Bucket. Maximieren Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen im Detail anzuzeigen:
Erforderliche Berechtigungen
storage.buckets.getstorage.buckets.updatestorage.buckets.list- Diese Berechtigung ist nur erforderlich, wenn Sie dieGoogle Cloud Console zum Ausführen der Schritte auf dieser Seite verwenden möchten.
Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen erhalten.
Informationen zum Zuweisen von Rollen für Buckets finden Sie unter IAM-Richtlinien für Buckets festlegen und verwalten. Informationen zum Zuweisen von Rollen für Projekte finden Sie unter Zugriff auf Projekte verwalten.
Objektversionsverwaltung für einen Bucket festlegen
Console
- Wechseln Sie in der Google Cloud Console unter „Cloud Storage“ zur Seite Buckets.
Klicken Sie in der Bucket-Liste auf den Namen des Buckets, für den Sie die Objektversionsverwaltung aktivieren oder deaktivieren möchten.
Wählen Sie oben auf der Seite den Tab Schutz aus.
Den aktuellen Status der Objektversionsverwaltung finden Sie im Abschnitt Objektversionsverwaltung.
Klicken Sie im Abschnitt Objektversionsverwaltung auf den aktuellen Status, um ihn zu ändern.
Das Dialogfeld Objektversionsverwaltung wird angezeigt.
- Wenn Sie die Objektversionsverwaltung aktivieren und Speicherkosten reduzieren möchten, klicken Sie auf das Kästchen Empfohlene Lebenszyklusregeln zum Verwalten der Versionskosten hinzufügen.
Klicken Sie auf Bestätigen.
Befehlszeile
Führen Sie den Befehl gcloud storage buckets update mit dem geeigneten Flag aus.
gcloud storage buckets update gs://BUCKET_NAME FLAG
Dabei gilt:
BUCKET_NAMEist der Name des entsprechenden Buckets. Beispiel:my-bucket.FLAGist entweder--versioning, um die Objektversionsverwaltung zu aktivieren, oder--no-versioning, um sie zu deaktivieren.
Wenn der Vorgang erfolgreich war, sieht die Antwort in etwa so aus:
Updating gs://my-bucket/... Completed 1
Clientbibliotheken
C++
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage C++ API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
Im folgenden Beispiel wird die Objektversionsverwaltung für einen Bucket aktiviert:
Im folgenden Beispiel wird die Objektversionsverwaltung für einen Bucket deaktiviert:
C#
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage C# API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
Im folgenden Beispiel wird die Objektversionsverwaltung für einen Bucket aktiviert:
Im folgenden Beispiel wird die Objektversionsverwaltung für einen Bucket deaktiviert:
Go
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Go API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
Im folgenden Beispiel wird die Objektversionsverwaltung für einen Bucket aktiviert:
Im folgenden Beispiel wird die Objektversionsverwaltung für einen Bucket deaktiviert:
Java
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Java API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
Im folgenden Beispiel wird die Objektversionsverwaltung für einen Bucket aktiviert:
Im folgenden Beispiel wird die Objektversionsverwaltung für einen Bucket deaktiviert:
Node.js
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Node.js API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
Im folgenden Beispiel wird die Objektversionsverwaltung für einen Bucket aktiviert:
Im folgenden Beispiel wird die Objektversionsverwaltung für einen Bucket deaktiviert:
PHP
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage PHP API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
Im folgenden Beispiel wird die Objektversionsverwaltung für einen Bucket aktiviert:
Im folgenden Beispiel wird die Objektversionsverwaltung für einen Bucket deaktiviert:
Python
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Python API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
Im folgenden Beispiel wird die Objektversionsverwaltung für einen Bucket aktiviert:
Im folgenden Beispiel wird die Objektversionsverwaltung für einen Bucket deaktiviert:
Ruby
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Ruby API.
Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Storage zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für Clientbibliotheken einrichten.
Im folgenden Beispiel wird die Objektversionsverwaltung für einen Bucket aktiviert:
Im folgenden Beispiel wird die Objektversionsverwaltung für einen Bucket deaktiviert:
REST APIs
JSON API
Installieren und initialisieren Sie die gcloud CLI, um ein Zugriffstoken für den
Authorization-Header zu generieren.Erstellen Sie eine JSON-Datei, die folgende Informationen enthält:
{ "versioning": { "enabled": STATE } }
Dabei ist STATE entweder
trueoderfalse.Verwenden Sie
cURL, um die JSON API mit einerPATCH-Bucket-Anfrage aufzurufen:curl -X PATCH --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?fields=versioning"
Dabei gilt:
JSON_FILE_NAMEist der Pfad zur JSON-Datei, die Sie in Schritt 2 erstellt haben.BUCKET_NAMEist der Name des entsprechenden Buckets. Beispiel:my-bucket.
XML API
Installieren und initialisieren Sie die gcloud CLI, um ein Zugriffstoken für den
Authorization-Header zu generieren.Erstellen Sie eine XML-Datei mit den folgenden Informationen:
<VersioningConfiguration> <Status>STATE</Status> </VersioningConfiguration>
Dabei ist STATE entweder
EnabledoderSuspended.Verwenden Sie
cURL, um die XML API mit einerPUT-Bucket-Anfrage und einemversioning-Abfragestringparameter aufzurufen:curl -X PUT --data-binary @XML_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/BUCKET_NAME?versioning"
Dabei gilt:
XML_FILE_NAMEist der Pfad zur XML-Datei, die Sie in Schritt 2 erstellt haben.BUCKET_NAMEist der Name des entsprechenden Buckets. Beispiel:my-bucket.
Wenn die Objektversionsverwaltung aktiviert ist, wird beim Ersetzen oder Löschen einer Live-Objektversion die ersetzte oder gelöschte Version zu einer nicht aktuellen Version.
Prüfen, ob die Objektversionsverwaltung aktiviert ist
So prüfen Sie, ob die Objektversionsverwaltung für einen Bucket aktiviert ist:
Console
- Wechseln Sie in der Google Cloud Console unter „Cloud Storage“ zur Seite Buckets.
In der Bucket-Liste finden Sie den Status der Objektversionsverwaltung in der Spalte Schutz.
Wenn diese Option aktiviert ist, wird der Text Objektversionsverwaltung angezeigt.
Befehlszeile
Verwenden Sie den Befehl gcloud storage buckets describe mit dem Flag --format:
gcloud storage buckets describe gs://BUCKET_NAME --format="default(versioning_enabled)"
Dabei ist BUCKET_NAME der Name des Buckets, dessen Status Sie aufrufen möchten. Beispiel: my-bucket.
Wenn der Befehl erfolgreich ausgeführt wurde und die Objektversionsverwaltung aktiviert ist, sieht die Antwort in etwa so aus:
versioning: enabled: true
Wenn der Befehl erfolgreich ausgeführt wurde und keine Objektversionsverwaltung aktiviert ist, sieht die Antwort in etwa so aus:
nullREST APIs
JSON API
Installieren und initialisieren Sie die gcloud CLI, um ein Zugriffstoken für den
Authorization-Header zu generieren.Verwenden Sie
cURL, um die JSON API mit einerGET-Bucket-Anfrage aufzurufen:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?fields=versioning"
Dabei ist
BUCKET_NAMEder Name des jeweiligen Buckets. Beispiel:my-bucket.
Wenn der Befehl erfolgreich ausgeführt wurde und die Objektversionsverwaltung aktiviert ist, sieht die Antwort in etwa so aus:
{ "versioning": { "enabled": true } }
Wenn der Befehl erfolgreich ausgeführt wurde und keine Objektversionsverwaltung aktiviert ist, sieht die Antwort in etwa so aus:
{}XML API
Installieren und initialisieren Sie die gcloud CLI, um ein Zugriffstoken für den
Authorization-Header zu generieren.Verwenden Sie
cURL, um die XML API mit einerGET-Bucket-Anfrage und einemversioning-Abfragestringparameter aufzurufen:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/BUCKET_NAME?versioning"
Dabei ist
BUCKET_NAMEder Name des jeweiligen Buckets. Beispiel:my-bucket.
Wenn der Befehl erfolgreich ausgeführt wurde und die Objektversionsverwaltung aktiviert ist, sieht die Antwort in etwa so aus:
<VersioningConfiguration>
<Status>Enabled</Status>
</VersioningConfiguration>Wenn der Befehl erfolgreich ausgeführt wurde und keine Objektversionsverwaltung aktiviert ist, sieht die Antwort in etwa so aus:
<VersioningConfiguration/>
Nächste Schritte
- Informationen zu Objektversionsverwaltung
- Informationen zu mit nicht aktuellen Objekten arbeiten
- Informationen zu Verwaltung des Objektlebenszyklus verwenden, um Objektversionen automatisch zu verwalten
- Informationen zu Anfragevorbedingungen verwenden, um Race-Bedingungen zu vermeiden