RESTORE MASTER KEY (Transact-SQL)
バックアップ ファイルからデータベースのマスタ キーをインポートします。
構文
RESTORE MASTER KEY FROM FILE = 'path_to_file'
DECRYPTION BY PASSWORD = 'password'
ENCRYPTION BY PASSWORD = 'password'
[ FORCE ]
引数
- FILE = 'path_to_file'
格納されているデータベース マスタ キーへの完全なパスを、ファイル名を含めて指定します。path_to_file にはローカル パスまたはネットワーク上の場所を示す UNC パスを指定できます。
- DECRYPTION BY PASSWORD ='password'
ファイルからインポートされるデータベース マスタ キーの暗号化解除に必要なパスワードを指定します。
- ENCRYPTION BY PASSWORD ='password'
データベースに読み込まれた後、データベース マスタ キーの暗号化に使用されるパスワードを指定します。
- FORCE
現在のデータベース マスタ キーが開いていない場合や、SQL Server でマスタ キーを使用して暗号化された秘密キーの一部を暗号化解除できない場合でも、RESTORE の処理を継続します。
解説
マスタ キーを復元するとき、SQL Server では現在アクティブなマスタ キーによって暗号化されたすべてのキーの暗号化が解除された後、復元されたマスタ キーを使用してこれらのキーが暗号化されます。この操作はリソースを大量に消費するため、リソース要求が少ないときに実行するように考慮してください。現在のデータベースのマスタ キーが開いていないか、開けない場合、またはマスタ キーで暗号化されたキーを 1 つでも暗号化解除できない場合、復元操作は失敗します。
FORCE オプションは、マスタ キーを取得できないか、暗号化解除が失敗する場合にのみ使用してください。取得できないキーによってのみ暗号化されている情報は失われます。
マスタ キーがサービス マスタ キーで暗号化されている場合は、復元されたマスタ キーもサービス マスタ キーで暗号化されます。
現在のデータベースにマスタ キーが存在しない場合は、RESTORE MASTER KEY を実行するとマスタ キーが作成されます。この新しいマスタ キーは、サービス マスタ キーで自動的に暗号化されません。
権限
データベースに対する CONTROL 権限が必要です。
例
次の例では、データベース AdventureWorks
のマスタ キーを復元します。
USE AdventureWorks;
RESTORE MASTER KEY
FROM FILE = 'c:\backups\keys\AdventureWorks_master_key'
DECRYPTION BY PASSWORD = '3dH85Hhk003#GHkf02597gheij04'
ENCRYPTION BY PASSWORD = '259087M#MyjkFkjhywiyedfgGDFD';
GO
参照
関連項目
CREATE MASTER KEY (Transact-SQL)
ALTER MASTER KEY (Transact-SQL)