Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
In questo articolo
Si applica a:SQL Server
Database SQL di Azure
Istanza gestita di SQL di Azure
Lo strumento Importazione/Esportazione guidata SQL Server consente di copiare dati da un'origine a una destinazione. Questo documento descrive come usare l'Importazione/Esportazione guidata SQL Server se un'origine e/o una destinazione è un database di SQL Server che contiene colonne protette con Always Encrypted.
Con l'Importazione/Esportazione guidata SQL Server è possibile implementare gli scenari seguenti per la migrazione di dati da e verso colonne crittografate.
Se l'origine dati contiene dati in testo non crittografato e la destinazione è un database di SQL Server contenente colonne crittografate, è possibile usare l'Importazione/Esportazione guidata SQL Server per recuperare i dati in testo non crittografato dall'origine, crittografarli e quindi copiarli nelle colonne crittografate del database di destinazione. Per questo scenario di migrazione, l'origine dati può essere qualsiasi archivio dati supportato dall'Importazione/Esportazione guidata SQL Server. Ad esempio, un file, un database di SQL Server o un database in un altro sistema di database.
Per assicurarsi che l'Importazione/Esportazione guidata SQL Server possa crittografare i dati, è necessario abilitare Always Encrypted per la connessione al database di destinazione, oltre che avere accesso alle chiavi che proteggono i dati nelle colonne del database di destinazione. Per altre informazioni, vedere Abilitare e disabilitare Always Encrypted per una connessione di database e Autorizzazioni per crittografare o decrittografare i dati durante la migrazione.
Se si sta eseguendo la migrazione di dati archiviati in colonne di database crittografate in un database di SQL Server, è possibile configurare l'Importazione/Esportazione guidata SQL Server in modo da decrittografare i dati e quindi copiarli in una destinazione, che può essere qualsiasi archivio dati di SQL Server L'Importazione/Esportazione guidata supporta, ad esempio, un file, un database di SQL Server o un database in un altro sistema di database.
Per assicurarsi che l'Importazione/Esportazione guidata SQL Server possa decrittografare i dati, è necessario abilitare Always Encrypted per la connessione al database di origine, oltre che avere accesso alle chiavi che proteggono i dati nelle colonne del database di origine. Per altre informazioni, vedere Abilitare e disabilitare Always Encrypted per una connessione di database e Autorizzazioni per crittografare o decrittografare i dati durante la migrazione.
Se si stanno copiando i dati dalle colonne crittografate di un database di SQL Server di origine alle colonne crittografate nello stesso o in un altro database di SQL Server, è possibile configurare l'Importazione/Esportazione guidata SQL Server in modo da decrittografare i dati dopo averli recuperati dall'origine e quindi crittografarli di nuovo prima di inserirli nelle colonne crittografate del database di destinazione. Usare questo metodo se lo schema delle colonne di destinazione, ad esempio i tipi di dati, i tipi di crittografia e le chiavi di crittografia delle colonne, è diverso dallo schema delle colonne di origine.
Per assicurarsi che l'Importazione/Esportazione guidata SQL Server possa crittografare e decrittografare i dati, è necessario abilitare Always Encrypted per la connessione al database di destinazione e per la connessione al database di destinazione, oltre che avere accesso alle chiavi che proteggono i dati nelle colonne di entrambi i database. Per altre informazioni, vedere Abilitare e disabilitare Always Encrypted per una connessione di database e Autorizzazioni per crittografare o decrittografare i dati durante la migrazione.
Se si stanno copiando i dati dalle colonne crittografate di un database di SQL Server di origine alle colonne crittografate nello stesso o in un altro database di SQL Server e le colonne di destinazione usano esattamente lo stesso schema delle colonne di destinazione (inclusi tipi di dati, tipi di crittografia e chiavi di crittografia delle colonne), è possibile configurare l'Importazione/Esportazione guidata SQL Server in modo da recuperare il testo crittografato dalle colonne di origine e inserire i dati crittografati nelle colonne crittografate del database di SQL Server di destinazione.
Per questo scenario, è possibile usare qualsiasi provider di dati che supporti SQL Server per connettersi al database di SQL Server di origine o di destinazione. Se si usa un provider che supporta Always Encrypted per la connessione al database di destinazione, è necessario assicurarsi che Always Encrypted sia disabilitato per la connessione di database. Per altre informazioni, vedere Abilitare e disabilitare Always Encrypted per una connessione di database.
È anche necessario assicurarsi che l'entità di database (utente) usata dalla procedura guidata di importazione/esportazione di SQL Server per connettersi al database di destinazione sia configurata con l'opzione ALLOW_ENCRYPTED_VALUE_MODIFICATIONS
impostata su ON
. Questa opzione disattiva i controlli sui metadati di crittografia nel server nelle operazioni di copia bulk, il che consente alla procedura guidata di inserire in blocco i dati crittografati nel database di destinazione senza decrittografarli. Per altre informazioni, vedere Caricamento bulk di dati crittografati in colonne protette da Always Encrypted.
Se lo scenario di migrazione richiede che l'Importazione/Esportazione guidata SQL Server sia in grado di crittografare e/o decrittografare i dati, è necessario configurare la connessione al database di SQL Server di origine e/o la connessione al database di SQL Server di destinazione usando un provider di dati che supporti Always Encrypted. È anche necessario abilitare Always Encrypted per la connessione al database di origine e/o di destinazione.
Se non è necessario che la procedura guidata crittografi o decrittografi i dati di una connessione, per tale connessione è possibile usare qualsiasi provider di dati.
I seguenti provider di dati nella procedura guidata di importazione/esportazione di SQL Server supportano Always Encrypted.
- Provider di dati .NET Framework per SQL Server
- Verificare che il computer in cui viene eseguita la procedura guidata usi .NET Framework 4.6.1 o versione successiva.
- Per abilitare Always Encrypted per una connessione, impostare
Column Encryption Setting
suEnabled
nelle proprietà di connessione. Per disabilitare Always Encrypted, impostareColumn Encryption Setting
suDisabled
. Per altre informazioni, vedere Connettersi a SQL Server con il provider di dati .NET Framework per SQL Server e Abilitazione di Always Encrypted per le query dell'applicazione.
- Provider di dati .NET Framework per ODBC.
- Installare Microsoft ODBC Driver 13.1 o versione successiva.
- Per abilitare Always Encrypted per una connessione, impostare
Column Encryption
suEnabled
nelle proprietà di connessione. Per disabilitare Always Encrypted, impostareColumn Encryption
suDisabled
. Per altre informazioni, vedere Connettersi a SQL Server con il driver ODBC per SQL Server e Abilitazione di Always Encrypted in un'applicazione ODBC.
- Per abilitare Always Encrypted per una connessione, impostare
- Installare Microsoft ODBC Driver 13.1 o versione successiva.
Per crittografare o decrittografare i dati archiviati in un database di SQL Server di origine o destinazione, sono necessarie le autorizzazioni VIEW ANY COLUMN MASTER KEY DEFINITION e VIEW ANY COLUMN ENCRYPTION KEY DEFINITION nel database di origine. Sono necessarie anche le autorizzazioni dell'archivio di chiavi per accedere e usare la chiave master della colonna. Per informazioni dettagliate sulle autorizzazioni dell'archivio di chiavi necessarie per le operazioni di gestione delle chiavi, andare a Creare e archiviare chiavi master delle colonne per Always Encrypted e trovare la sezione relativa all'archivio di chiavi.