共用方式為


在適用於 PostgreSQL 的 Azure 資料庫中設定資料加密

本文提供針對 Azure Database for PostgreSQL 彈性伺服器實例配置資料加密的逐步指示。

這很重要

您唯一可以決定是要使用系統管理的金鑰還是客戶自控金鑰來進行資料加密的時機,是在建立伺服器的時候。 一旦您做出決定並建立伺服器之後,就無法在這兩個選項之間切換。

在本文中,您將了解如何建立新伺服器並設定其資料加密選項。 至於已將資料加密設定為使用客戶自控加密金鑰的現有伺服器,您將了解:

  • 如何選取服務用來存取加密金鑰的不同使用者指派受控識別。
  • 如何指定不同的加密金鑰,或如何輪替目前用於資料加密的加密金鑰。

若要瞭解適用於 PostgreSQL 的 Azure 資料庫內容中的資料加密,請參閱 資料加密

在佈建伺服器期間設定使用系統管理金鑰的資料加密

使用 Azure 入口網站

  1. 在佈建新的適用於 PostgreSQL 的 Azure 資料庫彈性伺服器執行個體期間,您會在 [安全性] 索引標籤中設定資料加密。針對 [資料加密金鑰],請選取 [服務管理金鑰] 選項按鈕。

    螢幕擷取畫面,顯示如何在佈建伺服器期間選取系統管理的加密金鑰。

  2. 如果您讓異地備援備份儲存體能夠與伺服器一起佈建,因為伺服器使用兩個不同的加密金鑰,[安全性] 索引標籤的樣貌會有些微變更。 一個用於要在其中部署伺服器的主要區域,一個用於要作為伺服器備份非同步複寫目的地的配對區域。

    螢幕擷取畫面,顯示當伺服器啟用了異地備援備份儲存體時,如何在佈建伺服器期間選取系統管理的加密金鑰。

在佈建伺服器期間設定使用客戶自控金鑰的資料加密

使用 Azure 入口網站

  1. 建立一個使用者指派的受控識別 (部分機器翻譯) (如果您還未擁有的話)。 如果您的伺服器已啟用異地備援備份,則您必須建立不同的身分識別。 這兩個身分識別分別用來存取這兩個資料加密金鑰。

備註

雖然不需要這樣做,但若要維護區域復原能力,建議您在與伺服器相同的區域中建立使用者受控識別。 如果您的伺服器已啟用異地備份備援功能,建議您將第二個使用者受控識別 (用來存取異地備援備份的資料加密金鑰) 建立在伺服器的配對區域 (部分機器翻譯) 中。

  1. 如果您尚未建立任何金鑰存放區,請建立一個 Azure Key Vault建立一個受控 HSM (部分機器翻譯)。 請確定您符合需求 (部分機器翻譯)。 此外,在設定金鑰存放區之前,以及在建立金鑰並將所需權限指派給使用者指派的受控識別之前,也請遵循建議 (部分機器翻譯)。 如果您的伺服器已啟用異地備援備份,則您必須建立第二個金鑰存放區。 第二個金鑰存放區會用來保存資料加密金鑰,該金鑰會用來加密複製到伺服器配對區域 (部分機器翻譯) 的備份。

備註

