本文提供逐步指示,協助您設定適用於 PostgreSQL 的 Azure 資料庫彈性伺服器的資料加密。
這很重要
你可以選擇在伺服器建立時使用系統管理金鑰或客戶管理金鑰來進行資料加密。 做出決定並建立伺服器後,你無法在兩個選項間切換。
在本文中,您將了解如何建立新伺服器並設定其資料加密選項。 對於使用客戶管理加密金鑰進行資料加密的現有伺服器,你會學到:
- 如何選取不同的使用者指派的受控識別,供服務存取加密金鑰。
- 如何指定不同的加密金鑰,或如何輪替目前用於資料加密的加密金鑰。
欲了解 適用於 PostgreSQL 的 Azure 資料庫 中的資料加密,請參見資料加密。
在佈建伺服器期間設定使用系統管理金鑰的資料加密
使用 Azure 入口網站:
在佈建伺服器期間設定使用客戶自控金鑰的資料加密
使用 Azure 入口網站:
- 如果你還沒有,請建立一個使用者指派的管理身份。 如果你的伺服器啟用了地理冗餘備份,你需要建立兩個不同的身份。 這些身份分別存取兩個資料加密金鑰中的每一個。
備註
雖然不是必須的,但為了維持區域韌性,請在與伺服器相同的區域建立使用者管理身份。 如果你的伺服器啟用了地理備份冗餘,請在 伺服器配對區域 建立第二個使用者管理身份。
- 如果你還沒建立金鑰庫,可以建立 Azure Key Vault 或管理型 HSM。 請確定您符合需求 (部分機器翻譯)。 此外,在設定金鑰存放區之前,以及在建立金鑰並將所需權限指派給使用者指派的受控識別之前,也請遵循建議 (部分機器翻譯)。 如果您的伺服器已啟用異地備援備份,則您必須建立第二個金鑰存放區。 第二個金鑰存放區會保存用來加密已複製到伺服器配對區域之備份的資料加密金鑰。
備註
你必須將存放資料加密金鑰的金鑰存放區部署在與伺服器相同的區域。 如果你的伺服器啟用了地理備份冗餘,你必須建立一個金鑰庫,將地理冗餘備份的資料加密金鑰保存在伺服器 的配對區域 。
在你的金鑰庫裡建立一組金鑰。 如果您的伺服器已啟用異地備援備份,則每個金鑰存放區都需要一個金鑰。 使用這些金鑰之一,你就能加密伺服器的所有資料(包括所有系統與使用者資料庫、暫存檔案、伺服器日誌、預先寫入日誌片段及備份)。 使用第二個金鑰,您可將備份的複本加密,這些備份是以非同步方式複製到伺服器的配對區域。
在配置新的 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器時,請在安全標籤中設定資料加密。對於資料加密金鑰,請選擇客戶管理金鑰單選按鈕。
如果您讓異地備援備份儲存體能夠與伺服器一起佈建,因為伺服器使用兩個不同的加密金鑰,[安全性] 索引標籤的樣貌會有些微變更。 一個金鑰用於您部署伺服器所在的主要區域,另一個金鑰用於伺服器備份以非同步方式複寫的目標配對區域。
在 [使用者指派的受控識別] 中,選取 [變更身分識別]。
從使用者指定的受管理身份清單中,選擇你希望伺服器使用來存取存放在 Azure Key Vault 的資料加密金鑰的那個。
選取 ,然後新增。
如果您想要在每當所選金鑰的目前版本有所輪替 (不論是手動進行還是自動發生的) 時,讓服務自動更新所選金鑰最新版本的參考,請選取 [使用自動更新金鑰版本]。 若要了解使用自動更新金鑰版本的好處,請參閱自動更新金鑰版本 (部分機器翻譯)。
選取 [選取金鑰]。
[訂用帳戶] 會自動填入即將建立伺服器之訂用帳戶的名稱。 保存資料加密金鑰的金鑰存放區必須存在於與伺服器相同的訂用帳戶中。
在 [金鑰存放區類型] 中,針對您打算用來儲存資料加密金鑰的金鑰存放區類型,選取對應的選項按鈕。 在這個例子中,選擇 金鑰保險庫,但如果你選擇 受管理的 HSM,體驗會類似。
展開 [金鑰保存庫] (或 [受控 HSM],如果您選取了該儲存類型的話),然後選取資料加密金鑰所在的執行個體。
備註
當您展開下拉式方塊時,其會顯示 [沒有可用的項目]。 需要幾秒鐘的時間,系統才會列出部署在與伺服器相同區域的所有金鑰保存庫執行個體。
展開 [金鑰],然後選取要用於資料加密的金鑰名稱。
如果您未選取 [使用自動更新金鑰版本],則還必須選取特定版本的金鑰。 若要這樣做,請展開 [版本],然後選取要用於資料加密之金鑰版本的識別碼。
選取 選取。
設定新伺服器的所有其他設定,然後選取 [檢閱 + 建立]。
在現有伺服器上設定使用客戶自控金鑰的資料加密
你在建立伺服器時決定是使用系統管理金鑰還是客戶管理金鑰來進行資料加密。 做出決定並建立伺服器後,你無法在兩個選項間切換。 如果您想要從其中一個選項變更為另一個選項,唯一的替代方法是,將伺服器的任何可用備份還原到新的伺服器。 在設定還原時,你可以更改新伺服器的資料加密設定。
對於你用客戶管理金鑰部署資料加密的現有伺服器,你可以做多項設定變更。 您可以變更加密所用金鑰的參考,以及服務用來存取保存在金鑰存放區中的金鑰之使用者指派的受控身分識別參考。
您必須更新適用於 PostgreSQL 的 Azure 資料庫彈性伺服器對金鑰的參考:
- 當金鑰存放區中存放的金鑰無論是手動或自動輪替,且您的適用於 PostgreSQL 的 Azure 資料庫彈性伺服器指向該金鑰的特定版本時。 如果你指向的是金鑰,但不是指向特定版本(那時你啟用了 使用自動金鑰版本更新 ),服務會在手動或自動旋轉金鑰時自動參考該金鑰的最新版本。
- 當您想要使用儲存在不同金鑰存放區中的相同或不同金鑰時。
你必須更新 適用於 PostgreSQL 的 Azure 資料庫 靈活伺服器所使用的使用者指派管理身份,以便每當你想使用不同身份時,才能存取加密金鑰。
使用 Azure 入口網站:
選取適用於 PostgreSQL 的 Azure 彈性伺服器資料庫。
在資源選單中,在 安全性 區塊下,選擇 資料加密。
若要更改伺服器用來存取金鑰儲存的使用者指派管理身份,請展開 「使用者指派管理身份 」下拉選單,並選擇任一可用的身份。
備註
組合框只顯示你的 適用於 PostgreSQL 的 Azure 資料庫 靈活伺服器所指派的身份。 雖然不是必須,但為了維持區域韌性,請選擇與伺服器同一區域的用戶管理身份。 如果你的伺服器啟用了地理備份冗餘,那麼用於存取地理冗餘備份資料加密金鑰的第二個用戶管理身份,應該會存在於 伺服器的配對區域 。
如果您想用來存取資料加密金鑰的使用者指派受控身分識別,並未指派到您的適用於 PostgreSQL 的 Azure 資料庫彈性伺服器,且該物件在 Microsoft Entra ID 中也沒有做為 Azure 資源與對應物件存在,請選取 [建立] 來建立它。
在「建立使用者指派管理身份」面板中,輸入你想建立的使用者指派管理身份的細節,並自動將其指派到你的 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器,以便存取資料加密金鑰。
如果您想用來存取資料加密金鑰的使用者指派受控身分識別,並未指派到您的適用於 PostgreSQL 的 Azure 資料庫彈性伺服器,但該物件在 Microsoft Entra ID 中做為 Azure 資源與對應物件存在,請選取 [選取] 來指派它。
從使用者指定的受管理身份清單中,選擇你希望伺服器使用來存取存放在 Azure Key Vault 的資料加密金鑰的那個。
選取 ,然後新增。
如果您希望服務在所選金鑰的目前版本每次手動或自動輪替時,自動將參考更新為該金鑰的最新版本,請選取 [使用自動金鑰版本更新]。 要了解使用自動金鑰版本更新的好處,請參見[自動金鑰版本更新](../security/security-data-encryption.md##CMK key version updates)。
如果你旋轉金鑰但沒有啟用「 使用自動金鑰版本更新」。 或者如果你想用不同的金鑰,可以更新你的 適用於 PostgreSQL 的 Azure 資料庫 彈性伺服器,讓它指向新的金鑰版本或新金鑰。 要做到這點,複製金鑰的資源識別碼,並貼上到 金鑰識別 碼框中。
如果存取 Azure 入口網站的使用者有權限可以存取金鑰存放區中儲存的金鑰,您可以使用替代方法來選擇新的金鑰或新的金鑰版本。 若要這樣做,請在 [金鑰選取方法] 中,選取 [選取金鑰] 選項按鈕。
選取 [選取金鑰]。
[訂用帳戶] 會自動填入即將建立伺服器之訂用帳戶的名稱。 保存資料加密金鑰的金鑰存放區必須存在於與伺服器相同的訂用帳戶中。
在 [金鑰存放區類型] 中,針對您打算用來儲存資料加密金鑰的金鑰存放區類型,選取對應的選項按鈕。 在這個例子中,選擇 金鑰保險庫,但如果你選擇 受管理的 HSM,體驗會類似。
展開 [金鑰保存庫] (或 [受控 HSM],如果您選取了該儲存類型的話),然後選取資料加密金鑰所在的執行個體。
備註
當您展開下拉式方塊時,其會顯示 [沒有可用的項目]。 需要幾秒鐘的時間,系統才會列出部署在與伺服器相同區域的所有金鑰保存庫執行個體。
展開 [金鑰],然後選取要用於資料加密的金鑰名稱。
如果您未選取 [使用自動更新金鑰版本],則還必須選取特定版本的金鑰。 若要這樣做,請展開 [版本],然後選取要用於資料加密之金鑰版本的識別碼。
選取 選取。
當你對變更感到滿意後,選擇 儲存。