在 SQL Server 資料庫上啟用透通資料加密

SQL Server 有內建加密 TDE 機制(透通資料加密),可加密位在資料庫或實體媒體上之備份中的資料。

Before you begin

TDE 僅適用於 Microsoft™ SQL Server 2016 及更高版本的 Enterprise 版本。如果是 Standard Edition 選項,請閱讀使用 EFS 加密、備份及還原 SQL Server 資料庫。

About this task

如果要在 SQL Server 上啟用 TDE,您必須擁有與在主要資料庫中建立資料庫主要金鑰和憑證相關的正規權限。此外,您還必須擁有使用者資料庫的相關 CONTROL 權限。

啟用加密是資料庫管理員的常見任務;為了方便起見,我們提供了一個 SQL 腳本,適用於典型的 SQL Server 配置:EnableTDE.zip。(如果文件無法下載,請右鍵單擊鏈接並將文件保存到硬盤驅動器。)

Note:
若為升級使用者:
  1. 如果要增進資料庫升級效能,請在資料庫升級完成之後啟用 TDE。
  2. 雖然您可以在任何時間執行這些步驟,但在完成這些步驟之前,資料庫將不會進行加密。在進行升級程序之前啟用 TDE,這樣可以在升級期間與之後保護您的資料庫。

Procedure

  1. 打開您安裝的 SQL Server 2016 或更高版本的 SQL Management Studio。
  2. 連接至您要加密的資料庫。這有助於確保資料庫已建立並且可使用。
  3. 移至您下載 EnableTDE.zip 檔的位置。將檔案解壓縮,然後開啟 Script(檔案 > 開啟 > 檔案)。您會找到將在伺服器上執行的數個指令。
  4. 在執行 Script 之前,必須為您的環境設定三個欄位。在 Script 的註解區段中,它們全都標示 'ACTION REQUIRED'(必要動作):
    1. DECLARE @MKPassword:用於在 [master] 資料庫中創建主密鑰的主密鑰密碼。
    2. DECLARE @DatabaseName:您想要啟用加密的資料庫名稱。
    3. (可選)DECLARE @BackupPassword:證書備份密碼。此密碼用來保護憑證備份的安全,而且在其他機器上還原憑證時一定會用到。
  5. 更新這些欄位之後,請啟動 Script(查詢 > 執行)。Script 如何在 SQL Server 上啟用 TDE。
  6. 完成 Script 之後,結果會顯示在 SQL Management Studio 的「訊息」視窗中。
    Note:
    您也可以透過 SQL Management Studio 進行驗證。用滑鼠右鍵按一下「資料庫名稱->作業->管理資料庫加密」。您會看到「設定啟用資料庫加密」勾選框已選取。

Results

Important:
完成後,請務必寫下在此 Script 中所使用的密碼,並製作憑證備份副本。憑證備份由兩個檔案組成:AppScanEntCert.bak 和 AppScanEntCert.pvk。它們會和 database .mdf 檔儲存在一起,依預設儲存在以下資料夾:
  • (SQL 2016)C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA