Compartilhar via


Modelos de criptografia de dados

Compreender os vários modelos de criptografia e seus prós e contras é fundamental para entender como os vários provedores de recursos no Azure implementam a criptografia em repouso. Essas definições são compartilhadas em todos os provedores de recursos no Azure para garantir linguagem e taxonomia comuns.

Há três cenários para criptografia do lado do servidor:

  • Criptografia do lado do servidor utilizando chaves gerenciadas pelo serviço

    • Provedores de recursos do Azure executam as operações de criptografia e descriptografia
    • A Microsoft gerencia as chaves
    • Funcionalidade completa na nuvem
  • Criptografia do lado do servidor usando chaves gerenciadas pelo cliente no Azure Key Vault

    • Provedores de recursos do Azure executam as operações de criptografia e descriptografia
    • O cliente controla as chaves por meio do Azure Key Vault
    • Funcionalidade completa na nuvem
  • Criptografia do lado do servidor utilizando chaves gerenciadas pelo cliente em hardware controlado pelo cliente

    • Provedores de recursos do Azure executam as operações de criptografia e descriptografia
    • O cliente controla as chaves no hardware controlado pelo cliente
    • Funcionalidade completa na nuvem

Modelos de criptografia do lado do servidor referem-se à criptografia executada pelo serviço do Azure. Nesse modelo, o Provedor de Recursos executa as operações de criptografia e descriptografia. Por exemplo, o Armazenamento do Microsoft Azure pode receber dados em operações de texto sem formatação e executar a criptografia e a descriptografia internamente. O Provedor de Recursos pode usar chaves de criptografia gerenciadas pela Microsoft ou pelo cliente, dependendo da configuração fornecida.

Captura de tela do servidor.

Cada um dos modelos de criptografia do lado do servidor em repouso implica características distintas do gerenciamento de chaves, incluindo onde e como as chaves de criptografia são criadas e armazenadas, bem como os modelos de acesso e os procedimentos de rotação de chave.

Para criptografia do lado do cliente, considere:

  • Os serviços do Azure não podem ver dados descriptografados
  • Os clientes gerenciam e armazenam chaves no local (ou em outros repositórios seguros). As chaves não estão disponíveis para os serviços do Azure
  • Funcionalidade reduzida na nuvem

Os modelos de criptografia com suporte no Azure dividem-se em dois grupos principais: "Criptografia do Cliente" e "Criptografia do Servidor", conforme mencionado anteriormente. Independentemente do modelo de criptografia em repouso utilizado, os serviços do Azure recomendam sempre o uso de um transporte seguro, como TLS ou HTTPS. Portanto, a criptografia em transporte deve ser abordada pelo protocolo de transporte e não deve ser um fator importante na determinação do modelo de criptografia em repouso a ser utilizado.

Modelo de criptografia de cliente

O modelo de Criptografia de Cliente refere-se à criptografia que é realizada fora do Provedor de Recursos ou Azure pelo aplicativo de chamada ou serviço. A criptografia pode ser realizada pelo aplicativo de serviço no Azure ou por um aplicativo em execução no data center do cliente. Em ambos os casos, ao usar esse modelo de criptografia, o Provedor de Recursos do Azure recebe um blob criptografado de dados sem a capacidade de descriptografar os dados de qualquer forma ou ter acesso às chaves de criptografia. Nesse modelo, o gerenciamento de chaves é feito pelo aplicativo de chamada/serviço e é opaco para o serviço do Azure.

Captura de tela do cliente.

Criptografia do lado do servidor utilizando chaves de serviço gerenciado

Para muitos clientes, o requisito essencial é garantir que os dados sejam criptografados sempre que estiver em repouso. A criptografia do lado do servidor usando chaves gerenciadas pelo serviço permite que os clientes marquem o recurso específico (Conta de Armazenamento, Banco de Dados SQL etc.) para criptografia e deixando todos os principais aspectos de gerenciamento, como emissão de chave, rotação e backup para a Microsoft. A maioria dos derviços do Azure com suporte para criptografia em repouso geralmente fornecem suporte para esse modelo de descarregamento do gerenciamento das chaves de criptografia para o Azure. O provedor de recursos do Azure cria as chaves, coloca-as em um armazenamento seguro e recupera-as quando necessário. O serviço tem acesso total às chaves e o serviço tem controle total sobre o gerenciamento do ciclo de vida da credencial.

