Criptografia em repouso usando o gerenciamento de chaves de cliente
Nesta página
Importante
Recurso Indisponível em Instâncias sem Servidor
Neste momento, as instâncias sem servidor não permitem essa funcionalidade. Para saber mais, consulte Limitações de instância sem servidor.
O Atlas criptografa todo o armazenamento em cluster e volumes de snapshots em repouso por padrão. Você pode adicionar outra camada de segurança usando oKMS do seu provedor de nuvem junto com omecanismo de armazenamento criptografado do MongoDB.
Configurar Encryption at rest usando seu gerenciamento de chaves incorre em cobranças adicionais para o projeto Atlas. Para saber mais, consulte Segurança avançada.
Você pode usar um ou mais dos seguintes fornecedores de gerenciamento de chaves do cliente ao configurar o Encryption at Rest para o projeto Atlas:
Após configurar pelo menos um provedor de gerenciamento de chave para o projeto Atlas, você pode habilitar o gerenciamento de chave do cliente para cada agrupamento Atlas para o qual eles exigem criptografia. O fornecedor de gerenciamento de chaves não precisa corresponder ao fornecedor de serviços de nuvem do cluster.
Observação
Quando você habilita ou desabilita o gerenciamento de chaves do cliente, o Atlas executa uma sincronização inicial para criptografar novamente os dados do cluster.
O Atlas não pode girar chaves de encriptação gerenciadas pelo cliente. Consulte a documentação do seu provedor de gerenciamento de chaves para obter orientações sobre rotação de chaves. Quando você define o gerenciamento de chave de cliente em um projeto, o Atlas cria um alerta de rotação de chave de 90 dias.
Se o fornecedor de KMS ficar indisponível, isso não desabilitará o cluster enquanto ele ainda estiver em execução. Se você decidir reiniciar o cluster, a falta de um fornecedor de KMS desabilitará o cluster.
Acesso necessário
Para configurar o gerenciamento de chaves do cliente, você deve ter acessoProject Owner
ao projeto.
Os usuários com acesso Organization Owner
devem se adicionar ao projeto como um Project Owner
.
Configurar o Atlas com gerenciamento de chaves do cliente
A Encryption at Rest usando o Key Management requer credenciais válidas do provedor de gerenciamento de chaves e uma chave de criptografia. Para fornecer esses detalhes e ativar o gerenciamento de chaves do cliente:
Navegue até a página Advanced do seu projeto.
Se ainda não estiver exibido, selecione a organização que contém o projeto desejado no menu Organizations na barra de navegação.
Se ainda não estiver exibido, selecione o projeto desejado no menu Projects na barra de navegação.
Clique em Advanced na barra lateral.
Opcional: permita acesso de ou para o plano de controle do Atlas.
Importante
Atualmente, os endereços IP do plano de controle do Atlas de entrada ainda não estão disponíveis. A lista de endereços IP de entrada em sua resposta da API está vazia. Para recuperar manualmente uma lista de endereços IP do plano de controle do Atlas de entrada, consulte Acesso de entrada necessário.
Dependendo da configuração do Key Management Service, talvez seja necessário adicionar endereços IP do plano de controle do Atlas para habilitar a criptografia em repouso para o seu projeto, de modo que o Atlas possa se comunicar com o KMS. Para habilitar a comunicação entre Atlas e KMS:
Envie uma solicitação GET para o endpoint
returnAllControlPlaneIPAddresses
. O endpoint da API retorna uma lista de endereços IP do plano de controle do Atlas de entrada e saída em CIDR categorizados por provedor de nuvem e região, semelhante ao seguinte:{ "controlPlane": { "inbound": { "aws": { // cloud provider "us-east-1": [ // region "3.92.113.229/32", "3.208.110.31/32", "107.22.44.69/32" ..., ], ... } }, "outbound": { "aws": { // cloud provider "us-east-1": [ // region "3.92.113.229/32", "3.208.110.31/32", "107.22.44.69/32" ..., ], ... } } }, "data_federation": { "inbound": {}, "outbound" {} }, "app_services": { "inbound": {}, "outbound" {} }, ... } Adicione os endereços IP retornados à lista de acesso IP do seu provedor de nuvem. Consulte os pré-requisitos para gerenciar chaves de cliente com AWS , Azure e GCP para obter mais informações.
Habilitar o gerenciamento de chaves do cliente para um Atlas cluster
Depois de configurar o Atlas com o Customer Key Management, você deve ativar o gerenciamento de chaves do cliente para cada cluster do Atlas que contenha dados que você deseja criptografar.
Observação
Você deve ter a role Project Owner
para habilitar o gerenciamento de chaves do cliente para clusters nesse projeto.
Para novos clusters:
Opcional: adicione endereços IP a partir dos novos nós de cluster.
Dependendo da configuração do Gerenciamento de Chaves, talvez seja necessário adicionar endereços IP do nó do Atlas Cluster à lista de acesso KMS do provedor de nuvem, para que o cluster possa se comunicar com o KMS. Para habilitar a comunicação entre o cluster e o KMS:
Envie uma solicitação GET para o endpoint
ipAddresses
. O ponto de extremidade da API retorna uma lista de endereços IP dos novos nós de cluster, semelhante à seguinte:{ "groupId": "xxx", // ObjectId "services": { "clusters": [ { "clusterName": "Cluster0", "inbound": [ "3.92.113.229", "3.208.110.31", "107.22.44.69" ], "outbound": [ "3.92.113.229", "3.208.110.31", "107.22.44.69" ] } ] } } Adicione os endereços IP retornados à lista de acesso IP do seu provedor de nuvem. Você deve modificar sua lista de acesso IP antes que o plano de provisionamento seja revertido. O cluster tenta o provisionamento por até três dias antes que o plano de provisionamento seja revertido devido a restrições de acesso ao IP.
Consulte os pré-requisitos para gerenciar chaves de cliente com AWS, Azure e GCP para obter mais informações.
Observação
Se precisar de mais tempo para atualizar a lista de acesso IP, você pode:
Provisionar o cluster sem Encryption at rest e habilite-o depois de atualizar a lista de acesso IP.
Configure uma lista de acesso IP mais inclusiva no Serviço de Gerenciamento de Chaves do seu fornecedor de nuvem, inicie o cluster com Criptografia em Repouso e modifique a lista de acesso IP.
Para clusters existentes:
Navegue até a página Clusters do seu projeto.
Se ainda não estiver exibido, selecione a organização que contém o projeto desejado no menu Organizations na barra de navegação.
Se ainda não estiver exibido, selecione o projeto desejado no menu Projects na barra de navegação.
Se a página Clusters ainda não estiver exibida, clique em Database na barra lateral.
Opcional: Adicionar endereços IP a partir de seus nós de cluster.
Dependendo da configuração do serviço de gerenciamento de chaves, talvez seja necessário adicionar endereços IP do nó do Atlas Cluster à lista KMS do provedor de nuvem, para que o cluster possa se comunicar com o KMS. Para habilitar a comunicação entre o cluster e o KMS:
Envie uma solicitação GET para o endpoint
ipAddresses
. O endpoint da API retorna uma lista de endereços IP dos nós do cluster existentes, semelhante a esta:{ "groupId": "xxx", // ObjectId "services": { "clusters": [ { "clusterName": "Cluster0", "inbound": [ "3.92.113.229", "3.208.110.31", "107.22.44.69" ], "outbound": [ "3.92.113.229", "3.208.110.31", "107.22.44.69" ] } ] } } Adicione os endereços IP retornados à lista de acesso IP do seu provedor de nuvem. Consulte os pré-requisitos para gerenciar chaves de cliente com AWS , Azure e GCP para obter mais informações.
Adicionar nós a um Atlas Cluster criptografado
Adicionar nós ou shards ao seu cluster de conjunto de réplicas ou cluster fragmentado.
Você pode adicionar nós elegíveis a clusters M10+ ou aumentar o número de shards em seu cluster fragmentado.
Opcional: adicione endereços IP a partir dos novos nós de cluster ou shards.
Dependendo da configuração do Gerenciamento de Chaves, talvez seja necessário adicionar endereços IP do nó do Atlas Cluster à lista de acesso KMS do provedor de nuvem, para que o cluster possa se comunicar com o KMS. Para habilitar a comunicação entre o cluster e o KMS:
Envie uma solicitação GET para o endpoint
ipAddresses
. O ponto de extremidade da API retorna uma lista de endereços IP dos novos nós ou fragmentos de cluster, semelhante à seguinte:{ "groupId": "xxx", // ObjectId "services": { "clusters": [ { "clusterName": "Cluster0", "inbound": [ "3.92.113.229", "3.208.110.31", "107.22.44.69" ], // List<String> "outbound": [ "3.92.113.229", "3.208.110.31", "107.22.44.69" ] } ] } } Adicione os endereços IP retornados à lista de acesso IP do seu provedor de nuvem. Você deve modificar sua lista de acesso IP antes que o plano de provisionamento seja revertido. O cluster tenta o provisionamento por até três dias antes que o plano de provisionamento seja revertido devido a restrições de acesso ao IP.
Consulte os pré-requisitos para gerenciar chaves de cliente com AWS, Azure e GCP para obter mais informações.
Validar sua configuração KMS
O Atlas valida sua configuração do KMS:
Quando adiciona ou atualiza credenciais.
A cada 15 minutos.
Sob demanda com o ponto de extremidade da API Encryption at Rest.
O Atlas encerra todos os processos mongod
e mongos
na próxima verificação de validade agendada se uma das seguintes condições existir:
suas credenciais do provedor de gerenciamento de chaves tornam-se inválidas
alguém exclui ou desabilita sua chave de encriptação
Se o Atlas não conseguir conectar ao seu fornecedor de gerenciamento de chaves, o Atlas não desliga os seus processos. O alerta Encryption at Rest KMS network access denied
é habilitado por padrão em todos os novos projetos para comunicar qualquer falha de acesso à rede KMS. Você pode definir suas configurações de alerta.
Se o Atlas desligar os seus clusters, ocorrerão os seguintes eventos:
O Atlas envia um e-mail para o
Project Owner
listando todos os clusters afetados.A página Clusters mostra que o Atlas desativou seus clusters devido a configurações inválidas de Encryption at rest.
Não é possível ler ou gravar dados em clusters desabilitados. Você pode enviar atualizações para clusters desativados, como alterações no tamanho do disco e da instância. O Atlas processa essas alterações quando alguém restaura sua chave de encriptação. A Atlas continua realizando manutenção e aplicando patches de segurança. Os clusters desativados retêm todos os seus dados, portanto a cobrança continua.
Observação
Energia da Virtual Machine
Enquanto um cluster está desabilitado, o Atlas não interrompe a Máquina Virtual (VM) em que o cluster está sendo executado. O Atlas pode executar patches que reinicializam o servidor, mas a energia da VM não é reiniciada.
Para recuperar o acesso aos seus dados:
Atualize suas credenciais se elas tiverem sido alteradas desde a configuração do Atlas com o Gerenciamento de Chaves do Cliente.
Restaure sua chave se ela tiver sido desabilitada ou excluída.
Após atualizar a configuração, clique em Try Again para validá-la. Caso contrário, o Atlas validará na próxima verificação agendada. Todos os processos do mongod
e mongos
reiniciam após o Atlas determinar se a configuração é válida.
Aviso
Se sua chave foi excluída, restaure essa chave para recuperar o acesso aos seus clusters. Você não pode alterar uma chave ou desativar a criptografia em repouso usando o Customer Key Management sem uma chave válida.
Restaurar uma chave excluída
Para restaurar uma chave excluída, consulte a documentação do seu fornecedor de gerenciamento de chaves:
AWS KMS: Excluir chaves mestras do cliente
Cofre de chaves do Azure: Recuperar chave excluída
Backups criptografados
Atlas criptografa todos os volumes de snapshots. Isso protege os dados do cluster no disco. Usando o KMS do seu provedor de nuvem, você pode:
Criptografar seus volumes de armazenamento de snapshots onde você armazena seus backups.
Criptografe os arquivos de dados em snapshots
Acesse snapshots criptografados. Para saber mais, consulte Acessar um snapshot criptografado.
Restaure os snapshots com a chave que estava ativa no momento em que o snapshots foi tirado.
Criptografe os dados de restauração de PIT oplog.
Não é possível restaurar snapshots criptografados com chaves que se tornaram inválidas.
Você não pode ativar backups legados (obsoletos) em clusters criptografados com chaves que você gerencia. Você pode especificar uma programação básica de snapshot que faça backup a cada 6 horas.
Para saber mais sobre gerenciamento de chaves do cliente e backups na nuvem, consulte: