Configurare la crittografia delle colonne usando la procedura guidata Always EncryptedConfigure column encryption using Always Encrypted Wizard

Si applica a:Applies to: sìSQL ServerSQL Server (tutte le versioni supportate) yesSQL ServerSQL Server (all supported versions) Sìdatabase SQL di AzureAzure SQL DatabaseYesdatabase SQL di AzureAzure SQL DatabaseSi applica a:Applies to: sìSQL ServerSQL Server (tutte le versioni supportate) yesSQL ServerSQL Server (all supported versions) Sìdatabase SQL di AzureAzure SQL DatabaseYesdatabase SQL di AzureAzure SQL Database

La procedura guidata Always Encrypted è un potente strumento che consente di impostare la configurazione Always Encrypted desiderata per le colonne di database selezionate.The Always Encrypted Wizard is a powerful tool that allows you to set the desired Always Encrypted configuration for selected database columns. In base alla configurazione corrente e alla configurazione di destinazione desiderata, la procedura guidata è in grado di crittografare una colonna, rimuovere la crittografia o riapplicarla, ad esempio usando una nuova chiave di crittografia della colonna o un tipo di crittografia diverso da quello in uso, configurato per la colonna.Depending on the current configuration and the desired target configuration, the wizard can encrypt a column, decrypt it (remove encryption), or re-encrypt it (for example, using a new column encryption key or an encryption type that is different from the current type, configured for the column). È possibile configurare più colonne in una singola sessione della procedura guidata.Multiple columns can be configured in a single run of the wizard.

La procedura guidata consente di crittografare le colonne con chiavi di crittografia della colonna esistenti. In alternativa, si può scegliere di generare una nuova chiave di crittografia della colonna oppure sia una nuova chiave di crittografia della colonna che una nuova chiave master di colonna.The wizard allows you to encrypt columns with existing column encryption keys, or you can choose to generate a new column encryption key or both a new column encryption key and a new column master key.

La procedura guidata funziona spostando i dati all'esterno del database ed eseguendo operazioni di crittografia all'interno del processo di SSMS.The wizard works by moving data out of the database and performing cryptographic operations within the SSMS process. La procedura guidata crea una o più nuove tabelle con la configurazione di crittografia desiderata nel database, carica tutti i dati dalle tabelle originali, esegue le operazioni di crittografia richieste, carica i dati nelle nuove tabelle e quindi scambia le tabelle originali con le nuove tabelle.The wizard creates a new table (or tables) with the desired encryption configuration in the database, loads all data from the original tables, performs the requested cryptographic operations, uploads the data to the new table(s), and then swaps the original table(s) with the new table(s).

Nota

L'esecuzione di operazioni di crittografia può richiedere molto tempo.Running cryptographic operations can take a long time. Durante questo periodo, il database non è disponibile per la scrittura di transazioni.During that time, your database is not available to write transactions. Per le operazioni di crittografia in tabelle di grandi dimensioni, lo strumento consigliato è PowerShell.PowerShell is a recommended tool for cryptographic operations on larger tables. Vedere Configurare la crittografia delle colonne usando Always Encrypted con PowerShell.See Configure column encryption using Always Encrypted with PowerShell.

Nota

Se si usa SQL Server 2019 (15.x)SQL Server 2019 (15.x) e l'istanza di SQL Server è configurata con un'enclave sicura, è possibile eseguire le operazioni di crittografia sul posto, senza trasferire i dati all'esterno del database.If you are using SQL Server 2019 (15.x)SQL Server 2019 (15.x) and your SQL Server instance is configured with a secure enclave, you can run cryptographic operations in-place, without moving data out of the database. Vedere Configurare la crittografia delle colonne sul posto usando Always Encrypted con enclave sicure.See Configure column encryption in-place using Always Encrypted with secure enclaves. Si noti che la procedura guidata non supporta la crittografia sul posto.Note that the wizard does not support in-place encryption.

Usare PowerShell è una procedura consigliataUse PowerShell is a recommended

AutorizzazioniPermissions

Per eseguire operazioni di crittografia tramite la procedura guidata sono necessarie le autorizzazioni VIEW ANY COLUMN MASTER KEY DEFINITION e VIEW ANY COLUMN ENCRYPTION KEY DEFINITION.To perform cryptographic operations using the wizard, you must have the VIEW ANY COLUMN MASTER KEY DEFINITION and VIEW ANY COLUMN ENCRYPTION KEY DEFINITION permissions. Sono necessarie anche le autorizzazioni dell'archivio chiavi per creare, accedere e usare la chiave master della colonna.You also need key store permissions to create, access and use your column master key. Per informazioni dettagliate sulle autorizzazioni dell'archivio chiavi, vedere Creare e archiviare le chiavi master della colonna per Always Encrypted e trovare una sezione pertinente per l'archivio chiavi.For detailed information on key store permissions, go to Create and store column master keys for Always Encrypted and find a section relevant for your key store.

Aprire la procedura guidata Always EncryptedOpen the Always Encrypted Wizard