Captura de tela de gerenciado.

A criptografia do lado do servidor utilizando chaves gerenciadas pelo serviço, portanto, soluciona rapidamente a necessidade de ter criptografia em repouso com baixa sobrecarga para o cliente. Quando disponível, um cliente normalmente abre o portal do Azure para a assinatura de destino e para o provedor de recursos e marca uma caixa indicando que gostaria que os dados fossem criptografados. Em alguns Gerenciadores de Recursos, a criptografia do lado do servidor com chaves gerenciadas pelo serviço está ativada por padrão.

A criptografia do lado do servidor com chaves gerenciadas pela Microsoft implica que o serviço tenha acesso completo para armazenar e gerenciar as chaves. Embora alguns clientes possam querer gerenciar as chaves porque sentem que ganham maior segurança, o custo e o risco associados a uma solução personalizada de armazenamento de chaves devem ser considerados ao avaliar este modelo. Em muitos casos, uma organização pode determinar que as restrições de recursos ou os riscos de uma solução local podem ser maiores do que o risco do gerenciamento na nuvem das chaves de criptografia em repouso. No entanto, esse modelo pode não ser suficiente para organizações que têm requisitos para controlar a criação ou o ciclo de vida das chaves de criptografia ou requisitos para que a equipe que gerencia as chaves de criptografia do serviço seja diferente daquela que gerencia o serviço (ou seja, segregação do gerenciamento de chaves do modelo de gerenciamento geral para o serviço).

Acesso à chave

Quando a criptografia do lado do servidor com chaves gerenciadas pelo serviço é usada, a criação, o armazenamento e o acesso ao serviço das chaves são gerenciados pelo serviço. Normalmente, os provedores de recursos fundamentais do Azure armazenam as Chaves de Criptografia de Dados em um repositório próximo aos dados e rapidamente disponíveis e acessíveis enquanto as Chaves de Criptografia de Chave são armazenadas em um repositório interno seguro.

Vantagens

  • Configuração simples
  • A Microsoft gerencia a rotação, o backup e a redundância de chaves
  • O cliente não tem o custo associado à implementação ou o risco de um esquema de gerenciamento de chaves personalizado.

Desvantagens

  • Não há controle do cliente sobre as chaves de criptografia (especificação de chave, ciclo de vida, revogação, etc.)
  • Nenhuma capacidade para segregar o gerenciamento de chaves do modelo de gerenciamento geral para o serviço

Criptografia do lado do servidor usando chaves gerenciadas pelo cliente no Azure Key Vault e no HSM Gerenciado do Azure

Para cenários em que o requisito é criptografar os dados em repouso e controlar as chaves de criptografia, os clientes podem utilizar criptografia do lado do servidor usando chaves gerenciadas pelo cliente no Key Vault. Alguns serviços podem armazenar apenas a chave de encriptação de chave raiz no Azure Key Vault e armazenar a chave de encriptação de dados encriptada num local interno mais próximo dos dados. Nesse cenário, os clientes podem trazer suas próprias chaves para o Key Vault (BYOK - Traga Sua Própria Chave), ou gerar novas, e utilizá-las para criptografar os recursos desejados. Enquanto o Provedor de Recursos executa as operações de criptografia e descriptografia, ele utiliza a chave de criptografia configurada como a chave raiz para todas as operações de criptografia.

A perda das chaves de criptografia de chave significa perda de dados. Por esse motivo, as chaves não devem ser excluídas. É necessário fazer backup das chaves sempre que forem criadas ou giradas. A proteção de exclusão e limpeza reversível deve ser habilitada em todo cofre armazenando chaves de criptografia de chave para proteger contra a apagamento de criptografia acidental ou mal-intencionada. Em vez de excluir uma chave, é recomendável definir habilitado como falso na chave de criptografia de chave. Use controles de acesso para revogar o acesso a usuários ou serviços individuais no Azure Key Vault ou HSM Gerenciado.

Observação

Para obter uma lista de serviços que dão suporte a chaves gerenciadas pelo cliente no Azure Key Vault e no HSM Gerenciado do Azure, consulte Serviços que dão suporte a CMKs no Azure Key Vault e no HSM Gerenciado do Azure.

Acesso à chave

