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) para instâncias de notebooks gerenciados do Vertex AI Workbench.
Nesta página, descrevemos alguns benefícios e limitações específicos do uso de CMEK com notebooks gerenciados. Além disso, mostramos como configurar uma nova instância de notebooks gerenciados para usar o 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 de notebooks gerenciados, ela é executada em uma infraestrutura de computação gerenciada pelo Google. Quando você ativa CMEK em uma instância de notebooks gerenciados, o Vertex AI Workbench usa a chave que você designou, em vez de uma chave gerenciada pelo Google, para criptografar os dados do usuário.
A chave de CMEK não criptografa metadados, como o nome e a região da instância, associados à instância de notebooks gerenciados. Os metadados associados às instâncias de notebooks gerenciados são sempre criptografados com 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 de notebooks regionais gerenciados usando chaves no mesmo local ou no local global. Por exemplo, é possível criptografar os dados do usuário na região
us-west1
usando uma chave emus-west1
ouglobal
. - Configurar CMEK para notebooks gerenciados não configura CMEK automaticamente 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.
Como configurar CMEK para sua instância de notebooks gerenciados
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 CMEKs para notebooks gerenciados, use dois projetos separados do Google Cloud:
- Um projeto do Cloud KMS: um projeto para gerenciar a chave de criptografia
- Um projeto de notebooks gerenciados: um projeto para acessar instâncias de notebooks gerenciados 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 de notebooks gerenciados
- 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 da sua instância de notebooks gerenciados.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 de notebooks gerenciados
Se você configurar sua instância com acesso de usuário único, precisará conceder ao projeto da instância de notebooks gerenciados a permissão para criptografar e descriptografar dados usando a chave. Você concede essa permissão ao agente de serviço do projeto. O endereço de e-mail desse agente de serviço é semelhante ao seguinte:
service-NOTEBOOKS_PROJECT_NUMBER@gcp-sa-notebooks.iam.gserviceaccount.com
Substitua NOTEBOOKS_PROJECT_NUMBER
pelo
número do projeto
da instância de notebooks gerenciados.
Anote o endereço de e-mail do agente de serviço. Você o usará nas etapas a seguir para conceder ao projeto da instância de notebooks gerenciados a permissão para criptografar e descriptografar dados usando sua chave. Conceda a permissão usando o Console do Google Cloud ou a Google Cloud CLI.
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 que você anotou na seção anterior.
Na lista suspensa Selecionar uma função, clique em Cloud KMS e selecione a função Criptografador/Descriptografador de CryptoKey do Cloud KMS.
Clique em Save.
gcloud
Execute o seguinte comando para conceder ao agente de serviço a permissão para criptografar e descriptografar dados usando sua chave:
gcloud kms keys add-iam-policy-binding KEY_NAME \ --keyring=KEY_RING_NAME \ --location=REGION \ --project=KMS_PROJECT_ID \ --member=serviceAccount:EMAIL_ADDRESS \ --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 KMSEMAIL_ADDRESS
: o endereço de e-mail do agente de serviço que você anotou na seção anterior
Criar uma instância de notebooks gerenciados com CMEK
Agora que você concedeu permissão à instância de notebooks gerenciados para criptografar e descriptografar dados usando sua chave, é possível criar uma instância de notebooks gerenciados que criptografa dados usando essa chave. siga estas etapas:
No Console do Google Cloud, acesse a página Notebooks gerenciados.
Clique em
Novo notebook.No campo Nome do notebook, insira um nome para sua instância.
Clique na lista Região e selecione uma região para a instância.
Clique em Configurações avançadas.
Na seção Criptografia de disco, 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. A ID do recurso da chave gerenciada pelo cliente tem esta aparência:
projects/NOTEBOOKS_PROJECT_NUMBER/locations/global/keyRings/KEY_RING_NAME/cryptoKeys/KEY_NAME
Substitua:
NOTEBOOKS_PROJECT_NUMBER
: o ID do seu projeto de notebooks gerenciadosKEY_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
Complete o restante da caixa de diálogo Criar um notebook gerenciado de acordo com suas necessidades.
Clique em Criar.
O Vertex AI Workbench cria uma instância de notebooks gerenciados com base nas propriedades especificadas e inicia automaticamente a instância. Quando a instância estiver pronta para uso, o Vertex AI Workbench ativa um link Abrir JupyterLab.
A seguir
Saiba mais sobre CMEK no Google Cloud.