ALTER DATABASE ENCRYPTION KEY (Transact-SQL)

適用対象:SQL ServerAnalytics Platform System (PDW)

データベースを透過的に暗号化するために使用する暗号化キーおよび証明書を変更します。 透過的データベース暗号化について詳しくは、「透過的なデータ暗号化 (TDE)」をご覧ください。

Transact-SQL 構文表記規則

構文

-- Syntax for SQL Server  
  
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  
    }  
[ ; ]  
-- Syntax for Parallel Data Warehouse  
  
ALTER DATABASE ENCRYPTION KEY  
    {  
      {  
        REGENERATE WITH ALGORITHM = { AES_128 | AES_192 | AES_256 | TRIPLE_DES_3KEY }  
        [ ENCRYPTION BY SERVER CERTIFICATE Encryptor_Name ]  
      }  
      |  
      ENCRYPTION BY SERVER   CERTIFICATE Encryptor_Name    
    }  
[ ; ]  

Note

SQL Server 2014 (12.x) 以前のバージョンの Transact-SQL 構文を確認するには、以前のバージョンのドキュメントを参照してください。

引数

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
データベース暗号化キーを暗号化するために使用する非対称キーの名前を指定します。

解説

データベース暗号化キーの暗号化に使用する証明書または非対称キーは、マスター システム データベースに配置されている必要があります。

データベース所有者 (dbo) が変わっても、データベース暗号化キーを再生成する必要はありません。

データベース暗号化キーを 2 回変更した後は、データベース暗号化キーを再度変更する前に、ログ バックアップを実行する必要があります。

アクセス許可

データベースに対する CONTROL 権限と、データベース暗号化キーの暗号化に使用する証明書または非対称キーに対する VIEW DEFINITION 権限が必要です。

次の例では、AES_256 アルゴリズムを使用するようにデータベース暗号化キーを変更します。

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

参照

透過的なデータ暗号化 (TDE)
SQL Server の暗号化
SQL Server とデータベースの暗号化キー (データベース エンジン)
暗号化階層
ALTER DATABASE SET のオプション (Transact-SQL)
CREATE DATABASE ENCRYPTION KEY (Transact-SQL)
DROP DATABASE ENCRYPTION KEY (Transact-SQL)
sys.dm_database_encryption_keys (Transact-SQL)