O modelo de criptografia do lado do servidor com chaves gerenciadas pelo cliente no Azure Key Vault envolve o acesso das chaves pelo serviço para criptografar e descriptografar, conforme necessário. As chaves de criptografia em repouso são tornadas acessíveis a um serviço por meio de uma política de controle de acesso. Essa política concede o acesso de identidade de serviço para receber a chave. Um serviço do Azure executado em nome de uma assinatura associada pode ser configurado com uma identidade dentro dessa assinatura. O serviço pode executar a autenticação do Microsoft Entra e receber um token de autenticação identificando-se como esse serviço agindo em nome da assinatura. Esse token pode então ser apresentado ao Key Vault para obter uma chave à qual recebeu acesso.

Para operações que utilizam chaves de criptografia, uma identidade do serviço pode ter acesso a quaisquer das seguintes operações: descriptografar, criptografar, unwrapKey, wrapKey, verificar, assinar, obter, listar, atualizar, criar, importar, excluir, fazer backup e restaurar.

Para obter uma chave para utilizar em criptografia ou descriptografia de dados em repouso, a identidade do serviço que a instância de serviço do Gerenciador de Recursos executará como deverá ter UnwrapKey (para obter a chave para descriptografar) e WrapKey (para inserir uma chave no cofre de chaves ao criar uma nova chave).

Observação

Para obter mais detalhes sobre a autorização do Key Vault, consulte a página segura do cofre de chaves na documentação do Azure Key Vault.

Vantagens

  • Controle total sobre as chaves utilizadas – as chaves de criptografia são gerenciadas no Key Vault do cliente sob controle do cliente.
  • Capacidade para criptografar vários serviços para um mestre
  • É possível separar o gerenciamento de chaves do modelo de gerenciamento geral para o serviço
  • É possível definir o serviço e a localização de chave entre regiões

Desvantagens

  • O cliente tem total responsabilidade pelo gerenciamento de acesso de chave
  • O cliente tem total responsabilidade pelo gerenciamento do ciclo de vida da chave
  • Configuração adicional e sobrecarga de configuração

Criptografia no lado do servidor utilizando chaves gerenciadas pelo cliente em hardware controlado pelo cliente

Alguns serviços do Azure habilitam o modelo de gerenciamento de chaves HYOK (hospede sua própria chave). Esse modo de gerenciamento é útil em cenários em que há uma necessidade de criptografar dados inativos e gerenciar as chaves em um repositório proprietário fora do controle da Microsoft. Nesse modelo, o serviço deverá usar a chave de um site externo para descriptografar a DEK (Chave de Criptografia de Dados). As garantias de desempenho e disponibilidade são afetadas e a configuração é mais complexa. Além disso, uma vez que o serviço tenha acesso ao DEK durante as operações de criptografia e descriptografia, as garantias de segurança gerais desse modelo serão semelhantes a quando as chaves são gerenciadas pelo cliente no Azure Key Vault. Como resultado, esse modelo não é apropriado para a maioria das organizações, exceto se possuírem requisitos específicos de gerenciamento de chaves. Devido a essas limitações, a maioria dos serviços do Azure não dá suporte à criptografia do lado do servidor usando chaves gerenciadas pelo cliente em hardware controlado pelo cliente. Uma das duas chaves na Criptografia de Chave Dupla segue esse modelo.

Acesso à chave

Quando utilizar criptografia do lado do servidor usando chaves gerenciadas pelo cliente em hardware controlado pelo cliente, as chaves de criptografia de chave serão mantidas em um sistema configurado pelo cliente. Os serviços do Azure com suporte para esse modelo fornecem um meio de estabelecer uma conexão segura com um repositório de chaves fornecido pelo cliente.

Vantagens

  • Controle total sobre a chave raiz utilizada – as chaves de criptografia são gerenciadas por um repositório fornecido pelo cliente
  • Capacidade para criptografar vários serviços para um mestre
  • É possível separar o gerenciamento de chaves do modelo de gerenciamento geral para o serviço
  • É possível definir o serviço e a localização de chave entre regiões

Desvantagens

  • Total responsabilidade pela segurança, desempenho, disponibilidade e armazenamento de chaves
  • Total responsabilidade pelo gerenciamento de acesso à chave
  • Total responsabilidade pelo gerenciamento do ciclo de vida da chave
  • Configuração significativa, configuração e custos de manutenção contínuos
  • Aumento da dependência da disponibilidade de rede entre o datacenter do cliente e os datacenters do Azure.