ALTER SYMMETRIC KEY (Transact-SQL)

Cambia las propiedades de una clave simétrica.

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

Sintaxis

ALTER SYMMETRIC KEY Key_name <alter_option>

<alter_option> ::=
   ADD ENCRYPTION BY <encrypting_mechanism> [ , ... n ]
   | 
   DROP ENCRYPTION BY <encrypting_mechanism> [ , ... n ]

<encrypting_mechanism> ::=
   CERTIFICATE certificate_name
   |
   PASSWORD = 'password'
   |
   SYMMETRIC KEY Symmetric_Key_Name
   |
   ASYMMETRIC KEY Asym_Key_Name

Argumentos

  • Key_name
    Es el nombre por el que se conoce la clave simétrica en la base de datos.
  • ADD ENCRYPTION BY
    Agrega el cifrado utilizando el método especificado.
  • DROP ENCRYPTION BY
    Quita el cifrado utilizando el método especificado. No es posible quitar todos los cifrados de una clave simétrica.
  • CERTIFICATE Certificate_name
    Especifica el certificado que se utiliza para cifrar la clave simétrica. El certificado debe existir en la base de datos.
  • PASSWORD ='password'
    Especifica la contraseña que se utiliza para cifrar la clave simétrica.
  • SYMMETRIC KEY Symmetric_Key_Name
    Especifica la clave simétrica que se utiliza para cifrar la clave simétrica que se va a cambiar. La clave simétrica debe existir en la base de datos y debe estar abierta.
  • ASYMMETRIC KEY Asym_Key_Name
    Especifica la clave asimétrica que se utiliza para cifrar la clave simétrica que se va a cambiar. La clave asimétrica debe existir en la base de datos.

Notas

ms189440.Caution(es-es,SQL.90).gifAdvertencia:
Si se utiliza una contraseña para cifrar una clave simétrica, en lugar de la clave pública de la clave maestra de base de datos, se utiliza el algoritmo de cifrado TRIPLE_DES. Por ello, las claves creadas con un algoritmo de cifrado seguro, como AES, se protegen mediante un algoritmo menos seguro.

Para cambiar el cifrado de la clave simétrica, utilice las frases ADD ENCRYPTION y DROP ENCRYPTION. No es posible dejar una clave completamente sin cifrado. Por ello, la práctica recomendada es agregar la nueva forma de cifrado antes de quitar la antigua forma de cifrado.

Para cambiar el propietario de una clave simétrica, utilice ALTER AUTHORIZATION.

Permisos

Requiere el permiso ALTER en la clave simétrica. Si se agrega el cifrado mediante una clave asimétrica o un certificado, es necesario el permiso VIEW DEFINITION en el certificado o en la clave asimétrica. Si se quita el cifrado mediante una clave asimétrica o un certificado, es necesario el permiso CONTROL en el certificado o en la clave asimétrica.

Ejemplos

En el siguiente ejemplo se cambia el método de cifrado que se utiliza para proteger una clave simétrica. La clave simétrica JanainaKey043 se cifra mediante el certificado Shipping04 al crear la clave. Dado que la clave no puede almacenarse sin cifrado, en este ejemplo el cifrado se agrega mediante contraseña y se quita mediante certificado.

CREATE SYMMETRIC KEY JanainaKey043 WITH ALGORITHM = AES_256 
    ENCRYPTION BY CERTIFICATE Shipping04;
-- Open the key. 
OPEN SYMMETRIC KEY JanainaKey043 DECRYPTION BY CERTIFICATE Shipping04
    WITH PASSWORD = 'pGFD4bb925DGvbd2439587y'; 
-- First, encrypt the key with a password.
ALTER SYMMETRIC KEY JanainaKey043 
    ADD ENCRYPTION BY PASSWORD = '4350$98fdlxk4Bj9oFD9h4';
-- Now remove encryption by the certificate.
ALTER SYMMETRIC KEY JanainaKey043 
    DROP ENCRYPTION BY CERTIFICATE Shipping04;
CLOSE SYMMETRIC KEY JanainaKey043;

Vea también

Referencia

CREATE SYMMETRIC KEY (Transact-SQL)
OPEN SYMMETRIC KEY (Transact-SQL)
CLOSE SYMMETRIC KEY (Transact-SQL)
DROP SYMMETRIC KEY (Transact-SQL)

Otros recursos

Jerarquía de cifrado

Ayuda e información

Obtener ayuda sobre SQL Server 2005