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.
si applica a:✅database SQL in Microsoft Fabric
Microsoft Fabric crittografa tutti i dati inattivi usando chiavi gestite da Microsoft. Il database SQL archivia tutti i dati in account di archiviazione di Azure remoti. Per rispettare i requisiti di crittografia dei dati inattivi tramite chiavi gestite da Microsoft, ogni account di archiviazione di Azure usato dal database SQL ha la crittografia lato servizio abilitata.
Con le chiavi gestite dal cliente per le aree di lavoro di Fabric, è possibile usare le chiavi di Azure Key Vault per aggiungere un altro livello di protezione ai dati nelle aree di lavoro di Microsoft Fabric, inclusi tutti i dati nel database SQL in Microsoft Fabric. Una chiave gestita dal cliente offre maggiore flessibilità, consentendo di gestire la rotazione, controllare l'accesso e controllare l'utilizzo. Le chiavi gestite dal cliente aiutano anche le organizzazioni a soddisfare le esigenze di governance dei dati e a rispettare gli standard di protezione e crittografia dei dati.
- Quando si configura una chiave gestita dal cliente per un'area di lavoro in Microsoft Fabric, Transparent Data Encryption viene abilitato automaticamente per tutti i database SQL (e
tempdb) all'interno di tale area di lavoro usando la chiave gestita dal cliente specificata. Questo processo è facile e non richiede alcun intervento manuale.- Mentre il processo di crittografia inizia automaticamente per tutti i database SQL esistenti, non è istantaneo. La durata dipende dalle dimensioni di ogni database SQL, con database SQL di dimensioni maggiori che richiedono più tempo per completare la crittografia.
- Dopo aver configurato la chiave gestita dal cliente, anche tutti i database SQL creati nell'area di lavoro vengono crittografati usando la chiave gestita dal cliente.
- Se si rimuove la chiave gestita dal cliente, la decrittografia viene avviata per tutti i database SQL nell'area di lavoro. Analogamente alla crittografia, la decrittografia dipende anche dalle dimensioni del database SQL e può richiedere tempo per il completamento. Dopo la decrittografia, i database SQL tornano a usare chiavi gestite da Microsoft per la crittografia.
Funzionamento di Transparent Data Encryption nel database SQL in Microsoft Fabric
Transparent Data Encryption esegue la crittografia in tempo reale e la decrittografia del database, dei backup associati e dei file di log delle transazioni a riposo.
- Questo processo si verifica a livello di pagina, ovvero ogni pagina viene decrittografata quando si legge in memoria e si ricrittografa prima di essere riscritto su disco.
- Transparent Data Encryption protegge l'intero database usando una chiave simmetrica nota come chiave DEK (Database Encryption Key).
- All'avvio del database, il motore di database di SQL Server decrittografa la chiave DEK e la usa per gestire le operazioni di crittografia e decrittografia.
- La protezione Transparent Data Encryption, in particolare la chiave gestita dal cliente configurata a livello di area di lavoro, protegge la chiave DEK.
Backup e ripristino
Una volta crittografato un database SQL con una chiave gestita dal cliente, anche tutti i backup appena generati vengono crittografati con la stessa chiave.
Quando si modifica la chiave, i backup precedenti del database SQL non vengono aggiornati per usare la chiave più recente. Per ripristinare un backup crittografato con una chiave gestita dal cliente, assicurarsi che il materiale della chiave sia disponibile in Azure Key Vault. Mantenere tutte le versioni precedenti delle chiavi gestite dal cliente in Azure Key Vault in modo che sia possibile ripristinare i backup del database SQL.
Il processo di ripristino del database SQL rispetta sempre l'impostazione dell'area di lavoro chiave gestita dal cliente. La tabella seguente illustra vari scenari di ripristino in base alle impostazioni della chiave gestita dal cliente e al fatto che il backup sia crittografato.
| Il backup è... | Impostazione dell'area di lavoro chiave gestita dal cliente | Stato della crittografia dopo il ripristino |
|---|---|---|
| Non crittografato | Disabled | Il database SQL non è crittografato |
| Non crittografato | Enabled | Il database SQL viene crittografato con la chiave gestita dal cliente |
| Crittografato con la chiave gestita dal cliente | Disabled | Il database SQL non è crittografato |
| Crittografato con la chiave gestita dal cliente | Enabled | Il database SQL viene crittografato con la chiave gestita dal cliente |
| Crittografato con la chiave gestita dal cliente | Abilitata ma diversa chiave gestita dal cliente | Il database SQL viene crittografato con la nuova chiave gestita dal cliente |
Verificare la corretta chiave gestita dal cliente
Dopo aver abilitato la crittografia della chiave gestita dal cliente nell'area di lavoro, il database esistente viene crittografato. Quando la chiave gestita dal cliente è abilitata, viene crittografato anche un nuovo database nell'area di lavoro. Per verificare che il database sia crittografato correttamente, eseguire la query T-SQL seguente:
SELECT DB_NAME(database_id) as DatabaseName, *
FROM sys.dm_database_encryption_keys
WHERE database_id <> 2;
- Un database viene crittografato se il
encryption_state_desccampo viene visualizzatoENCRYPTEDconASYMMETRIC_KEYcomeencryptor_type. - Se lo stato è
ENCRYPTION_IN_PROGRESS, lapercent_completecolonna indica lo stato di avanzamento della modifica dello stato di crittografia. Questo valore è0se non è in corso alcuna modifica dello stato. - Se non è crittografato, un database non viene visualizzato nei risultati della query di
sys.dm_database_encryption_keys.
Risolvere i problemi relativi alla chiave gestita dal cliente inaccessibile
Quando si configura una chiave gestita dal cliente per un'area di lavoro in Microsoft Fabric, il database SQL richiede l'accesso continuo alla chiave per rimanere online. Se il database SQL perde l'accesso alla chiave in Azure Key Vault, fino a 10 minuti il database SQL inizia a negare tutte le connessioni e ne modifica lo stato in Inaccessibile. Gli utenti ricevono un messaggio di errore corrispondente, ad esempio "Il database <database ID>.database.fabric.microsoft.com non è accessibile a causa di un errore critico di Azure Key Vault".
- Se l'accesso alla chiave viene ripristinato entro 30 minuti, il database SQL viene ripristinato automaticamente entro l'ora successiva.
- Se l'accesso alla chiave viene ripristinato dopo più di 30 minuti, la correzione automatica del database SQL non è possibile. Il ripristino del database SQL richiede passaggi aggiuntivi e può richiedere una quantità significativa di tempo a seconda delle dimensioni del database SQL.
Usare la procedura seguente per convalidare nuovamente la chiave gestita dal cliente:
- Nell'area di lavoro, fai clic con il pulsante destro del mouse sul database SQL oppure seleziona il menu di scelta rapida
.... Seleziona Impostazioni. - Selezionare Crittografia.
- Per riconvalidare la chiave gestita dal cliente, selezionare Riconvalida chiave gestita dal cliente. Se la riconvalida ha esito positivo, il ripristino dell'accesso al database SQL può richiedere del tempo.
Annotazioni
Quando si riconvalida la chiave per un database SQL, la chiave viene riconvalidata automaticamente per tutti i database SQL all'interno dell'area di lavoro.
Limitazioni
Limitazioni correnti quando si usa la chiave gestita dal cliente per un database SQL in Microsoft Fabric:
- Le chiavi a 4.096 bit non sono supportate per il database SQL in Microsoft Fabric. Le lunghezze di chiave supportate sono 2.048 bit e 3.072 bit.
- La chiave gestita dal cliente deve essere una chiave RSA o RSA-HSM asimmetrica.