用來保存資料加密金鑰的金鑰存放區必須部署在與伺服器相同的區域。 如果您的伺服器已啟用異地備份備援功能,則必須在伺服器的配對區域 (部分機器翻譯) 建立金鑰存放區,以保存異地備援備份的資料加密金鑰。

  1. 在金鑰存放區中建立一個金鑰。 如果您的伺服器已啟用異地備援備份,則每個金鑰存放區都需要一個金鑰。 我們會使用其中一個金鑰來加密您伺服器的所有資料 (包括所有系統和使用者資料庫、暫存檔案、伺服器記錄、預先寫入記錄區段和備份)。 第二個金鑰會用來加密透過伺服器的配對區域 (部分機器翻譯) 以非同步方式複製的備份複本。

  2. 在佈建新的適用於 PostgreSQL 的 Azure 資料庫彈性伺服器執行個體期間,您會在 [安全性] 索引標籤中設定資料加密。針對 [資料加密金鑰],請選取 [客戶自控金鑰] 選項按鈕。

    螢幕擷取畫面,顯示如何在佈建伺服器期間選取客戶自控加密金鑰。

  3. 如果您讓異地備援備份儲存體能夠與伺服器一起佈建,因為伺服器使用兩個不同的加密金鑰,[安全性] 索引標籤的樣貌會有些微變更。 一個用於要在其中部署伺服器的主要區域,一個用於要作為伺服器備份非同步複寫目的地的配對區域。

    螢幕擷取畫面,顯示當伺服器啟用了異地備援備份儲存體時,如何在佈建伺服器期間選取客戶自控加密金鑰。

  4. 在 [使用者指派的受控識別] 中,選取 [變更身分識別]

    螢幕擷取畫面,顯示如何選取使用者指派的受控識別以存取伺服器位置資料的資料加密金鑰。

  5. 在使用者指派的受控識別清單中,選取您希望伺服器使用哪一個受控識別來存取 Azure Key Vault 中所儲存的資料加密金鑰。

    螢幕擷取畫面,顯示如何選取伺服器用來存取資料加密金鑰的使用者指派受控識別。

  6. 選取 ,然後新增

    螢幕擷取畫面,顯示 [新增] 按鈕的位置,此按鈕可指派伺服器用來存取資料加密金鑰的身分識別。

  7. 如果您想要在每當所選金鑰的目前版本有所輪替 (不論是手動進行還是自動發生的) 時,讓服務自動更新所選金鑰最新版本的參考,請選取 [使用自動更新金鑰版本]。 若要了解使用自動更新金鑰版本的好處,請參閱自動更新金鑰版本 (部分機器翻譯)。

    螢幕擷取畫面,顯示如何啟用自動更新金鑰版本。

  8. 選取 [選取金鑰]

    螢幕擷取畫面,顯示如何選取資料加密金鑰。

  9. [訂用帳戶] 會自動填入即將建立伺服器之訂用帳戶的名稱。 保存資料加密金鑰的金鑰存放區必須存在於與伺服器相同的訂用帳戶中。

    螢幕擷取畫面,顯示如何選取金鑰存放區應存在的訂用帳戶。

  10. 在 [金鑰存放區類型] 中,針對您打算用來儲存資料加密金鑰的金鑰存放區類型,選取對應的選項按鈕。 在此範例中,我們選擇 [金鑰保存庫],但如果您選擇 [受控 HSM],其操作方式類似。

    螢幕擷取畫面,顯示如何選取保存資料加密金鑰的存放區類型。

  11. 展開 [金鑰保存庫] (或 [受控 HSM],如果您選取了該儲存類型的話),然後選取資料加密金鑰所在的執行個體。

    螢幕擷取畫面,顯示如何選取保存資料加密金鑰的金鑰存放區。

    備註

    當您展開下拉式方塊時,其會顯示 [沒有可用的項目]。 需要幾秒鐘的時間,系統才會列出部署在與伺服器相同區域的所有金鑰保存庫執行個體。

  12. 展開 [金鑰],然後選取要用於資料加密的金鑰名稱。

    螢幕擷取畫面,顯示如何選取資料加密金鑰。

  13. 如果您未選取 [使用自動更新金鑰版本],則還必須選取特定版本的金鑰。 若要這樣做,請展開 [版本],然後選取要用於資料加密之金鑰版本的識別碼。

    螢幕擷取畫面,顯示如何選取要使用的資料加密金鑰版本。

  14. 選取 [選取]

    顯示如何選取所選金鑰的螢幕擷取畫面。

  15. 設定新伺服器的所有其他設定,然後選取 [檢閱 + 建立]

    螢幕擷取畫面,顯示如何完成伺服器建立。

在現有伺服器上設定使用客戶自控金鑰的資料加密

