Crittografia dei dati in Azure Data Lake Storage Gen1
La crittografia in Azure Data Lake Storage Gen1 consente di proteggere i dati, implementare criteri di sicurezza aziendali e soddisfare i requisiti di conformità normativi. Questo articolo offre una panoramica della progettazione e illustra alcuni aspetti tecnici dell'implementazione.
Data Lake Storage Gen1 supporta la crittografia dei dati sia inattivi che in transito. Per i dati inattivi, Data Lake Storage Gen1 supporta la crittografia trasparente "attivata per impostazione predefinita". Di seguito è riportata una spiegazione più dettagliata:
- Attivata per impostazione predefinita: quando si crea un nuovo account Data Lake Storage Gen1, l'impostazione predefinita abilita la crittografia. I dati archiviati in Data Lake Storage Gen1 quindi vengono sempre crittografati prima essere archiviati in supporti persistenti. Questo comportamento è valido per tutti i dati e non può essere modificato dopo che un account è stato creato.
- Trasparente: Data Lake Storage Gen1 crittografa automaticamente i dati prima di renderli persistenti e li decrittografa prima di recuperarli. La crittografia viene configurata e gestita a livello di account Data Lake Storage Gen1 da un amministratore. Non vengono apportate modifiche alle API di accesso ai dati. Non sono quindi necessarie modifiche nelle applicazioni e nei servizi che interagiscono con Data Lake Storage Gen1 a causa della crittografia.
Anche i dati in transito (noti anche come dati in movimento) vengono sempre crittografati in Data Lake Storage Gen1. I dati, oltre a essere crittografati prima dell'archiviazione in supporti persistenti, vengono sempre protetti anche mentre sono in transito usando HTTPS. HTTPS è l'unico protocollo supportato per le interfacce REST di Data Lake Storage Gen1. Il diagramma seguente illustra come vengono crittografati i dati in Data Lake Storage Gen1:
Configurare la crittografia con Data Lake Storage Gen1
La crittografia per Data Lake Storage Gen1 viene configurata durante la creazione di un account ed è sempre abilitata per impostazione predefinita. È possibile gestire le chiavi manualmente o consentire a Data Lake Storage Gen1 di gestirle automaticamente (impostazione predefinita).
Per altre informazioni, vedere la Introduzione.
Come funziona la crittografia in Data Lake Storage Gen1
Le informazioni seguenti illustrano come gestire le chiavi di crittografia master e i tre diversi tipi di chiavi che è possibile usare nella crittografia dei dati per Data Lake Storage Gen1.
Chiavi di crittografia master
Data Lake Storage Gen1 offre due modalità per la gestione delle chiavi di crittografia master (MEK). Per il momento si supponga che la chiave di crittografia sia la chiave principale. L'accesso alla chiave di crittografia master è necessario per decrittografare i dati archiviati in Data Lake Storage Gen1.
Le due modalità per la gestione della chiavi di crittografia master sono le seguenti:
- Chiavi gestite dal servizio
- Chiavi gestite dal cliente
In entrambe le modalità la chiave di crittografia master viene protetta archiviandola in Azure Key Vault. Key Vault è un servizio di Azure completamente gestito a sicurezza elevata che può essere usato per proteggere le chiavi crittografiche. Per altre informazioni, vedere Key Vault.
Ecco un breve confronto delle funzionalità offerte dalle due modalità di gestione delle chiavi di crittografia master.
Domanda | Chiavi gestite dal servizio | Chiavi gestite dal cliente |
---|---|---|
Come vengono archiviati i dati? | Vengono sempre crittografati prima dell'archiviazione. | Vengono sempre crittografati prima dell'archiviazione. |
Dove viene archiviata la chiave di crittografia master? | Key Vault | Key Vault |
Vengono archiviate chiavi di crittografia in chiaro al di fuori di Key Vault? | No | No |
La chiave di crittografia master può essere recuperata da Key Vault? | No. La chiave di crittografia master, dopo essere stata archiviata in Key Vault, può solo essere usata per la crittografia e la decrittografia. | No. La chiave di crittografia master, dopo essere stata archiviata in Key Vault, può solo essere usata per la crittografia e la decrittografia. |
Chi è il proprietario dell'istanza di Key Vault e della chiave di crittografia master? | Il servizio Data Lake Storage Gen1 | L'utente è il proprietario dell'istanza di Key Vault, che appartiene alla sottoscrizione di Azure. La chiave di crittografia master in Key Vault può essere gestita dal software o dall'hardware. |
È possibile revocare l'accesso alla chiave di crittografia master (MEK) per il servizio Data Lake Storage Gen1? | No | Sì. È possibile gestire gli elenchi di controllo di accesso in Key Vault e rimuovere le voci di controllo di accesso nell'identità del servizio per il servizio Data Lake Storage Gen1. |
È possibile eliminare definitivamente la chiave di crittografia master? | No | Sì. Se si elimina la chiave di crittografia master da Key Vault, i dati nell'account Data Lake Storage Gen1 non possono essere in alcun modo decrittografati, neppure dal servizio Data Lake Storage Gen1. Se è stato eseguito un backup esplicito della chiave di crittografia master prima di eliminarla da Key Vault, la chiave può essere ripristinata e i dati recuperati. Se tuttavia non è stato eseguito un backup della chiave di crittografia master prima di eliminarla da Key Vault, i dati nell'account Data Lake Storage Gen1 non potranno più essere decrittografati. |
Fatta eccezione per questa differenza, ovvero chi gestisce la chiave di crittografia master e l'istanza di Key Vault in cui si trova, la progettazione è la medesima per entrambe le modalità.
È importante tenere presente quanto segue quando si sceglie la modalità per le chiavi di crittografia master:
- È possibile scegliere se usare chiavi gestite dal cliente o dal servizio quando si effettua il provisioning di un account Data Lake Storage Gen1.
- Dopo il provisioning di un account Data Lake Storage Gen1, non è possibile modificare la modalità.
Crittografia e decrittografia dei dati
Nella progettazione della crittografia dei dati vengono usati tre tipi di chiavi. La tabella seguente contiene un riepilogo:
Chiave | Abbreviazione | Elemento associato | Posizione di archiviazione | Type | Note |
---|---|---|---|---|---|
Chiave di crittografia master | MEK | Un account Data Lake Storage Gen1 | Key Vault | Asimmetrica | Può essere gestita da Data Lake Storage Gen1 o dall'utente. |
Chiave di crittografia dei dati | DEK | Un account Data Lake Storage Gen1 | Risorsa di archiviazione persistente, gestita dal servizio Data Lake Storage Gen1 | Simmetrica | La chiave di crittografia dei dati viene crittografata dalla chiave di crittografia master. È la chiave di crittografia dei dati crittografata a essere archiviata nei supporti persistenti. |
Chiave di crittografia a blocchi | BEK | Un blocco di dati | Nessuno | Simmetrica | La chiave di crittografia a blocchi deriva dalla chiave di crittografia dei dati e dal blocco di dati. |
Il diagramma seguente illustra questi concetti:
Pseudoalgoritmo quando un file deve essere decrittografato:
- Controllare se la chiave di crittografia dei dati per l'account Data Lake Storage Gen1 è memorizzata nella cache e può essere usata.
- In caso contrario, leggere la chiave di crittografia dei dati crittografata dalla risorsa di archiviazione persistente e inviarla a Key Vault per la decrittografia. Memorizzare nella cache la chiave di crittografia dei dati decrittografata. Ora è possibile usarla.
- Per ogni blocco di dati nel file:
- Leggere il blocco di dati crittografato da una risorsa di archiviazione persistente.
- Generare la chiave di crittografia a blocchi dalla chiave di crittografia dei dati e dal blocco di dati crittografato.
- Usare la chiave di crittografia a blocchi per decrittografare i dati.
Pseudoalgoritmo quando un file deve essere crittografato:
- Controllare se la chiave di crittografia dei dati per l'account Data Lake Storage Gen1 è memorizzata nella cache e può essere usata.
- In caso contrario, leggere la chiave di crittografia dei dati crittografata dalla risorsa di archiviazione persistente e inviarla a Key Vault per la decrittografia. Memorizzare nella cache la chiave di crittografia dei dati decrittografata. Ora è possibile usarla.
- Generare una chiave di crittografia a blocchi univoca per il blocco di dati dalla chiave di crittografia dei dati.
- Crittografare il blocco di dati con la chiave di crittografia a blocchi usando la crittografia AES-256.
- Archiviare il blocco di dati crittografato in una risorsa di archiviazione persistente.
Nota
La chiave di crittografia dei dati viene sempre archiviata crittografata dalla chiave di crittografia master nei supporti persistenti o memorizzata nella cache in memoria.
Rotazione delle chiavi
Quando si usano le chiavi gestite dal cliente, è possibile ruotare la chiave di crittografia master. Per informazioni su come configurare un account Data Lake Storage Gen1 con chiavi gestite dal cliente, vedere Introduzione.
Prerequisiti
Quando si è configurato l'account Data Lake Storage Gen1, si è scelto di usare le proprie chiavi. Questa opzione non può essere modificata dopo la creazione dell'account. I passaggi seguenti presuppongono che si usino chiavi gestite dal cliente, ovvero che si siano scelte le chiavi da Key Vault.
Tenere presente che, se si usano le opzioni predefinite per la crittografia, i dati vengono sempre crittografati usando le chiavi gestite da Data Lake Storage Gen1. Con questa opzione l'utente non può ruotare le chiavi perché sono gestite da Data Lake Storage Gen1.
Come ruotare la chiave di crittografia master (MEK) in Data Lake Storage Gen1
Accedere al portale di Azure.
Passare all'istanza di Key Vault in cui sono archiviate le chiavi associate all'account Data Lake Storage Gen1. Selezionare Chiavi.
Selezionare la chiave associata all'account Data Lake Storage Gen1 e creare una nuova versione di questa chiave. Si noti che Data Lake Storage Gen1 attualmente supporta solo la rotazione a una nuova versione di una chiave. Non supporta la rotazione a una chiave diversa.
Passare all'account Data Lake Storage Gen1 e selezionare Crittografia.
Un messaggio notifica che è disponibile una nuova versione della chiave. Fare clic su Ruota chiave per aggiornare la chiave alla nuova versione.
Questa operazione richiederà meno di due minuti e non sono previsti tempi di inattività a causa della rotazione della chiave. Al termine dell'operazione, sarà in uso la nuova versione della chiave.
Importante
Al termine dell'operazione di rotazione delle chiavi, la versione precedente della chiave non viene più usata attivamente per crittografare nuovi dati. Tuttavia, è possibile che l'accesso ai dati meno recenti richieda la chiave precedente. Per consentire la lettura di tali dati meno recenti, non eliminare la chiave precedente