Transparent Data Encryption per database SQL, SQL Istanza gestita e Azure sinapsi AnalyticsTransparent data encryption for SQL Database, SQL Managed Instance, and Azure Synapse Analytics

SI APPLICA A: Database SQL di Azure Istanza gestita di SQL di Azure Azure Synapse Analytics

Transparent Data Encryption (Transparent Data Encryption) consente di proteggere il database SQL di Azure, azure SQL istanza gestita e l'analisi delle sinapsi di Azure contro la minaccia di attività offline dannose mediante la crittografia dei dati inattivi.Transparent data encryption (TDE) helps protect Azure SQL Database, Azure SQL Managed Instance, and Azure Synapse Analytics against the threat of malicious offline activity by encrypting data at rest. Esegue in tempo reale la crittografia e la decrittografia del database, dei backup associati e dei file di log delle transazioni inattivi, senza richiedere modifiche dell'applicazione.It performs real-time encryption and decryption of the database, associated backups, and transaction log files at rest without requiring changes to the application. Per impostazione predefinita, Transparent Data Encryption è abilitato per tutti i nuovi database SQL distribuiti e deve essere abilitato manualmente per i database precedenti del database SQL di Azure, Azure SQL Istanza gestita.By default, TDE is enabled for all newly deployed SQL Databases and must be manually enabled for older databases of Azure SQL Database, Azure SQL Managed Instance. È necessario abilitare manualmente Transparent Data Encryption per Azure sinapsi Analytics.TDE must be manually enabled for Azure Synapse Analytics.

TDE esegue in tempo reale la crittografia e decrittografia dell'I/O dei dati a livello di pagina.TDE performs real-time I/O encryption and decryption of the data at the page level. Ogni pagina viene decrittografata quando letta in memoria e quindi crittografata prima di essere scritta su disco.Each page is decrypted when it's read into memory and then encrypted before being written to disk. Transparent Data Encryption crittografa l'archivio di un intero database utilizzando una chiave simmetrica denominata chiave di crittografia del database.TDE encrypts the storage of an entire database by using a symmetric key called the Database Encryption Key (DEK). All'avvio del database, la crittografia crittografata viene decrittografata e quindi usata per la decrittografia e la ricrittografia dei file di database nel processo del motore di database SQL Server.On database startup, the encrypted DEK is decrypted and then used for decryption and re-encryption of the database files in the SQL Server database engine process. La protezione da Transparent Data Encryption è protetta da crittografia.DEK is protected by the TDE protector. La protezione Transparent Data Encryption è un certificato gestito dal servizio (Transparent Data Encryption gestito dal servizio) o una chiave asimmetrica archiviata nel Azure Key Vault (Transparent Data Encryption gestita dal cliente).TDE protector is either a service-managed certificate (service-managed transparent data encryption) or an asymmetric key stored in Azure Key Vault (customer-managed transparent data encryption).

Per il database SQL di Azure e la sinapsi di Azure, la protezione Transparent Data Encryption è impostata a livello di Server e viene ereditata da tutti i database associati a tale server.For Azure SQL Database and Azure Synapse, the TDE protector is set at the server level and is inherited by all databases associated with that server. Per l'istanza gestita di database SQL di Azure, la protezione TDE è impostata a livello di istanza e viene ereditata da tutti i database crittografati nell'istanza.For Azure SQL Managed Instance, the TDE protector is set at the instance level and it is inherited by all encrypted databases on that instance. Salvo diversa indicazione, in questo documento il termine server fa riferimento sia al server che all'istanza.The term server refers both to server and instance throughout this document, unless stated differently.

Importante

Per impostazione predefinita, tutti i nuovi database creati nel database SQL vengono crittografati tramite Transparent Data Encryption gestito dal servizio.All newly created databases in SQL Database are encrypted by default by using service-managed transparent data encryption. Per impostazione predefinita, i database SQL esistenti creati prima del 2017 e i database SQL creati tramite il ripristino, la replica geografica e la copia del database non sono crittografati.Existing SQL databases created before May 2017 and SQL databases created through restore, geo-replication, and database copy are not encrypted by default. Per impostazione predefinita, i database di SQL Istanza gestita esistenti creati prima del 2019 febbraio non sono crittografati.Existing SQL Managed Instance databases created before February 2019 are not encrypted by default. I database SQL Istanza gestita creati tramite il ripristino ereditano lo stato di crittografia dall'origine.SQL Managed Instance databases created through restore inherit encryption status from the source.

Nota

Non è possibile usare Transparent Data Encryption per crittografare i database di sistema, ad esempio il database Master , nel database SQL di Azure e in azure SQL istanza gestita.TDE cannot be used to encrypt system databases, such as the master database, in Azure SQL Database and Azure SQL Managed Instance. Il database master contiene gli oggetti necessari a eseguire le operazioni di Transparent Data Encryption nei database utente.The master database contains objects that are needed to perform the TDE operations on the user databases. Si consiglia di non archiviare dati sensibili nei database di sistema.It is recommended to not store any sensitive data in the system databases. Viene ora implementato il rollup della crittografia dell'infrastruttura , che consente di crittografare i database di sistema, incluso il master.Infrastructure encryption is now being rolled out which encrypts the system databases including master.

