Crittografia di dati inattivi del database in Azure Cosmos DBAzure Cosmos DB database encryption at rest

Il termine "crittografia di dati inattivi" denota in genere la crittografia dei dati su dispositivi di archiviazione non volatili, come ad esempio unità a stato solido (SSD) e dischi rigidi (HDD).Encryption at rest is a phrase that commonly refers to the encryption of data on nonvolatile storage devices, such as solid state drives (SSDs) and hard disk drives (HDDs). Cosmos DB archivia i propri database primari su SSD.Cosmos DB stores its primary databases on SSDs. Gli allegati multimediali e i backup vengono memorizzati nell'archiviazione BLOB di Azure, di cui in genere si esegue il backup su HDD.Its media attachments and backups are stored in Azure Blob storage, which is generally backed up by HDDs. Con il rilascio della crittografia di dati inattivi per Cosmos DB, tutti i database, gli allegati multimediali e i backup vengono ora crittografati.With the release of encryption at rest for Cosmos DB, all your databases, media attachments, and backups are encrypted. Vengono crittografati sia i dati in transito (attraverso la rete), sia quelli inattivi (memoria non volatile), fornendo una crittografia end-to-end.Your data is now encrypted in transit (over the network) and at rest (nonvolatile storage), giving you end-to-end encryption.

In qualità di servizio PaaS, Cosmos DB è molto facile da usare.As a PaaS service, Cosmos DB is very easy to use. Poiché tutti i dati utente archiviati in Cosmos DB sono crittografati sia quando sono inattivi che in transito, non è necessario intraprendere alcuna azione.Because all user data stored in Cosmos DB is encrypted at rest and in transport, you don't have to take any action. In altre parole, per impostazione predefinita, la crittografia dei dati inattivi è attiva.Another way to put this is that encryption at rest is "on" by default. Non è possibile attivarla o disattivarla.There are no controls to turn it off or on. Tale funzionalità è offerta nel soddisfare i contratti di servizio relativi a disponibilità e prestazioni.We provide this feature while we continue to meet our availability and performance SLAs.

Implementare la crittografia di dati inattiviImplement encryption at rest

La crittografia dei dati inattivi viene implementata attraverso una serie di tecnologie di protezione, inclusi i sistemi di archiviazione protetta delle chiavi, le reti crittografate e le API di crittografia.Encryption at rest is implemented by using a number of security technologies, including secure key storage systems, encrypted networks, and cryptographic APIs. I sistemi che decrittografano ed elaborano i dati devono comunicare con i sistemi di gestione delle chiavi.Systems that decrypt and process data have to communicate with systems that manage keys. Il diagramma mostra come viene separata l'archiviazione dei dati crittografati e la gestione delle chiavi.The diagram shows how storage of encrypted data and the management of keys is separated.

Diagramma di progettazione

Il flusso di base di una richiesta dell'utente è il seguente:The basic flow of a user request is as follows:

  • L'account del database utente viene preparato e le chiavi di archiviazione vengono recuperate tramite una richiesta al provider di risorse del servizio di gestione.The user database account is made ready, and storage keys are retrieved via a request to the Management Service Resource Provider.
  • Un utente crea una connessione ad Azure Cosmos DB tramite il trasporto HTTPS/protetto;A user creates a connection to Cosmos DB via HTTPS/secure transport. gli SDK consentono di estrapolare i dettagli.(The SDKs abstract the details.)
  • L'utente invia un documento JSON da archiviare tramite la connessione protetta creata in precedenza.The user sends a JSON document to be stored over the previously created secure connection.
  • Il documento JSON è indicizzato, a meno che l'utente non abbia disabilitato l'indicizzazione.The JSON document is indexed unless the user has turned off indexing.
  • Sia il documento JSON sia i dati dell'indice vengono scritti in un archivio protetto.Both the JSON document and index data are written to secure storage.
  • Periodicamente i dati vengono letti dalla risorsa di archiviazione protetta e viene eseguito il backup nell'archivio BLOB crittografato di Azure.Periodically, data is read from the secure storage and backed up to the Azure Encrypted Blob Store.

Domande frequentiFrequently asked questions

