In diesem Dokument erfahren Sie, wie Sie Schemaversionen für Pub/Sub-Themen löschen. Beim Löschen eines Schemas werden auch alle mit dem Schema verknüpften Versionen gelöscht.
Hinweise
Erforderliche Rollen und Berechtigungen
Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Pub/Sub Editor (roles/pubsub.editor
) für Ihr Projekt zu gewähren, damit Sie die Berechtigungen erhalten, die Sie zum Löschen und Verwalten von Schemaüberarbeitungen benötigen.
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff verwalten.
Diese vordefinierte Rolle enthält die Berechtigungen, die zum Löschen und Verwalten von Schemaversionen erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:
Erforderliche Berechtigungen
Zum Löschen und Verwalten von Schemaversionen sind die folgenden Berechtigungen erforderlich:
-
Schema erstellen:
pubsub.schemas.create
-
Schema an Thema anhängen:
pubsub.schemas.attach
-
Commit für eine Schemaversion durchführen:
pubsub.schemas.commit
-
Schema oder Schemaversion löschen:
pubsub.schemas.delete
-
Schema- oder Schemaversionen abrufen:
pubsub.schemas.get
-
Schemas auflisten:
pubsub.schemas.list
-
Schemaversionen auflisten:
pubsub.schemas.listRevisions
-
Rollback für Schema durchführen:
pubsub.schemas.rollback
-
Nachricht validieren:
pubsub.schemas.validate
-
Rufen Sie die IAM-Richtlinie für ein Schema ab:
pubsub.schemas.getIamPolicy
-
Konfigurieren Sie die IAM-Richtlinie für ein Schema:
pubsub.schemas.setIamPolicy
Möglicherweise können Sie diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.
Sie können Hauptkonten wie Nutzern, Gruppen, Domains oder Dienstkonten Rollen und Berechtigungen gewähren. Sie können ein Schema in einem Projekt erstellen und an ein Thema in einem anderen Projekt anhängen. Prüfen Sie, ob Sie die erforderlichen Berechtigungen für jedes Projekt haben.
Schemaversion löschen
Im Folgenden finden Sie einige wichtige Richtlinien zum Löschen einer Schemaversion:
Sie können eine oder mehrere Schemaversionen aus einem Schema löschen.
Wenn das Schema nur eine Version hat, können Sie die Version nicht löschen. Löschen Sie stattdessen das Schema.
Beim Löschen eines Schemas werden auch alle mit dem Schema verknüpften Versionen gelöscht.
Wenn Sie ein Schema löschen, schlägt das Veröffentlichen von Nachrichten in Themen fehl, die mit diesem Schema verknüpft sind.
Wenn Sie eine Schemaversion löschen, die als erste Version für ein Thema angegeben wird, wird stattdessen die nächste Version für die Validierung verwendet.
Wenn die gelöschte Schemaversion als letzte Version für ein Thema angegeben ist, wird stattdessen die vorherige Schemaversion zur Validierung verwendet.
Wenn die gelöschte Schemaversion in den angegebenen Versionsbereich eines Themas zur Validierung fällt, wird die Überarbeitung übersprungen.
Sie können eine Schemaversion mit der Google Cloud Console, der gcloud CLI, Pub/Sub API oder den Cloud-Clientbibliotheken löschen.
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.
Wählen Sie die Überarbeitung aus, die Sie löschen möchten. Sie können auch mehrere Versionen auswählen.
Klicken Sie auf Überarbeitung löschen.
Bestätigen Sie den Löschvorgang.
gcloud
gcloud pubsub schemas delete-revision SCHEMA_NAME@REVISION_ID
Wobei:
- REVISION_ID ist die Überarbeitung, auf die ein Rollback durchgeführt werden soll.
REST
Senden Sie zum Löschen einer Schemaversion eine DELETE-Anfrage wie die folgende:
POST https://pubsub.googleapis.com/v1/projects/PROJECT_ID/schemas/SCHEMA_ID@REVISION_ID:deleteRevision Authorization: Bearer $(gcloud auth application-default print-access-token) Content-Type: application/json --data @response-body.json
Der Antworttext sollte eine JSON-Darstellung der gelöschten 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.
Einfach loslegen (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 zur 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 zur 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 zur 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 zur 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 zur Pub/Sub Node.js API.