Ce document vous explique comment valider des schémas pour les sujets Pub/Sub.
Vous pouvez vérifier que les messages respectent un certain schéma, avant ou après la création d'une ressource de schéma. Cette étape permet de vous assurer que les messages que vous souhaitez envoyer via un sujet associé à un schéma correspondent réellement avant d'appliquer le schéma.
Avant de commencer
- Comprendre le fonctionnement des schémas Pub/Sub
- Créer un schéma.
Rôles et autorisations requis
Pour obtenir les autorisations nécessaires pour valider les messages de schéma et les gérer, demandez à votre administrateur de vous accorder le rôle IAM Éditeur Pub/Sub (roles/pubsub.editor) dans votre projet.
Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.
Ce rôle prédéfini contient les autorisations requises pour valider les messages de schéma et les gérer. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Vous devez disposer des autorisations suivantes pour valider les messages de schéma et les gérer :
-
Créer un schéma :
pubsub.schemas.create -
Associer un schéma à un sujet :
pubsub.schemas.attach -
Valider une révision de schéma :
pubsub.schemas.commit -
Supprimer un schéma ou une révision de schéma :
pubsub.schemas.delete -
Obtenir un schéma ou des révisions de schéma :
pubsub.schemas.get -
Lister les schémas :
pubsub.schemas.list -
Lister les révisions de schéma :
pubsub.schemas.listRevisions -
Restaurer un schéma :
pubsub.schemas.rollback -
Valider un message :
pubsub.schemas.validate -
Obtenir la stratégie IAM pour un schéma :
pubsub.schemas.getIamPolicy -
Configurer la stratégie IAM pour un schéma :
pubsub.schemas.setIamPolicy
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Vous pouvez accorder des rôles et des autorisations à des principaux tels que des utilisateurs, des groupes, des domaines ou des comptes de service. Vous pouvez créer un schéma dans un projet et l'associer à un sujet situé dans un autre projet. Assurez-vous de disposer des autorisations requises pour chaque projet.
Valider un message pour un schéma
Console
Dans la Google Cloud console, accédez à la page Schémas Pub/Sub.
La liste des schémas s'affiche.
Cliquez sur l'ID de schéma d'un schéma existant.
La page Détails du schéma s'ouvre.
Dans la section Révisions, cliquez sur la révision pour laquelle vous souhaitez valider un message.
Dans la section Détails, cliquez sur Tester le message.
Dans la fenêtre Tester le message, sélectionnez un type d'encodage de message.
Dans le corps du message, saisissez un message de test.
Cliquez sur Test.
gcloud
-
Dans la Google Cloud console, activez Cloud Shell.
En bas de la fenêtre de la console, une session Cloud Shell démarre et affiche une invite de ligne de commande. Google Cloud Cloud Shell est un environnement de shell dans lequel Google Cloud CLI est déjà installé, et dans lequel des valeurs sont déjà définies pour votre projet actuel. L'initialisation de la session peut prendre quelques secondes.
- Pour valider un message par rapport à un schéma, utilisez la
commande gcloud pubsub schemas validate-message.
gcloud pubsub schemas validate-message --message=MESSAGE \ --message-encoding=MESSAGE_ENCODING \ (--schema-name=SCHEMA_NAME | \ --type=TYPE \ (--definition=DEFINITION | \ --definition-file=DEFINITION_FILE))Remplacez les éléments suivants :
MESSAGE : message à valider par rapport au schéma
MESSAGE_ENCODING : encodage du message. Spécifiez l'une des valeurs suivantes :
binaryoujson.SCHEMA_NAME : nom ou chemin complet d'un schéma existant.
TYPE : type de schéma intégré. Spécifiez l'une des valeurs suivantes :
avroouprotocol-buffer.DEFINITION : définition de schéma intégrée.
DEFINITION_FILE : fichier contenant la définition du schéma.