Chaves de criptografia gerenciadas pelo cliente (CMEK, na sigla em inglês)

Este documento fornece uma visão geral do uso do Cloud Key Management Service (Cloud KMS) para chaves de criptografia gerenciadas pelo cliente (CSEK). O uso da CMEK do Cloud KMS oferece a propriedade e o controle das chaves que protegem seus dados em repouso no Google Cloud.

Comparação entre CMEK e chaves de propriedade e gerenciadas pelo Google

As chaves do Cloud KMS que você cria são gerenciadas pelo cliente. Os serviços do Google que usam suas chaves têm uma integração com CMEK. É possível gerenciar essas CMEKs diretamente ou pela chave automática do Cloud KMS. Os fatores a seguir diferenciam a criptografia em repouso padrão do Google das chaves gerenciadas pelo cliente:

Tipo de chave Gerenciado pelo cliente com a chave Autokey Gerenciada pelo cliente (manual) De propriedade e gerenciado pelo Google (padrão do Google)
Pode acessar metadados de chaves Sim Sim Sim
Propriedade das chaves1 Cliente Cliente Google
Pode gerenciar e controlar2 chaves3 A criação e atribuição de chaves são automatizadas. O controle manual do cliente é totalmente compatível. Cliente, somente controle manual Google
Suporte a requisitos regulatórios para chaves gerenciadas pelo cliente Sim Sim Não
Compartilhamento de chaves Exclusivo para um cliente Exclusivo para um cliente Os dados de vários clientes geralmente usam a mesma chave de criptografia de chaves (KEK).
Controle da rotação de chaves Sim Sim Não
Políticas da organização CMEK Sim Sim Não
Registrar o acesso administrativo e de dados às chaves de criptografia Sim Sim Não
Preços Varia. Para mais informações, consulte Preços. Sem custo extra para a chave automática Varia. Para mais informações, consulte Preços. Grátis

1 Em termos legais, o proprietário da chave indica quem detém os direitos dela. As chaves que pertencem ao cliente têm acesso restrito ou nenhum acesso pelo Google.

2 O controle de chaves significa definir controles sobre o tipo de chaves e como elas são usadas, detectar variações e planejar ações corretivas, se necessário. Você pode controlar suas chaves, mas delegar o gerenciamento delas a terceiros.

3 O gerenciamento de chaves inclui os seguintes recursos:

  • Crie chaves.
  • Escolha o nível de proteção das chaves.
  • Atribuir autoridade para o gerenciamento das chaves.
  • Controle o acesso às chaves.
  • Controle o uso de chaves.
  • Defina e modifique o período de rotação das chaves ou acione uma rotação de chaves.
  • Mudar o status da chave.
  • Destrua versões de chave.

Criptografia padrão com chaves de propriedade e gerenciadas pelo Google

Todos os dados armazenados no Google Cloud são criptografados em repouso usando os mesmos sistemas de gerenciamento de chaves protegidos que o Google usa para nossos próprios dados criptografados. Esses sistemas de gerenciamento de chaves fornecem controles de auditoria e chaves de acesso rigorosos e criptografam dados do usuário em repouso usando o padrão de criptografia AES-256. O Google é proprietário e controla as chaves usadas para criptografar seus dados. Não é possível ver ou gerenciar essas chaves nem consultar os registros de uso da chave. Os dados de vários clientes podem usar a mesma chave de criptografia de chaves (KEK). Nenhuma configuração ou gerenciamento é necessário.

Para mais informações sobre a criptografia padrão no Google Cloud, consulte Criptografia padrão em repouso.

Chaves de criptografia gerenciadas pelo cliente (CMEK, na sigla em inglês)

As chaves de criptografia gerenciadas pelo cliente são chaves de criptografia que pertencem a você. Esse recurso permite ter mais controle sobre as chaves usadas para criptografar dados em repouso nos serviços compatíveis do Google Cloud e fornece um limite criptográfico em torno dos dados. É possível gerenciar as CMEKs diretamente no Cloud KMS ou automatizar o provisionamento e a atribuição usando a chave automática do Cloud KMS.

Os serviços compatíveis com CMEK têm uma integração com CMEK. A integração da CMEK é uma tecnologia de criptografia do lado do servidor que pode ser usada em vez da criptografia padrão do Google. Depois que a CMEK é configurada, as operações de criptografia e descriptografia são processadas pelo agente de serviço de recursos. Como os serviços integrados à CMEK lidam com o acesso ao recurso criptografado, a criptografia e a descriptografia podem ocorrer de forma transparente, sem esforço do usuário final. A experiência de acesso aos recursos é semelhante à criptografia padrão do Google. Para mais informações sobre a integração do CMEK, consulte O que um serviço integrado a CMEK oferece.

É possível usar versões de chave ilimitadas para cada chave.

