使用資料庫層級客戶自控的金鑰設定透明資料加密的異地複寫和備份還原

適用於:Azure SQL Database

注意

資料庫層級 TDE CMK 適用於 Azure SQL 資料庫 (所有 SQL Database 版本)。 它不適用於 Azure SQL 受控執行個體、內部部署 SQL Server、Azure VM 和 Azure Synapse Analytics (專用 SQL 集區 (先前稱為 SQL DW))。

在本指南中,我們將逐步解說在 Azure SQL Database上設定異地複寫和備份還原的步驟。 Azure SQL 資料庫在資料庫層級設定透明資料加密 (TDE) 和 客戶自控金鑰 (CMK),利用 使用者指派的受控識別 來存取 Azure 金鑰保存庫。 根據本指南,Azure Key Vault 和適用於 Azure SQL 的邏輯伺服器都位於相同的 Microsoft Entra 租用戶中,不過其也可以分屬不同的租用戶。

注意

Microsoft Entra ID 先前稱為 Azure Active Directory (Azure AD)。

必要條件

注意

只要加入聯盟式用戶端 ID 參數,即可使用相同的指南,在不同的租用戶中設定資料庫層級的客戶管理金鑰。 如需更多資訊,請參閱使用資料庫層級客戶自控金鑰的 TDE 身分識別和金鑰管理。

重要

資料庫建立或還原後,新資料庫的設定與來源資料庫相同,但可能會缺少金鑰。 在所有從來源資料庫建立新資料庫的情況下,目標資料庫的金鑰數可能少於來源資料庫的金鑰數。 回傳的金鑰數量取決於建立目標資料庫時所採用的個別功能需求。 若要列出新建立資料庫中所有可用的金鑰,請使用「查看 Azure SQL Database 上資料庫層級的客戶管理金鑰設定」中的可用 API。

建立使用資料庫層級客戶管理金鑰的 Azure SQL Database,作為次要資料庫或複本

使用下列指令或命令,建立以資料庫層級客戶自控金鑰設定的 Azure SQL 資料庫的次要複本或複本目標。 需要使用者指派的自控識別,於資料庫建立階段針對透明資料加密設定客戶自控金鑰。

若要在 Azure SQL 資料庫中建立資料庫作為具有資料庫層級客戶自控金鑰的複本,請遵循下列步驟:

  1. 使用 Azure CLI、PowerShell 或 REST API 來檢查來源資料庫目前使用的金鑰清單。 關於指令,請參閱 Azure SQL Database 上的資料庫層級客戶管理金鑰設定。

  2. 前往 Azure 入口網站,然後瀏覽至使用資料庫層級客戶自控金鑰設定的 Azure SQL 資料庫。 從資料庫的 [概觀] 功能表選取 [複製],以建立資料庫的複本。

    Azure 入口網站複本資料庫功能表的螢幕擷取畫面。

  3. 隨即顯示 [建立 SQL 資料庫 - 複製資料庫] 功能表。 針對此資料庫使用不同的伺服器,但設定與您嘗試複製的資料庫設定相同。 在 [ 透明資料加密金鑰管理 ] 區段中,選取 [ 設定透明資料加密]。

    Azure 入口網站複本資料庫功能表的螢幕擷取畫面,其中已展開透明資料加密密鑰管理區段。

  4. 當 [透明資料加密] 功能表出現時,請檢閱此複本資料庫的 CMK 設定。 設定和金鑰應該填入來源資料庫中使用的相同身分識別和金鑰。

  5. 選取 [套用] 繼續,然後選取 [檢閱 + 建立],並選取 [建立] 以建立複製資料庫。

要建立具有資料庫層級客戶管理金鑰的次要副本,請依照以下步驟操作:

  1. 使用 Azure CLI、PowerShell 或 REST API 來檢查來源資料庫目前使用的金鑰清單。 關於指令,請參閱 Azure SQL Database 上的資料庫層級客戶管理金鑰設定。

  2. 前往 Azure 入口網站,然後瀏覽至使用資料庫層級客戶自控金鑰設定的 Azure SQL 資料庫。 在資料庫的 [資料管理] 設定下,選取 [複本]。 選取 [建立複本] 以建立資料庫的次要複本。

    Azure 入口網站資料庫複本功能表的螢幕擷取畫面。

  3. 建立 SQL Database - 異地複本 功能表隨即出現。 針對此資料庫使用次要伺服器,但設定與您嘗試複寫的資料庫設定相同。 在 [ 透明資料加密金鑰管理 ] 區段中,選取 [ 設定透明資料加密]。

    Azure 入口網站資料庫複本功能表的螢幕擷取畫面,其中已展開透明資料加密密鑰管理區段。

  4. 當 [透明資料加密] 功能表出現時,請檢閱此資料庫複本的 CMK 設定。 設定和金鑰應該填入主要資料庫中使用的相同身分識別和金鑰。

  5. 選擇 「套用 」繼續,然後選擇 「檢視+建立」,再選擇 「建立 」來建立次要副本。

