Nesta página, você vai aprender a configurar uma conta de serviço e as chaves de criptografia gerenciadas pelo cliente, além de saber como criar uma instância que usa uma chave de criptografia gerenciada pelo cliente criada manualmente. Para saber mais sobre como usar chaves de criptografia gerenciadas pelo cliente com o Cloud SQL, consulte Visão geral das chaves de criptografia gerenciadas pelo cliente.
Antes de começar
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
- Verifique se você tem o papel Administrador do Cloud SQL em sua conta de usuário.
-
Enable the Cloud Key Management Service API.
-
Enable the Cloud SQL Admin API.
Fluxo de trabalho para criar uma instância do Cloud SQL com CMEK
- Somente usuários da gcloud e da API: crie uma conta de serviço para cada projeto que exige chaves de criptografia gerenciadas pelo cliente.
- Crie um keyring e uma chave e defina o local de cada chave. O local é a região do Google Cloud.
- Somente usuários da gcloud e da API: conceda à conta de serviço o acesso à chave.
- Anote o ID da chave (KMS_KEY_ID), o local da chave (GCP_REGION) e o ID do keyring (KMS_KEYRING_ID).
- Acesse um projeto e crie uma instância do Cloud SQL com as seguintes opções:
- O mesmo local da chave de criptografia gerenciada pelo cliente
- A configuração de chave gerenciada pelo cliente
- O ID da chave de criptografia gerenciada pelo cliente
Sua instância do Cloud SQL agora está ativada com CMEK.
Crie uma conta de serviço
Você precisa criar uma conta de serviço para cada projeto que exige chaves de criptografia gerenciadas pelo cliente.
Para permitir que um usuário gerencie contas de serviço, conceda um dos seguintes papéis:
- Usuário da conta de serviço (
roles/iam.serviceAccountUser
): inclui permissões para listar contas de serviço, acessar detalhes sobre uma conta de serviço e representar uma conta de serviço. - Administrador da conta de serviço (
roles/iam.serviceAccountAdmin
): inclui permissões para listar contas de serviço e acessar detalhes sobre uma conta de serviço. Também inclui permissões para criar, atualizar e excluir contas de serviço, e para visualizar ou alterar a política do Cloud SQL para PostgreSQL em uma conta de serviço.
No momento, só é possível usar comandos da CLI gcloud para criar o tipo de conta de serviço que você precisa para chaves de criptografia gerenciadas pelo cliente. Se você estiver usando o Console, o Cloud SQL criará automaticamente essa conta de serviço para você.
gcloud
gcloud beta services identity create \ --service=sqladmin.googleapis.com \ --project=PROJECT_ID
Terraform
Para criar uma conta de serviço, use um recurso do Terraform.
Aplique as alterações
Para aplicar a configuração do Terraform em um projeto do Google Cloud, conclua as etapas nas seções a seguir.
Preparar o Cloud Shell
- Inicie o Cloud Shell.
-
Defina o projeto padrão do Google Cloud em que você quer aplicar as configurações do Terraform.
Você só precisa executar esse comando uma vez por projeto, e ele pode ser executado em qualquer diretório.
export GOOGLE_CLOUD_PROJECT=PROJECT_ID
As variáveis de ambiente serão substituídas se você definir valores explícitos no arquivo de configuração do Terraform.
Preparar o diretório
Cada arquivo de configuração do Terraform precisa ter o próprio diretório, também chamado de módulo raiz.
-
No Cloud Shell, crie um diretório e um novo
arquivo dentro dele. O nome do arquivo precisa ter a extensão
.tf
, por exemplo,main.tf
. Neste tutorial, o arquivo é chamado demain.tf
.mkdir DIRECTORY && cd DIRECTORY && touch main.tf
-
Se você estiver seguindo um tutorial, poderá copiar o exemplo de código em cada seção ou etapa.
Copie o exemplo de código no
main.tf
recém-criado.Se preferir, copie o código do GitHub. Isso é recomendado quando o snippet do Terraform faz parte de uma solução de ponta a ponta.
- Revise e modifique os parâmetros de amostra para aplicar ao seu ambiente.
- Salve as alterações.
-
Inicialize o Terraform. Você só precisa fazer isso uma vez por diretório.
terraform init
Opcionalmente, para usar a versão mais recente do provedor do Google, inclua a opção
-upgrade
:terraform init -upgrade
Aplique as alterações
-
Revise a configuração e verifique se os recursos que o Terraform vai criar ou
atualizar correspondem às suas expectativas:
terraform plan
Faça as correções necessárias na configuração.
-
Para aplicar a configuração do Terraform, execute o comando a seguir e digite
yes
no prompt:terraform apply
Aguarde até que o Terraform exiba a mensagem "Apply complete!".
- Abra seu projeto do Google Cloud para ver os resultados. No console do Google Cloud, navegue até seus recursos na IU para verificar se foram criados ou atualizados pelo Terraform.
O comando anterior retorna um nome de conta de serviço. Você usa esse nome de conta de serviço durante o procedimento em Como conceder acesso à chave para a conta de serviço.
Crie uma chave
É possível criar a chave no mesmo projeto do Google Cloud que a instância do Cloud SQL ou em um projeto diferente do usuário. O local do keyring do Cloud KMS precisa corresponder à região em que você quer criar a instância do Cloud SQL. Uma chave de região global ou de várias regiões não funcionará. A solicitação de criação de instância do Cloud SQL falhará se as regiões não corresponderem.
Para criar uma chave do Cloud KMS:
Console
-
No console do Google Cloud, acesse a página Gerenciamento de chaves.
- Clique em Criar keyring.
- Adicione um nome do keyring. Anote esse nome porque você precisa dele para conceder à chave o acesso à conta de serviço.
- Adicione um local de keyring.
- Clique em Criar. A página Criar chave é aberta.
- Adicione um nome de chave.
- Selecione uma Finalidade (simétrica ou assimétrica).
- Selecione um Período de rotação e A partir da data.
- Clique em Criar.
- Na tabela Chaves, clique nos três pontos na última coluna e selecione Copiar ID do recurso. Se preferir, anote o ID. É o ID KMS_KEY_ID. Você precisa do KMS_KEY_ID para conceder o acesso de chave à conta de serviço.
gcloud
- Crie um novo keyring.
Anote esse nome porque você precisa dele para conceder o acesso de chave à conta de serviço.gcloud kms keyrings create KMS_KEYRING_ID \ --location=GCP_REGION
- Crie uma chave no keyring.
Anote esse nome porque você precisa dele para conceder o acesso de chave à conta de serviço.gcloud kms keys create KMS_KEY_ID \ --location=GCP_REGION \ --keyring=KMS_KEYRING_ID \ --purpose=encryption
Terraform
Para criar um keyring, use um recurso do Terraform.
Para criar uma chave, use um recurso do Terraform.
Aplique a configuração do Terraform:
terraform apply
Conceda à conta de serviço acesso a chave
Ao criar a instância do Cloud SQL com a CMEK, você só precisará executar este procedimento se estiver usando a gcloud ou a API. Siga este procedimento se tiver problemas de permissão após a criação da instância.
Para conceder acesso à conta de serviço:
Console
-
No console do Google Cloud, acesse a página Gerenciamento de chaves.
- Para selecionar o projeto que hospeda a chave, use o seletor de projeto.
- Clique no nome do keyring;
- Clique no nome da chave.
- Clique na guia Permissões.
- Para abrir o painel, clique em Conceder acesso.
- Informe a conta de serviço como principal e selecione "Criptografador/Descriptografador do Cloud KMS CryptoKey" como papel.
- Clique em Salvar.
Como alternativa, também é possível concedê-la na página do IAM do projeto.
gcloud
gcloud kms keys add-iam-policy-binding KMS_KEY_ID \ --location=GCP_REGION \ --keyring=KMS_KEYRING_ID \ --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-cloud-sql.iam.gserviceaccount.com \ --role=roles/cloudkms.cryptoKeyEncrypterDecrypter
Terraform
Para conceder acesso à chave, use um recurso do Terraform.
Aplique a configuração do Terraform:
terraform apply
Criar uma instância do Cloud SQL com CMEK
Para criar uma instância com chaves de criptografia gerenciadas pelo cliente:
Console
-
No console do Google Cloud, acesse a página Instâncias do Cloud SQL.
- Clique em Criar instância.
- Escolha o mecanismo do banco de dados.
- Digite um nome para a instância. Não inclua informações confidenciais ou de identificação pessoal no nome da sua instância. Ela é visível externamente. Não é necessário incluir o ID do projeto no nome da instância. Isso é feito automaticamente quando necessário, como nos arquivos de registro.
- Digite a senha do usuário
'root'@'%'
. - Configure a região para a instância. Coloque a instância na mesma região que os recursos que a acessam. Na maioria dos casos, você não precisa especificar uma zona.
- Na seção Opções de configuração, selecione todas as opções até chegar a Tipo de máquina e armazenamento.
- Expanda Tipo de máquina e armazenamento.
- Na seção Criptografia, selecione Chave gerenciada pelo cliente.
- Selecione a chave KMS no menu suspenso ou insira manualmente o KMS_KEY_ID. São exibidas somente as chaves do KMS no mesmo projeto e na mesma região que a instância. A versão principal da chave é usada. Portanto, se uma versão for fornecida no nome da chave, ela será cortada. Para escolher uma chave KMS pertencente a um projeto diferente, mas na mesma região, selecione Não encontra sua chave? Insira o ID de recurso da chave e o KMS_KEY_ID registrado anteriormente.
- Uma mensagem será exibida se a conta de serviço não tiver permissão para
criptografar/descriptografar com a chave selecionada. Se isso acontecer, clique em Conceder para
conceder à conta de serviço o
papel
roles/cloudkms.cryptoKeyEncrypterDecrypter>
do IAM na chave KMS selecionada. - Depois de selecionar as opções de configuração, clique em Criar.
- Você verá uma mensagem explicando as implicações do uso da chave de criptografia gerenciada pelo cliente. Leia e confirme para prosseguir com a criação da instância.
gcloud
gcloud sql instances create INSTANCE_NAME \ --project=PROJECT_ID \ --disk-encryption-key=KMS_KEY_ID \ --database-version=VERSION \ --cpu=NUMBER_CPUS \ --memory=MEMORY_SIZE \ --region=REGION \ --root-password=INSERT-PASSWORD-HERE
Terraform
Para criar uma instância com o CMEK, use um recurso do Terraform.
Excluir as alterações
Para excluir as mudanças, faça o seguinte:
- Para desativar a proteção contra exclusão, no arquivo de configuração do Terraform, defina o argumento
deletion_protection
comofalse
.deletion_protection = "false"
- Para aplicar a configuração atualizada do Terraform, execute o comando a seguir e digite
yes
no prompt:terraform apply
-
Remova os recursos aplicados anteriormente com a configuração do Terraform executando o seguinte comando e inserindo
yes
no prompt:terraform destroy
REST v1
Para criar uma instância com chaves de criptografia gerenciadas pelo cliente, insiradiskEncryptionConfiguration
no comando.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- project-id: o ID do projeto
- instance-id: o ID da instância
- region: a região
- database-version: string de versão de enumeração (por exemplo, POSTGRES_12)
- kms-resource-id: o ID que você recebeu da criação de uma chave.
Método HTTP e URL:
POST https://sqladmin.googleapis.com/v1/projects/project-id/instances
Corpo JSON da solicitação:
{ "name":"instance-id", "region":"region", "databaseVersion": "database-version", "diskEncryptionConfiguration" : { "kmsKeyName" : "kms-resource-id" }, "settings": { "backupConfiguration": { "pointInTimeRecoveryEnabled": true, "enabled":true } } }
Para enviar a solicitação, expanda uma destas opções:
Você receberá uma resposta JSON semelhante a esta:
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/v1/projects/project-id/instances", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-16T02:32:12.281Z", "operationType": "UPDATE", "name": "operation-id", "targetId": "instance-id", "selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id/operations/operation-id", "targetProject": "project-id" }
REST v1beta4
Para criar uma instância com chaves de criptografia gerenciadas pelo cliente, insiradiskEncryptionConfiguration
no comando.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- project-id: o ID do projeto
- instance-id: o ID da instância
- region: a região
- database-version: string de versão de enumeração (por exemplo, POSTGRES_12)
- kms-resource-id: o ID que você recebeu da criação de uma chave.
Método HTTP e URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances
Corpo JSON da solicitação:
{ "name":"instance-id", "region":"region", "databaseVersion": "database-version", "diskEncryptionConfiguration" : { "kmsKeyName" : "kms-resource-id" }, "settings": { "backupConfiguration": { "pointInTimeRecoveryEnabled": true, "enabled":true } } }
Para enviar a solicitação, expanda uma destas opções:
Você receberá uma resposta JSON semelhante a esta:
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-16T02:32:12.281Z", "operationType": "UPDATE", "name": "operation-id", "targetId": "instance-id", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/operations/operation-id", "targetProject": "project-id" }
Criar um backup para uma instância ativada para CMEK
Quando você cria um backup de uma instância do Cloud SQL, o backup é criptografado com a mesma versão de chave primária que a chave gerenciada pelo cliente da instância principal.
Consulte Como criar e gerenciar backups automáticos e sob demanda.
Você verá uma mensagem no formulário Criar um backup que diz: "Seu backup será criptografado com a versão principal da chave de criptografia gerenciada pelo cliente desta instância. Se esta versão da chave for destruída ou desativada, todos os dados de backup criptografados com ela serão perdidos permanentemente. É possível verificar a versão principal da chave no Cloud KMS."
Na página de backups, a lista de backups ativados com chaves de criptografia gerenciadas pelo cliente tem duas colunas extras. Uma coluna mostra que o backup é de uma instância ativada para CMEK. Outra coluna exibe a versão da chave usada para criptografar o backup.
Criar uma réplica para uma instância ativada para CMEK
Quando você cria uma réplica de leitura de uma instância do Cloud SQL na mesma região, ela herda a mesma chave de criptografia gerenciada pelo cliente que a instância pai. Se você criar uma réplica de leitura em uma região diferente, receberá uma nova lista de chaves de criptografia gerenciadas pelo cliente. Cada região usa seu próprio conjunto de chaves.
Consulte Como criar réplicas de leitura.
Na página Criar réplica de leitura, você verá as seguintes informações:
- A Criptografia mostra gerenciado pelo cliente.
- A chave de criptografia da réplica é exibida.
- A mensagem "Sua réplica será criptografada com a chave gerenciada pelo cliente da instância principal" será exibida. Se alguém destruir essa chave, todos os dados criptografados com ela serão permanentemente perdidos."
Para uma réplica entre regiões, você verá a seguinte mensagem:
"Sua réplica entre regiões será criptografada com a chave gerenciada pelo cliente selecionada. Se alguém destruir essa chave, todos os dados criptografados com ela serão perdidos permanentemente."
Criar um clone de uma instância ativada para CMEK
Quando você cria um clone da instância do Cloud SQL, ele herda a mesma chave de criptografia gerenciada pelo cliente que foi usada para criptografar a instância de origem.
Veja Como clonar instâncias.
Na página Criar clone, você verá as seguintes informações:
- A Criptografia mostra gerenciado pelo cliente.
- A chave de criptografia do clone é exibida.
- Há uma mensagem dizendo "Seu clone será criptografado com a chave gerenciada pelo cliente da instância de origem. Se alguém destruir essa chave, todos os dados criptografados com ela serão permanentemente perdidos."
Visualizar informações da chave em uma instância ativada para CMEK
Depois de criar uma instância do Cloud SQL, consulte a lista de instâncias ou a página de visão geral da instância para ver se ela foi criada por meio de uma chave de criptografia gerenciada pelo cliente. Os detalhes também mostram a chave usada para criar a instância.
-
No console do Google Cloud, acesse a página Instâncias do Cloud SQL.
- Na lista "Instâncias", role a tela para a direita até ver a coluna Criptografia. Nessa coluna, você verá Gerenciado pelo Google e Gerenciado pelo cliente.
- Clique no nome de uma instância para abrir a página Visão geral. A chave de criptografia gerenciada pelo cliente está listada no painel Configuração.
Criptografar novamente uma instância ou réplica atual ativada para CMEK
É possível criptografar novamente as instâncias e réplicas atuais do Cloud SQL com a versão mais recente da chave primária. Para mais informações sobre como criptografar novamente sua instância ou réplica atual ativada para CMEK, consulte Sobre chaves.
Adquirir a nova versão da chave primária
Para criptografar novamente sua instância ou réplica com uma nova versão, você precisa da nova versão da chave primária. Se você precisar de uma nova versão da chave para as instâncias, será necessário fazer a rotação da chave usando o Cloud Key Management Service. Para fazer isso, consulte Girar uma chave.
Após a conclusão da rotação da chave, aguarde até que a alteração da chave primária seja propagada para criptografar novamente as instâncias. Se a alteração da versão da chave não for consistente, a instância continuará usando a versão antiga da chave após a nova criptografia. Para mais informações, consulte Consistência das versões de chave.
Criptografar novamente sua instância ativada para CMEK
Depois que a rotação da chave for concluída, criptografe novamente sua instância ou réplica atual ativada para CMEK.
Console
-
No console do Google Cloud, acesse a página Instâncias do Cloud SQL.
- Para abrir a página Visão geral de uma instância, clique no nome da instância.
- Na seção Configuração, clique em Criptografar novamente uma instância.
- Na caixa de diálogo exibida, confirme a seleção clicando em Criptografar novamente.
gcloud
Para criptografar novamente a instância ou réplica, execute o seguinte comando:
gcloud sql instances reencrypt INSTANCE_NAME
INSTANCE_NAME
pelo nome da instância ou réplica que
você está criptografando novamente.
REST v1
Para criptografar novamente sua instância ou réplica com a nova chave, execute o seguinte comando:
POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID/reencrypt
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- PROJECT_ID: o ID do projeto
- INSTANCE_ID: o ID da instância
Método HTTP e URL:
POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID/reencrypt
Para enviar a solicitação, expanda uma destas opções:
Você receberá uma resposta JSON semelhante a esta:
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/v1/projects/project-id
/instances/instance-id
", "status": "PENDING", "user": "user@example.com", "insertTime": "2023-06-28T21:19:09.503Z", "operationType": "REENCRYPT", "name": "operation-id
", "targetId": "instance-id
", "selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id
/operations/operation-id
", "targetProject": "project-id
" }
REST v1beta4
Para criptografar novamente a instância ou réplica com a nova chave, execute o seguinte comando:POST https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID/reencrypt
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- PROJECT_ID: o ID do projeto
- INSTANCE_ID: o ID da instância
Método HTTP e URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID/reencrypt
Para enviar a solicitação, expanda uma destas opções:
Você receberá uma resposta JSON semelhante a esta:
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id
/instances/instance-id
", "status": "PENDING", "user": "user@example.com", "insertTime": "2023-06-28T21:22:13.663Z", "operationType": "REENCRYPT", "name": "operation-id
", "targetId": "instance-id
", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id
/operations/operation-id
", "targetProject": "project-id
" }
Backups automáticos de nova criptografia
Quando você criptografa novamente uma instância primária com uma nova versão da chave primária, o Cloud SQL cria automaticamente um backup sob demanda chamado "backup de nova criptografia".
Na lista de backups da
instância do Cloud SQL, o backup de nova criptografia está listado como o tipoon-demand
e rotulado com backup created automatically for data before CMEK re-encryption
.
Assim como outros backups sob demanda, os backups de nova criptografia são mantidos até você excluí-los ou excluir a instância.
Limitações de nova criptografia
Ao criptografar novamente uma instância, observe as seguintes limitações:
- Não é possível executar outras operações de administrador na instância enquanto a operação de nova criptografia está em andamento.
- A operação de nova criptografia aciona uma inatividade que depende do tamanho da instância ou da réplica.
- As réplicas de uma instância não são criptografadas novamente quando ela é criptografada. É necessário criptografar novamente cada réplica separadamente.
- Quando você criptografa novamente sua instância, os backups não são criptografados novamente de maneira automática com a nova versão da chave. Para restaurar o backup ou a recuperação pontual para um horário posterior ao backup, mantenha a versão da chave do Cloud KMS com que o backup foi criptografado.
Para solução de problemas, consulte a Tabela de solução de problemas de nova criptografia.
Usar o Cloud External Key Manager (Cloud EKM)
Para proteger dados em instâncias do Cloud SQL, use chaves que você gerencia em um parceiro de gerenciamento de chaves externo compatível. Para mais informações, consulte Gerenciador de chaves externo do Cloud, incluindo a seção Considerações.
Quando achar que é a hora de criar uma chave do Cloud EKM, consulte Como gerenciar chaves do Cloud EKM. Depois que a chave for criada, informe o nome da chave ao criar uma instância do Cloud SQL.
É possível usar as justificativas de acesso às chaves (KAJ, na sigla em inglês) como parte do Cloud EKM. As KAJ permitem que você veja o motivo de cada solicitação do Cloud EKM. Além disso, com base na justificativa fornecida, é possível aprovar ou negar automaticamente uma solicitação. Para saber mais, consulte a Visão geral.
Portanto, as KAJ fornecem controle extra sobre seus dados fornecendo uma justificativa para cada tentativa de descriptografia dos dados.
O Google não tem controle sobre a disponibilidade de chaves em um sistema parceiro de gerenciamento de chaves externo.
Desativar e reativar versões de chave
Veja os seguintes tópicos:
Resolver problemas
Nesta seção, descrevemos as ações possíveis quando você receber uma mensagem de erro ao configurar ou usar instâncias ativadas para CMEK.
As operações de administrador do Cloud SQL (como criação, clonagem ou atualização) podem falhar devido a erros do Cloud KMS e ausência de papéis ou permissões. Motivos comuns de falha incluem uma versão ausente da chave do Cloud KMS, uma versão da chave do Cloud KMS desativada ou destruída, permissões de IAM insuficientes para acessar a versão da chave do Cloud KMS ou a versão da chave do Cloud KMS está em uma região diferente da instância do Cloud SQL. Use a seguinte tabela de solução de problemas para diagnosticar e resolver problemas comuns.
Tabela de solução de problemas de chaves de criptografia gerenciadas pelo cliente
Para este erro... | O problema pode ser... | Tente o seguinte... |
---|---|---|
Conta de serviço por produto, por projeto não encontrada | O nome da conta de serviço está incorreto. | Certifique-se de ter criado uma conta de serviço para o projeto de usuário correto.
|
Não é possível conceder acesso à conta de serviço | A conta de usuário não tem permissão para conceder acesso a esta versão de chave. | Adicione a função Administrador da organização em sua conta de usuário ou serviço.
|
A versão da chave do Cloud KMS foi destruída | A versão da chave foi destruída. | Se a versão da chave for destruída, você não poderá usá-la para criptografar ou descriptografar dados. |
A versão da chave do Cloud KMS está desativada | A versão da chave está desativada. | Reative a versão da chave do Cloud KMS.
|
Permissão insuficiente para usar a chave do Cloud KMS | O papel cloudkms.cryptoKeyEncrypterDecrypter está ausente na conta de usuário ou serviço que você está usando para executar operações em instâncias do Cloud SQL ou a versão da chave do Cloud KMS não existe. |
No projeto do Google Cloud que hospeda a chave, adicione o papel cloudkms.cryptoKeyEncrypterDecrypter à sua conta de usuário ou serviço.
ACESSAR A PÁGINA "CONTAS DE IAM" Se o papel já tiver sido concedido à sua conta, consulte Como criar uma chave para saber como criar uma nova versão da chave. Consulte a observação. |
A chave do Cloud KMS não foi encontrada | A versão da chave não existe. | Crie uma nova versão de chave. Consulte Como criar uma chave. Consulte a observação. |
A instância do Cloud SQL e a versão da chave do Cloud KMS estão em diferentes regiões | A versão da chave do Cloud KMS e a instância do Cloud SQL precisam estar na mesma região. Ela não funcionará se a versão da chave do Cloud KMS estiver em uma região global ou em várias regiões. | Crie uma versão de chave na mesma região em que você quer criar instâncias. Consulte Como criar uma chave. Consulte a observação. |
A versão da chave do Cloud KMS é restaurada, mas a instância ainda está suspensa | A versão da chave está desativada ou não concede as permissões adequadas. | Reative a versão da chave e conceda o papel cloudkms.cryptoKeyEncrypterDecrypter à conta de usuário ou serviço no projeto do Google Cloud que hospeda a chave. |
Tabela de solução de problemas de nova criptografia
Para este erro... | O problema pode ser... | Tente o seguinte... |
---|---|---|
A nova criptografia de recursos do CMEK falhou porque a chave do Cloud KMS está inacessível. Verifique se a versão da chave primária está ativada e se a permissão foi concedida corretamente. | A versão da chave está desativada ou não concede as permissões adequadas. | Reative a versão da chave do Cloud KMS: ACESSAR A PÁGINA "CHAVES DE CRIPTOGRAFIA" No projeto do Google Cloud que hospeda a chave, confirme se o papel |
A nova criptografia de recursos do CMEK falhou devido a um erro interno do servidor. Tente de novo mais tarde | Há um erro interno do servidor. | Tente fazer a criptografia novamente. Para mais informações, consulte Criptografar novamente uma réplica ou instância atual ativada para CMEK |
A seguir
- Configurar o acesso à instância.
- Conecte-se à instância com um cliente.
- Crie um banco de dados na instância.
- Importar dados para a instância.
- Criar usuários na instância.
- Saiba mais sobre configurações de instância.
- Saiba como adicionar as justificações de acesso às chaves.