O modo de esquema define se um registro de esquema ou um assunto específico permite mudanças, como gravar ou editar esquemas.
Os valores aceitos para o modo de esquema são Somente leitura e Leitura/gravação.
O modo de esquema é gerenciado como um objeto JSON que contém pares de chave-valor. Por exemplo, confira uma amostra:
{ "mode": "READWRITE" }Se não estiver definido explicitamente no nível do registro de esquema, o modo de esquema será Leitura e gravação por padrão.
Se um modo de esquema não for especificado explicitamente no nível do assunto, ele vai herdar o valor do registro de esquema.
As configurações definidas no nível do assunto substituem as definidas no nível do registro de esquema.
Para mais informações sobre o modo de esquema, incluindo os valores dele, consulte Modo de esquema.
Papéis e permissões necessárias para atualizar o modo de esquema
Para receber as permissões necessárias
para atualizar o modo de esquema de um registro ou assunto de esquema,
peça ao administrador para conceder a você o
papel do IAM de Editor do registro de esquema do Kafka gerenciado (roles/managedkafka.schemaRegistryEditor)
no projeto.
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Essa função predefinida contém as permissões necessárias para atualizar o modo de esquema de um registro ou assunto de esquema. Para acessar as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
As seguintes permissões são necessárias para atualizar o modo de esquema de um registro ou assunto:
-
Conceda a seguinte permissão no recurso em que você quer atualizar o modo:
managedkafka.mode.update
Essas permissões também podem ser concedidas com funções personalizadas ou outros papéis predefinidos.
Para mais informações sobre os papéis predefinidos disponíveis para o serviço gerenciado para Apache Kafka, consulte a documentação de controle de acesso.
Atualizar o modo de esquema para um registro de esquema
Console
Para atualizar o modo de esquema de todo o registro de esquema, siga estas etapas:
- No console do Google Cloud , acesse a página Registros de esquema.
Acessar "Registros de esquema"
Uma lista dos registros de esquema no seu projeto é exibida.
- Clique no nome do registro de esquema para o qual você quer atualizar o modo de esquema.
A página Detalhes do registro de esquema é aberta.
- Na seção principal de detalhes do registro, encontre a configuração Modo de esquema e clique no ícone Editar ao lado dela.
A página Editar modo de esquema é aberta.
- No menu suspenso Modo de esquema, selecione o valor.
Para mais informações sobre esses valores, consulte Sobre o modo de esquema.
- Clique em Salvar.
gcloud
Para atualizar o modo de esquema de um registro de esquema, use o comando
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: o ID do registro de esquema a ser atualizado.LOCATION: a região do registro de esquema a ser atualizada.MODE_TYPE: o novo modo de esquema. Os valores válidos são:READWRITEREADONLY
Exemplo:
Para atualizar o modo de esquema do registro de esquema test-registry na região us-central1 para READONLY, execute o seguinte comando:
gcloud alpha managed-kafka schema-registries update test-registry \
--location=us-central1 \
--mode=READONLY
REST
A solicitação precisa ser autenticada com um token de acesso no cabeçalho Authorization. Para conseguir um token de acesso para o Application Default Credentials:
gcloud auth application-default print-access-token.
Para atualizar o modo de esquema, faça uma solicitação PUT ao
endpoint de API REST para o registro de esquema usando o
método projects.locations.schemaRegistries.contexts.mode.update.
Como atualizar o modo de esquema para o registro de esquema com um contexto padrão:
PUT https://managedkafka.googleapis.com/v1main/projects/PROJECT_ID/locations/LOCATION/schemaRegistries/SCHEMA_REGISTRY_ID/mode
Substitua os seguintes parâmetros de caminho:
PROJECT_ID: é seu ID do projeto no Google Cloud.LOCATION: a região em que o registro de esquema existe.SCHEMA_REGISTRY_ID: o ID exclusivo do registro de esquema.
Corpo da solicitação:
Inclua um objeto JSON no corpo da solicitação especificando os detalhes do modo.
{ "mode": "MODE_TYPE" }
Substitua MODE_TYPE por uma das opções de string válidas para o modo:
READWRITEREADONLY
Se a solicitação for bem-sucedida, a API vai retornar um código de status 200 OK e um corpo de resposta contendo a representação JSON da configuração de modo atualizada.
Para mais informações, consulte a documentação da API REST.
Atualizar o modo de esquema de um assunto
Console
Para atualizar o modo de esquema de um assunto específico, siga estas etapas:
- No console do Google Cloud , acesse a página Registros de esquema.
- Clique no nome do registro de esquema que contém o assunto.
A página Detalhes do registro de esquema é aberta.
- Na tabela Assuntos neste registro de esquema, clique no nome do assunto para o qual você quer atualizar o modo de esquema.
- Encontre a configuração Modo de esquema para o assunto e clique no ícone Editar ao lado dela.
A página Editar modo de esquema é aberta.
- No menu suspenso Modo de esquema, selecione o valor.
A escolha de um valor aqui substitui a configuração no nível do registro para esse assunto específico.
Para mais informações sobre esses valores, consulte Sobre o modo de esquema.
- Clique em Salvar.
gcloud
Para atualizar o modo de esquema de um assunto, use o comando
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: o nome do assunto a ser atualizado.SCHEMA_REGISTRY_ID: o ID do registro de esquema que contém o assunto.LOCATION: a região do registro de esquema que contém o assunto.MODE_TYPE: o novo modo de esquema. Os valores válidos são:READWRITEREADONLY
Exemplo:
Para atualizar o modo de esquema do assunto test-subject no registro de esquema test-registry na região us-central1 para READONLY, execute o seguinte comando:
gcloud alpha managed-kafka schema-registries subject update test-subject \
--schema-registry=test-registry \
--location=us-central1 \
--mode=READONLY
REST
A solicitação precisa ser autenticada com um token de acesso no cabeçalho Authorization. Para conseguir um token de acesso para o Application Default Credentials:
gcloud auth application-default print-access-token.
Para atualizar o modo de esquema de um assunto, faça uma solicitação PUT ao endpoint de API REST para um assunto específico usando o método projects.locations.schemaRegistries.contexts.mode.update.
Como atualizar o modo de esquema para um assunto no contexto padrão:
PUT https://managedkafka.googleapis.com/v1main/projects/PROJECT_ID/locations/LOCATION/schemaRegistries/SCHEMA_REGISTRY_ID/mode/SUBJECT_NAME
Substitua os seguintes parâmetros de caminho:
PROJECT_ID: é seu ID do projeto no Google Cloud.LOCATION: a região em que o registro de esquema existe.SCHEMA_REGISTRY_ID: o ID exclusivo do registro de esquema.SUBJECT_NAME: o nome do assunto.
Corpo da solicitação:
Inclua um objeto JSON no corpo da solicitação especificando os detalhes do modo.
{ "mode": "MODE_TYPE" }
Substitua MODE_TYPE por uma das opções de string válidas para o modo:
READWRITEREADONLY
Exemplo: defina o modo de esquema do assunto user_events como
Readonly no contexto padrão:
Solicitação para PUT https://managedkafka.googleapis.com/v1main/projects/test-gcp-project/locations/us-east1/schemaRegistries/main_registry/mode/user_events
Com corpo:
{ "mode": "READONLY" }
Se a solicitação for bem-sucedida, a API vai retornar um código de status 200 OK e um corpo de resposta contendo a representação JSON do assunto ou recurso de contexto atualizado que reflete essa mudança.
Atualizar o modo de esquema para um assunto em um contexto específico:
PUT https://managedkafka.googleapis.com/v1main/projects/PROJECT_ID/locations/LOCATION/schemaRegistries/SCHEMA_REGISTRY_ID/contexts/CONTEXT_NAME/mode/SUBJECT_NAME
Substitua os seguintes parâmetros de caminho:
PROJECT_ID: é seu ID do projeto no Google Cloud.LOCATION: a região em que o registro de esquema existe.SCHEMA_REGISTRY_ID: o ID exclusivo do registro de esquema.CONTEXT_NAME: o nome do contexto.SUBJECT_NAME: o nome do assunto.
Corpo da solicitação:
Inclua um objeto JSON no corpo da solicitação especificando os detalhes do modo.
{ "mode": "MODE_TYPE" }
Substitua MODE_TYPE por uma das opções de string válidas para o modo:
READWRITEREADONLY
Exemplo: defina o modo de esquema do assunto user_events como Readonly no contexto test_context:
Solicitação para PUT https://managedkafka.googleapis.com/v1main/projects/test-gcp-project/locations/us-east1/schemaRegistries/main_registry/contexts/test_context/mode/user_events
Com corpo:
{ "mode": "READONLY" }
Se a solicitação for bem-sucedida, a API vai retornar um código de status 200 OK e um corpo de resposta contendo a representação JSON do assunto ou recurso de contexto atualizado que reflete essa mudança.
Para mais informações, consulte a documentação da API REST.