使用資料庫層級客戶管理金鑰還原 Azure SQL Database

本節將逐步引導您還原以資料庫層級客戶自控金鑰所設定的 Azure SQL Database。 需要使用者指派的自控識別,於資料庫建立階段針對透明資料加密設定客戶自控金鑰。

還原時間點

下一節說明如何將資料庫層級客戶自控金鑰所設定的資料庫還原至指定的時間點。 若要深入瞭解 SQL Database 的備份復原,請參閱 從 Azure SQL Database 中的備份還原資料庫。

  1. 前往 Azure 入口網站,然後瀏覽至使用您要還原的資料庫層級客戶自控金鑰設定的 Azure SQL 資料庫。

  2. 若要將資料庫還原至某個時間點,請從資料庫的 [概觀] 功能表中選取 [還原]。

    Azure 入口網站複本資料庫功能表的螢幕擷取畫面。

  3. 隨即顯示 [建立 SQL 資料庫 - 還原資料庫] 功能表。 填入所需的來源和資料庫詳細資料。 在 [ 透明資料加密金鑰管理 ] 區段中,選取 [ 設定透明資料加密]。

    Azure 入口網站中還原資料庫選單的螢幕擷取畫面,其中已展開透明資料加密金鑰管理區段。

  4. 當 [透明資料加密 ] 功能表出現時,請檢閱資料庫的 CMK 設定。 設定和金鑰應該填入您嘗試還原的資料庫中使用的相同身分識別和金鑰。

  5. 選取 [套用] 繼續,然後選取 [檢閱 + 建立],並選取 [建立] 以建立複製資料庫。

已刪除的資料庫還原

下一節說明如何還原已刪除的資料庫,該資料庫已透過資料庫層級的客戶自控金鑰進行設定。 若要深入瞭解 SQL Database 的備份復原,請參閱 從 Azure SQL Database 中的備份還原資料庫。

  1. 前往 Azure 入口網站,然後瀏覽至您要還原的已刪除資料庫的邏輯伺服器。 在 [資料管理] 下,選取 [已刪除的資料庫]。

    Azure 入口網站中已刪除資料庫功能表的螢幕擷取畫面。

  2. 選取您要還原的已刪除資料庫。

  3. 隨即顯示 [建立 SQL 資料庫 - 還原資料庫] 功能表。 填入所需的來源和資料庫詳細資料。 在 [ 透明資料加密金鑰管理 ] 區段中,選取 [ 設定透明資料加密]。

    Azure 入口網站還原資料庫功能表的螢幕擷取畫面,其中已展開透明資料加密密鑰管理區段。

  4. 當 [ 透通資料加密 ] 功能表出現時,請設定資料庫的 [ 使用者指派的受控識別]、[ 客戶管理的金鑰] 和 [其他資料庫金鑰] 區段。

  5. 選取 [套用] 繼續,然後選取 [檢閱 + 建立],並選取 [建立] 以建立複製資料庫。

異地還原

下一節說明如何還原在資料庫層級設定客戶管理金鑰之資料庫的異地複寫備份。 若要深入瞭解 SQL Database 的備份復原,請參閱 從 Azure SQL Database 中的備份還原資料庫。

  1. 前往 Azure 入口網站,然後瀏覽至您要還原資料庫的邏輯伺服器。

  2. 在 [概觀] 功能表中,選取 [建立資料庫]。

  3. 建立 SQL Database 功能表隨即出現。 填入新資料庫的 [基本] 和 [網路] 索引標籤。 在 [其他設定] 中,選取 [使用現有資料] 區段的 [備份],然後選取異地複寫備份。

    Azure 入口網站建立資料庫功能表的螢幕擷取畫面,其中選取了要用於資料庫的備份。

  4. 前往 安全性 標籤。在 [ 透明資料加密金鑰管理 ] 區段中,選取 [ 設定透明資料加密]。

  5. 當 [ 透通資料加密 ] 功能表出現時,選取 [ 資料庫層級 客戶受控金鑰 (CMK)]。 使用者指派的受控識別、客戶管理金鑰和其他資料庫金鑰必須符合您要還原的來源資料庫。 請確定使用者指派的受控識別可存取包含備份中所使用客戶管理的密鑰的 Azure Key Vault。

  6. 選取 [套用] 繼續,然後選取 [檢閱 + 建立],並選取 [建立] 以建立備份資料庫。

重要

長期保留 (LTR) 備份不會提供備份所使用的金鑰清單。 若要還原 LTR 備份,來源資料庫使用的所有金鑰都必須傳遞至 LTR 還原目標。

注意

使用資料庫層級的客戶管理金鑰,將 Azure SQL Database 建立為次要資料庫或複本一節中提到的 ARM 範本,可藉由變更 createMode 參數,作為使用 ARM 範本還原資料庫的參考。

用於複製或還原資料庫的自動金鑰輪替選項

你可以設定新複製或還原的資料庫,自動輪換用於透明資料加密的客戶管理金鑰。 關於如何啟用自動金鑰旋轉的資訊,請參見 資料庫層級的自動金鑰旋轉。