Crear una copia de seguridad cifrada

Se aplica a:SQL Server

En este artículo se describen los pasos necesarios para crear una copia de seguridad cifrada mediante Transact-SQL. Para ver un ejemplo con SQL Server Management Studio, vea Creación de una copia de seguridad completa de base de datos.

Precaución

Para restaurar una base de datos cifrada, debe tener acceso al certificado o la clave simétrica usados para cifrar la base de datos. Sin el certificado o la clave asimétrica, no se puede restaurar esa base de datos. Guarde el certificado usado para cifrar la clave de cifrado de base de datos durante el tiempo que necesite guardar la copia de seguridad. Para obtener más información, consulte SQL Server Certificates and Asymmetric Keys.

Requisitos previos

  • Almacenamiento para la copia de seguridad cifrada. En función de la opción que elija, una de las siguientes opciones:

    • Un disco local o almacenamiento con espacio suficiente para crear una copia de seguridad de la base de datos.
    • Una cuenta de Azure Storage y un contenedor. Para obtener más información, consulte Creación de una cuenta de almacenamiento.
  • Una clave maestra para la base de datos (DMK) para la base de datos master y un certificado o una clave asimétrica en la instancia de SQL Server. Para conocer los requisitos de cifrado y los permisos, vea Cifrado de copia de seguridad.

Creación de una clave maestra para la base de datos (DMK)

Elija una contraseña para cifrar la copia de la DMK que se almacenará en la base de datos. Conecte con el Motor de base de datos, inicie una nueva ventana de consulta, copie y pegue el siguiente ejemplo y seleccione Ejecutar.

Reemplace <master key password> por una contraseña segura y asegúrese de conservar una copia de la DMK y la contraseña en una ubicación segura.

USE master;
GO

CREATE MASTER KEY ENCRYPTION BY PASSWORD = '<master key password>';
GO

Creación de un certificado de copia de seguridad

Cree un certificado de copia de seguridad en la base de datos master. Copie y pegue el ejemplo siguiente en la ventana de consulta y seleccione Ejecutar.

Use master;
GO

CREATE CERTIFICATE MyTestDBBackupEncryptCert
    WITH SUBJECT = 'MyTestDB Backup Encryption Certificate';
GO

Copia de seguridad de la base de datos con cifrado

Hay dos opciones principales para crear una copia de seguridad cifrada:

  • Copia de seguridad en disco
  • Copia de seguridad en Azure Storage

Siga estos pasos para crear una copia de seguridad cifrada de una base de datos en un disco local. En este ejemplo se utiliza una base de datos de usuario denominada MyTestDB.

Especifique el algoritmo de cifrado y el certificado que se usará. Copie y pegue el ejemplo siguiente en la ventana de consulta y seleccione Ejecutar.

Reemplace <path_to_local_backup> por una ruta de acceso local en la que SQL Server tenga permiso para escribir. Esta ruta de acceso podría ser, por ejemplo, D:\SQLBackup.

BACKUP DATABASE [MyTestDB]
TO DISK = N'<path_to_local_backup>\MyTestDB.bak'
WITH
COMPRESSION,
ENCRYPTION (
    ALGORITHM = AES_256,
    SERVER CERTIFICATE = MyTestDBBackupEncryptCert
),
STATS = 10;
GO

Para obtener un ejemplo sobre cómo cifrar una copia de seguridad protegida por Administración extensible de claves (EKM), vea Administración extensible de claves con Azure Key Vault (SQL Server).