Menu Docs
Página inicial do Docs
/
MongoDB Atlas
/ / /

Gerencie Chaves do Cliente com o Azure Key Vault em uma Rede Pública

Nesta página

  • Pré-requisitos
  • Habilitar chaves gerenciadas pelo cliente para um projeto
  • Habilitar o gerenciamento de chaves do cliente para um Atlas cluster
  • Desativar chaves gerenciadas pelo consumidor para um projeto
  • Revogar Acesso a uma Chave de Encriptação
  • Gire seu Identificador de Chave Azure
  • Tópicos relacionados

Observação

Este recurso não está disponível para nenhuma das seguintes implantações:

  • Instâncias sem servidor

  • M0 clusters

  • M2/M5 clusters

  • Clusters flexíveis

Para saber mais,consulte Limites.

Você pode usar uma chave gerenciada pelo cliente (CMK) do Azure Key Vault (AKV) para criptografar ainda mais seus dados em repouso no Atlas. Esta página descreve como configurar o gerenciamento de chave do cliente utilizando o AKV no seu projeto Atlas e nos clusters neste projeto.

Para habilitar chaves gerenciadas pelo cliente com AKV para um projeto MongoDB , você deve:

  • Use um cluster M10 ou superior.

  • Tenha as credenciais da conta Azure e do Key Vault, e o identificador de chave para a chave de criptografia em seu AKV.

    • Para a conta, você deve ter o ID do cliente , o ID do locatário e o segredo.

    • Para o Key Vault, você deve ter a ID da assinatura , o nome do grupo de recursos e o nome do Key Vault.

    Para saber como configurar estes componentes do Azure, consulte a Documentação do Azure do .

    O Atlas utiliza estes recursos ao habilitar encryption at rest para um cluster no projeto Atlas.

  • Se o seu App registrations utilizar políticas de acesso condicional, você deverá permitir solicitações de endereços IP do Plano de Controle do Atlas . Você não precisa habilitar o acesso público ao cofre de chaves.

  • Para ajudar os usuários a criar ou alterar facilmente um cluster, você pode permitir o acesso público à chave. Para restringir o escopo da chave e reduzir os riscos, use controles como TLS e autenticação.

  • Para acesso restrito a intervalos de IP definidos, permita o acesso a partir de endereços IP do Atlas e dos endereços IP públicos dos nós do cluster.

    • Garanta que o Atlas possa se comunicar com seu AKV . Para evitar interrupções de conectividade, atualize sua configuração sempre que os endereços IP do nó alterarem. Por exemplo, talvez seja necessário atualizar suas regras de acesso de entrada.

    • Se você restringir o acesso ao AKV, criará mais complexidade quando os endereços IP mudarem. Por exemplo, ao criar ou atualizar um cluster, você deve conceder acesso no AKV a quaisquer novos endereços IP.

Você deve habilitar a CMK para um projeto antes de habilitá-la em um cluster nesse projeto. Você pode habilitar CMK para um projeto a partir da UI do Atlas e da API de Administração do Atlas .

1
  1. Se ainda não tiver sido exibido, selecione a organização que contém seu projeto no menu Organizations na barra de navegação.

  2. Se ainda não estiver exibido, selecione seu projeto no menu Projects na barra de navegação.

  3. Na barra lateral, clique em Advanced sob o título Security.

    A página Avançado é exibida.

2
3
4

ID do cliente

Insira o Client ID (ou Application ID) do aplicação do Azure. O Active Directory Application deve ter a função de Azure key Vault Reader atribuída a ele.

ID do Inquilino

Insira o Tenant ID (ou Directory ID) do locatário do Active Directory.

Segredo

Insira um dos segredos de cliente não expirados do aplicativo associados ao locatário do Active Directory.

Ambiente Azure

Selecione a nuvem Azure em que seu inquilino do Active Directory se localiza.

5

ID de Inscrição

Insira o Subscription ID do Key Vault.

Nome do Grupo de Recursos

Insira o nome Resource Group de um Azure Resource Group contendo o Key Vault.

Nome do Key Vault

Insira o nome do Key Vault. O grupo de recursos do Key Vault deve corresponder ao Resource Group e o Key Vault deve ter as seguintes políticas de acesso:

  • Operações de Gerenciamento de Chaves

  • GET

  • Operações Criptográficas:

    • ENCRYPT

    • DECRYPT

