Chaves de criptografia gerenciadas pelo cliente (CMEK, na sigla em inglês)
Por padrão, o Vertex AI Workbench criptografa o conteúdo do cliente em repouso. O Vertex AI Workbench processa a criptografia para você sem que você precise fazer nada. Essa opção é chamada de Criptografia padrão do Google.
Se você quiser controlar suas chaves de criptografia, use chaves de criptografia gerenciadas pelo cliente (CMEKs) no Cloud KMS com serviços integrados a CMEK, incluindo o Vertex AI Workbench. O uso de chaves do Cloud KMS permite controlar o nível de proteção, o local, a programação de rotação, as permissões de uso e acesso e os limites criptográficos. O uso do Cloud KMS também permite a você monitorar o uso de chaves, visualizar registros de auditoria e controlar ciclos de vida importantes. Em vez de o Google ser proprietário e gerente de chaves de criptografia de chaves (KEKs) simétricas que protegem seus dados, você controla e gerencia essas chaves no Cloud KMS.
Depois de configurar os recursos com CMEKs, a experiência de acesso aos recursos do Vertex AI Workbench é semelhante à criptografia padrão do Google. Para mais informações sobre suas opções de criptografia, consulte Chaves de criptografia gerenciadas pelo cliente (CMEK).
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 mais informações sobre como usar a CMEK para a Vertex AI, consulte a página da CMEK da Vertex AI.
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.
- A configuração do CMEK para o Vertex AI Workbench não configura automaticamente o CMEK para outros produtos Google Cloud que você usa. Para usar o CMEK para criptografar dados em outros produtos 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, use dois projetos Google Cloud separados:
- 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 do Vertex AI Workbench e interagir com outros produtos Google Cloud necessários para seu caso de uso
Como alternativa, use um único projeto 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 gcloud CLI é necessária para realizar algumas etapas desta 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 Gerenciamento de chaves.
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 a CMEK com outros produtos Google Cloud.