Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Se aplica a:SQL Server
Este artículo describe cómo restaurar una clave maestra de base de datos en SQL Server utilizando Transact-SQL. La clave maestra de la base de datos cifra otras claves y certificados dentro de una base de datos. Si se elimina o corrompe, SQL Server podría no poder descifrar esas claves y los datos cifrados con ellas se pierdan efectivamente. Restaura la clave maestra de la base de datos desde una copia de seguridad para recuperar el acceso a esas claves.
Limitations
Cuando restauras la clave maestra de la base de datos, SQL Server descifra todas las claves cifradas con la clave maestra de la base de datos activa, y luego las cifra con la clave maestra restaurada de la base de datos. Programar esta operación intensiva en recursos durante un periodo de baja demanda. Si la clave maestra actual de la base de datos no está abierta o no puede abrirse, o si alguna de las claves cifradas por ella no puede descifrarse, la operación de restauración falla.
Si alguna de las descifraciones falla, falla la restauración. Puedes usar la FORCE opción para ignorar errores, pero esta opción provoca la pérdida de cualquier dato que no se pueda descifrar.
Si la clave maestra de servicio cifra la clave maestra de la base de datos, también cifra la clave maestra restaurada de la base de datos.
Si no hay una clave maestra de base de datos en la base de datos actual, RESTORE MASTER KEY se crea una clave maestra de base de datos. La clave maestra de servicio no cifra automáticamente la nueva clave maestra de la base de datos.
Permisos
Requiere permiso CONTROL en la base de datos.
Restaurar la clave maestra de la base de datos
Los ejemplos de código de este artículo usan la base de datos de ejemplo de AdventureWorks2025 o AdventureWorksDW2025, que puede descargar de la página principal de Ejemplos de Microsoft SQL Server y proyectos de comunidad.
Recupere una copia de seguridad de la clave maestra de la base de datos, ya sea desde un medio físico de copia de seguridad o desde un directorio del sistema de archivos local.
Conéctate a la instancia de SQL Server que contiene la clave maestra de la base de datos que quieres restaurar. Puede conectarse a una instancia de SQL Server mediante cualquier herramienta de cliente SQL Server conocida, como sqlcmd, SQL Server Management Studio (SSMS) o la extensión MSSQL para Visual Studio Code.
Revisa y ejecuta el siguiente script Transact-SQL.
En este ejemplo:
Restauras la clave maestra de la base de datos para
AdventureWorks2025desdeC:\Temp\AdventureWorks2025_master_key.Configuras una nueva contraseña
<new-password>de cifrado. Cambia estos ajustes para que se ajusten a tu entorno.
Caution
Necesitas la nueva contraseña para abrir la clave maestra de la base de datos en el futuro. Asegúrate de guardar esta contraseña de forma segura y protegida.
USE AdventureWorks2025; GO RESTORE MASTER KEY FROM FILE = 'C:\Backups\Keys\AdventureWorks2025_master_key' DECRYPTION BY PASSWORD = '<password>' ENCRYPTION BY PASSWORD = '<new-password>'; GO