DROP DATABASE ENCRYPTION KEY (Transact-SQL)
Si applica a: SQL Server Istanza gestita di SQL di Azure azure Synapse Analytics Analytics Platform System (PDW)
Elimina una chiave di crittografia del database utilizzata per la crittografia trasparente del database. Per altre informazioni sulla crittografia trasparente del database, vedere Transparent Data Encryption (TDE).
Importante
Il backup del certificato che protegge la chiave di crittografia del database deve essere conservato anche se la crittografia non è più abilitata in un database. Anche se il database non viene più crittografato, è possibile che parti del log delle transazioni restino comunque protette e che il certificato sia necessario per alcune operazioni per l'esecuzione del backup completo del database.
Convenzioni relative alla sintassi Transact-SQL
Sintassi
DROP DATABASE ENCRYPTION KEY
Nota
Questa sintassi non è supportata da pool SQL serverless in Azure Synapse Analytics.
Osservazioni:
Se il database è crittografato, è necessario innanzitutto rimuovere la crittografia dal database utilizzando l'istruzione ALTER DATABASE. Attendere il completamento della decrittografia prima di rimuovere la chiave di crittografia del database. Per altre informazioni sull'istruzione ALTER DATABASE, vedere Opzioni ALTER DATABASE SET (Transact-SQL). Per visualizzare lo stato della crittografia del database, usare la DMV sys.dm_database_encryption_keys.
Autorizzazioni
È richiesta l'autorizzazione CONTROL per il database.
Esempi
Nell'esempio seguente viene rimossa la crittografia del database e viene eliminata la relativa chiave di crittografia.
ALTER DATABASE AdventureWorks2022
SET ENCRYPTION OFF;
GO
/* Wait for decryption operation to complete, look for a
value of 1 in the query below. */
SELECT encryption_state
FROM sys.dm_database_encryption_keys;
GO
USE AdventureWorks2022;
GO
DROP DATABASE ENCRYPTION KEY;
GO
Esempi: Azure Synapse Analytics e Piattaforma di strumenti analitici (PDW)
Nell'esempio seguente viene rimossa la crittografia TDE e viene eliminata la chiave di crittografia del database.
ALTER DATABASE AdventureWorksPDW2012
SET ENCRYPTION OFF;
GO
/* Wait for decryption operation to complete, look for a
value of 1 in the query below. */
WITH dek_encryption_state AS
(
SELECT ISNULL(db_map.database_id, dek.database_id) AS database_id, encryption_state
FROM sys.dm_pdw_nodes_database_encryption_keys AS dek
INNER JOIN sys.pdw_nodes_pdw_physical_databases AS node_db_map
ON dek.database_id = node_db_map.database_id AND dek.pdw_node_id = node_db_map.pdw_node_id
LEFT JOIN sys.pdw_database_mappings AS db_map
ON node_db_map .physical_name = db_map.physical_name
INNER JOIN sys.dm_pdw_nodes AS nodes
ON nodes.pdw_node_id = dek.pdw_node_id
WHERE dek.encryptor_thumbprint <> 0x
)
SELECT TOP 1 encryption_state
FROM dek_encryption_state
WHERE dek_encryption_state.database_id = DB_ID('AdventureWorksPDW2012 ')
ORDER BY (CASE encryption_state WHEN 3 THEN -1 ELSE encryption_state END) DESC;
GO
USE AdventureWorksPDW2012;
GO
DROP DATABASE ENCRYPTION KEY;
GO
Vedi anche
Transparent Data Encryption (TDE)
Crittografia di SQL Server
Chiavi di crittografia del database e di SQL Server (Motore di database)
Gerarchia di crittografia
Opzioni di ALTER DATABASE SET (Transact-SQL)
CREATE DATABASE ENCRYPTION KEY (Transact-SQL)
ALTER DATABASE ENCRYPTION KEY (Transact-SQL)
sys.dm_database_encryption_keys (Transact-SQL)