Crittografia dei dati di Azure inattivi

Microsoft Azure include strumenti per proteggere i dati in base alle esigenze di sicurezza e conformità dell'azienda. Questo documento è incentrato su:

  • come proteggere i dati inattivi in Microsoft Azure,
  • i vari componenti che compongono l'implementazione di protezione dei dati,
  • i pro e i contro dei vari principali approcci alla protezione della gestione.

La crittografia dei dati inattivi è un requisito di sicurezza comune. In Azure, le organizzazioni possono crittografare i dati inattivi senza rischi o senza sostenere il costo di una soluzione di gestione delle chiavi personalizzata. Le organizzazioni hanno la possibilità di lasciare che sia Azure a gestire completamente la crittografia dei dati inattivi. Sono inoltre disponibili varie opzioni per gestire con precisione la crittografia o le chiavi di crittografia.

Che cos'è la crittografia dei dati inattivi?

La crittografia è la codifica sicura dei dati usati per proteggere la riservatezza dei dati. La crittografia dei dati inattivi di Azure usa la crittografia simmetrica per crittografare e decrittografare rapidamente grandi quantità di dati in base a un semplice modello concettuale:

  • Viene usata una chiave di crittografia simmetrica per crittografare i dati quando vengono scritti nella risorsa di archiviazione.
  • La chiave di crittografia viene usata per decrittografare i dati durante la loro preparazione per l'uso in memoria.
  • I dati possono essere partizionati ed è possibile usare chiavi diverse per ogni partizione.
  • Le chiavi devono essere archiviate in una posizione sicura con controllo di accesso basato su identità e criteri di controllo. Le chiavi di crittografia dei dati archiviate all'esterno dei percorsi sicuri vengono crittografate con una chiave di crittografia della chiave mantenuta in una posizione sicura.

A livello pratico, gli scenari di gestione e di controllo delle chiavi, nonché le garanzie di scalabilità e disponibilità, richiedono costrutti aggiuntivi. Di seguito sono descritti i concetti e i componenti relativi alla crittografia dei dati inattivi di Microsoft Azure.

Scopo della crittografia dei dati inattivi

La crittografia dei dati inattivi offre la protezione dei dati per i dati archiviati (inattivi). Gli attacchi contro i dati inattivi includono i tentativi di ottenere l'accesso fisico all'hardware in cui sono archiviati i dati e quindi compromettere i dati contenuti. In un attacco di questo tipo, l'unità disco rigido del server potrebbe essere stata usata in maniera impropria durante le attività di manutenzione, consentendo a un utente malintenzionato di rimuovere il disco rigido. L'autore dell'attacco potrà quindi inserire il disco rigido in un computer sotto il proprio controllo per tentare di accedere ai dati.

La crittografia dei dati inattivi è progettata per impedire a un utente malintenzionato di accedere ai dati non crittografati, garantendo che i dati siano crittografati quando sono su disco. Se un utente malintenzionato ottiene un disco rigido con i dati crittografati ma non le chiavi di crittografia, l'autore dell'attacco deve decodificare la crittografia per riuscire a leggere i dati. Questo tipo di attacco è molto più complesso e richiede maggiori risorse rispetto all'accesso a dati non crittografati su un disco rigido. Per questo motivo, la crittografia dei dati inattivi è estremamente utile e costituisce un requisito di alta priorità per molte organizzazioni.

La crittografia dei dati inattivi può essere richiesta anche dalle esigenze di un'organizzazione per le attività di governance e conformità dei dati. Regolamenti governativi e di settore, come HIPAA, PCI e FedRAMP, definiscono specifiche misure di sicurezza relativi ai requisiti di protezione e crittografia dei dati. La crittografia dei dati inattivi è una misura obbligatoria necessaria per la conformità ad alcune di queste normative. Per altre informazioni sull'approccio di Microsoft alla convalida FIPS 140-2, vedere Pubblicazione FIPS (Federal Information Processing Standard) 140-2.

Oltre a soddisfare i requisiti normativi e di conformità, la crittografia dei dati inattivi rappresenta una misura di protezione e difesa avanzata. Microsoft Azure offre una piattaforma conforme per servizi, applicazioni e dati. Offre inoltre funzionalità complete per la sicurezza fisica e delle strutture, il controllo di accesso ai dati e il controllo. Tuttavia, è importante fornire misure di sicurezza aggiuntive "sovrapposte" nel caso in cui una delle altre misure di sicurezza non riesca e la crittografia dei dati inattivi fornisca tale misura di sicurezza.

