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 AdventureWorks2012;
GO
ALTER DATABASE ENCRYPTION KEY
REGENERATE WITH ALGORITHM = AES_256;
GO

請參閱

參考

ALTER DATABASE SET 選項 (Transact-SQL)

CREATE DATABASE ENCRYPTION KEY (Transact-SQL)

DROP DATABASE ENCRYPTION KEY (Transact-SQL)

sys.dm_database_encryption_keys (Transact-SQL)

概念

透明資料加密 (TDE)

SQL Server 加密

SQL Server 和資料庫加密金鑰 (Database Engine)

加密階層