Transparent Data Encryption gestita dal servizioService-managed transparent data encryption

In Azure, l'impostazione predefinita per Transparent Data Encryption è che la chiave di crittografia è protetta da un certificato server incorporato.In Azure, the default setting for TDE is that the DEK is protected by a built-in server certificate. Il certificato server predefinito è univoco per ogni server e l'algoritmo di crittografia usato è AES 256.The built-in server certificate is unique for each server and the encryption algorithm used is AES 256. Se un database si trova in una relazione di replica geografica, il database primario e quello secondario sono protetti dalla chiave del server padre del database primario.If a database is in a geo-replication relationship, both the primary and geo-secondary databases are protected by the primary database's parent server key. Se due database sono connessi allo stesso server, condividono anche lo stesso certificato predefinito.If two databases are connected to the same server, they also share the same built-in certificate. Microsoft ruota automaticamente questi certificati in conformità con i criteri di sicurezza interni e la chiave radice è protetta da un archivio segreti interno di Microsoft.Microsoft automatically rotates these certificates in compliance with the internal security policy and the root key is protected by a Microsoft internal secret store. I clienti possono verificare il database SQL e la conformità SQL Istanza gestita con i criteri di sicurezza interni in report di controllo di terze parti indipendenti disponibili nel Centro protezione Microsoft.Customers can verify SQL Database and SQL Managed Instance compliance with internal security policies in independent third-party audit reports available on the Microsoft Trust Center.

Microsoft inoltre sposta e gestisce le chiavi senza problemi in base alle esigenze per la replica geografica e ne esegue il ripristino.Microsoft also seamlessly moves and manages the keys as needed for geo-replication and restores.

Transparent Data Encryption gestita dal cliente: Bring Your Own KeyCustomer-managed transparent data encryption - Bring Your Own Key

Transparent Data Encryption gestito dal cliente è noto anche come supporto Bring Your Own Key (BYOK) per Transparent Data Encryption.Customer-managed TDE is also referred to as Bring Your Own Key (BYOK) support for TDE. In questo scenario, la protezione Transparent Data Encryption che crittografa la chiave di crittografia è una chiave asimmetrica gestita dal cliente, archiviata in un Azure Key Vault gestito e di proprietà del cliente (sistema di gestione delle chiavi esterne basato sul cloud di Azure) senza mai lasciare l'insieme di credenziali delle chiavi.In this scenario, the TDE Protector that encrypts the DEK is a customer-managed asymmetric key, which is stored in a customer-owned and managed Azure Key Vault (Azure's cloud-based external key management system) and never leaves the key vault. La protezione Transparent Data Encryption può essere generata dall'insieme di credenziali delle chiavi o trasferita nell'insieme di credenziali delle chiavi da un dispositivo del modulo di protezione hardware (HSM) locale.The TDE Protector can be generated by the key vault or transferred to the key vault from an on-premises hardware security module (HSM) device. È necessario concedere le autorizzazioni per il database SQL, il Istanza gestita SQL e la sinapsi di Azure all'insieme di credenziali delle chiavi di proprietà del cliente per decrittografare e crittografare la chiave di crittografia.SQL Database, SQL Managed Instance, and Azure Synapse need to be granted permissions to the customer-owned key vault to decrypt and encrypt the DEK. Se le autorizzazioni del server per l'insieme di credenziali delle chiavi vengono revocate, un database non sarà accessibile e tutti i dati vengono crittografatiIf permissions of the server to the key vault are revoked, a database will be inaccessible, and all data is encrypted

Grazie all'integrazione di TDE con Azure Key Vault, gli utenti possono controllare le attività di gestione delle chiavi, tra cui le rotazioni, i backup e le autorizzazioni dell'insieme di credenziali, nonché abilitare il controllo o il reporting per tutte le protezioni TDE usando Azure Key Vault.With TDE with Azure Key Vault integration, users can control key management tasks including key rotations, key vault permissions, key backups, and enable auditing/reporting on all TDE protectors using Azure Key Vault functionality. Key Vault fornisce una gestione centralizzata delle chiavi, sfrutta HSM strettamente monitorati e consente la separazione dei compiti tra la gestione delle chiavi e dei dati per consentire la conformità ai criteri di sicurezza.Key Vault provides central key management, leverages tightly monitored HSMs, and enables separation of duties between management of keys and data to help meet compliance with security policies. Per altre informazioni su BYOK per il database SQL di Azure e la sinapsi di Azure, vedere Transparent Data Encryption with Azure Key Vault Integration.To learn more about BYOK for Azure SQL Database and Azure Synapse, see Transparent data encryption with Azure Key Vault integration.

Per iniziare a usare Transparent Data Encryption con l'integrazione Azure Key Vault, vedere la Guida alle procedure per attivare la crittografia Transparent Data Encryption usando una chiave personalizzata da Key Vault.To start using TDE with Azure Key Vault integration, see the how-to guide Turn on transparent data encryption by using your own key from Key Vault.

