Partilhar via


Criptografia de dados no Azure DocumentDB

Todos os dados geridos por um Azure DocumentDB estão sempre encriptados em repouso. Esses dados incluem todos os bancos de dados do sistema e do usuário, arquivos temporários, logs e backups.

Criptografia em repouso com chave gerenciada por serviço (SMK) ou chave gerenciada pelo cliente (CMK)

O Azure DocumentDB suporta dois modos de encriptação de dados em repouso: chaves geridas por serviços (SMK) e chaves geridas pelo cliente (CMK). A encriptação de dados com chaves geridas por serviço é o modo predefinido para o Azure DocumentDB. Nesse modo, o serviço gerencia automaticamente as chaves de criptografia usadas para criptografar seus dados. Você não precisa executar nenhuma ação para habilitar ou gerenciar a criptografia nesse modo.

No modo de chaves gerenciadas pelo cliente , você pode trazer sua própria chave de criptografia para criptografar seus dados. Quando você especifica uma chave gerenciada pelo cliente, essa chave é usada para proteger e controlar o acesso à chave que criptografa seus dados. As chaves gerenciadas pelo cliente oferecem maior flexibilidade para gerenciar controles de acesso. Deve implementar o seu próprio Azure Key Vault e configurá-lo para armazenar as chaves de encriptação usadas pelo seu cluster Azure DocumentDB.

O modo de configuração só pode ser selecionado no momento da criação do cluster. Ele não pode ser alterado de um modo para outro durante o tempo de vida do cluster.

Para conseguir a encriptação dos seus dados, o Azure DocumentDB utiliza encriptação do lado do servidor do Azure Storage para os dados em repouso. Ao usar a CMK, você é responsável por fornecer chaves para criptografar e descriptografar dados nos serviços de Armazenamento do Azure. Essas chaves devem ser armazenadas no Cofre de Chaves do Azure.

Benefícios fornecidos por cada modo (SMK ou CMK)

A encriptação de dados com chaves geridas por serviços para o Azure DocumentDB oferece os seguintes benefícios:

  • O serviço controla automática e totalmente o acesso aos dados.
  • O serviço controla automática e totalmente o ciclo de vida da sua chave, incluindo a rotação da mesma.
  • Você não precisa se preocupar com o gerenciamento de chaves de criptografia de dados.
  • A criptografia de dados baseada em chaves gerenciadas por serviço não afeta negativamente o desempenho de suas cargas de trabalho.
  • Simplifica a gestão das chaves de encriptação (incluindo a sua rotação regular) e a gestão das identidades utilizadas para aceder a essas chaves.

A encriptação de dados com chaves geridas pelo cliente para o Azure DocumentDB oferece os seguintes benefícios:

  • Você controla totalmente o acesso aos dados. Você pode revogar uma chave para tornar um banco de dados inacessível.
  • Você controla totalmente o ciclo de vida de uma chave para se alinhar às políticas corporativas.
  • Você pode gerenciar e organizar centralmente todas as suas chaves de criptografia em suas próprias instâncias do Cofre de Chaves do Azure.
  • A criptografia de dados baseada em chaves gerenciadas pelo cliente não afeta negativamente o desempenho de suas cargas de trabalho.
  • Você pode implementar a separação de tarefas entre agentes de segurança, administradores de banco de dados e administradores de sistema.

Requisitos CMK

Com a chave de criptografia gerenciada pelo cliente , você assume toda a responsabilidade pela manutenção dos componentes configurados corretamente necessários para que a CMK funcione. Portanto, você deve implantar seu próprio Cofre de Chaves do Azure e fornecer uma identidade gerenciada atribuída pelo usuário. Você deve gerar ou importar sua própria chave. Deve conceder as permissões necessárias no Key Vault, para que o seu Azure DocumentDB possa realizar as ações necessárias na chave. Tem de tratar de configurar todos os aspetos de rede do Azure Key Vault onde a chave está guardada, para que a sua instância do Azure DocumentDB possa aceder à chave. Auditar o acesso à chave também é sua responsabilidade.

Quando configura chaves geridas pelo cliente para um cluster Azure DocumentDB para MongoDB, o Azure Storage envolve a chave de encriptação de dados raiz (DEK) da conta com a chave gerida pelo cliente no cofre de chaves associado. A proteção da chave de criptografia raiz muda, mas os dados em sua conta de Armazenamento do Azure sempre permanecem criptografados. Não é necessária nenhuma ação extra da sua parte para garantir que os seus dados permaneçam encriptados. A proteção por chaves gerenciadas pelo cliente entra em vigor imediatamente.

O Azure Key Vault é um sistema de gerenciamento de chaves externo baseado em nuvem. É altamente disponível e fornece armazenamento escalável e seguro para chaves criptográficas RSA. Não permite o acesso direto a uma chave armazenada, mas fornece serviços de encriptação e desencriptação a entidades autorizadas. O Cofre de Chaves pode gerar a chave, importá-la ou recebê-la transferida de um dispositivo HSM local.