Para saber se um serviço oferece suporte a CMEKs, consulte a lista de serviços compatíveis.

O uso do Cloud KMS gera custos relacionados ao número de versões de chaves e operações criptográficas com essas versões. Para mais informações sobre preços, consulte Preços do Cloud Key Management Service. Não é necessário fazer compras ou compromissos mínimos.

Chaves de criptografia gerenciadas pelo cliente (CMEK) com o Cloud KMS Autokey

A Autokey do Cloud KMS simplifica a criação e o gerenciamento de CMEKs automatizando o provisionamento e a atribuição. Com o Autokey, keyrings e chaves são gerados sob demanda como parte da criação de recursos, e os agentes de serviço que usam as chaves para operações de criptografia e descriptografia recebem automaticamente os papéis necessários do Identity and Access Management (IAM).

O uso das chaves geradas pelo Autokey pode ajudar você a se alinhar de maneira consistente aos padrões do setor e às práticas recomendadas de segurança de dados, incluindo o alinhamento de local de chaves e dados, especificidade de chaves, nível de proteção de módulo de segurança de hardware (HSM, na sigla em inglês), programação de rotação de chaves e separação de tarefas. O Autokey cria chaves que seguem diretrizes gerais e específicas do tipo de recurso para serviços do Google Cloud que se integram ao Autokey. As chaves criadas usando a função Autokey funcionam de forma idêntica a outras chaves do Cloud HSM com as mesmas configurações, incluindo suporte a requisitos regulatórios para chaves gerenciadas pelo cliente. Para mais informações sobre a chave automática, consulte Visão geral das chaves automáticas.

Quando usar chaves de criptografia gerenciadas pelo cliente

É possível usar CMEKs criadas manualmente ou chaves criadas pelo Autokey em serviços compatíveis para ajudar a atingir os seguintes objetivos:

  • Ter suas próprias chaves de criptografia.

  • Controle e gerencie suas chaves de criptografia, incluindo a escolha de local, nível de proteção, criação, controle de acesso, rotação, uso e destruição.

  • Gere material de chave no Cloud KMS ou importe material de chaves mantido fora do Google Cloud.

  • Defina a política sobre onde as chaves precisam ser usadas.

  • Exclua seletivamente os dados protegidos pelas suas chaves no caso de desativação ou para remediar eventos de segurança (fragmentação criptográfica).

  • Crie e use chaves exclusivas para um cliente, estabelecendo um limite criptográfico em torno dos dados.

  • Registre o acesso administrativo e de dados às chaves de criptografia.

  • Atender a regulamentações atuais ou futuras que exijam qualquer uma dessas metas.

O que um serviço integrado a CMEK oferece

Assim como a criptografia padrão do Google, a CMEK é uma criptografia de envelope simétrica do lado do servidor dos dados do cliente. A diferença em relação à criptografia padrão do Google é que a proteção de CMEK usa uma chave controlada pelo cliente. As CMEKs criadas manualmente ou automaticamente usando o Autokey funcionam da mesma maneira durante a integração de serviços.

  • Os serviços em nuvem que têm uma integração de CMEK usam as chaves criadas no Cloud KMS para proteger seus recursos.

  • Os serviços integrados ao Cloud KMS usam criptografia simétrica.

  • Você escolhe o nível de proteção da chave.

  • Todas as chaves são AES-GCM de 256 bits.

  • O material da chave nunca sai do limite do sistema do Cloud KMS.

  • Suas chaves simétricas são usadas para criptografar e descriptografar no modelo de criptografia de envelope.

Os serviços integrados a CMEK rastreiam chaves e recursos

  • Os recursos protegidos por CMEK têm um campo de metadados que contém o nome da chave que os criptografa. Geralmente, isso fica visível para o cliente nos metadados do recurso.

  • O rastreamento de chaves informa quais recursos uma chave protege para serviços que oferecem suporte a esse recurso.

  • As chaves podem ser listadas por projeto.

Os serviços integrados a CMEK processam o acesso a recursos

O principal que cria ou visualiza recursos no serviço integrado à CMEK não exige o Criptografador/Descriptografador de CryptoKey do Cloud KMS (roles/cloudkms.cryptoKeyEncrypterDecrypter) para a CMEK usada para proteger o recurso.

Cada recurso de projeto tem uma conta de serviço especial chamada de agente de serviço, que realiza a criptografia e a descriptografia com chaves gerenciadas pelo cliente. Depois de conceder ao agente de serviço acesso a uma CMEK, ele usará essa chave para proteger os recursos escolhidos.

Quando um solicitante quer acessar um recurso criptografado com uma chave gerenciada pelo cliente, o agente de serviço tenta descriptografar o recurso solicitado automaticamente. Se o agente de serviço tiver permissão para descriptografar usando a chave e você não tiver desativado ou destruído a chave, o agente de serviço vai fornecer o uso de criptografia e descriptografia da chave. Caso contrário, a solicitação falhará.

