Compartir a través de


DROP DATABASE ENCRYPTION KEY (Transact-SQL)

Se aplica a: SQL Server Azure SQL Instancia administrada Azure Synapse Analytics Analytics Platform System (PDW)

Quita una clave de cifrado de la base de datos que se utiliza en el cifrado transparente de bases de datos. Para obtener más información sobre el cifrado de bases de datos transparente, consulte Cifrado de datos transparente (TDE).

Importante

Se debe conservar la copia de seguridad del certificado que protegía la clave de cifrado de la base de datos incluso aunque el cifrado ya no esté habilitado en una base de datos. Aunque la base de datos ya no se cifre, algunas partes del registro de transacciones pueden seguir estando protegidas y se puede necesitar el certificado para algunas operaciones hasta que se realice la copia de seguridad completa de la base de datos.

Convenciones de sintaxis de Transact-SQL

Sintaxis

DROP DATABASE ENCRYPTION KEY  

Nota:

El grupo de SQL sin servidor no admite esta sintaxis en Azure Synapse Analytics.

Comentarios

Si la base de datos está cifrada, debe quitarse primero el cifrado de la base de datos mediante la instrucción ALTER DATABASE. Espere a que se complete el descifrado antes de quitar la clave de cifrado de la base de datos. Para obtener más información sobre la instrucción ALTER DATABASE, consulte el tema Opciones de ALTER DATABASE SET (Transact-SQL). Para ver el estado de la base de datos, use la vista de administración dinámica sys.dm_database_encryption_keys.

Permisos

Necesita el permiso CONTROL en la base de datos.

Ejemplos

En el ejemplo siguiente se quitan el cifrado de la base de datos y la clave de cifrado de la base de datos.

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  

Ejemplos: Azure Synapse Analytics y Sistema de la plataforma de análisis (PDW)

En este ejemplo se quita el cifrado de datos transparente y luego se quita la clave de cifrado de base de datos.

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  

Consulte también

Cifrado de datos transparente (TDE)
Cifrado de SQL Server
SQL Server y claves de cifrado de base de datos (motor de base de datos)
Jerarquía de cifrado
Opciones de ALTER DATABASE SET (Transact-SQL)
CREATE DATABASE ENCRYPTION KEY (Transact-SQL)
ALTER DATABASE ENCRYPTION KEY (Transact-SQL)
sys.dm_database_encryption_keys (Transact-SQL)