Observação

Você não pode modificar as credenciais do AKV aqui depois de habilitar e configurar conexões de endpoints privados para o AKV.

6

Identificador de chave

Insira a URL completa da chave criada no Key Vault.

IMPORTANTE: o identificador de chave deve ser fornecido no formato geral do Azure:

https://{keyvault-name}.vault.azure.net/{object-type}/{object-name}/{object-version}
7

Para saber mais, consulte Habilitar e configurar conexões de endpoint privado para um projeto

8

Se você configurou o Atlas utilizando a API de Administração do Atlas para se comunicar com AKV utilizando o Azure Private Link para garantir que todo o tráfego entre o Atlas e o Key Vault ocorra através das interfaces de rede privada do Azure, o Atlas definirá o status do Require Private Networking como Active. Se o status for Inactive, você poderá, opcionalmente, concluir as etapas para Habilitar e configurar conexões de endpoint privado para um projeto se quiser que o Atlas use conexões de endpoint privado para seu AKV.

Observação

O recurso Encryption at rest usando AKV sobre Private Endpoints está disponível por solicitação. Para solicitar essa funcionalidade para seus Atlas , entre em contato com o gerente de conta.

9

O Atlas exibe um banner no console do Atlas durante o processo de criptografia.

1

Exemplo

curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \
--header "Accept: application/vnd.atlas.2024-05-30+json" \
--header "Content-Type: application/vnd.atlas.2024-05-30+json" \
--request PATCH "https://cloud.mongodb.com/api/atlas/v2/groups/66c9e8f1dd6c9960802420e9/encryptionAtRest" \
--data '
{
"azureKeyVault": {
"azureEnvironment": "AZURE",
"clientID": "b054a9ff-b60a-4cb6-8df6-20726eaefce6",
"enabled": true,
"keyIdentifier": "https://test-tf-export.vault.azure.net/keys/test/78b9134f9bc94fda8027a32b4715bf3f",
"keyVaultName": "test-tf-export",
"resourceGroupName": "test-tf-export",
"secret": "",
"subscriptionID": "009774e0-124f-4a69-83e0-ca8cd8acb4e2",
"tenantID": "1f6ef922-9303-402a-bae2-cc68810b023c"
}
}'

Observação

Você não pode modificar as seguintes configurações depois de habilitar e configurar conexões de endpoint privadas para o seu AKV:

  • keyVaultName

  • resourceGroupName

  • subscriptionID

2

Para verificar sua solicitação para habilitar e configurar a criptografia em descanso usando as chaves que você gerencia usando o AKV, envie uma solicitação GET para o endpoint encryptionAtRest .

Exemplo

curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \
--header "Accept: application/vnd.atlas.2024-05-30+json" \
--header "Content-Type: application/vnd.atlas.2024-05-30+json" \
--include \
--request GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/encryptionAtRest"
{
"azureKeyVault": {
"azureEnvironment": "AZURE",
"clientID": "632ff709-32a8-48a3-8224-30d2386fadaf",
"enabled": true,
"keyIdentifier": "https://EXAMPLEKeyVault.vault.azure.net/keys/EXAMPLEKey/d891821e3d364e9eb88fbd3d11807b86",
"keyVaultName": "string",
"requirePrivateNetworking": false,
"resourceGroupName": "string",
"subscriptionID": "a39012fb-d604-4cd1-8841-77f705f3e6d5",
"tenantID": "ee46317d-36a3-4472-a3dd-6549e901da0b",
"valid": true
}
}

Na resposta, enabled é true se o seu projeto foi habilitado com sucesso para Encryption at Rest usando CMK. Você pode configurar redes privadas para garantir que todo o tráfego entre o Atlas e o Key Vault ocorra nas interfaces de rede privadas do Azure. Para saber mais, consulte Habilitar e configurar conexões de endpoint privadas para um projeto.

Após Habilitar Chaves Gerenciadas pelo Cliente para um Projeto, você deve habilitar o gerenciamento de chave do cliente para cada cluster do Atlas que contém 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, alterne a configuração Gerenciar suas próprias chaves de encriptação para Yes quando você criar o cluster.

