ALTER SERVICE MASTER KEY (Transact-SQL)
Cambia la clave maestra de servicio de una instancia de SQL Server.
Convenciones de sintaxis de Transact-SQL
Sintaxis
ALTER SERVICE MASTER KEY
[ { <regenerate_option> | <recover_option> } ]
|
[ { ADD | DROP } ENCRYPTION BY MACHINE KEY ]
<regenerate_option> ::=
[ FORCE ] REGENERATE
<recover_option> ::=
{ WITH OLD_ACCOUNT = 'account_name' , OLD_PASSWORD = 'password' }
|
{ WITH NEW_ACCOUNT = 'account_name' , NEW_PASSWORD = 'password' }
Argumentos
- FORCE
Indica que la clave maestra de servicio debe volver a generarse, a pesar del riesgo de pérdida de datos. Para obtener más información, vea las explicaciones sobre cómo se cambia la cuenta de servicio de SQL Server más adelante en este tema.
- REGENERATE
Indica que la clave maestra de servicio debe volver a generarse.
- OLD_ACCOUNT ='account_name'
Especifica el nombre de la antigua cuenta de servicio de Windows.
- OLD_PASSWORD ='password'
Especifica la contraseña de la antigua cuenta de servicio de Windows.
- NEW_ACCOUNT ='account_name'
Especifica el nombre de la nueva cuenta de servicio de Windows.
- NEW_PASSWORD ='password'
Especifica la contraseña de la nueva cuenta de servicio de Windows.
Notas
La clave maestra de servicio se vuelve a generar automáticamente la primera vez que se necesita para cifrar una contraseña de servidor vinculado, una credencial o una clave maestra de base de datos. La clave maestra del servicio se cifra mediante la clave del equipo local o la API de protección de datos de Windows. La API utiliza una clave derivada de las credenciales de Windows de la cuenta de servicio de SQL Server.
La clave maestra de servicio sólo puede descifrarse con la cuenta de servicio en la que se creó o con una entidad de seguridad que tenga acceso a las credenciales de Windows de dicha cuenta de servicio. Por consiguiente, si cambia la cuenta de Windows en la que se ejecuta el servicio SQL Server, también deberá permitir que la nueva cuenta descifre la clave maestra de servicio.
Cambiar la cuenta de servicio de SQL Server
Para cambiar la cuenta de servicio de SQL Server, use el Administrador de configuración de SQL Server. Para administrar un cambio de la cuenta de servicio, SQL Server almacena una copia redundante de la clave maestra de servicio protegida por la cuenta de equipo que tiene los permisos necesarios concedidos al grupo de servicio de SQL Server. Si se vuelve a generar el equipo, el mismo usuario de dominio que la cuenta de servicio usaba antes puede recuperar la clave maestra de servicio. Esto no funciona con cuentas locales ni con las cuentas Sistema local, Servicio local o Servicio de red. Cuando vaya a mover SQL Server a otro equipo, migre la clave maestra de servicio utilizando copias de seguridad y restauración.
La frase REGENERATE vuelve a generar la clave maestra de servicio. Si se vuelve a generar la clave maestra de servicio, SQL Server descifra todas las claves cifradas con ella y, a continuación, vuelve a cifrarlas con la nueva clave maestra de servicio. Es una operación que requiere un uso intensivo de los recursos. Por ello, debe programarse durante un período de baja demanda, a menos que la clave se encuentre en peligro. Si se producen errores durante cualquier descifrado, se producirán errores en toda la instrucción.
La opción FORCE hace que el proceso para volver a crear la clave continúe aunque no pueda recuperar la clave maestra actual o no pueda descifrar todas las claves privadas cifradas con ella. Utilice FORCE sólo si se producen errores al volver a generar la clave y no puede restaurar la clave maestra de servicio con la instrucción RESTORE SERVICE MASTER KEY.
Advertencia: |
---|
La clave maestra de servicio es la raíz de la jerarquía de cifrado de SQL Server. La clave maestra de servicio protege directa o indirectamente las demás claves y secretos del árbol. Si no es posible descifrar una clave dependiente durante una regeneración forzada, se perderán los datos que protege la clave. |
Las opciones de MACHINE KEY permiten agregar o quitar el cifrado mediante la clave del equipo.
Permisos
Requiere el permiso CONTROL SERVER en el servidor.
Ejemplos
En el siguiente ejemplo se vuelve a generar la clave maestra de servicio.
ALTER SERVICE MASTER KEY REGENERATE;
GO
Vea también
Referencia
RESTORE SERVICE MASTER KEY (Transact-SQL)
BACKUP SERVICE MASTER KEY (Transact-SQL)