ALTER ASYMMETRIC KEY (Transact-SQL)

Cambia las propiedades de una clave asimétrica.

Icono de vínculo a temasConvenciones de sintaxis de Transact-SQL

Sintaxis

ALTER ASYMMETRIC KEY Asym_Key_Name <alter_option>

<alter_option> ::=
    <password_change_option> 
    | 
    REMOVE PRIVATE KEY
<password_change_option> ::=
    WITH PRIVATE KEY ( <password_option> [ , <password_option> ] )
<password_option> ::=
    ENCRYPTION BY PASSWORD = 'strongPassword'
    |
    DECRYPTION BY PASSWORD = 'oldPassword'

Argumentos

  • Asym_Key_Name
    Es el nombre por el que se conoce la clave asimétrica en la base de datos.

  • REMOVE PRIVATE KEY
    Quita la clave privada de la clave asimétrica. No se quita la clave pública.

  • WITH PRIVATE KEY
    Cambia la protección de la clave privada.

  • ENCRYPTION BY PASSWORD ='stongPassword'
    Especifica una nueva contraseña para proteger la clave privada. password debe cumplir los requisitos de la directiva de contraseñas de Windows del equipo que ejecuta la instancia de SQL Server. Si se omite esta opción, la clave privada se cifrará con la clave maestra de la base de datos.

  • DECRYPTION BY PASSWORD ='oldPassword'
    Especifica la antigua contraseña con la que está protegida la clave privada. No es necesario si la clave privada está cifrada con la clave maestra de la base de datos.

Comentarios

Si no hay una clave maestra de base de datos, es necesaria la opción ENCRYPTION BY PASSWORD y la operación registrará errores si no se proporciona una contraseña. Para obtener información acerca de cómo crear una clave maestra de base de datos, vea CREATE MASTER KEY (Transact-SQL).

Puede utilizar ALTER ASYMMETRIC KEY para cambiar la protección de la clave privada si especifica las opciones de PRIVATE KEY como se muestra en la siguiente tabla.

Cambiar protección de

ENCRYPTION BY PASSWORD

DECRYPTION BY PASSWORD

Antigua contraseña a nueva contraseña

Obligatorio

Obligatorio

Contraseña a clave maestra

Omitir

Obligatorio

Clave maestra a contraseña

Obligatorio

Omitir

Es necesario abrir la clave maestra de la base de datos antes de utilizarla para proteger una clave privada. Para obtener más información, vea OPEN MASTER KEY (Transact-SQL).

Para cambiar la propiedad de una clave asimétrica, utilice ALTER AUTHORIZATION.

Permisos

Requiere el permiso CONTROL en la clave asimétrica si se quita la clave privada.

Ejemplos

A. Cambiar la contraseña de la clave privada

En el siguiente ejemplo se cambia la contraseña utilizada para proteger la clave privada de la clave asimétrica PacificSales09. La nueva contraseña será <enterStrongPasswordHere>.

ALTER ASYMMETRIC KEY PacificSales09 
    WITH PRIVATE KEY (
    DECRYPTION BY PASSWORD = '<oldPassword>',
    ENCRYPTION BY PASSWORD = '<enterStrongPasswordHere>');
GO

B. Quitar la clave privada de una clave asimétrica

En el siguiente ejemplo se quita la clave privada de PacificSales19 y se mantiene solamente la clave pública.

ALTER ASYMMETRIC KEY PacificSales19 REMOVE PRIVATE KEY;
GO

C. Quitar la protección mediante contraseña de una clave privada

En el siguiente ejemplo se quita la protección mediante contraseña de una clave privada y se protege con la clave maestra de la base de datos.

OPEN MASTER KEY;
ALTER ASYMMETRIC KEY PacificSales09 WITH PRIVATE KEY (
    DECRYPTION BY PASSWORD = '<enterStrongPasswordHere>' );
GO