Crittografare Azure Data Factory con le chiavi gestite dal cliente

SI APPLICA A: Azure Data Factory Azure Synapse Analytics

Suggerimento

Provare Data Factory in Microsoft Fabric, una soluzione di analisi completa per le aziende. Microsoft Fabric copre tutti gli elementi, dallo spostamento dei dati all'analisi scientifica dei dati, all'analisi in tempo reale, alla business intelligence e alla creazione di report. Scopri come avviare gratuitamente una nuova versione di valutazione .

Azure Data Factory crittografa i dati inattivi, ad esempio le definizioni delle entità e i dati memorizzati nella cache mentre le esecuzioni sono in corso. Per impostazione predefinita, i dati vengono crittografati con una chiave gestita da Microsoft e generata in modo casuale, assegnata in modo univoco alla data factory. Per garanzie di sicurezza aggiuntive, è ora possibile abilitare Bring Your Own Key (BYOK) con la funzionalità chiavi gestite dal cliente in Azure Data Factory. Quando si specifica una chiave gestita dal cliente, per crittografare i dati del cliente Data Factory usa entrambe le chiavi, ovvero la chiave del sistema data factory e la chiave gestita dal cliente. La mancanza di una delle due chiavi può comportare la negazione dell'accesso ai dati e alla factory.

Per archiviare le chiavi gestite dal cliente, è necessario Azure Key Vault. È possibile creare chiavi personalizzate e archiviarle in un insieme di credenziali delle chiavi oppure usare le API Azure Key Vault per generare chiavi. Key Vault e Data Factory devono trovarsi nello stesso tenant di Microsoft Entra e nella stessa area, ma possono trovarsi in sottoscrizioni diverse. Per altre informazioni su Azure Key Vault, vedere Informazioni su Azure Key Vault.

Informazioni sulle chiavi gestite dal cliente

Il diagramma seguente illustra come Data Factory usa l'ID Microsoft Entra e Azure Key Vault per effettuare richieste usando la chiave gestita dal cliente:

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

Nell'elenco seguente vengono illustrati i passaggi numerati nel diagramma:

  1. Un amministratore di Azure Key Vault concede le autorizzazioni per le chiavi di crittografia all'identità gestita associata a Data Factory
  2. Un amministratore di Data Factory abilita la funzionalità chiave gestita dal cliente nella factory
  3. Data Factory usa l'identità gestita associata alla factory per autenticare l'accesso ad Azure Key Vault tramite Microsoft Entra ID
  4. Data Factory esegue il wrapping della chiave di crittografia della factory con la chiave del cliente in Azure Key Vault
  5. Per le operazioni di lettura/scrittura, Data Factory invia richieste ad Azure Key Vault per annullare il wrapping della chiave di crittografia dell'account per l'esecuzione di crittografia e decrittografia

Esistono due modi per aggiungere la crittografia della chiave gestita dal cliente alle data factory. Uno è durante la fase di creazione della factory in portale di Azure e l'altro è dopo la creazione della factory, nell'interfaccia utente di Data Factory.

Prerequisiti - Configurare Azure Key Vault e generare chiavi

Abilitare l'eliminazione temporanea e non eliminare Azure Key Vault

L'uso delle chiavi gestite dal cliente con Data Factory richiede l'impostazione di due proprietà in Key Vault, ovvero Eliminazione temporanea e Do Not Purge (Non eliminare). Queste proprietà possono essere abilitate tramite PowerShell o l'interfaccia della riga di comando di Azure in un insieme di credenziali delle chiavi nuovo o esistente. Per informazioni su come abilitare queste proprietà in un insieme di credenziali delle chiavi esistente, vedere Gestione del ripristino di Azure Key Vault con eliminazione temporanea e protezione dall'eliminazione temporanea

Se si crea un nuovo Azure Key Vault tramite il portale di Azure, le proprietà Eliminazione temporanea e Do Not Purge (Non eliminare) possono essere abilitate come indicato di seguito:

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

Concedere a Data Factory l'accesso ad Azure Key Vault

Assicurarsi che Azure Key Vault e Azure Data Factory si trovino nello stesso tenant di Microsoft Entra e nella stessa area. Dal controllo di accesso di Azure Key Vault concedere alla data factory le autorizzazioni seguenti: Ottenere, Annullare il wrapping della chiave e Eseguire il wrapping della chiave. Queste autorizzazioni sono necessarie per abilitare le chiavi gestite dal cliente in Data Factory.

Generare o caricare la chiave gestita dal cliente in Azure Key Vault

È possibile creare chiavi personalizzate e archiviarle in un insieme di credenziali delle chiavi. In alternativa, è possibile usare le API di Azure Key Vault per generare chiavi. Solo le chiavi RSA sono supportate con la crittografia di Data Factory. È supportato anche RSA-HSM. Per i dettagli, vedere l'articolo relativo alle informazioni su chiavi, segreti e certificati.

Screenshot showing how to generate Customer-Managed Key.

Abilitare chiavi gestite dal cliente

Post-factory creazione nell'interfaccia utente di Data Factory

Questa sezione illustra il processo per aggiungere la crittografia della chiave gestita dal cliente nell'interfaccia utente di Data Factory, dopo la creazione della factory.

Nota

Una chiave gestita dal cliente può essere configurata solo in una data factory vuota. La data factory non può contenere alcuna risorsa, ad esempio servizi collegati, pipeline e flussi di dati. È consigliabile abilitare la chiave gestita dal cliente subito dopo la creazione della factory.

Importante

