Chaves de criptografia gerenciadas pelo cliente
Por padrão, o Google Cloud automaticamente criptografa os dados quando em repouso por meio de chaves de criptografia gerenciadas pelo Google. Caso você precise atender a requisitos regulatórios ou de conformidade específicos relacionados às chaves que protegem seus dados, use as chaves de criptografia gerenciadas pelo cliente (CMEKs) com as instâncias de Vertex AI Workbench.
Nesta página, descrevemos alguns benefícios específicos e limitações do uso de CMEK com o Vertex AI Workbench e mostramos como configurar uma nova instância do Vertex AI Workbench para usar CMEK.
Para informações sobre CMEK em geral, como quando e por que ativar, consulte Chaves de criptografia gerenciadas pelo cliente.
Benefícios de CMEK
Em geral, CMEK são mais úteis se você precisa de controle total sobre as chaves usadas para criptografar seus dados. Com a CMEK, você gerencia suas chaves no Cloud Key Management Service. Por exemplo, é possível alternar ou desativar uma chave ou configurar uma programação de rotação usando a API Cloud KMS.
Quando você executa uma instância do Vertex AI Workbench, ela é executada em uma máquina virtual (VM, na sigla em inglês) gerenciada pelo Vertex AI Workbench. Quando você ativa CMEK para uma instância de notebooks gerenciados pelo usuário, o Vertex AI Workbench usa a chave que você designou, em vez de uma chave gerenciada pelo Google, para criptografar dados nos discos de inicialização de VM.
A chave CMEK não criptografa metadados, como o nome e a região da instância, associados à sua instância do Vertex AI Workbench. Os metadados associados às instâncias do Vertex AI Workbench são sempre criptografados usando o mecanismo de criptografia padrão do Google.
Limitações de CMEK
Para diminuir a latência e evitar casos em que os recursos dependem de serviços distribuídos em vários domínios de falha, o Google recomenda que você proteja as instâncias regionais de notebooks gerenciados com chaves no mesmo local.
- É possível criptografar instâncias regionais do Vertex AI Workbench
usando chaves no mesmo local ou no local global. Por exemplo, é possível criptografar dados em um disco na zona
us-west1-a
usando uma chave emus-west1
ouglobal
. - Você pode criptografar instâncias globais usando chaves em qualquer local.
- Configurar o CMEK para o Vertex AI Workbench não configura automaticamente o CMEK para outros produtos do Google Cloud que você usa. Para usar CMEK para criptografar dados em outros produtos do Google Cloud, você precisa concluir uma configuração extra.
Configurar CMEK para sua instância do Vertex AI Workbench
Nas seções a seguir, descrevemos como criar um keyring e uma chave no Cloud Key Management Service, conceder à conta de serviço permissões de criptografia e descriptografia para a chave e criar uma instância de notebooks gerenciados que usa CMEK.
Antes de começar
Recomendamos o uso de uma configuração compatível com uma separação de tarefas. Para configurar o CMEK para o Vertex AI Workbench, é possível usar dois projetos separados do Google Cloud:
- Um projeto do Cloud KMS: um projeto para gerenciar a chave de criptografia
- Um projeto do Vertex AI Workbench: um projeto para acessar instâncias da Vertex AI Workbench e interagir com outros produtos do Google Cloud necessários para seu caso de uso
Se preferir, use um único projeto do Google Cloud. Para isso, use o mesmo projeto para todas as tarefas a seguir.
Configurar o projeto do Cloud KMS
- 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.
-
Enable the Cloud KMS API.
-
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.
-
Enable the Cloud KMS API.
Configurar o projeto Vertex AI Workbench
- 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.
-
Enable the Notebooks API.
-
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.
-
Enable the Notebooks API.
Configure a Google Cloud CLI
A CLI gcloud é necessária para algumas etapas nesta página e opcional para outras.Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Crie um keyring e uma chave.
Ao criar um keyring e uma chave, lembre-se dos seguintes requisitos:
Ao escolher o local do keyring, use
global
ou o local em que a instância do Vertex AI Workbench será.Certifique-se de criar o keyring e a chave no projeto do Cloud KMS.
Para criar um keyring e uma chave, consulte Criar chaves simétricas de criptografia.
Conceder permissões ao Vertex AI Workbench
Para usar a CMEK na sua instância do Vertex AI Workbench, conceda à instância do Vertex AI Workbench permissão para criptografar e descriptografar dados usando sua chave. Você concede essa permissão ao agente de serviço do projeto e à conta de serviço do Compute Engine.
Para encontrar as contas específicas do seu projeto do Vertex AI Workbench, use o console do Google Cloud.
No console do Google Cloud, abra a página IAM.
Selecione Incluir concessões de papel fornecidas pelo Google.
Encontre os participantes que correspondem aos seguintes formatos de endereço de e-mail. Anote os endereços de e-mail e use-os nas etapas a seguir.
O endereço de e-mail do agente de serviço do seu projeto é assim:
service-NOTEBOOKS_PROJECT_NUMBER@gcp-sa-notebooks.iam.gserviceaccount.com
O endereço de e-mail da conta de serviço do Compute Engine tem a seguinte aparência:
service-NOTEBOOKS_PROJECT_NUMBER@compute-system.iam.gserviceaccount.com
Substitua
NOTEBOOKS_PROJECT_NUMBER
pelo número do projeto do projeto do Vertex AI Workbench.Para conceder a essas contas permissão para criptografar e descriptografar dados usando sua chave, use o console do Google Cloud ou a CLI do Google Cloud.
Console
No Console do Google Cloud, acesse a página Chaves criptográficas.
Selecione o projeto do Cloud KMS.
Clique no nome do keyring que você criou em Criar um keyring e uma chave. A página Detalhes do keyring é aberta.
Marque a caixa de seleção da chave que você criou em Criar um keyring e uma chave. Se um painel de informações com o nome da sua chave ainda não estiver aberto, clique em Mostrar painel de informações.
No painel de informações, clique em
Adicionar membro. A caixa de diálogo Adicionar membros à sala "KEY_NAME" será aberta. Nessa caixa de diálogo, faça o seguinte:No campo Novos membros, insira o endereço de e-mail do agente de serviço do projeto:
service-NOTEBOOKS_PROJECT_NUMBER@gcp-sa-notebooks.iam.gserviceaccount.com
Na lista Selecionar um papel, clique em Cloud KMS e depois selecione o papel Criptografador/Ddescriptografador de CryptoKey do Cloud KMS.
Clique em Salvar.
Repita essas etapas para o agente de serviço do Compute Engine:
service-NOTEBOOKS_PROJECT_NUMBER@compute-system.iam.gserviceaccount.com
gcloud
Para conceder ao agente de serviço do seu projeto permissão para criptografar e descriptografar dados usando sua chave, execute o seguinte comando:
gcloud kms keys add-iam-policy-binding KEY_NAME \ --keyring=KEY_RING_NAME \ --location=REGION \ --project=KMS_PROJECT_ID \ --member=serviceAccount:service-NOTEBOOKS_PROJECT_NUMBER@gcp-sa-notebooks.iam.gserviceaccount.com \ --role=roles/cloudkms.cryptoKeyEncrypterDecrypter
Substitua:
KEY_NAME
: o nome da chave que você criou em Criar um keyring e uma chaveKEY_RING_NAME
: o keyring que você criou em Criar um keyring e uma chaveREGION
: a região em que você criou o keyringKMS_PROJECT_ID
: o ID do seu projeto do Cloud KMSNOTEBOOKS_PROJECT_NUMBER
: o número do projeto do Vertex AI Workbench, que você anotou na seção anterior como parte de um endereço de e-mail da conta de serviço.
Para conceder à conta de serviço do Compute Engine permissão para criptografar e descriptografar dados com a chave, execute o seguinte comando:
gcloud kms keys add-iam-policy-binding KEY_NAME \ --keyring=KEY_RING_NAME \ --location=REGION \ --project=KMS_PROJECT_ID \ --member=serviceAccount:service-NOTEBOOKS_PROJECT_NUMBER@compute-system.iam.gserviceaccount.com \ --role=roles/cloudkms.cryptoKeyEncrypterDecrypter
Criar uma instância do Vertex AI Workbench com CMEK
Depois de conceder permissão à instância do Vertex AI Workbench para criptografar e descriptografar dados usando a chave, crie uma instância do Vertex AI Workbench que criptografe dados usando essa chave.
O exemplo a seguir mostra como criptografar e descriptografar dados usando sua chave usando o console do Google Cloud.
Para criar uma instância do Vertex AI Workbench com uma chave de criptografia gerenciada pelo cliente:
No Console do Google Cloud, acesse a página Instâncias.
Clique em
Criar.Na caixa de diálogo Nova instância, clique em Opções avançadas.
Na caixa de diálogo Criar instância, na seção Detalhes, insira as seguintes informações sobre a nova instância:
- Nome da instância: forneça um nome para a nova instância.
- Região: insira a região em que a chave e o keyring estão.
- Zona: selecione uma zona na região escolhida.
Na seção Discos, em Criptografia, selecione Chave de criptografia gerenciada pelo cliente (CMEK).
Clique em Selecionar uma chave gerenciada pelo cliente.
- Se a chave gerenciada pelo cliente que você quer usar estiver na lista, selecione-a.
Se a chave gerenciada pelo cliente que você quer usar não estiver na lista, insira o ID do recurso para a chave gerenciada pelo cliente. O ID do recurso para a chave gerenciada pelo cliente é semelhante ao seguinte:
projects/NOTEBOOKS_PROJECT_NUMBER/locations/global/keyRings/KEY_RING_NAME/cryptoKeys/KEY_NAME
Substitua:
NOTEBOOKS_PROJECT_NUMBER
: o ID do projeto do Vertex AI WorkbenchKEY_RING_NAME
: o keyring que você criou em Criar um keyring e uma chaveKEY_NAME
: o nome da chave que você criou em Criar um keyring e uma chave
Conclua o restante da caixa de diálogo de criação de instância e clique em Criar.
A seguir
- Saiba mais sobre CMEK no Google Cloud.
- Saiba como usar CMEK com outros produtos do Google Cloud .