SQL サーバー・データベース上の Transparent Data Encryption の有効化

SQL Server には、データベースまたは物理メディア上のバックアップに常駐するデータを暗号化する TDE メカニズム (Transparent Data Encryption) が組み込まれています。

始める前に

TDE はMicrosoft™ SQL Server 2014 以降の Enterprise 版でのみ使用できます。Standard Edition のオプションについては、EFS を使用した SQL Server データベースの暗号化、バックアップ、および復元を参照してください。

このタスクについて

SQL Server で TDE を有効化するには、マスター・データベースのデータベース・マスター鍵と証明書の作成に関連付けられている通常の許可が必要です。ユーザー・データベースに対するコントロール許可も必要です。

暗号化を有効にすることは、データベース管理者の一般的なタスクです。便宜上、一般的な SQL Server の設定に適した SQL スクリプト: EnableTDE.zipを提供しています。 (ファイルがダウンロードされない場合は、リンクを右クリックして、ファイルをハードドライブに保存してください。)

注:
アップグレード・ユーザーの場合は、以下のことに注意してください。
  1. データベース・アップグレードのパフォーマンスを向上させるために、TDE を有効にするのは、データベースのアップグレードが完了した後で行ってください。
  2. 以下の手順はいつでも実行できますが、この手順を完了するまでデータベースは暗号化されません。アップグレード・プロセス前に TDE を有効化すると、アップグレード後も引き続きデータベースが保護されます。

手順

  1. インストールされている SQL Server 2014 以降の SQL Management Studio を開きます。
  2. 暗号化するデータベースに接続します。接続すると、データベースが作成済みであり使用可能であることが確認できます。
  3. EnableTDE.zip ファイルをダウンロードした場所にアクセスします。ファイルを抽出してスクリプトを開きます。 (ファイル ファイル > を > 開く).サーバー上で実行されるいくつかのコマンドが示されます。
  4. スクリプトを実行する前に、ご使用の環境用に 3 つのフィールドを設定する必要があります。スクリプトのコメント・セクションでは、以下のように、これらのフィールドにはすべて「アクションが必要 (ACTION REQUIRED)」のマークが付けられています。
    1. DECLARE @MKPassword: [master] データベースのマスター鍵の作成に使用されるマスター鍵パスワード。
    2. DECLARE @DatabaseName : 暗号化を有効にするデータベースの名前。
    3. (オプション) DECLARE @BackupPassword: 証明書バックアップのパスワード。このパスワードは、証明書のバックアップを保護するために使用され、別のマシンで証明書を復元する際に必要です。
  5. フィールドを更新したら、スクリプトを起動します (「照会」>「実行」)。スクリプトで SQL Server 上の TDE を有効にする方法を参照してください。
  6. スクリプトが完了すると、SQL Management Studio の「メッセージ」ウィンドウに結果が表示されます。
    注:
    SQL Management Studio を使用して確認することもできます。データベース名を右クリックし、「データベース名」->「タスク」->「データベース暗号化の管理」をクリックします。「データベースの暗号化をオンに設定」チェック・ボックスが選択されています。

タスクの結果

重要:
完了したら、このスクリプトで使用したパスワードを書き留めて、証明書バックアップのコピーを作成するようにしてください。証明書バックアップは、AppScanEntCert.bak および AppScanEntCert.pvk の 2 つのファイルで構成されます。これらのファイルはデータベース .mdf と共に次のフォルダー内にデフォルトで保管されます。
  • (SQL 2014) C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA