Convalidare 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 schema. Questo passaggio garantisce che i messaggi che intendi inviare tramite un argomento associato a uno schema corrispondano effettivamente prima di applicare lo schema.

Prima di iniziare

Autorizzazioni e ruoli richiesti

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

Questo ruolo predefinito contiene le autorizzazioni necessarie per convalidare i messaggi di schema e gestirli. Per visualizzare le autorizzazioni esatte necessarie, espandi la sezione Autorizzazioni richieste:

Autorizzazioni obbligatorie

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

  • Crea schema: pubsub.schemas.create
  • Collega schema all'argomento: pubsub.schemas.attach
  • Esegui il commit di una revisione dello schema: pubsub.schemas.commit
  • Elimina uno schema o una revisione di uno schema: pubsub.schemas.delete
  • Visualizza le revisioni di uno schema o di uno schema: pubsub.schemas.get
  • Elenca 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 essere in grado di ottenere queste autorizzazioni con i ruoli personalizzati o 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 e collegarlo a un argomento in un altro progetto. Assicurati di disporre delle autorizzazioni necessarie per ogni progetto.

Convalidare un messaggio per uno schema

Console

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

    Vai a Schemi

    Viene visualizzato l'elenco degli schemi.

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

    Si apre la pagina Dettagli schema dello schema.

  3. Nella sezione Revisioni, fai clic sulla revisione per la quale vuoi convalidare un messaggio.

  4. Nella sezione Dettagli, fai clic su Messaggio di prova.

  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. Nella console Google Cloud, attiva Cloud Shell.

    Attiva Cloud Shell

    Nella parte inferiore della console Google Cloud viene avviata una sessione di Cloud Shell che mostra un prompt della riga di comando. Cloud Shell è un ambiente shell con Google Cloud CLI già installato e con valori già impostati per il progetto attuale. L'inizializzazione della sessione può richiedere alcuni secondi.

  2. Per convalidare un messaggio in base a uno schema, utilizza il comando gcloud pubsub schemas 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 incorporato. Specifica uno dei seguenti valori: avroo protocol-buffer.

    • DEFINITION: definizione dello schema incorporato.

    • DEFINITION_FILE: file contenente la definizione dello schema.

Passaggi successivi