In diesem Dokument erfahren Sie, wie Sie Schemas für Pub/Sub-Themen validieren.
Sie können prüfen, ob Nachrichten einem bestimmten Schema entsprechen, bevor oder nachdem Sie eine Schemaressource erstellt haben. Mit diesem Schritt wird sichergestellt, dass die Nachrichten, die Sie über ein Thema senden möchten, das mit einem Schema verknüpft ist, tatsächlich übereinstimmen, bevor Sie das Schema anwenden.
Hinweis
- Informationen zur Funktionsweise von Pub/Sub-Schemas
- Schema erstellen.
Erforderliche Rollen und Berechtigungen
Bitten Sie Ihren Administrator, Ihnen die
Pub/Sub-Bearbeiter (roles/pubsub.editor) IAM-Rolle für Ihr Projekt zuzuweisen,
um die Berechtigungen zu erhalten, die
Sie zum Validieren und Verwalten von Schemanachrichten 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 Validieren und Verwalten von Schemanachrichten erforderlich sind. Maximieren Sie den Abschnitt Erforderliche Berechtigungen , um die notwendigen Berechtigungen anzuzeigen, die erforderlich sind:
Erforderliche Berechtigungen
Die folgenden Berechtigungen sind erforderlich, um Schemanachrichten zu validieren und zu verwalten:
-
Schema erstellen:
pubsub.schemas.create -
Schema an Thema anhängen:
pubsub.schemas.attach -
Schemaüberarbeitung festschreiben:
pubsub.schemas.commit -
Schema oder Schemaüberarbeitung löschen:
pubsub.schemas.delete -
Schema oder Schemaüberarbeitungen abrufen:
pubsub.schemas.get -
Schemas auflisten:
pubsub.schemas.list -
Schemaüberarbeitungen auflisten:
pubsub.schemas.listRevisions -
Schema zurücksetzen:
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 zuweisen. 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.
Nachricht für ein Schema validieren
Console
Rufen Sie in der Google Cloud Console die Pub/Sub-Schemas Seite auf.
Die Liste der Schemas wird angezeigt.
Klicken Sie auf die Schema-ID eines vorhandenen Schemas.
Die Seite Schemadetails für das Schema wird geöffnet.
Klicken Sie im Abschnitt Überarbeitungen auf die Überarbeitung, für die Sie eine Nachricht validieren möchten.
Klicken Sie im Abschnitt Details auf Nachricht testen.
Wählen Sie im Fenster Nachricht testen eine Nachrichtenkodierung aus.
Geben Sie im Nachrichtentext eine Testnachricht ein.
Klicken Sie auf Testen.
gcloud
-
Aktivieren Sie Cloud Shell in der Google Cloud Console.
Unten in der Google Cloud Console wird eine Cloud Shell Sitzung gestartet und eine Eingabeaufforderung angezeigt. Cloud Shell ist eine Shell-Umgebung in der das Google Cloud CLI bereits installiert ist und Werte für Ihr aktuelles Projekt bereits festgelegt sind. Das Initialisieren der Sitzung kann einige Sekunden dauern.
- Verwenden Sie den
gcloud pubsub schemas validate-message
Befehl, um eine Nachricht anhand eines Schemas zu validieren.
gcloud pubsub schemas validate-message --message=MESSAGE \ --message-encoding=MESSAGE_ENCODING \ (--schema-name=SCHEMA_NAME | \ --type=TYPE \ (--definition=DEFINITION | \ --definition-file=DEFINITION_FILE))Ersetzen Sie Folgendes:
MESSAGE: Nachricht, die anhand des Schemas validiert werden soll
MESSAGE_ENCODING: Kodierung der Nachricht. Geben Sie einen der folgenden Werte an:
binaryoderjson.SCHEMA_NAME: Name oder vollständiger Pfad eines vorhandenen Schemas.
TYPE: Typ des Inline-Schemas. Geben Sie einen der folgenden Werte an:
avrooderprotocol-buffer.DEFINITION: Inline-Schemadefinition.
DEFINITION_FILE: Datei mit der Schemadefinition.