È possibile avviare la procedura guidata a tre livelli diversi:You can launch the wizard at three different levels:

  • A livello di database, se si vogliono crittografare più colonne situate in tabelle diverse.At a database level - if you want to encrypt multiple columns located in different tables.
  • A livello di tabella, se si vogliono crittografare più colonne situate nella stessa tabella.At a table level - if you want to encrypt multiple columns located in the same table.
  • A livello di colonna, se si vuole crittografare una specifica colonna.At a column level - if you want to encrypt one specific column.
  1. Connettersi a SQL ServerSQL Server con il componente Esplora oggetti di SQL Server Management StudioSQL Server Management Studio.Connect to your SQL ServerSQL Server with the Object Explorer component of SQL Server Management StudioSQL Server Management Studio.

  2. Per crittografare:To encrypt:

    1. Più colonne situate in una tabella diversa in un database, fare clic con il pulsante destro del mouse sul database, scegliere Attività e quindi selezionare Crittografa colonne.Multiple columns located in different table in a database, right-click your database, point to Tasks, and then select Encrypt Columns.
    2. Più colonne situate nella stessa tabella, passare alla tabella, fare clic con il pulsante destro del mouse su di essa, quindi selezionare Crittografa colonne.Multiple columns located in the same table, navigate to the table, right-click on it, and then select Encrypt Columns.
    3. Una singola colonna, passare alla colonna, fare clic con il pulsante destro del mouse su di essa, quindi selezionare Crittografa colonne.An individual column, navigate to the column, right-click on it, and then select Encrypt Columns.

Pagina Selezione colonnaColumn Selection Page

In questa pagina è possibile selezionare le colonne da crittografare, crittografare nuovamente o decrittografare, oltre che definire la configurazione di crittografia di destinazione per le colonne selezionate.In this page, you select columns you want to encrypt, re-encrypt, or decrypt, and you define the target encryption configuration for the selected columns.

Per crittografare una colonna in testo non crittografato, selezionare un tipo di crittografia (Deterministica o Casuale) e una chiave di crittografia per la colonna.To encrypt a plaintext column (a column that isn't encrypted), select an encryption type (Deterministic or Randomized) and an encryption key for the column.

Per modificare un tipo di crittografia o per ruotare (modificare) una chiave di crittografia della colonna per una colonna già crittografata, selezionare il tipo di crittografia desiderato e la chiave.To change an encryption type or to rotate (change) a column encryption key for an already encrypted column, select the desired encryption type and the key.

Se si vuole che la procedura guidata crittografi o ricrittografi una o più colonne usando una nuova chiave di crittografia della colonna, selezionare una chiave il cui nome contiene (Nuova) .If you want the wizard to encrypt or re-encrypt one or more columns using a new column encryption key, pick a key containing (New) in its name. La procedura guidata genererà la chiave.The wizard will generate the key.

Per decrittografare una colonna attualmente crittografata, selezionare il tipo di crittografia Testo non crittografato.To decrypt a column that is currently encrypted, select Plaintext for the encryption type.

Nota

La procedura guidata non supporta le operazioni di crittografia in tabelle temporali e in memoria.The wizard does not support cryptographic operations on temporal and in-memory tables. È possibile creare tabelle temporali o in memoria vuote usando Transact-SQL e inserire dati usando l'applicazione.You can create empty temporal or in-memory tables using Transact-SQL and insert data using your application.

Pagina Configurazione della chiave masterMaster Key Configuration Page

Se per qualsiasi colonna nella pagina precedente è stata selezionata una chiave di crittografia della colonna generata automaticamente, in questa pagina occorre selezionare una chiave master di colonna esistente oppure configurare una nuova chiave master di colonna che crittograferà la chiave di crittografia della colonna.If you have selected an autogenerated column encryption key for any column on the previous page, in this page you need to either select an existing column master key or configure a new column master key that will encrypt the column encryption key.

Quando si configura una nuova chiave master di colonna, è possibile selezionare una chiave esistente nell'archivio certificati di Windows o in Azure Key Vault e fare in modo che la procedura guidata crei nel database solo un oggetto metadati per la chiave. In alternativa, si può scegliere di generare nel database sia la chiave che l'oggetto metadati che descrive la chiave.When configuring a new column master key, you can either pick an existing key in Windows Certificate Store or in Azure Key Vault and have the wizard to create just a metadata object for the key in the database, or you can choose to generate both the key and the metadata object describing the key in the database.

Per altre informazioni sulla creazione e l'archiviazione delle chiavi master di colonna nell'archivio certificati di Windows, in Azure Key Vault o in altri archivi di chiavi, vedere Creare e archiviare chiavi master della colonna per Always Encrypted.For more information about creating and storing column master keys in Windows Certificate Store, Azure Key Vault or other key stores, see Create and store column master keys for Always Encrypted.

Suggerimento

La procedura guidata consente di esplorare e creare chiavi solo nell'archivio certificati Windows e in Azure Key Vault.The wizard allows you to browse and create keys only in Windows Certificate Store and Azure Key Vault. Inoltre, genera automaticamente i nomi delle nuove chiavi e degli oggetti metadati del database che descrivono le chiavi.It also auto-generates the names of both the new keys and the database metadata objects describing the keys. Per avere un maggiore controllo sulla modalità di provisioning delle chiavi e più possibilità di scelta per un archivio chiavi contenente una chiave master della colonna, è possibile usare le finestre di dialogo Nuova chiave master della colonna e Nuova chiave di crittografia della colonna per creare le chiavi, quindi eseguire la procedura guidata e selezionare le chiavi create.If you need more control for how your keys are provisioned (and more choices for a key store containing your column master key), you can use the New Column Master Key and New Column Encryption Key dialogs to create the keys first, and then run the wizard and pick the keys you have created. Vedere Effettuare il provisioning delle chiavi master di colonna con la finestra di dialogo Nuova chiave master della colonna e Effettuare il provisioning delle chiavi di crittografia di colonna con la finestra di dialogo Nuova chiave di crittografia della colonna.See Provision Column Master Keys with the New Column Master Key Dialog and Provision Column Encryption Keys with the New Column Encryption Key Dialog.

Passaggi successiviNext Steps

Vedere ancheSee Also