Microsoft si impegna a mettere a disposizione opzioni per la crittografia dei dati inattivi per i servizi cloud e offre ai clienti il controllo delle chiavi di crittografia e dei log di uso delle chiavi. Microsoft ha inoltre in progetto di applicare la crittografia dei dati inattivi a tutti i dati dei clienti per impostazione predefinita.

Componenti della crittografia dei dati inattivi di Azure

Come descritto in precedenza, l'obiettivo della crittografia dei dati inattivi è crittografare i dati resi persistenti su disco con una chiave di crittografia segreta. Per raggiungere tale obiettivo, sono necessarie funzionalità per la creazione, l'archiviazione, il controllo dell'accesso e la gestione delle chiavi di crittografia. Anche se i dettagli possono variare, i servizi per la crittografia dei dati inattivi di Azure possono essere descritti nei termini illustrati nel diagramma seguente.

Components

Insieme di credenziali chiave di Azure

La posizione di archiviazione delle chiavi di crittografia e il controllo dell'accesso a queste chiavi è essenziale per un modello di crittografia dei dati inattivi. Le chiavi devono essere estremamente protette ma gestibili dagli utenti specificati e disponibili per servizi specifici. Per i servizi di Azure, la soluzione di archiviazione delle chiavi consigliata è Azure Key Vault, che fornisce un'esperienza di gestione comune per tutti i servizi. Le chiavi sono archiviate e gestite in insiemi di credenziali delle chiavi e l'accesso a un insieme di credenziali delle chiavi può essere assegnato a utenti o servizi. Azure Key Vault supporta la creazione di chiavi da parte dei clienti o l'importazione di chiavi dei clienti per l'uso in scenari con chiavi di crittografia gestite dal cliente.

Microsoft Entra ID

Le autorizzazioni per usare le chiavi archiviate in Azure Key Vault, per gestirle o per accedervi per crittografia dei dati inattivi e decrittografia, possono essere concesse agli account Microsoft Entra.

Crittografia busta con una gerarchia di chiavi

Viene usata più di una chiave di crittografia in un'implementazione della crittografia per i dati inattivi. L'archiviazione di una chiave di crittografia in Azure Key Vault garantisce l'accesso sicuro alle chiavi e la gestione centrale delle chiavi. Tuttavia, l'accesso locale al servizio alle chiavi di crittografia è più efficiente per la crittografia e la decrittografia in blocco rispetto all'interazione con Key Vault per ogni operazione di dati, consentendo una crittografia più avanzata e prestazioni migliori. Limitare l'uso di una sola chiave di crittografia riduce il rischio di compromissione della chiave e il costo della ripetizione della crittografia quando è necessario sostituire una chiave. I modelli di crittografia dei dati inattivi di Azure usano la crittografia envelope, in cui una chiave di crittografia della chiave crittografa una chiave di crittografia dei dati. Questo modello costituisce una gerarchia di chiavi che è in grado di soddisfare meglio i requisiti di prestazioni e sicurezza:

  • Chiave DEK (Data Encryption Key): chiave AES256 simmetrica usata per crittografare una partizione o un blocco di dati, talvolta detta semplicemente chiave dati. Una singola risorsa può avere diverse partizioni e più chiavi DEK. La crittografia di ogni blocco di dati con una chiave diversa rende più complessi gli attacchi di crittoanalisi. E mantenere i DEK locali per il servizio che crittografa e decrittografa i dati ottimizzano le prestazioni.
  • Chiave di crittografia della chiave (KEK) : chiave di crittografia usata per crittografare le chiavi di crittografia dei dati usando la crittografia envelope, detta anche wrapping. L'uso di una chiave di crittografia delle chiavi che non lascia mai Key Vault consente di crittografare e controllare le chiavi di crittografia dei dati stesse. L'entità che ha accesso alla chiave KEK può essere diversa dall'entità che richiede la chiave DEK. Un'entità può gestire l'accesso alla chiave DEK per limitare l'accesso di ogni chiave DEK a una partizione specifica. Poiché la chiave kek è necessaria per decrittografare i DEK, i clienti possono cancellare in modo crittografico i DEK e i dati disabilitando la chiave kek.