您唯一可以決定是要使用系統管理的金鑰還是客戶自控金鑰來進行資料加密的時機,是在建立伺服器的時候。 一旦您做出決定並建立伺服器之後,就無法在這兩個選項之間切換。 如果您想要從其中一個選項變更為另一個選項,唯一的替代方法是,將伺服器的任何可用備份還原到新的伺服器。 您可以在設定還原時,變更新伺服器的資料加密設定。

若現有伺服器部署了使用客戶自控金鑰的資料加密,您可以變更幾個設定。 可以變更的項目有用於加密之金鑰的參考,以及服務用來存取金鑰存放區中所放金鑰之使用者指派受控識別的參考。

您必須更新適用於 PostgreSQL 的 Azure 資料庫彈性伺服器執行個體所擁有的金鑰參考:

  • 儲存在金鑰存放區中的金鑰有所輪替 (不論是手動進行還是自動發生的),而適用於 PostgreSQL 的 Azure 資料庫彈性伺服器執行個體指向特定版本的金鑰時。 如果您指向某個金鑰,而不是指向特定版本的金鑰 (當您啟用 [使用自動更新金鑰版本] 時的狀況),則每當金鑰手動或自動輪替時,服務就會自動參考最新版本的金鑰。
  • 當您想要使用儲存在不同金鑰存放區中的相同或不同金鑰時。

您必須更新適用於 PostgreSQL 的 Azure 資料庫彈性伺服器執行個體所使用的使用者指派受控識別,才能在您想要使用不同身分識別時存取加密金鑰。