Segue-se a lista de requisitos e recomendações para a configuração de encriptação de dados no Azure DocumentDB:

Cofre de chaves criptográficas

O cofre de chaves usado para a configuração do CMK deve atender aos seguintes requisitos:

  • Key vault e Azure DocumentDB devem pertencer ao mesmo inquilino Microsoft Entra.
  • Recomendação: defina a configuração Dias para manter cofres excluídos para o Cofre da Chave para 90 dias. Essa definição de configuração pode ser definida somente no momento da criação do cofre de chaves. Depois que uma instância é criada, não é possível modificar essa configuração.
  • Habilite o soft-delete recurso no cofre de chaves para ajudá-lo a se proteger contra perda de dados, se uma chave ou uma instância do cofre de chaves for excluída acidentalmente. O cofre de chaves retém recursos excluídos por 90 dias, a menos que o usuário os recupere ou limpe enquanto isso. As ações de recuperação e limpeza têm suas próprias permissões associadas a um cofre de chaves, uma função RBAC (controle de acesso baseado em função) ou uma permissão de política de acesso. O recurso de exclusão suave está ativado por padrão. Se você tiver um cofre de chaves que foi implantado há muito tempo, ele ainda pode ter a exclusão suave desabilitada. Nesse caso, você pode ativá-lo.
  • Habilite a proteção contra limpeza para impor um período de retenção obrigatório para cofres e objetos do cofre excluídos.
  • Configure o acesso à rede para permitir que o cluster acesse a chave de criptografia no cofre de chaves. Use uma das seguintes opções de configuração:
    • Permitir acesso público de todas as redes permite que todos os hosts na Internet acessem o cofre de chaves.
    • Selecione Desabilitar acesso público e Permitir que serviços confiáveis da Microsoft ignorem esse firewall para desabilitar todo o acesso público, mas para permitir que seu cluster acesse o cofre de chaves.

Chave de encriptação

A chave de criptografia selecionada para a configuração CMK deve atender aos seguintes requisitos:

  • A chave usada para criptografar a chave de criptografia de dados pode ser apenas assimétrica, RSA ou RSA-HSM. São suportados tamanhos de chave de 2.048, 3.072 e 4.096.
    • Recomendação: Use uma chave de 4.096 bits para melhorar a segurança.
  • A data e a hora para a ativação da chave (se definidas) devem estar no passado. A data e a hora de expiração (se definidas) devem ser no futuro.
  • A chave deve estar no estado Habilitado .
  • Se estiver a importar uma chave existente para o Cofre de Chaves do Azure, forneça-a nos formatos de ficheiro suportados (.pfx, .byokou .backup).

Permissions

Conceda à identidade gerida atribuída pelo utilizador do Azure DocumentDB acesso à chave de encriptação:

Atualizações da versão da chave CMK

O CMK no Azure DocumentDB suporta atualizações automáticas de versões de chaves, também conhecidas como chaves sem versão. O serviço Azure DocumentDB identifica automaticamente a nova versão da chave e volta a encriptar a chave de encriptação dos dados. Esse recurso pode ser combinado com o recurso de rotação automática do Azure Key Vault.

Considerações

Quando estiver a utilizar uma chave gerida pelo cliente para encriptação de dados, siga estas recomendações para configurar o Cofre de Chaves:

  • Para evitar a exclusão acidental ou não autorizada desse recurso crítico, defina um bloqueio de recurso do Azure no cofre de chaves.
  • Analise e habilite as opções de disponibilidade e redundância do Azure Key Vault.
  • Habilite o registro em log e o alerta na instância do Azure Key Vault usada para armazenar chaves. O cofre de chaves fornece logs que são fáceis de injetar em outras ferramentas de gerenciamento de eventos e informações de segurança (SIEM). Os Logs do Azure Monitor são um exemplo de um serviço que já está integrado.
  • Habilite a rotação automática de chaves. O serviço Azure DocumentDB capta sempre a versão mais recente da chave selecionada.
  • Bloqueie o acesso de rede pública ao Cofre da Chave selecionando Desativar acesso público e Permitir que serviços confiáveis da Microsoft ignorem esse firewall.

Observação

Depois de selecionar Desativar acesso público e Permitir que serviços fidedignos da Microsoft ignorem esta firewall, poderá receber um erro semelhante ao seguinte quando tentar utilizar o acesso público para administrar o Cofre da Chave através do portal: "Ativou o controlo de acesso à rede. Apenas as redes permitidas têm acesso a este cofre de chaves." Este erro não impede a capacidade de fornecer chaves durante a configuração de chaves gerenciadas pelo cliente ou buscar chaves do Cofre de Chaves durante operações de cluster.

  • Mantenha uma cópia da chave gerenciada pelo cliente em um local seguro ou deposite-a em um serviço de depósito.
  • Se o Cofre da Chave gerar a chave, crie um backup de chave antes de usá-la pela primeira vez. Você só pode restaurar o backup no Cofre de Chaves.