ALTER DATABASE ENCRYPTION KEY (Transact-SQL)

Изменяет ключ шифрования и сертификат, используемый для прозрачного шифрования базы данных. Дополнительные сведения о прозрачном шифровании баз данных см. в разделе основные сведения о прозрачном шифровании данных (TDE).

Значок ссылки на разделСоглашения о синтаксическом обозначении в Transact-SQL

Синтаксис

ALTER DATABASE ENCRYPTION KEY
      REGENERATE WITH ALGORITHM = { AES_128 | AES_192 | AES_256 | TRIPLE_DES_3KEY }
   |
   ENCRYPTION BY SERVER 
    {
        CERTIFICATE Encryptor_Name |
        ASYMMETRIC KEY Encryptor_Name
    }
[ ; ]

Аргументы

  • REGENERATE WITH ALGORITHM = { AES_128 | AES_192 | AES_256 | TRIPLE_DES_3KEY }
    Определяет алгоритм шифрования, который используется для ключа шифрования.

  • ENCRYPTION BY SERVER CERTIFICATE Encryptor_Name
    Имя сертификата, используемого для шифрования ключа шифрования базы данных.

  • ENCRYPTION BY SERVER ASYMMETRIC KEY Encryptor_Name
    Указывает имя асимметричного ключа, используемого для шифрования ключа шифрования базы данных.

Замечания

Сертификат или асимметричный ключ, который используется для шифрования ключа шифрования базы данных, должен находиться в системной базе данных master.

Нет необходимости повторно создавать ключ шифрования базы данных, когда меняется владелец базы данных (dbo).

После двукратного изменения ключа шифрования базы данных необходимо выполнить резервное копирование журнала перед следующим изменением ключа шифрования базы данных.

Разрешения

Требуется разрешение CONTROL на базу данных и разрешение VIEW DEFINITION на сертификат или асимметричный ключ, используемый при шифровании ключа шифрования базы данных.

Примеры

В следующем примере ключ шифрования базы данных изменяется для использования алгоритма AES_256.

USE AdventureWorks
GO
ALTER DATABASE ENCRYPTION KEY
REGENERATE WITH ALGORITHM = AES_256;
GO