D: A quanto ammonta il costo aggiuntivo dell'Archiviazione di Azure se si abilita la crittografia del servizio di archiviazione?Q: How much more does Azure Storage cost if Storage Service Encryption is enabled?

R: Non sono previsti costi aggiuntivi.A: There is no additional cost.

D: Chi gestisce le chiavi di crittografia?Q: Who manages the encryption keys?

R: Le chiavi vengono gestite da Microsoft.A: The keys are managed by Microsoft.

D: Con quale frequenza vengono ruotate le chiavi di crittografia?Q: How often are encryption keys rotated?

R: Microsoft ha un set di linee guida interne per la rotazione della chiave di crittografia che segue Cosmos DB.A: Microsoft has a set of internal guidelines for encryption key rotation, which Cosmos DB follows. Le linee guida specifiche non vengono pubblicate.The specific guidelines are not published. Microsoft pubblica il Security Development Lifecycle (SDL), che viene considerato un subset di linee guida interne e include procedure consigliate utili per gli sviluppatori.Microsoft does publish the Security Development Lifecycle (SDL), which is seen as a subset of internal guidance and has useful best practices for developers.

D: È possibile usare le proprie chiavi di crittografia?Q: Can I use my own encryption keys?

R: Cosmos DB è un servizio PaaS e l'intento è quello di garantire la semplicità d'uso.A: Cosmos DB is a PaaS service, and we worked hard to keep the service easy to use. Spesso questa domanda viene usata come domanda di proxy per soddisfare un requisito conformità come PCI-DSS.We've noticed this question is often asked as a proxy question for meeting a compliance requirement like PCI-DSS. Nell'ambito della compilazione di questa funzionalità, la collaborazione con i revisori della conformità consente ai clienti che usano Cosmos DB di soddisfare i propri requisiti senza dover gestire personalmente le chiavi.As part of building this feature, we worked with compliance auditors to ensure that customers who use Cosmos DB meet their requirements without the need to manage keys themselves. Di conseguenza attualmente non viene offerta agli utenti la possibilità di farsi carico dell'onere di gestione delle chiavi.As a result, we currently do not offer users the option to burden themselves with key management.

D: In quali aree è attiva la crittografia?Q: What regions have encryption turned on?

R: La crittografia è attiva in tutte le aree di Azure Cosmos DB per tutti i dati utente.A: All Azure Cosmos DB regions have encryption turned on for all user data.

D: La crittografia influisce sui contratti di servizio per latenza delle prestazioni e velocità effettiva?Q: Does encryption affect the performance latency and throughput SLAs?

R: Non si registrano impatti o modifiche in relazione ai contratti di servizio per le prestazioni ora che la crittografia dei dati inattivi è abilitata per tutti gli account nuovi ed esistenti.A: There is no impact or changes to the performance SLAs now that encryption at rest is enabled for all existing and new accounts. Per altre informazioni sulle garanzie più recenti, vedere il Contratto di servizio per Azure Cosmos DB.You can read more on the SLA for Cosmos DB page to see the latest guarantees.

D: L'emulatore locale supporta la crittografia dei dati inattivi?Q: Does the local emulator support encryption at rest?

R: L'emulatore è uno strumento di sviluppo e test autonomo e non usa i servizi di gestione delle chiavi usati dal servizio gestito di Cosmos DB.A: The emulator is a standalone dev/test tool and does not use the key management services that the managed Cosmos DB service uses. È consigliabile abilitare BitLocker sulle unità in cui si archiviano i dati di test sensibili dell'emulatore.Our recommendation is to enable BitLocker on drives where you are storing sensitive emulator test data. L'emulatore supporta la modifica nella directory di dati predefinita e usa un percorso noto.The emulator supports changing the default data directory as well as using a well-known location.

Passaggi successiviNext steps

Per una panoramica della sicurezza di Cosmos DB e dei miglioramenti più recenti, vedere Sicurezza database di Azure Cosmos DB.For an overview of Cosmos DB security and the latest improvements, see Azure Cosmos DB database security. Per altre informazioni sulle certificazioni Microsoft, vedere il Centro protezione di Azure.For more information about Microsoft certifications, see the Azure Trust Center.