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
Os modelos de criptografia do lado do servidor referem-se à criptografia que é 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 Azure poderá receber dados em operações de texto simples e executará a encriptação e desencriptação internamente. O Provedor de Recursos pode utilizar chave de criptografia que são gerenciadas pela Microsoft ou pelo cliente, dependendo da configuração fornecida.
Cada um dos modelos de criptografia em repouso do lado do servidor implica características distintivas do gerenciamento de chaves. Isso inclui onde e como as chaves de criptografia são criadas e armazenadas, assim como os modelos de acesso e os procedimentos de rotação de chave.
Para criptografia do lado do cliente, considere o seguinte:
- 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 aproveitar esse modelo de criptografia, o Provedor de Recursos do Azure recebe um blob de dados criptografado sem a capacidade de descriptografar os dados de maneira nenhuma 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.
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 utilizando chaves gerenciadas pelo serviço habilita esse modelo permitindo que os clientes marquem o recurso específico (Conta de Armazenamento, BD SQL etc.) para criptografia e deixando todos os aspectos de gerenciamento de chaves, 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. Isso significa que o serviço possui acesso completo às chaves e o serviço tem o controle total sobre o gerenciamento do ciclo de vida de credenciais.
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 é 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 do Azure fundamentais irão armazenar 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
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.
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 acessíveis para um serviço através 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 para a qual tenha tido 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.
Serviços de suporte
Os serviços do Azure que dão suporte a cada modelo de criptografia:
Produto, Recurso ou Serviço | Lado do servidor usando chave de serviço gerenciado | Lado do servidor usando chave gerenciada pelo cliente | Lado do cliente usando chave gerenciada pelo cliente |
---|---|---|---|
IA e Machine Learning | |||
Pesquisa de IA do Azure | Sim | Sim | - |
Serviços de IA do Azure | Sim | Sim, incluindo o HSM gerenciado | - |
Azure Machine Learning | Sim | Yes | - |
Content Moderator | Sim | Sim, incluindo o HSM gerenciado | - |
Detecção Facial | Sim | Sim, incluindo o HSM gerenciado | - |
Reconhecimento Vocal | Sim | Sim, incluindo o HSM gerenciado | - |
OpenAI do Azure | Sim | Sim, incluindo o HSM gerenciado | - |
Personalizador | Sim | Sim, incluindo o HSM gerenciado | - |
QnA Maker | Sim | Sim, incluindo o HSM gerenciado | - |
Serviços de Fala | Sim | Sim, incluindo o HSM gerenciado | - |
Tradução de Texto | Sim | Sim, incluindo o HSM gerenciado | - |
Power Platform | Yes | Sim, incluindo o HSM gerenciado | - |
Dataverse | Yes | Sim, incluindo o HSM gerenciado | - |
Dynamic 365 | Yes | Sim, incluindo o HSM gerenciado | - |
Análise | |||
Stream Analytics do Azure | Sim | Sim**, incluindo o HSM gerenciado | - |
Hubs de Eventos | Sim | Sim | - |
Funções | Sim | Sim | - |
Azure Analysis Services | Sim | - | - |
Catálogo de Dados do Azure | Sim | - | - |
Azure HDInsight | Sim | Yes | - |
O Application Insights do Azure Monitor | Sim | Sim | - |
Log Analytics do Azure Monitor | Sim | Sim, incluindo o HSM gerenciado | - |
Azure Data Explorer | Sim | Sim | - |
Azure Data Factory | Sim | Sim, incluindo o HSM gerenciado | - |
Repositório Azure Data Lake | Sim | Sim, RSA 2048-bit | - |
Contêineres | |||
Serviço de Kubernetes do Azure | Sim | Sim, incluindo o HSM gerenciado | - |
Instâncias de Contêiner | Sim | Sim | - |
Registro de Contêiner | Sim | Sim | - |
Compute | |||
Máquinas Virtuais | Sim | Sim, incluindo o HSM gerenciado | - |
Conjunto de dimensionamento de máquinas virtuais | Sim | Sim, incluindo o HSM gerenciado | - |
SAP HANA | Sim | Sim | - |
Serviço de Aplicativo | Sim | Sim**, incluindo o HSM gerenciado | - |
Automação | Sim | Sim | - |
Funções do Azure | Sim | Sim**, incluindo o HSM gerenciado | - |
Portal do Azure | Sim | Sim**, incluindo o HSM gerenciado | - |
Solução VMware no Azure | Sim | Sim, incluindo o HSM gerenciado | - |
Aplicativos Lógicos | Sim | Sim | - |
Aplicativos gerenciados pelo Azure | Sim | Sim**, incluindo o HSM gerenciado | - |
Barramento de Serviço | Sim | Sim | - |
Site Recovery | Sim | Sim | - |
Bancos de dados | |||
SQL Server em Máquinas Virtuais | Sim | Sim | Sim |
Banco de Dados SQL do Azure | Sim | Sim, o RSA 3072 bits, incluindo o HSM gerenciado | Sim |
Instância Gerenciada do Azure SQL | Sim | Sim, o RSA 3072 bits, incluindo o HSM gerenciado | Sim |
Banco de Dados SQL do Azure para MariaDB | Sim | - | - |
Banco de Dados SQL do Azure para MySQL | Sim | Sim, incluindo o HSM gerenciado | - |
Banco de Dados SQL do Azure para PostgreSQL | Sim | Sim, incluindo o HSM gerenciado | - |
Azure Synapse Analytics (apenas pool de SQL dedicado – anteriormente SQL DW) | Sim | Sim, o RSA 3072 bits, incluindo o HSM gerenciado | - |
SQL Server Stretch Database | Sim | Sim, RSA 3072 bits | Sim |
Armazenamento de Tabelas | Sim | Sim | Sim |
Azure Cosmos DB | Sim (Saiba mais) | Sim, incluindo o HSM gerenciado (saiba mais e saiba mais) | - |
Azure Databricks | Sim | Sim, incluindo o HSM gerenciado | - |
Serviço de Migração de Banco de Dados do Azure | Sim | N/A* | - |
Identidade | |||
ID do Microsoft Entra | Sim | - | - |
Serviços de Domínio do Microsoft Entra | Sim | Sim | - |
Integração | |||
Barramento de Serviço | Sim | Sim | - |
Grade de Eventos | Sim | - | - |
Gerenciamento de API | Sim | - | - |
Serviços de IoT | |||
Hub IoT | Sim | Sim | Sim |
Provisionamento de Dispositivos no Hub IoT | Sim | Sim | - |
Gerenciamento e Governança | |||
Espaço Gerenciado do Azure para Grafana | Sim | - | N/D |
Azure Site Recovery | Sim | - | - |
Migrações para Azure | Sim | Sim | - |
Mídia | |||
Serviços de mídia | Sim | Sim | Sim |
Segurança | |||
Microsoft Defender para IoT | Sim | Sim | - |
Microsoft Sentinel | Sim | Sim, incluindo o HSM gerenciado | - |
Storage | |||
Armazenamento de Blobs | Sim | Sim, incluindo o HSM gerenciado | Sim |
Armazenamento de blob Premium | Sim | Sim, incluindo o HSM gerenciado | Sim |
Armazenamento em Disco | Sim | Sim, incluindo o HSM gerenciado | - |
Armazenamento de Disco Ultra | Sim | Sim, incluindo o HSM gerenciado | - |
Armazenamento em Disco Gerenciado | Sim | Sim, incluindo o HSM gerenciado | - |
Armazenamento de Arquivos | Sim | Sim, incluindo o HSM gerenciado | - |
Armazenamento Premium Arquivos | Sim | Sim, incluindo o HSM gerenciado | - |
Sincronização de Arquivos | Sim | Sim, incluindo o HSM gerenciado | - |
Armazenamento de Filas | Sim | Sim, incluindo o HSM gerenciado | Sim |
Data Lake Storage Gen2 | Sim | Sim, incluindo o HSM gerenciado | Sim |
Avere vFXT | Sim | - | - |
Cache Redis do Azure | Yes | Sim***, incluindo o HSM Gerenciado | - |
Azure NetApp Files | Sim | Sim, incluindo o HSM gerenciado | Sim |
Armazenamento de Arquivos | Sim | Sim | - |
StorSimple | Sim | Sim | Sim |
Serviço de Backup do Azure | Sim | Sim, incluindo o HSM gerenciado | Sim |
Data Box | Sim | - | Sim |
Azure Stack Edge | Sim | Sim | - |
Outras | |||
Azure Data Manager for Energy | Sim | Sim | Sim |
* Esse serviço não persiste dados. Os caches transitórios, se houver, são criptografados com uma chave da Microsoft.
** Esse serviço dá suporte ao armazenamento de dados em seu Key Vault, Conta de Armazenamento ou outro serviço de persistência de dados que já dá suporte à criptografia no Lado do Servidor com Chave Gerenciada pelo Cliente.
*** Todos os dados transitórios armazenados temporariamente no disco, como arquivos de página ou arquivos de troca, são criptografados com uma chave da Microsoft (todas as camadas) ou uma chave gerenciada pelo cliente (usando as camadas Enterprise e Enterprise Flash). Para obter mais informações, consulte Configurar criptografia de disco no Cache do Azure para Redis.