Para clusters existentes:

1
  1. Se ainda não tiver sido exibido, selecione a organização que contém seu projeto no menu Organizations na barra de navegação.

  2. Se ainda não estiver exibido, selecione o projeto desejado no menu Projects na barra de navegação.

  3. Se ainda não estiver exibido, clique em Clusters na barra lateral.

    A página Clusters é exibida.

2

Para o cluster que contém os dados que você deseja criptografar, clique no botão e selecione Edit Configuration.

3
  1. Expanda o painel Additional Settings.

  2. Alterne a configuração Manage your own encryption keys para Yes.

  3. Verifique o status da configuração Require Private Networking para seu cluster.

    Se você configurou a criptografia em repouso usando CMK (Over Private Networking) para Atlas no nível do projeto, o status é Active. Se você não configurou nenhuma conexão de endpoint privada para seu projeto, o status é Inactive.

4
  1. Clique em Review Changes.

  2. Revise suas alterações e clique em Apply Changes para atualizar seu cluster.

Você deve desabilitar o gerenciamento de chave do consumidor em cada cluster em um projeto antes de poder desabilitar o recurso para o projeto.

Aviso

Não desative ou exclua nenhuma chave AKV usada por qualquer cluster em seu projeto do Atlas antes de desativar o gerenciamento de chaves do consumidor no projeto do Atlas. Se o Atlas não puder acessar uma chave AKV, todos os dados criptografados por essa chave ficarão inacessíveis.

Você pode revogar o acesso do Atlas a uma chave de criptografia no AKV. O Atlas pausa automaticamente seus clusters quando você revoga o acesso à chave de criptografia, a menos que sua lista de acesso IP do AKV restrinja o plano de controle do Atlas.

Para permitir a pausa automática do cluster, você deve:

Observação

O MongoDB adiciona novos endereços IP do plano de controle do Atlas ao longo do tempo. Você deve manter a lista de acesso IP atualizada para permitir a pausa automática do cluster ao usar uma lista de acesso IP para seu AKV.

Se a Lista de acesso IP do AKV restringir o acesso do plano de controle do Atlas quando você revogar o acesso a uma chave de encriptação, você deverá pausar os clusters manualmente para revogar o acesso do Atlas.

Observação

Este recurso não está disponível para nenhuma das seguintes implantações:

  • Instâncias sem servidor

  • M0 clusters

  • M2/M5 clusters

  • Clusters flexíveis

Para saber mais,consulte Limites.

Antes de começar, saiba mais sobre como girar seu identificador de chave Azure.

Você deve criar uma nova chave no AKV associado ao projeto Atlas . O procedimento a seguir documenta como girar o Identificador de Chave do projeto Atlas especificando um novo identificador de chave no Atlas.

1
  1. Se ainda não tiver sido exibido, selecione a organização que contém seu projeto no menu Organizations na barra de navegação.

  2. Se ainda não estiver exibido, selecione seu projeto no menu Projects na barra de navegação.

  3. Na barra lateral, clique em Advanced sob o título Security.

    A página Avançado é exibida.

2
3
  1. Clique em Azure Key Vault se o seletor Azure Key Vault ainda não estiver ativo.

  2. Clique em Encryption Key se o seletor Encryption Key ainda não estiver ativo.

  3. Insira o Identificador de Chave Azure no campo Key Identifier.

    Inclua a URL completa no novo identificador de chave de criptografia. Por exemplo:

    https://mykeyvault.vault.azure.net/keys/AtlasKMSKey/a241124e3d364e9eb99fbd3e11124b23

    Importante

    A chave de criptografia deve pertencer ao Key Vault configurado para o projeto. Clique na seção Key Vault para exibir o Cofre de Chave configurado atualmente para o projeto.

  4. Clique em Update Credentials.

O Atlas exibe um banner na UI do Atlas durante o processo de rotação do Identificador de Chave. Não exclua ou desative o identificador de chave original até que suas alterações sejam implementadas.

Se o cluster usar Fazer Backup do Cluster, não exclua ou desabilite o Identificador de chave original até validar que nenhum snapshot usou essa chave para criptografia.

Voltar

Azure Key Vault