Le mode de schéma définit si un registre de schémas ou un sujet spécifique autorisent les modifications, telles que l'écriture ou la modification de schémas.
Les valeurs acceptées pour le mode schéma sont Readonly et Readwrite.
Le mode Schéma est géré sous la forme d'un objet JSON contenant des paires clé/valeur. Par exemple, voici un exemple :
{ "mode": "READWRITE" }Si le mode de schéma n'est pas défini explicitement au niveau du registre de schémas, il est défini par défaut sur Readwrite.
Si un mode de schéma n'est pas explicitement spécifié au niveau du sujet, il hérite de la valeur du registre de schéma.
Les configurations définies au niveau du sujet remplacent celles définies au niveau du registre de schémas.
Pour en savoir plus sur le mode schéma, y compris sur ses valeurs, consultez Mode schéma.
Rôles et autorisations requis pour modifier le mode du schéma
Pour obtenir les autorisations nécessaires pour mettre à jour le mode de schéma d'un registre de schémas ou d'un sujet, demandez à votre administrateur de vous accorder le rôle IAM Éditeur du registre de schémas Kafka géré (roles/managedkafka.schemaRegistryEditor) sur 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 mettre à jour le mode de schéma d'un registre de schémas ou d'un sujet. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Les autorisations suivantes sont requises pour mettre à jour le mode de schéma d'un registre de schémas ou d'un sujet :
-
Accordez l'autorisation suivante sur la ressource pour laquelle vous souhaitez modifier le mode :
managedkafka.mode.update
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Pour en savoir plus sur les rôles prédéfinis disponibles pour Managed Service pour Apache Kafka, consultez la documentation sur le contrôle des accès.
Mettre à jour le mode de schéma pour un registre de schémas
Console
Pour mettre à jour le mode de schéma pour l'ensemble du registre de schémas, procédez comme suit :
- Dans la console Google Cloud , accédez à la page Registres de schémas.
Accéder aux registres de schémas
La liste des registres de schémas de votre projet s'affiche.
- Cliquez sur le nom du registre de schémas pour lequel vous souhaitez modifier le mode de schéma.
La page Détails du registre de schémas s'ouvre.
- Dans la section principale des détails du registre, recherchez le paramètre Mode schéma, puis cliquez sur l'icône Modifier à côté.
La page Mode d'édition du schéma s'ouvre.
- Dans le menu déroulant Mode Schéma, sélectionnez la valeur.
Pour en savoir plus sur ces valeurs, consultez À propos du mode Schéma.
- Cliquez sur Enregistrer.
gcloud
Pour mettre à jour le mode de schéma d'un registre de schémas, utilisez la commande gcloud alpha managed-kafka schema-registries update :
gcloud alpha managed-kafka schema-registries update SCHEMA_REGISTRY_ID \
--location=LOCATION \
--mode=MODE_TYPE
SCHEMA_REGISTRY_ID: ID du registre de schémas à mettre à jour.LOCATION: région du registre de schémas à mettre à jour.MODE_TYPE: nouveau mode de schéma. Les valeurs valides sont les suivantes :READWRITEREADONLY
Exemple :
Pour mettre à jour le mode de schéma du registre de schémas test-registry dans la région us-central1 sur READONLY, exécutez la commande suivante :
gcloud alpha managed-kafka schema-registries update test-registry \
--location=us-central1 \
--mode=READONLY
REST
La demande doit être authentifiée à l'aide d'un jeton d'accès dans l'en-tête Authorization. Pour obtenir un jeton d'accès pour les identifiants par défaut actuels de l'application :
gcloud auth application-default print-access-token.
Pour mettre à jour le mode de schéma, envoyez une requête PUT au point de terminaison de l'API REST pour le registre de schémas à l'aide de la méthode projects.locations.schemaRegistries.contexts.mode.update.
Mettre à jour le mode de schéma pour le registre de schémas avec un contexte par défaut :
PUT https://managedkafka.googleapis.com/v1main/projects/PROJECT_ID/locations/LOCATION/schemaRegistries/SCHEMA_REGISTRY_ID/mode
Remplacez les paramètres de chemin d'accès suivants :
PROJECT_ID: ID de votre projet Google Cloud.LOCATION: région où se trouve le registre de schémas.SCHEMA_REGISTRY_ID: ID unique du registre de schémas.
Corps de la requête :
Incluez un objet JSON dans le corps de la requête pour spécifier les détails du mode.
{ "mode": "MODE_TYPE" }
Remplacez MODE_TYPE par l'une des options de chaîne valides pour le mode :
READWRITEREADONLY
En cas de succès, l'API renvoie un code d'état 200 OK et un corps de réponse contenant la représentation JSON de la configuration du mode mis à jour.
Pour en savoir plus, consultez la documentation sur l'API REST.
Mettre à jour le mode de schéma pour un sujet
Console
Pour modifier le mode de schéma d'un sujet spécifique, procédez comme suit :
- Dans la console Google Cloud , accédez à la page Registres de schémas.
- Cliquez sur le nom du registre de schémas contenant le sujet.
La page Détails du registre de schémas s'ouvre.
- Dans le tableau Sujets dans ce registre de schémas, cliquez sur le nom du sujet pour lequel vous souhaitez modifier le mode de schéma.
- Recherchez le paramètre Mode Schéma pour le sujet, puis cliquez sur l'icône Modifier à côté.
La page Mode d'édition du schéma s'ouvre.
- Dans le menu déroulant Mode Schéma, sélectionnez la valeur.
Si vous choisissez une valeur ici, elle remplacera le paramètre au niveau du registre pour ce sujet spécifique.
Pour en savoir plus sur ces valeurs, consultez À propos du mode schéma.
- Cliquez sur Enregistrer.
gcloud
Pour mettre à jour le mode de schéma d'un sujet, utilisez la commande gcloud alpha managed-kafka schema-registries subject update :
gcloud alpha managed-kafka schema-registries subject update SUBJECT_NAME \
--schema-registry=SCHEMA_REGISTRY_ID \
--location=LOCATION \
--mode=MODE_TYPE
SUBJECT_NAME: nom du sujet à mettre à jour.SCHEMA_REGISTRY_ID: ID du registre de schémas contenant le sujet.LOCATION: région du registre de schémas contenant le sujet.MODE_TYPE: nouveau mode de schéma. Les valeurs valides sont les suivantes :READWRITEREADONLY
Exemple :
Pour mettre à jour le mode schéma du sujet test-subject dans le registre de schémas test-registry de la région us-central1 sur READONLY, exécutez la commande suivante :
gcloud alpha managed-kafka schema-registries subject update test-subject \
--schema-registry=test-registry \
--location=us-central1 \
--mode=READONLY
REST
La demande doit être authentifiée à l'aide d'un jeton d'accès dans l'en-tête Authorization. Pour obtenir un jeton d'accès pour les identifiants par défaut actuels de l'application :
gcloud auth application-default print-access-token.
Pour mettre à jour le mode de schéma d'un sujet, envoyez une requête PUT au point de terminaison de l'API REST pour un sujet spécifique à l'aide de la méthode projects.locations.schemaRegistries.contexts.mode.update.
Mettre à jour le mode de schéma pour un sujet dans le contexte par défaut :
PUT https://managedkafka.googleapis.com/v1main/projects/PROJECT_ID/locations/LOCATION/schemaRegistries/SCHEMA_REGISTRY_ID/mode/SUBJECT_NAME
Remplacez les paramètres de chemin d'accès suivants :
PROJECT_ID: ID de votre projet Google Cloud.LOCATION: région où se trouve le registre de schémas.SCHEMA_REGISTRY_ID: ID unique du registre de schémas.SUBJECT_NAME: nom du sujet.
Corps de la requête :
Incluez un objet JSON dans le corps de la requête pour spécifier les détails du mode.
{ "mode": "MODE_TYPE" }
Remplacez MODE_TYPE par l'une des options de chaîne valides pour le mode :
READWRITEREADONLY
Exemple : Définissez le mode de schéma du sujet user_events sur Readonly dans le contexte par défaut :
Demande envoyée à PUT https://managedkafka.googleapis.com/v1main/projects/test-gcp-project/locations/us-east1/schemaRegistries/main_registry/mode/user_events
Avec corps :
{ "mode": "READONLY" }
Si l'opération réussit, l'API renvoie un code d'état 200 OK et un corps de réponse contenant la représentation JSON de la ressource de sujet ou de contexte mise à jour reflétant cette modification.
Mettre à jour le mode schéma pour un sujet dans un contexte spécifique :
PUT https://managedkafka.googleapis.com/v1main/projects/PROJECT_ID/locations/LOCATION/schemaRegistries/SCHEMA_REGISTRY_ID/contexts/CONTEXT_NAME/mode/SUBJECT_NAME
Remplacez les paramètres de chemin d'accès suivants :
PROJECT_ID: ID de votre projet Google Cloud.LOCATION: région où se trouve le registre de schémas.SCHEMA_REGISTRY_ID: ID unique du registre de schémas.CONTEXT_NAME: nom du contexte.SUBJECT_NAME: nom du sujet.
Corps de la requête :
Incluez un objet JSON dans le corps de la requête pour spécifier les détails du mode.
{ "mode": "MODE_TYPE" }
Remplacez MODE_TYPE par l'une des options de chaîne valides pour le mode :
READWRITEREADONLY
Exemple : Définissez le mode de schéma du sujet user_events sur Readonly dans le contexte test_context :
Demande envoyée à PUT https://managedkafka.googleapis.com/v1main/projects/test-gcp-project/locations/us-east1/schemaRegistries/main_registry/contexts/test_context/mode/user_events
Avec corps :
{ "mode": "READONLY" }
Si l'opération réussit, l'API renvoie un code d'état 200 OK et un corps de réponse contenant la représentation JSON de la ressource de sujet ou de contexte mise à jour reflétant cette modification.
Pour en savoir plus, consultez la documentation sur l'API REST.