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.
Hinweis
- Informationen zur Funktionsweise von Pub/Sub-Schemas
- Schema erstellen.
Erforderliche Rollen und Berechtigungen
Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Pub/Sub-Bearbeiter (roles/pubsub.editor) für Ihr Projekt zu erteilen, um die Berechtigungen zu erhalten, die Sie zum Löschen und Verwalten von Schemaversionen 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 Löschen und Verwalten von Schemaversionen erforderlich sind. Maximieren Sie den Abschnitt Erforderliche Berechtigungen , um die notwendigen Berechtigungen anzuzeigen, die erforderlich sind:
Erforderliche Berechtigungen
Die folgenden Berechtigungen sind erforderlich, um Schemaversionen zu löschen und zu verwalten:
-
Schema erstellen:
pubsub.schemas.create -
Schema an Thema anhängen:
pubsub.schemas.attach -
Schemaversion festschreiben:
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 ein Schema ausführen:
pubsub.schemas.rollback -
Nachricht validieren:
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 Rollen und Berechtigungen Prinzipalen wie Nutzern, Gruppen, Domains oder Dienstkonten gewähren. Sie können ein Schema in einem Projekt erstellen und es an ein Thema anhängen, das sich in einem anderen Projekt befindet. 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 die Veröffentlichung von Nachrichten in Themen fehl, die mit diesem Schema verknüpft sind.
Wenn Sie eine Schemaversion löschen und sie als erste Version für ein Thema angegeben ist, wird stattdessen die nächste Version zur 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 für ein Thema zur Validierung fällt, wird die Version übersprungen.
Sie können eine Schemaversion über die Google Cloud Console, die gcloud CLI, die Pub/Sub API, oder die Cloud-Clientbibliotheken löschen.
Console
Rufen Sie in der Google Cloud Console die Pub/Sub-Schemas Seite auf.
Klicken Sie auf den Namen eines vorhandenen Schemas.
Die Seite Schemadetails für das Schema wird geöffnet.
Wählen Sie die Version aus, die Sie löschen möchten. Sie können auch mehrere Versionen auswählen.
Klicken Sie auf Version löschen.
Bestätigen Sie den Löschvorgang.
gcloud
gcloud pubsub schemas delete-revision SCHEMA_NAME@REVISION_ID
Wobei:
- REVISION_ID ist die Version, auf die Sie ein Rollback ausführen möchten.
REST
Senden Sie eine DELETE-Anfrage wie diese, um eine Schemaversion zu löschen:
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 Pub/Sub C++ API-Referenzdokumentation.
Go
Im folgenden Beispiel wird die Hauptversion der Go Pub/Sub-Clientbibliothek (Version 2) verwendet. Wenn Sie noch die Version 1 verwenden, lesen Sie den Migrationsleitfaden zu Version 2. Eine Liste der Codebeispiele für Version 1 finden Sie unter Veraltete Codebeispiele.
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 Node.js 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 Node.js in der Schnellstart-Anleitung: Clientbibliotheken verwenden. Weitere Informationen finden Sie in der Referenzdokumentation zur Pub/Sub Node.js API.
Nächste Schritte
- Schema löschen
- Schemas auflisten
- Versionen eines Schemas auflisten
- Thema mit einem Schema abonnieren