ALTER MASTER KEY (Transact-SQL)
データベース マスター キーのプロパティを変更します。
構文
ALTER MASTER KEY <alter_option>
<alter_option> ::=
<regenerate_option> | <encryption_option>
<regenerate_option> ::=
[ FORCE ] REGENERATE WITH ENCRYPTION BY PASSWORD = 'password'
<encryption_option> ::=
ADD ENCRYPTION BY { SERVICE MASTER KEY | PASSWORD = 'password' }
|
DROP ENCRYPTION BY { SERVICE MASTER KEY | PASSWORD = 'password' }
引数
- PASSWORD = 'password'
データベース マスター キーの暗号化または暗号化解除に使用するパスワードを指定します。password は、SQL Server のインスタンスを実行しているコンピューターの Windows パスワード ポリシーの要件を満たす必要があります。
説明
REGENERATE オプションを指定すると、データベース マスター キーと、それによって保護されるすべてのキーが再作成されます。これらのキーは、最初に元のマスター キーで暗号化解除され、次に新しいマスター キーで暗号化されます。この操作はリソースを大量に消費するため、マスター キーのセキュリティに問題がある場合を除き、リソース要求が少ないときに実行するように考慮してください。
FORCE オプションを指定すると、マスター キーを使用できなかった場合や、暗号化されているすべての秘密キーをサーバーで暗号化解除できなかった場合でも、キーの再生成が続行されます。マスター キーを開くことができない場合は、RESTORE MASTER KEY ステートメントを使用して、マスター キーをバックアップから復元してください。FORCE オプションは、マスター キーを取得できないか、暗号化解除が失敗する場合にのみ使用してください。取得できないキーによってのみ暗号化されている情報は失われます。
DROP ENCRYPTION BY SERVICE MASTER KEY オプションを指定すると、データベース マスター キーの暗号化がサービス マスター キーによって解除されます。
ADD ENCRYPTION BY SERVICE MASTER KEY を指定すると、マスター キーのコピーがサービス マスター キーを使用して暗号化され、現在のデータベースおよびマスターの両方に格納されます。
権限
データベースに対する CONTROL 権限が必要です。データベース マスター キーがパスワードで暗号化されている場合は、パスワードの情報も必要です。
例
次の例では、AdventureWorks2008R2 の新しいデータベースのマスター キーを作成し、暗号化階層でこのマスター キーの下位にあるキーを再暗号化します。
USE AdventureWorks2008R2;
ALTER MASTER KEY REGENERATE WITH ENCRYPTION BY PASSWORD = 'dsjdkflJ435907NnmM#sX003';
GO