Share via


Criptografar o Azure Data Factory com chaves gerenciadas pelo cliente

APLICA-SE A: Azure Data Factory Azure Synapse Analytics

Dica

Experimente o Data Factory no Microsoft Fabric, uma solução de análise tudo-em-um para empresas. O Microsoft Fabric abrange desde movimentação de dados até ciência de dados, análise em tempo real, business intelligence e relatórios. Saiba como iniciar uma avaliação gratuita!

O Azure Data Factory criptografa dados em repouso, incluindo definições de entidade e todos os dados armazenados em cache enquanto as execuções estão em andamento. Por padrão, os dados são criptografados com uma chave gerenciada pela Microsoft gerada aleatoriamente, atribuída exclusivamente ao seu data factory. Para maior garantia de segurança, agora você pode habilitar a opção BYOK (Bring Your Own Key) com o recurso de chaves gerenciadas pelo cliente no Azure Data Factory. Quando você especifica uma chave gerenciada pelo cliente, o Data Factory usa ambas, a chave de sistema e a CMK, para criptografar os dados do cliente. A ausência de qualquer uma delas resultaria na Negação de Acesso aos dados e ao alocador.

O Azure Key Vault é obrigatório para armazenar as chaves gerenciadas pelo cliente. Você pode criar suas próprias chaves e armazená-las em um cofre de chaves ou pode usar as APIs do Azure Key Vault para gerar chaves. O cofre de chaves e o Data Factory devem estar no mesmo locatário do Microsoft Entra e na mesma região, mas podem estar em assinaturas diferentes. Para obter mais informações sobre o Cofre da Chave do Azure, consulte O que é o Cofre da Chave do Azure?

Sobre as chaves gerenciadas pelo cliente

O diagrama a seguir mostra como o Data Factory usa a ID do Microsoft Entra e o Azure Key Vault para fazer solicitações usando a chave gerenciada pelo cliente:

Diagram showing how customer-managed keys work in Azure Data Factory.

A seguinte lista explica as etapas enumeradas no diagrama:

  1. Um administrador do Azure Key Vault concede permissões a chaves de criptografia para a identidade gerenciada associada ao Data Factory
  2. Um administrador do Data Factory habilita o recurso de chave gerenciada pelo cliente no alocador
  3. O Data Factory usa a identidade gerenciada associada à fábrica para autenticar o acesso ao Azure Key Vault por meio da ID do Microsoft Entra
  4. O Data Factory encapsula a chave de criptografia do alocador com a chave do cliente no Azure Key Vault
  5. Para operações de leitura/gravação, o Data Factory envia solicitações ao Azure Key Vault para desencapsular a chave de criptografia da conta a fim de executar operações de criptografia e descriptografia

Há duas maneiras de adicionar criptografia de chave gerenciada pelo cliente às fábricas de dados. Uma é durante o tempo de criação de fábrica no portal do Azure, e a outra é após a criação da fábrica, na interface do usuário do Data Factory.

Pré-requisitos – Configurar o Azure Key Vault e gerar chaves

Habilitar as propriedades de Exclusão Temporária e Não Limpar no Azure Key Vault

O uso de chaves gerenciadas pelo cliente com o Data Factory exige que duas propriedades sejam definidas no Key Vault: Exclusão Temporária e Não Limpar. Essas propriedades podem ser habilitadas usando o PowerShell ou a CLI do Azure em um cofre de chaves novo ou existente. Para saber como habilitar essas propriedades em um cofre de chaves existente, confira Gerenciamento de recuperação do Azure Key Vault com exclusão temporária e proteção de limpeza

Se você estiver criando um novo Azure Key Vault por meio do portal do Azure, as propriedades Exclusão Temporária e Não Limpar podem ser habilitadas da seguinte maneira:

Screenshot showing how to enable Soft Delete and Purge Protection upon creation of Key Vault.

Permitir ao Data Factory acesso ao Azure Key Vault

Verifique se o Azure Key Vault e o Azure Data Factory estão no mesmo locatário do Microsoft Entra e na mesma região. No controle de acesso do Azure Key Vault, conceda ao data factory as seguintes permissões: Get, Desencapsular Chave e Encapsular Chave. Essas permissões são obrigatórias para habilitar as chaves gerenciadas pelo cliente no Data Factory.

Gerar ou carregar uma chave gerenciada pelo cliente no Azure Key Vault

Você pode criar suas próprias chaves e armazená-las em um cofre de chaves. Ou você pode usar as APIs do Azure Key Vault para gerar chaves. Só há suporte para chaves RSA na criptografia do Data Factory. Também há suporte para RSA-HSM. Para obter mais informações, consulte Sobre chaves, segredos e certificados.

Screenshot showing how to generate Customer-Managed Key.

Habilitar chaves gerenciadas pelo cliente

Criação depois da fábrica na interface do usuário do Data Factory

Esta seção percorre o processo para adicionar a criptografia de chave gerenciada pelo cliente à interface do usuário do Data Factory, depois que a fábrica é criada.

Observação

Uma chave gerenciada pelo cliente só pode ser configurada em um data factory vazio. O data factory não pode conter nenhum recurso, como serviços vinculados, pipelines ou fluxos de dados. É recomendável habilitar a chave gerenciada pelo cliente logo após a criação do alocador.

Importante

