Partilhar via


Habilitar a criptografia de dados com chaves gerenciadas pelo cliente no Azure Cosmos DB para PostgreSQL

Importante

O Azure Cosmos DB para PostgreSQL não tem mais suporte para novos projetos. Não use este serviço para novos projetos. Em vez disso, use um destes dois serviços:

  • Use o Azure Cosmos DB para NoSQL para obter uma solução de banco de dados distribuído projetada para cenários de alta escala com um SLA (contrato de nível de serviço) de disponibilidade de 99.999%, dimensionamento automático instantâneo e failover automático em várias regiões.

  • Use a funcionalidade de Clusters Elásticos do Azure para PostgreSQL para PostgreSQL fragmentado, utilizando a extensão Citus de código aberto.

Pré-requisitos

  • Uma conta existente do Azure Cosmos DB para PostgreSQL.

Habilite a criptografia de dados com chaves gerenciadas pelo cliente

Importante

Crie todos os recursos a seguir na mesma região onde seu cluster do Azure Cosmos DB para PostgreSQL será implantado.

  1. Crie uma identidade gerida atribuída pelo utilizador. Atualmente, o Azure Cosmos DB para PostgreSQL dá suporte apenas a identidades gerenciadas atribuídas pelo usuário.

  2. Crie um Cofre da Chave do Azure e adicione uma política de acesso à Identidade Gerenciada Atribuída pelo Usuário criada com as seguintes permissões de chave: Get, Unwrap Key e Wrap Key.

  3. Gere uma chave no cofre de chaves (tipos de chave suportados: RSA 2048, 3071, 4096).

  4. Selecione a opção de criptografia de chave gerenciada pelo cliente durante a criação do cluster do Azure Cosmos DB para PostgreSQL e selecione a identidade gerenciada atribuída pelo usuário, o cofre de chaves e a chave criados nas etapas 1, 2 e 3.

Passos detalhados

Identidade gerida atribuída pelo utilizador

  1. Pesquise identidades gerenciadas na barra de pesquisa global.

    Captura de ecrã de Identidades Geridas no portal do Azure.

  2. Crie uma nova identidade gerenciada atribuída ao usuário na mesma região do cluster do Azure Cosmos DB para PostgreSQL.

    Captura de ecrã da página Identidade gerida atribuída pelo utilizador no portal do Azure.

Saiba mais sobre a identidade gerenciada atribuída pelo usuário.

Cofre de Chaves

Usar chaves gerenciadas pelo cliente com o Azure Cosmos DB para PostgreSQL exige que você defina duas propriedades na instância do Cofre de Chaves do Azure que você planeja usar para hospedar suas chaves de criptografia: Proteção de Exclusão Suave e Proteção de Limpeza.

  1. Se você criar uma nova instância do Azure Key Vault, habilite estas propriedades durante a criação:

    Captura de ecrã das propriedades do Key Vault.

  2. Se estiver a utilizar uma instância existente do Azure Key Vault, pode verificar se estas propriedades estão ativadas consultando a secção Propriedades no portal do Azure. Se alguma dessas propriedades não estiver ativada, consulte as seções "Ativar a exclusão flexível" e "Ativar a proteção contra a eliminação" em um dos artigos a seguir.

  3. O Cofre Principal deve ser configurado para 90 dias para reter cofres eliminados. Se o Cofre de chaves existente estiver configurado com um número menor, você precisará criar um novo cofre de chaves, pois essa configuração não poderá ser modificada após a criação.

    Importante

    Sua instância do Azure Key Vault deve permitir o acesso público de todas as redes.

Adicionar uma Política de Acesso ao Cofre da Chave

  1. No portal do Azure, vá para a instância do Cofre de Chaves do Azure que você planeja usar para hospedar suas chaves de criptografia. Selecione Configuração de acesso no menu à esquerda. Verifique se a política de acesso do Vault está selecionada em Modelo de permissão e, em seguida, selecione Ir para políticas de acesso.

    Captura de ecrã da configuração de acesso do Key Vault.

  2. Selecione + Criar.

  3. Na guia Permissões, no menu suspenso Permissões de chave, selecione Obter, Desembrulhar Chave e Encapsular Chave.

    Captura de ecrã das definições de permissões do Key Vault.

  4. Na guia Principal, selecione a Identidade gerenciada atribuída ao usuário que você criou na etapa de pré-requisito.

  5. Navegue até Rever + criar, selecione Criar.

