Convalida un messaggio per uno schema

Questo documento mostra come convalidare gli schemi per gli argomenti Pub/Sub.

Puoi verificare che i messaggi rispettino un determinato schema prima o dopo la creazione di una risorsa di schema. Questo passaggio garantisce che i messaggi che intendi inviare tramite un argomento associato a lo schema corrisponde effettivamente prima di applicarlo.

Prima di iniziare

Ruoli e autorizzazioni richiesti

Per ottenere le autorizzazioni necessarie per convalidare i messaggi dello schema e gestirli, chiedi all'amministratore di concederti Ruolo IAM dell'editor Pub/Sub (roles/pubsub.editor) nel progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.

Questo ruolo predefinito contiene le autorizzazioni necessarie per convalidare i messaggi dello schema e gestirli. Per vedere le autorizzazioni esatte obbligatorie, espandi la sezione Autorizzazioni obbligatorie:

Autorizzazioni obbligatorie

Per convalidare i messaggi dello schema e gestirli sono necessarie le seguenti autorizzazioni:

  • Crea schema: pubsub.schemas.create
  • Associa schema all'argomento: pubsub.schemas.attach
  • Esegui il commit di una revisione dello schema: pubsub.schemas.commit
  • Elimina uno schema o una revisione dello schema: pubsub.schemas.delete
  • Ottieni uno schema o una revisione dello schema: pubsub.schemas.get
  • Elenca gli schemi: pubsub.schemas.list
  • Elenca le revisioni dello schema: pubsub.schemas.listRevisions
  • Esegui il rollback di uno schema: pubsub.schemas.rollback
  • Convalida un messaggio: pubsub.schemas.validate
  • Ottieni il criterio IAM per uno schema: pubsub.schemas.getIamPolicy
  • Configura il criterio IAM per uno schema: pubsub.schemas.setIamPolicy

Potresti anche riuscire a ottenere queste autorizzazioni con ruoli personalizzati altri ruoli predefiniti.

Puoi concedere ruoli e autorizzazioni a entità come utenti, gruppi domini o account di servizio. Puoi creare uno schema in un progetto a un argomento di un altro progetto. Assicurati di disporre delle autorizzazioni necessarie per per ogni progetto.

Convalida un messaggio per uno schema

Console

  1. Nella console Google Cloud, vai alla pagina Schemi Pub/Sub.

    Vai a Schema

    Viene visualizzato l'elenco degli schemi.

  2. Fai clic sull'ID schema di uno schema esistente.

    Si apre la pagina Dettagli schema relativa allo schema.

  3. Nella sezione Revisioni, fai clic sulla revisione di cui vuoi convalidare un messaggio.

  4. Nella sezione Dettagli, fai clic su Verifica messaggio.

  5. Nella finestra Messaggio di prova, seleziona un tipo di Codifica del messaggio.

  6. Nel corpo del Messaggio, inserisci un messaggio di prova.

  7. Fai clic su Test.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Per convalidare un messaggio in base a uno schema, utilizza gcloud pubsub schemis validation-message .

    gcloud pubsub schemas validate-message --message=MESSAGE \
        --message-encoding=MESSAGE_ENCODING \
        (--schema-name=SCHEMA_NAME | \
        --type=TYPE \
        (--definition=DEFINITION | \
        --definition-file=DEFINITION_FILE))
    

    Sostituisci quanto segue:

    • MESSAGE: messaggio da convalidare in base allo schema

    • MESSAGE_ENCODING: codifica del messaggio. Specifica uno dei seguenti valori: binary o json.

    • SCHEMA_NAME: nome o percorso completo di uno schema esistente.

    • TYPE: tipo di schema in linea. Specifica uno dei seguenti valori: seguenti valori: avroo protocol-buffer.

    • DEFINITION: definizione dello schema incorporato.

    • DEFINITION_FILE: file contenente la definizione dello schema.

Passaggi successivi