Essa abordagem não funciona com fábricas habilitadas para rede virtual gerenciada. Considere a rota alternativa se quiser criptografar tais fábricas.

  1. Verifique se a MSI (Identidade de Serviço Gerenciado) do data factory tem as permissões Get, Desencapsular Chave e Encapsular Chave sobre o Key Vault.

  2. Verifique se o Data Factory está vazio. O data factory não pode conter nenhum recurso, como serviços vinculados, pipelines ou fluxos de dados. Por enquanto, implantar uma chave gerenciada pelo cliente em um alocador não vazio resultará em um erro.

  3. Para localizar o URI da chave no portal do Azure, navegue até o Azure Key Vault e selecione a configuração de Chaves. Selecione a chave desejada, depois clique sobre ela para exibir as versões dela. Selecione uma versão da chave para exibir as configurações

  4. Copie o valor do campo Identificador de Chave, que fornece o URI Screenshot of getting key URI from Key Vault.

  5. Inicie o portal do Azure Data Factory e, usando a barra de navegação à esquerda, vá para o Portal de Gerenciamento do Data Factory

  6. Clique no ícone Chave gerenciada pelo clienteScreenshot how to enable Customer-managed Key in Data Factory UI.

  7. Insira o URI da chave gerenciada pelo cliente que você copiou anteriormente

  8. Clique em Salvar para habilitar a criptografia da chave gerenciada pelo cliente no Data Factory

Durante a criação da fábrica no portal do Azure

Esta seção percorre as etapas para adicionar a criptografia de chave gerenciada pelo cliente no portal do Azure, durante a implantação da fábrica.

Para criptografar a fábrica, o Data Factory precisa primeiro recuperar a chave gerenciada pelo cliente do Key Vault. Como a implantação de fábrica ainda está em andamento, a MSI (Identidade de Serviço Gerenciado) ainda não está disponível para autenticação com o Key Vault. Dessa forma, para usar essa abordagem, o cliente precisa atribuir uma UA-MI (identidade gerenciada atribuída pelo usuário) ao data factory. Vamos pressupor as funções definidas na UA-MI e autenticar com o Key Vault.

Para saber mais sobre a identidade gerenciada atribuída ao usuário, confira os Tipos de identidade gerenciada e as Atribuições de função para identidade gerenciada atribuída ao usuário.

  1. Verifique se a UA-MI (identidade gerenciada atribuída pelo usuário) tem as permissões Get, Desencapsular Chave e Encapsular Chave sobre o Key Vault

  2. Na guia Avançado, marque a caixa Habilitar a criptografia usando uma chave gerenciada pelo clienteScreenshot of Advanced tab for data factory creation experience in Azure portal.

  3. Forneça a URL para a chave gerenciada pelo cliente armazenada no Key Vault

  4. Selecione uma identidade gerenciada atribuída ao usuário apropriada para autenticar com Key Vault

  5. Continuar com a implantação de fábrica

Atualizar a versão da chave

Ao criar uma versão de uma chave, atualize o data factory para usar a nova versão. Siga etapas semelhantes, conforme descrito na seção Interface do usuário do Data Factory, incluindo:

  1. Localize o URI da nova versão da chave por meio do portal do Azure Key Vault

  2. Navegue até as configurações da Chave gerenciada pelo cliente

  3. Substitua e cole o URI da nova chave

  4. Clique em Salvar e o Data Factory passará a criptografar com a nova versão da chave

Usar uma chave diferente

Para alterar a chave usada para a criptografia do Data Factory, você precisa atualizar manualmente as configurações do Data Factory. Siga etapas semelhantes, conforme descrito na seção Interface do usuário do Data Factory, incluindo:

  1. Localize o URI da nova chave por meio do portal do Azure Key Vault

  2. Acesse a configuração Chave gerenciada pelo cliente

  3. Substitua e cole o URI da nova chave

  4. Clique em Salvar e o Data Factory passará a criptografar com a nova chave

Desabilitar as chaves gerenciadas pelo cliente

Por padrão, uma vez que o recurso de chave gerenciada pelo cliente está habilitado, você não pode remover a etapa de segurança extra. Sempre vamos esperar uma chave fornecida pelo cliente para criptografar o alocador e os dados.

Chave gerenciada pelo cliente e integração contínua e implantação contínua

Por padrão, a configuração da CMK não está incluída no modelo do ARM (Azure Resource Manager) do factory. Para incluir as configurações de criptografia de chave gerenciada pelo cliente no modelo do ARM para CI/CD (integração contínua):

  1. Verifique se o factory está no modo Git
  2. Navegue até o portal de gerenciamento, seção da chave gerenciada pelo cliente
  3. Marque a opção Incluir no modelo do ARM

Screenshot of including customer managed key setting in ARM template.

As configurações a seguir serão adicionadas ao modelo do ARM. Essas propriedades podem ser parametrizadas em pipelines de entrega e integração contínua pela edição da configuração de parâmetros do Azure Resource Manager

Screenshot of including customer managed key setting in Azure Resource Manager template.

Observação

A adição da configuração de criptografia aos modelos do ARM inclui uma configuração no nível do factory que substituirá outras configurações no nível do factory, como as configurações do Git, em outros ambientes. Se você tiver essas configurações habilitadas em um ambiente com privilégios elevados, como UAT ou PROD, veja Parâmetros globais na CI/CD.

Percorra os tutoriais para saber mais sobre o uso do Data Factory em mais cenários.