I provider di risorse e le istanze dell'applicazione archiviano le chiavi di crittografia dei dati crittografate come metadati. Solo un'entità con accesso alla chiave di crittografia della chiave può decrittografare queste chiavi di crittografia dei dati. Sono supportati diversi modelli di archiviazione delle chiavi. Per altre informazioni, vedere Modelli di crittografia dei dati.

Crittografia dei dati inattivi nei servizi cloud Microsoft

I servizi cloud Microsoft vengono usati in tutti e tre i modelli cloud: IaaS, PaaS e SaaS. Di seguito sono riportati alcuni esempi di come si integrano in ciascun modello:

  • Servizi software, definiti Software as a Service o SaaS, che dispongono di applicazioni fornite dal cloud, ad esempio Microsoft 365.
  • Servizi della piattaforma in cui i clienti usano il cloud per operazioni come archiviazione, analisi e funzionalità del bus di servizio nelle applicazioni.
  • Servizi di infrastruttura, o IaaS (Infrastructure as a Service), in cui i clienti distribuiscono sistemi operativi e applicazioni ospitati nel cloud ed eventualmente sfruttano altri servizi cloud.

Crittografia dei dati inattivi per i clienti SaaS

Per i clienti SaaS (Software as a Service) in genere la crittografia dei dati inattivi è abilitata o disponibile in ogni servizio. Microsoft 365 offre diverse opzioni per i clienti per verificare o abilitare la crittografia dei dati inattivi. Per informazioni sui servizi di Microsoft 365, vedere Crittografia in Microsoft 365.

Crittografia dei dati inattivi per i clienti PaaS

I dati del cliente PaaS (Platform as a Service) si trovano in genere in un servizio di archiviazione, ad esempio blob Archiviazione, ma possono anche essere memorizzati nella cache o archiviati nell'ambiente di esecuzione dell'applicazione, ad esempio una macchina virtuale. Per visualizzare le opzioni di crittografia dei dati inattivi disponibili, esaminare la tabella Dei modelli di crittografia dei dati: tabella dei servizi di supporto per le piattaforme di archiviazione e applicazioni usate.

Crittografia dei dati inattivi per i clienti IaaS

I clienti IaaS (Infrastructure as a Service) possono avere un'ampia gamma di servizi e applicazioni in uso. I servizi IaaS possono abilitare la crittografia dei dati inattivi nelle macchine virtuali e nei dischi rigidi virtuali ospitati in Azure usando Crittografia dischi di Azure.

Archiviazione crittografata

Come le soluzioni PaaS, quelle IaaS possono sfruttare altri servizi di Azure che archiviano dati inattivi crittografati. In questi casi, è possibile abilitare il supporto per la crittografia dei dati inattivi come specificato da ogni servizio di Azure in uso. I modelli di crittografia dei dati: la tabella dei servizi di supporto enumera le principali piattaforme di archiviazione, servizi e applicazioni e il modello di crittografia dei dati inattivi supportati.

Calcolo crittografato

Tutti i dischi gestiti, gli snapshot e le immagini vengono crittografati usando Archiviazione crittografia del servizio usando una chiave gestita dal servizio. Una soluzione di crittografia dei dati inattivi più completa garantisce che i dati non vengano mai salvati in forma non crittografata. Durante l'elaborazione dei dati in una macchina virtuale, i dati possono essere salvati in modo permanente nel file di pagina di Windows o nel file di scambio Linux, in un dump di arresto anomalo del sistema o in un registro applicazioni. Per assicurarsi che questi dati inattivi vengano crittografati, le applicazioni IaaS possono usare Crittografia dischi di Azure su una macchina virtuale IaaS di Azure (Windows o Linux) e un disco virtuale.

Crittografia dei dati inattivi personalizzata