Questo approccio non funziona con le factory abilitate per la rete virtuale gestita. Prendere in considerazione la route alternativa, se si desidera crittografare tali factory.

  1. Assicurarsi che l'identità del servizio gestita della data factory disponga delle autorizzazioni Get, Unwrap Key e Wrap Key per Key Vault.

  2. Verificare che la data factory sia vuota. La data factory non può contenere risorse come servizi collegati, pipeline e flussi di dati. Per il momento, la distribuzione della chiave gestita dal cliente in una factory non vuota comporterà un errore.

  3. Per individuare l'URI della chiave nel portale di Azure, passare ad Azure Key Vault e selezionare l'impostazione Chiavi. Selezionare la chiave desiderata e quindi selezionare la chiave per visualizzarne le versioni. Selezionare una versione della chiave per visualizzare le impostazioni

  4. Copiare il valore del campo Identificatore chiave, che fornisce l'URI Screenshot of getting key URI from Key Vault.

  5. Avviare il portale di Azure Data Factory e usare la barra di spostamento a sinistra per passare al portale di gestione di Data Factory

  6. Fare clic sull'icona Chiave gestita dal cliente Screenshot how to enable Customer-managed Key in Data Factory UI.

  7. Immettere l'URI per la chiave gestita dal cliente copiata in precedenza

  8. Fare clic su Salva e la crittografia della chiave gestita dal cliente è abilitata per Data Factory

Durante la creazione della factory in portale di Azure

Questa sezione illustra i passaggi per aggiungere la crittografia della chiave gestita dal cliente in portale di Azure durante la distribuzione di factory.

Per crittografare la factory, Data Factory deve prima recuperare la chiave gestita dal cliente da Key Vault. Poiché la distribuzione di factory è ancora in corso, l'identità del servizio gestito non è ancora disponibile per l'autenticazione con Key Vault. Di conseguenza, per usare questo approccio, il cliente deve assegnare un'identità gestita assegnata dall'utente (UA-MI) alla data factory. Si presupporranno i ruoli definiti in UA-MI ed eseguiranno l'autenticazione con Key Vault.

Per altre informazioni sull'identità gestita assegnata dall'utente, vedere Tipi di identità gestite e Assegnazione di ruolo per l'identità gestita assegnata dall'utente.

  1. Assicurarsi che l'identità gestita assegnata dall'utente disponga delle autorizzazioni Get, Unwrap Key e Wrap Key in Key Vault

  2. Nella scheda Avanzate selezionare la casella Abilita crittografia usando una chiave gestita dal clienteScreenshot of Advanced tab for data factory creation experience in Azure portal.

  3. Specificare l'URL per la chiave gestita dal cliente archiviata in Key Vault

  4. Selezionare un'identità gestita assegnata dall'utente appropriata per l'autenticazione con Key Vault

  5. Continuare con la distribuzione factory

Aggiornare la versione della chiave

Quando si crea una nuova versione di una chiave, per usarla è necessario aggiornare la data factory. Seguire passaggi simili, come descritto nella sezione Interfaccia utente di Data Factory, tra cui:

  1. Individuare l'URI per la nuova versione della chiave tramite il portale di Azure Key Vault

  2. Passare all'impostazione Chiave gestita dal cliente

  3. Sostituire il valore e incollarlo nell'URI per la nuova chiave

  4. Fare clic su Salva e Data Factory eseguirà ora la crittografia con la nuova versione della chiave

Usare una chiave diversa

Per modificare la chiave usata per la crittografia di Data Factory, è necessario aggiornare manualmente le impostazioni in Data Factory. Seguire passaggi simili, come descritto nella sezione Interfaccia utente di Data Factory, tra cui:

  1. Individuare l'URI per la nuova chiave tramite il portale di Azure Key Vault

  2. Passare all'impostazione Chiave gestita dal cliente

  3. Sostituire il valore e incollarlo nell'URI per la nuova chiave

  4. Fare clic su Salva e Data Factory eseguirà ora la crittografia con la nuova chiave

Disabilitare le chiavi gestite dal cliente

Per impostazione predefinita, dopo aver abilitato la funzionalità relativa alla chiave gestita dal cliente, non è possibile rimuovere il passaggio di sicurezza aggiuntivo. Si prevede sempre una chiave fornita dal cliente per crittografare i dati e la factory.

Chiave gestita dal cliente e integrazione continua e distribuzione continua

Per impostazione predefinita, la configurazione della chiave gestita dal cliente non è inclusa nel modello di Azure Resource Manager (ARM) di fabbrica. Per includere le impostazioni di crittografia della chiave gestita dal cliente nel modello arm per l'integrazione continua (CI/CD):

  1. Verificare che la factory sia in modalità Git
  2. Passare alla sezione Portale di gestione - Chiave gestita dal cliente
  3. Selezionare l'opzione Includi nel modello di Resource Manager

Screenshot of including customer managed key setting in ARM template.

Le impostazioni seguenti verranno aggiunte nel modello di Resource Manager. Queste proprietà possono essere parametrizzate nelle pipeline di integrazione continua e recapito modificando la configurazione dei parametri di Azure Resource Manager

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

Nota

L'aggiunta dell'impostazione di crittografia ai modelli arm aggiunge un'impostazione a livello di factory che sostituirà altre impostazioni a livello di factory, ad esempio le configurazioni Git, in altri ambienti. Se queste impostazioni sono abilitate in un ambiente con privilegi elevati, ad esempio UAT o PROD, vedere Parametri globali in CI/CD.

Per informazioni sull'uso di Data Factory in più scenari, fare riferimento alle esercitazioni.