使用 Azure 入口網站

  1. 選取您的 Azure PostgreSQL 資料庫彈性伺服器實例。

  2. 在資源功能表的 [安全性] 底下,選取 [資料加密]

    螢幕擷取畫面,顯示如何取得現有伺服器的資料加密。

  3. 若要變更伺服器用來存取金鑰保存所在金鑰存放區的使用者指派受控識別,請展開 [使用者指派的受控識別] 下拉式清單,然後選取任何可用的身分識別。

    螢幕擷取畫面,顯示如何選取與伺服器相關聯的其中一個使用者指派受控識別。

    備註

    下拉式方塊中只會顯示指派給適用於 PostgreSQL 的 Azure 資料庫彈性伺服器執行個體的身分識別。 雖然不需要這樣做,但若要維護區域復原能力,建議您選取與伺服器位於相同區域的使用者受控識別。 如果您的伺服器已啟用異地備份備援功能,建議您讓第二個使用者受控識別 (用來存取異地備援備份的資料加密金鑰) 存在於伺服器的配對區域 (部分機器翻譯) 中。

  4. 如果您想要用來存取資料加密金鑰的使用者指派受控識別並未指派給適用於 PostgreSQL 的 Azure 資料庫彈性伺服器執行個體,而且這個受控識別甚至未以 Azure 資源及其對應物件的形式存在於 Microsoft Entra ID 中,則您可以藉由選取 [建立] 來建立這個受控識別。

    螢幕擷取畫面顯示如何在 Azure 和 Microsoft Entra ID 中建立新的使用者指派受控識別、自動將它指派給適用於 PostgreSQL 的 Azure 資料庫彈性伺服器執行個體,以及使用它來存取資料加密金鑰。

  5. 在 [ 建立使用者指派的受控識別 ] 面板中,完成您要建立之使用者指派受控識別的詳細資料,並自動指派給適用於 PostgreSQL 的 Azure 資料庫彈性伺服器執行個體,以存取資料加密金鑰。

    螢幕擷取畫面,顯示如何為新的使用者指派受控識別佈建詳細資料。

  6. 如果您想要用來存取資料加密金鑰的使用者指派受控識別並未指派給適用於 PostgreSQL 的 Azure 資料庫彈性伺服器執行個體,但這個受控識別以 Azure 資源及其對應物件的形式存在於 Microsoft Entra ID 中,則您可以藉由選取 [選取] 來指派這個受控識別。

    螢幕擷取畫面,顯示如何在 Azure 和 Microsoft Entra ID 中選取現有的使用者指派受控識別、自動將它指派給適用於 PostgreSQL 的 Azure 資料庫彈性伺服器執行個體,以及使用它來存取資料加密金鑰。

  7. 在使用者指派的受控識別清單中,選取您希望伺服器使用哪一個受控識別來存取 Azure Key Vault 中所儲存的資料加密金鑰。

    螢幕擷取畫面,示範如何選取現有使用者指派的受控識別,以將它指派給適用於 PostgreSQL 的 Azure 資料庫彈性伺服器執行個體,並使用它來存取資料加密金鑰。

  8. 選取 ,然後新增

    螢幕擷取畫面,顯示如何新增選取的使用者指派受控識別。

  9. 如果您想要在每當所選金鑰的目前版本有所輪替 (不論是手動進行還是自動發生的) 時,讓服務自動更新所選金鑰最新版本的參考,請選取 [使用自動更新金鑰版本]。 若要了解使用自動更新金鑰版本的好處,請參閱[自動更新金鑰版本](concepts-data-encryption.md##CMK 金鑰版本更新)。

    螢幕擷取畫面,顯示如何啟用自動更新金鑰版本。

  10. 如果您輪替金鑰,且未啟用 [使用自動更新金鑰版本]。 或者,如果您想要使用不同的金鑰,則必須更新適用於 PostgreSQL 的 Azure 資料庫彈性伺服器執行個體,使其指向新的金鑰版本或新金鑰。 若要這樣做,您可以複製金鑰的資源識別碼,然後將其貼到 [金鑰識別碼] 方塊中。

    螢幕擷取畫面,顯示將伺服器必須用於資料加密之新金鑰或新金鑰版本的資源識別碼貼上的位置。

  11. 如果存取 Azure 入口網站的使用者有權限可以存取金鑰存放區中儲存的金鑰,您可以使用替代方法來選擇新的金鑰或新的金鑰版本。 若要這樣做,請在 [金鑰選取方法] 中,選取 [選取金鑰] 選項按鈕。

    螢幕擷取畫面,顯示如何啟用對使用者更友善的方法,以選擇用於資料加密的資料加密金鑰。

  12. 選取 [選取金鑰]

    螢幕擷取畫面,顯示如何選取資料加密金鑰。

  13. [訂用帳戶] 會自動填入即將建立伺服器之訂用帳戶的名稱。 保存資料加密金鑰的金鑰存放區必須存在於與伺服器相同的訂用帳戶中。

    螢幕擷取畫面,顯示如何選取金鑰存放區應存在的訂用帳戶。

  14. 在 [金鑰存放區類型] 中,針對您打算用來儲存資料加密金鑰的金鑰存放區類型,選取對應的選項按鈕。 在此範例中,我們選擇 [金鑰保存庫],但如果您選擇 [受控 HSM],其操作方式類似。

    螢幕擷取畫面,顯示如何選取保存資料加密金鑰的存放區類型。

  15. 展開 [金鑰保存庫] (或 [受控 HSM],如果您選取了該儲存類型的話),然後選取資料加密金鑰所在的執行個體。

    螢幕擷取畫面,顯示如何選取保存資料加密金鑰的金鑰存放區。

    備註

    當您展開下拉式方塊時,其會顯示 [沒有可用的項目]。 需要幾秒鐘的時間,系統才會列出部署在與伺服器相同區域的所有金鑰保存庫執行個體。

  16. 展開 [金鑰],然後選取要用於資料加密的金鑰名稱。

    螢幕擷取畫面,顯示如何選取資料加密金鑰。

  17. 如果您未選取 [使用自動更新金鑰版本],則還必須選取特定版本的金鑰。 若要這樣做,請展開 [版本],然後選取要用於資料加密之金鑰版本的識別碼。

    螢幕擷取畫面,顯示如何選取要使用的資料加密金鑰版本。

  18. 選取 [選取]

    顯示如何選取所選金鑰的螢幕擷取畫面。

  19. 對所做的變更感到滿意後,請選取 [儲存]

    螢幕擷取畫面,顯示如何儲存對資料加密設定所做的變更。