データベース マスター キーのバックアップ
このトピックでは、SQL Server 2012 で Transact-SQL を使用してデータベース マスター キーをバックアップする方法について説明します。 データベース マスター キーは、データベース内の他のキーや証明書を暗号化する際に使用します。 データベース マスター キーが削除されるか破損すると、SQL Server は、暗号化されたキーの暗号化を解除できなくなる場合があります。さらに、そのキーを使用して暗号化されたデータは事実上失われます。 このため、データベース マスター キーはバックアップして、安全な別の場所に保存しておく必要があります。
このトピックの内容
作業を開始する準備:
制限事項と制約事項
セキュリティ
Transact-SQL を使用してデータベース マスター キーをバックアップするには
作業を開始する準備
制限事項と制約事項
マスター キーは開かれている必要があります。したがって、バックアップ前に暗号化を解除する必要があります。 マスター キーがサービス マスター キーで暗号化されている場合は、明示的に開く必要はありません。 パスワードのみで暗号化されている場合は、明示的に開く必要があります。
マスター キーは作成後すぐにバックアップし、安全な別の場所に保存することをお勧めします。
セキュリティ
権限
データベースに対する CONTROL 権限が必要です。
[Top]
Transact-SQL を備えた SQL Server Management Studio の使用
データベース マスター キーをバックアップするには
SQL Server Management Studio で、バックアップするデータベース マスター キーが格納されている SQL Server のインスタンスに接続します。
バックアップ メディアでデータベース マスター キーの暗号化に使用するパスワードを指定します。 このパスワードに対しては、複雑性がチェックされます。
バックアップしたキーのコピーを保存するためにリムーバブル バックアップ メディアを用意します。
キーのバックアップを作成する NTFS ディレクトリを指定します。 このディレクトリは、次の手順で指定するファイルの作成先となります。 このディレクトリは、制限の厳しいアクセス制御リスト (ACL) で保護する必要があります。
オブジェクト エクスプローラーで、データベース エンジンのインスタンスに接続します。
[標準] ツール バーの [新しいクエリ] をクリックします。
次の例をコピーしてクエリ ウィンドウに貼り付け、[実行] をクリックします。
-- Creates a backup of the "AdventureWorks2012" master key. Because this master key is not encrypted by the service master key, a password must be specified when it is opened. USE AdventureWorks2012; GO OPEN MASTER KEY DECRYPTION BY PASSWORD = 'sfj5300osdVdgwdfkli7'; BACKUP MASTER KEY TO FILE = 'c:\temp\exportedmasterkey' ENCRYPTION BY PASSWORD = 'sd092735kjn$&adsg'; GO
注 キーのファイル パスとキーのパスワード (存在する場合) は、実際は上に示したものと異なります。 両方がサーバーとキーのセットアップで固有であることを確認してください。
ファイルをバックアップ メディアにコピーして、コピーしたファイルを確認します。
バックアップを安全な場所に保存します。
詳細については、「OPEN MASTER KEY (Transact-SQL)」および「BACKUP MASTER KEY (Transact-SQL)」を参照してください。
[Top]