In diesem Dokument erfahren Sie, wie Sie ein Schema für ein Pub/Sub-Thema rückgängig machen.
Mit dem Rollback-Vorgang können Sie eine weitere Schemaversion mit der genauen Schemadefinition der angegebenen vorherigen Version erstellen.
Hinweise
Erforderliche Rollen und Berechtigungen
Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Pub/Sub Editor (roles/pubsub.editor
) für Ihr Projekt zu erteilen, um die Berechtigungen zu erhalten, die Sie zum Zurückrollen und Verwalten von Schemas benötigen.
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Diese vordefinierte Rolle enthält die Berechtigungen, die zum Zurückrollen und Verwalten von Schemas erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:
Erforderliche Berechtigungen
Die folgenden Berechtigungen sind erforderlich, um Schemas rückgängig zu machen und zu verwalten:
-
Schema erstellen:
pubsub.schemas.create
-
Schema an das Thema anhängen:
pubsub.schemas.attach
-
Schemaüberarbeitung festschreiben:
pubsub.schemas.commit
-
So löschen Sie ein Schema oder eine Schemaüberarbeitung:
pubsub.schemas.delete
-
So rufen Sie ein Schema oder Schemaüberarbeitungen ab:
pubsub.schemas.get
-
Listenschemata:
pubsub.schemas.list
-
Schemaüberarbeitungen auflisten:
pubsub.schemas.listRevisions
-
Rollback für ein Schema ausführen:
pubsub.schemas.rollback
-
Nachricht prüfen:
pubsub.schemas.validate
-
IAM-Richtlinie für ein Schema abrufen:
pubsub.schemas.getIamPolicy
-
Konfigurieren Sie die IAM-Richtlinie für ein Schema:
pubsub.schemas.setIamPolicy
Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.
Sie können Hauptkonten wie Nutzern, Gruppen, Domains oder Dienstkonten Rollen und Berechtigungen zuweisen. Sie können ein Schema in einem Projekt erstellen und einem Thema in einem anderen Projekt anhängen. Sie müssen die erforderlichen Berechtigungen für jedes Projekt haben.
Rollback einer Schemaversion durchführen
Sie können ein Schema mit der Google Cloud Console, der gcloud CLI, der Pub/Sub API oder den Cloud-Clientbibliotheken rückgängig machen. Gehen Sie so vor:
Console
Rufen Sie in der Google Cloud Console die Seite Pub/Sub-Schemas auf.
Klicken Sie auf den Namen eines vorhandenen Schemas.
Die Seite Schemadetails für das Schema wird geöffnet.
Klicken Sie auf Rollback.
Das Dialogfeld Schema rückgängig machen wird geöffnet.
Wählen Sie die Version aus, auf die Sie das Schema zurücksetzen möchten.
Klicken Sie auf Bestätigen, um den Rollback-Vorgang zu speichern.
Es wird eine neue Version mit dem im Rollback-Vorgang angegebenen Schema erstellt.
Wählen Sie auf der Seite Schemadetails die neueste Version des Schemas und die Version aus, die Sie als Quelle für den Rollback-Vorgang ausgewählt haben.
Klicken Sie auf Unterschied anzeigen.
Sie können prüfen, ob die beiden Schemas identisch sind.
Sie können die gerade erstellte Schemaversion als letzte Version für die Validierung eines Themas verwenden, indem Sie das Feld Letzte zulässige Version aktualisieren.
gcloud
gcloud pubsub schemas rollback SCHEMA_ID \ --revision-id=REVISION_ID
Wobei:
- REVISION_ID ist die Version, zu der Sie ein Rollback durchführen möchten.
REST
Senden Sie eine POST-Anfrage wie die folgende, um ein Schema rückgängig zu machen:
POST https://pubsub.googleapis.com/v1/projects/PROJECT_ID/schemas/SCHEMA_ID:rollback Authorization: Bearer $(gcloud auth application-default print-access-token) Content-Type: application/json --data @response-body.json
Geben Sie im Anfragetext die folgenden Felder an:
{ "revisionId": REVISION_KD }
Wobei:
- REVISION_KD ist die ID der Version, auf die ein Rollback durchgeführt werden soll.
Der Antworttext sollte eine JSON-Darstellung einer Schemaressource enthalten.
C++
Bevor Sie dieses Beispiel testen, folgen Sie der Einrichtungsanleitung für C++ in der Kurzanleitung: Clientbibliotheken verwenden. Weitere Informationen finden Sie in der Referenzdokumentation zur Pub/Sub C++ API.
Go
Bevor Sie dieses Beispiel testen, folgen Sie der Einrichtungsanleitung für Go in der Schnellstart-Anleitung: Clientbibliotheken verwenden. Weitere Informationen finden Sie in der Referenzdokumentation zu Pub/Sub Go API.
Java
Bevor Sie dieses Beispiel testen, folgen Sie der Einrichtungsanleitung für Java in der Kurzanleitung: Clientbibliotheken verwenden. Weitere Informationen finden Sie in der Referenzdokumentation zu Pub/Sub Java API.
Python
Bevor Sie dieses Beispiel testen, folgen Sie der Einrichtungsanleitung für Python in der Schnellstart-Anleitung: Clientbibliotheken verwenden. Weitere Informationen finden Sie in der Referenzdokumentation zu Pub/Sub Python API.
Node.js
Bevor Sie dieses Beispiel testen, folgen Sie der Einrichtungsanleitung für PHP in der Schnellstart-Anleitung: Clientbibliotheken verwenden. Weitere Informationen finden Sie in der Referenzdokumentation zu Pub/Sub Node.js API.
Node.js
Bevor Sie dieses Beispiel testen, folgen Sie der Einrichtungsanleitung für PHP in der Schnellstart-Anleitung: Clientbibliotheken verwenden. Weitere Informationen finden Sie in der Referenzdokumentation zu Pub/Sub Node.js API.
Nächste Schritte
- Schemaversion löschen
- Schema löschen
- Schemas auflisten
- Überarbeitungen eines Schemas auflisten
- Themen mit Schema abonnieren