Nenhum acesso de solicitante adicional é necessário. Como o agente de serviço processa a criptografia e a descriptografia em segundo plano, a experiência do usuário para acessar recursos é semelhante ao uso da criptografia padrão do Google.

Como usar a Autokey para a CMEK

Para cada pasta em que você quer usar o Autokey, há um processo de configuração único. Você pode escolher uma pasta para trabalhar com suporte à Autokey e um projeto de chave associado em que a Autokey armazena as chaves dessa pasta. Para mais informações sobre como ativar o Autokey, consulte Ativar o Cloud KMS Autokey.

Em comparação com a criação manual de CMEKs, a Autokey não exige as seguintes etapas de configuração:

  • Os administradores de chaves não precisam criar chaveiros ou chaves manualmente nem atribuir privilégios aos agentes de serviço que criptografam e descriptografam dados. O agente de serviço do Cloud KMS realiza essas ações em nome deles.

  • Os desenvolvedores não precisam se planejar para solicitar chaves antes da criação do recurso. Eles podem solicitar chaves do Autokey conforme necessário, mantendo a separação de deveres.

Ao usar a Autokey, há apenas uma etapa: o desenvolvedor solicita as chaves como parte da criação de recursos. As chaves retornadas são consistentes para o tipo de recurso pretendido.

As CMEKs criadas com o Autokey se comportam da mesma forma que as chaves criadas manualmente para os seguintes recursos:

  • Os serviços integrados ao CMEK se comportam da mesma maneira.

  • O administrador da chave pode continuar monitorando todas as chaves criadas e usadas no painel do Cloud KMS e no rastreamento de uso de chaves.

  • As políticas da organização funcionam da mesma forma com o Autokey e com CMEKs criadas manualmente.

Para uma visão geral das chaves automáticas, consulte Visão geral das chaves automáticas. Para mais informações sobre como criar recursos protegidos por CMEK com o Autokey, consulte Criar recursos protegidos usando o Autokey do Cloud KMS.

Criar CMEKs manualmente

Ao criar manualmente os CMEKs, é necessário planejar e criar chaveiros, chaves e locais de recursos antes de criar recursos protegidos. Em seguida, você pode usar as chaves para proteger os recursos.

Para saber mais sobre as etapas exatas para ativar o CMEK, consulte a documentação do serviço do Google Cloud relevante. Alguns serviços, como o GKE, têm várias integrações CMEK para proteger diferentes tipos de dados relacionados ao serviço. Siga estas etapas:

  1. Crie um keyring do Cloud KMS ou escolha um keyring existente. Ao criar o keyring, escolha um local geograficamente próximo aos recursos que você está protegendo. O keyring pode estar no mesmo projeto que os recursos que você está protegendo ou em projetos diferentes. O uso de projetos diferentes oferece maior controle sobre os papéis do IAM e ajuda a oferecer suporte à separação de funções.

  2. Crie ou importe uma chave do Cloud KMS no keyring escolhido. Essa chave é a CMEK.

  3. Você concede o [papel IAM do CryptoKey Encrypter/Decrypter encrypter-decrypter-role] na CMEK à conta de serviço.

  4. Ao criar um recurso, configure-o para usar o CMEK. Por exemplo, é possível configurar um cluster do GKE para usar o CMEK e proteger dados em repouso nos discos de inicialização dos nós.

Para que um solicitante tenha acesso aos dados, ele não precisa de acesso direto ao CMEK.

Desde que o agente de serviço tenha o papel de Criptografador/Descriptografador de CryptoKey, o serviço poderá criptografar e descriptografar os dados. Se você revogar essa função ou desativar ou destruir a CMEK, esses dados não poderão ser acessados.

Conformidade com CMEK

Alguns serviços têm integrações com CMEK e permitem que você mesmo gerencie as chaves. Alguns serviços oferecem conformidade com o CMEK, o que significa que os dados temporários e a chave temporária nunca são gravados no disco. Para conferir uma lista completa de serviços integrados e compatíveis, consulte Serviços compatíveis com o CMEK.

Rastreamento de uso de chaves

O rastreamento de uso de chaves mostra os recursos do Google Cloud na sua organização que são protegidos pelas CMEKs. Com o rastreamento de uso de chaves, é possível conferir os recursos, projetos e produtos exclusivos do Google Cloud que usam uma chave específica e se elas estão em uso. Para mais informações sobre o rastreamento de uso da chave, consulte Conferir o uso da chave.

Políticas da organização de CMEK

O Google Cloud oferece restrições de política da organização para ajudar a garantir o uso consistente da CMEK em um recurso da organização. Essas restrições fornecem controles aos administradores da organização para exigir o uso de CMEK e especificar limitações e controles nas chaves do Cloud KMS usadas para proteção CMEK, incluindo:

A seguir