Criar / Importar Chave

  1. No portal do Azure, vá para a instância do Cofre de Chaves do Azure que você planeja usar para hospedar suas chaves de criptografia.

  2. Selecione Teclas no menu esquerdo e, em seguida, selecione +Gerar/Importar.

    Captura de ecrã da página Geração de chaves.

  3. A chave gerenciada pelo cliente a ser usada para criptografar a DEK só pode ser do tipo de chave RSA assimétrica. Todos os tamanhos de chave RSA 2048, 3072 e 4096 são suportados.

  4. A data de ativação da chave (se definida) deve ser uma data e hora no passado. A data de expiração (se definida) deve ser uma data e hora futuras.

  5. A chave deve estar no estado Ativado.

  6. Se estiver a importar uma chave existente para o cofre de chaves, certifique-se de que a fornece nos formatos de ficheiro suportados (.pfx, .byok, .backup).

  7. Se você estiver girando manualmente a chave, a versão antiga da chave não deve ser excluída por pelo menos 24 horas.

Habilitar a criptografia CMK durante o provisionamento de um novo cluster

  1. Durante o provisionamento de um novo cluster do Azure Cosmos DB para PostgreSQL, depois de fornecer as informações necessárias nas guias Noções básicas e Rede, navegue até a guia Criptografia . Captura de ecrã da página de configuração do Encrytion.

  2. Selecione Chave gerenciada pelo cliente na opção Chave de criptografia de dados.

  3. Selecione a identidade gerenciada atribuída ao usuário criada na seção anterior.

  4. Selecione o cofre de chaves criado na etapa anterior, que tem a política de acesso à identidade gerenciada pelo usuário selecionada na etapa anterior.

  5. Selecione a chave criada na etapa anterior e, em seguida, selecione Revisar + criar.

  6. Depois que o cluster for criado, verifique se a criptografia CMK está habilitada navegando até a folha Criptografia de Dados do cluster do Azure Cosmos DB para PostgreSQL no portal do Azure. Captura de ecrã do separador Encriptação de Dados.

Nota

A criptografia de dados só pode ser configurada durante a criação de um novo cluster e não pode ser atualizada em um cluster existente. Uma solução alternativa para atualizar a configuração de criptografia em um cluster existente é executar uma restauração de cluster e configurar a criptografia de dados durante a criação do cluster recém-restaurado.

Elevada disponibilidade

Quando a criptografia CMK é habilitada no cluster primário, todos os nós em espera HA são automaticamente criptografados pela chave do cluster primário.

Alterando a configuração de criptografia executando um PITR

A configuração de criptografia pode ser alterada de criptografia gerenciada por serviço para criptografia gerenciada pelo cliente ou vice-versa durante a execução de uma operação de restauração de cluster (PITR - restauração point-in-time).

  1. Navegue até a seção Criptografia de dados e selecione Iniciar a operação de restauração. Como alternativa, você pode executar o PITR selecionando a opção Restaurar na folha Visão geral . Captura de ecrã de PITR.

  2. Você pode alterar/configurar a criptografia de dados na guia Criptografia da página de restauração do cluster.

Monitorizar a chave gerida pelo cliente no Cofre de Chaves

Para monitorar o estado do banco de dados e habilitar o alerta para a perda de acesso transparente do protetor de criptografia de dados, configure os seguintes recursos do Azure:

  • Azure Resource Health: um banco de dados inacessível que perdeu o acesso à Chave do Cliente é exibido como "Inacessível" após a primeira conexão com o banco de dados ter sido negada.

  • Registo de atividades: Quando o acesso à Chave do Cliente no Cofre de Chaves gerido pelo cliente falha, são adicionadas entradas ao registo de atividades. Você pode restabelecer o acesso o mais rápido possível, se criar alertas para esses eventos.

  • Grupos de ação: defina esses grupos para enviar notificações e alertas com base em sua preferência.

Próximos passos