Spostare un database protetto con TDEMove a transparent data encryption-protected database

Non è necessario decrittografare i database per le operazioni all'interno di Azure.You don't need to decrypt databases for operations within Azure. Le impostazioni di Transparent Data Encryption nel database di origine o nel database primario vengono ereditate in modo trasparente nel database di destinazione.The TDE settings on the source database or primary database are transparently inherited on the target. Le operazioni incluse fanno riferimento a:Operations that are included involve:

  • Ripristino geograficoGeo-restore
  • Ripristino temporizzato self-serviceSelf-service point-in-time restore
  • Ripristino di un database eliminatoRestoration of a deleted database
  • Replica geografica attivaActive geo-replication
  • Creazione di una copia del databaseCreation of a database copy
  • Ripristino di un file di backup per Istanza gestita di database SQL di AzureRestore of backup file to Azure SQL Managed Instance

Importante

L'esecuzione del backup manuale di sola copia di un database crittografato tramite Transparent Data Services gestita dal servizio non è supportata nel Istanza gestita SQL di Azure, perché il certificato usato per la crittografia non è accessibile.Taking manual COPY-ONLY backup of a database encrypted by service-managed TDE is not supported in Azure SQL Managed Instance, since the certificate used for encryption is not accessible. Utilizzare la funzionalità di ripristino temporizzato per spostare questo tipo di database in un altro Istanza gestita SQL oppure passare alla chiave gestita dal cliente.Use point-in-time-restore feature to move this type of database to another SQL Managed Instance, or switch to customer-managed key.

Quando si esporta un database protetto con Transparent Data Encryption, il contenuto esportato del database non è crittografato.When you export a TDE-protected database, the exported content of the database isn't encrypted. Questo contenuto esportato viene archiviato in file BACPAC non crittografati.This exported content is stored in unencrypted BACPAC files. Assicurarsi di proteggere i file BACPAC in modo appropriato e di abilitare Transparent Data Encryption al termine dell'importazione del nuovo database.Be sure to protect the BACPAC files appropriately and enable TDE after import of the new database is finished.

Se, ad esempio, il file BACPAC viene esportato da un'istanza di SQL Server, il contenuto importato del nuovo database non viene crittografato automaticamente.For example, if the BACPAC file is exported from a SQL Server instance, the imported content of the new database isn't automatically encrypted. Analogamente, se il file BACPAC viene importato in un'istanza di SQL Server, anche il nuovo database non viene crittografato automaticamente.Likewise, if the BACPAC file is imported to a SQL Server instance, the new database also isn't automatically encrypted.

L'unica eccezione si verifica quando si esporta un database da e verso il database SQL.The one exception is when you export a database to and from SQL Database. Transparent Data Encryption è abilitato nel nuovo database, ma il file BACPAC stesso non è ancora crittografato.TDE is enabled on the new database, but the BACPAC file itself still isn't encrypted.

Gestire Transparent Data EncryptionManage transparent data encryption

Gestire Transparent Data Encryption nel portale di Azure.Manage TDE in the Azure portal.

Per configurare Transparent Data Encryption tramite il portale di Azure, è necessario essere connessi come proprietario, collaboratore o gestore sicurezza SQL di Azure.To configure TDE through the Azure portal, you must be connected as the Azure Owner, Contributor, or SQL Security Manager.

Abilitare e disabilitare Transparent Data Encryption a livello di database.Enable and disable TDE on the database level. Per Azure SQL Istanza gestita usare Transact-SQL (T-SQL) per attivare e disattivare la funzionalità Transparent Data Encryption in un database.For Azure SQL Managed Instance use Transact-SQL (T-SQL) to turn TDE on and off on a database. Per il database SQL di Azure e la sinapsi di Azure, è possibile gestire Transparent Data Encryption per il database nel portale di Azure dopo aver eseguito l'accesso con l'account di amministratore o collaboratore di Azure.For Azure SQL Database and Azure Synapse, you can manage TDE for the database in the Azure portal after you've signed in with the Azure Administrator or Contributor account. Le impostazioni di TDE si trovano nel database utente.Find the TDE settings under your user database. Per impostazione predefinita, viene usata TDE gestita dal servizio.By default, service-managed transparent data encryption is used. Viene generato automaticamente un certificato Transparent Data Encryption per il server che contiene il database.A TDE certificate is automatically generated for the server that contains the database.

Transparent Data Encryption gestita dal servizio

Si imposta la chiave master di Data Encryption, nota come protezione Transparent Data Encryption, a livello di server o di istanza.You set the TDE master key, known as the TDE protector, at the server or instance level. Per usare Transparent Data Encryption con il supporto di BYOK e proteggere i database con una chiave da Key Vault, aprire le impostazioni di Transparent Data Encryption nel server.To use TDE with BYOK support and protect your databases with a key from Key Vault, open the TDE settings under your server.

TDE con supporto Bring Your Own Key