È consigliabile che, quando possibile, le applicazioni IaaS sfruttino Crittografia dischi di Azure e le opzioni di crittografia dei dati inattivi fornite da qualsiasi servizio di Azure in uso. In alcuni casi, ad esempio per requisiti di crittografia irregolari o l'archiviazione non basata su Azure, uno sviluppatore di un'applicazione IaaS potrebbe avere bisogno di implementare autonomamente la crittografia dei dati inattivi. Gli sviluppatori di soluzioni IaaS possono ottimizzare l'integrazione con la gestione di Azure le aspettative dei clienti sfruttando determinati componenti di Azure. In particolare, gli sviluppatori devono usare il servizio Azure Key Vault per fornire l'archiviazione protetta delle chiavi, nonché offrire ai clienti opzioni di gestione delle chiavi coerenti con quelle della maggior parte dei servizi della piattaforma Azure. Inoltre, le soluzioni personalizzate devono usare le identità del servizio gestito di Azure per consentire agli account del servizio di accedere alle chiavi di crittografia. Per informazioni per gli sviluppatori su Azure Key Vault e le identità dei servizi gestiti, vedere i rispettivi SDK.

Supporto per il modello di crittografia dei provider di risorse di Azure

Ogni servizio di Microsoft Azure supporta uno o più modelli di crittografia dei dati inattivi. Per alcuni servizi, tuttavia, uno o più dei modelli di crittografia potrebbero non essere applicabili. I servizi che supportano scenari con chiavi gestite dal cliente potrebbero supportare solo un subset dei tipi di chiavi supportati da Azure Key Vault per le chiavi di crittografia della chiave. I servizi possono inoltre rilasciare il supporto per questi scenari e per i tipi di chiave con pianificazioni diverse. In questa sezione viene descritto il supporto per la crittografia dei dati inattivi al momento della stesura del presente documento per ognuno dei principali servizi di archiviazione dati di Azure.

Crittografia dischi di Azure

Tutti i clienti che usano le funzionalità IaaS (Infrastructure as a Service) di Azure possono ottenere la crittografia dei dati inattivi per le macchine virtuali IaaS e i dischi tramite Crittografia dischi di Azure. Per altre informazioni su Crittografia dischi di Azure, vedere Crittografia dischi di Azure per macchine virtuali Linux o Crittografia dischi di Azure per le macchine virtuali Windows.

Archiviazione di Azure

Tutti i servizi Archiviazione di Azure (archiviazione BLOB, Archiviazione code, Archiviazione tabelle e File di Azure) supportano la crittografia dei dati inattivi lato server. Alcuni servizi supportano anche chiavi gestite dal cliente e la crittografia lato client.

database SQL di Azure

Database SQL di Azure attualmente supporta la crittografia dei dati inattivi per gli scenari di crittografia sul lato client e sul lato del servizio gestito da Microsoft.

Il supporto per la crittografia server viene attualmente fornito tramite la funzionalità di SQL denominata Transparent Data Encryption. Una volta che un cliente database SQL di Azure abilita TDE, le chiavi vengono create e gestite automaticamente per loro. La crittografia dei dati inattivi può essere abilitata a livello di database e di server. A partire da giugno 2017, la funzionalità Transparent Data Encryption (TDE) è abilitata per impostazione predefinita nei nuovi database creati. Database SQL di Azure supporta chiavi RSA a 2048 bit gestite dal cliente in Azure Key Vault. Per altre informazioni, vedere Transparent Data Encryption con supporto BYOK (Bring Your Own Key) per il database SQL di Azure e Azure SQL Data Warehouse.

La crittografia lato client dei dati di Database SQL di Azure è supportata tramite la funzionalità Always Encrypted. La funzionalità Always Encrypted usa una chiave creata e archiviata dal client. I clienti possono archiviare la chiave master in un archivio certificati di Windows, in Azure Key Vault o in un modulo di protezione hardware locale. Tramite SQL Server Management Studio, gli utenti SQL possono scegliere la chiave da usare per crittografare ogni colonna.

Conclusione

La protezione dei dati dei clienti archiviati nei servizi di Azure è di importanza fondamentale per Microsoft. Per tutti i servizi di Azure ospitati è prevista la disponibilità di opzioni di crittografia dei dati inattivi. I servizi di Azure supportano chiavi gestite dal servizio, chiavi gestite dal cliente o crittografia lato client. I servizi di Azure migliorano ampiamente la disponibilità della crittografia dei dati inattivi e sono previste nuove opzioni per l'anteprima e la disponibilità generale nei prossimi mesi.

Passaggi successivi