Azure 磁碟儲存體的伺服器端加密

適用於: ✔️ Linux VM ✔️ Windows VM ✔️ 彈性擴展集 ✔️ 統一擴展集

大部分的 Azure 受控磁碟都會使用 Azure 儲存體加密功能進行加密,其會使用伺服器端加密 (SSE) 來保護您的資料,並協助您符合組織安全性及合規性承諾。 Azure 儲存體加密會在將您的資料保存至雲端時,預設自動將其加密儲存在待用 Azure 受控磁碟 (作業系統和資料磁碟) 上。 不過,透過主機啟用加密的磁碟則不會透過 Azure 儲存體加密。 對於啟用主機加密的磁碟,裝載 VM 的伺服器會提供對於資料的加密,而加密的資料流程會流入 Azure 儲存體中。

Azure 受控磁碟中的資料會使用 256 位元的 AES 加密 (強度最高的區塊編碼器之一),以透明方式進行加密,且符合 FIPS 140-2 規範。 如需有關基礎 Azure 受控磁碟的加密模組詳細資訊,請參閱密碼編譯 API:新一代

Azure 儲存體加密不會影響受控磁碟的效能,也不會產生額外的成本。 如需 Azure 儲存體加密的詳細資訊,請參閱Azure 儲存體加密

注意

暫存磁碟不是受控磁碟,且除非您在主機啟用加密,其將不會由 SSE 加密。

關於加密金鑰管理

您可以依賴由平台管理的金鑰來加密受控磁碟,也可以使用您自己的金鑰來管理加密。 如果選擇使用自己的金鑰來管理加密,您可以指定「客戶管理的金鑰」,用於加密和解密受控磁碟中的所有資料。

下列各節將詳細說明金鑰管理的每個選項。

平台管理的金鑰

根據預設,受控磁碟會使用平台管理的加密金鑰。 所有新的受控磁碟、快照集、映像和寫入至現有受控磁碟的資料都會使用平台管理的金鑰自動加密待用資料。 平台代控金鑰是由 Microsoft 管理。

客戶管理的金鑰

您可以選擇使用自己的金鑰來管理每個受控磁碟層級的加密。 當您指定客戶自控金鑰時,該金鑰會用來保護及控制加密資料所需金鑰的存取權。 客戶自控金鑰可提供更大的彈性來管理存取控制。

您必須使用下列其中一個 Azure 金鑰存放區來儲存客戶自控金鑰:

您可以將您的 RSA 金鑰匯入 Key Vault,或在 Azure Key Vault 中產生新的 RSA 金鑰。 Azure 受控磁碟會使用信封加密,以完全透明的方式處理加密和解密。 其會使用以 AES 256 為基礎的資料加密金鑰 (DEK) 來加密資料,而這是使用您的金鑰來保護。 儲存體服務會產生資料加密金鑰,並使用 RSA 加密,透過客戶管理的金鑰進行加密。 信封加密可讓您根據您的相容性原則,定期輪替 (變更) 您的金鑰,而不會影響您的 VM。 當您輪替金鑰時,儲存體服務會使用新的客戶管理的金鑰,重新加密資料加密金鑰。

受控磁碟和 Key Vault 或受控 HSM 必須位於相同 Azure 區域,但可位於不同的訂用帳戶。 同時也必須位於相同的 Microsoft Entra 租用戶中,除非您使用加密受控磁碟搭配跨租用戶的客戶自控金鑰 (預覽)

完全控制金鑰

您必須在 Key Vault 或受控 HSM 中授與受控磁碟的存取權,才能使用您的金鑰來加密和解密 DEK。 這可讓您完全控制您的資料和金鑰。 您可以隨時停用金鑰或撤銷對受控磁碟的存取權。 您也可以使用 Azure Key Vault 監視以稽核加密金鑰使用狀況,確保只有受控磁碟或其他信任的 Azure 服務會存取您的金鑰。

重要

金鑰停用、刪除或過期時,凡有 OS 或資料磁碟使用該金鑰的 VM 都會自動關機。 自動關機之後,VM 將不會開機,直到再次啟用金鑰,或您指派新的金鑰為止。

一般而言,磁碟 I/O (讀取或寫入作業) 在金鑰停用、刪除或過期一小時後開始出現失敗的狀況。

下圖顯示受控磁碟如何透過 Microsoft Entra ID 和 Azure Key Vault 使用客戶自控金鑰提出要求:

受控磁碟和客戶自控密鑰工作流程的圖表。系統管理員會建立 Azure 金鑰保存庫,然後建立磁碟加密集,並設定磁碟加密集。此集合與 VM 相關聯,可讓磁碟使用 Microsoft Entra ID 進行驗證

下列清單詳細說明圖表:

  1. Azure Key Vault 管理員會建立金鑰保存庫資源。
  2. 金鑰保存庫管理員會將其 RSA 金鑰匯入 Key Vault,或在 Key Vault 中產生新的 RSA 金鑰。
  3. 管理員會建立磁碟加密集資源的執行個體,並指定 Azure Key Vault ID 和金鑰 URL。 磁碟加密集是為了簡化受控磁碟的金鑰管理而導入的新資源。
  4. 磁碟加密集建立後,會在 Microsoft Entra ID 中建立系統指派的受控識別,並與磁碟加密集建立關聯。
  5. 然後,Azure Key Vault 管理員會授與受控識別權限,以在金鑰保存庫中執行作業。
  6. VM 使用者可以藉由將磁碟與磁碟加密集建立關聯,以建立磁碟。 VM 使用者也可以藉由將客戶管理的金鑰與磁碟加密集建立關聯,針對現有資源使用客戶管理的金鑰,啟用伺服器端加密。
  7. 受控磁碟會使用受控識別,將要求傳送至 Azure Key Vault。
  8. 至於讀取或寫入資料,受控磁碟會將要求傳送至 Azure Key Vault,加密 (包裝) 和解密 (解除包裝) 資料加密金鑰,以執行資料的加密和解密。

若要撤銷客戶管理的金鑰的存取權,請參閱 Azure Key Vault PowerShellAzure Key Vault CLI。 撤銷存取權會有效封鎖對儲存體帳戶中所有資料的存取,因為 Azure 儲存體無法存取加密金鑰。

客戶自控金鑰的自動金鑰輪替

一般而言,如果您使用客戶自控金鑰,您應該啟用自動將金鑰輪替為最新金鑰版本。 自動金鑰輪替有助於確保您的金鑰安全。 磁碟會透過其磁碟加密集來參考金鑰。 當為磁碟加密集啟用自動輪替時,系統會自動更新所有受控磁碟、快照集和參考磁碟加密的映像,以在一小時內使用新版本的金鑰。 若要瞭解如何使用自動金鑰輪替來啟用客戶自控金鑰,請參閱使用自動金鑰輪替設定 Azure Key Vault 和 DiskEncryptionSet

注意

虛擬機器不會在自動金鑰輪替期間重新啟動。

如果您無法啟用自動金鑰輪替,可以使用其他方法在金鑰到期前警示您。 如此一來,您便可以確定在到期前輪替金鑰,保持業務持續性。 您可以使用 Azure 原則Azure 事件方格,在金鑰即將到期時傳送通知。

限制

目前,客戶管理的金鑰具有下列限制:

  • 如果已對具有增量快照集的磁碟啟用此功能,就無法在該磁碟或其快照集上停用此功能。 若要解決此問題,請將所有資料複製到未使用客戶自控金鑰的另一個完全不同受控磁碟。 您可以使用 Azure CLIAzure PowerShell 模組來解決。
  • 僅支援大小為 2048 位元、3072 位元和 4096 位元的軟體和 HSM RSA 金鑰,不支援其他金鑰或大小。
    • HSM 金鑰需要 Azure 金鑰保存庫的進階服務層級
  • 僅適用於 Ultra 磁碟和 進階版 SSD v2 磁碟:
    • 從使用伺服器端加密和客戶自控密鑰加密的磁碟所建立的快照集,必須使用相同的客戶自控密鑰來加密。
    • Ultra 磁碟和 進階版 以客戶自控密鑰加密的 SSD v2 磁碟不支援使用者指派的受控識別。
  • 幾乎所有與客戶管理金鑰相關的資源 (磁碟加密集、VM、磁碟和快照集) 必須位於相同的訂閱和區域中。
    • Azure Key Vault 可從不同的訂用帳戶使用,但必須與磁碟加密集位於相同的區域中。 作為預覽版,您可以從不同的 Microsoft Entra 租用戶使用 Azure Key Vault。
  • 只有在相連結的 VM 解除配置時,使用客戶自控金鑰加密的磁碟才能移至另一個資源群組。
  • 使用客戶自控金鑰加密的磁碟、快照集和映像,無法在訂用帳戶之間移動。
  • 目前正在或之前使用 Azure 磁碟加密進行加密的受控磁碟,將無法使用客戶自控金鑰進行加密。
  • 每個區域的每個訂用帳戶最多只能建立 5000 個磁碟加密集。
  • 如需將客戶自控金鑰與共用映像資源庫搭配使用的詳細資訊,請參閱預覽:使用客戶管理的金鑰加密映像 (部分機器翻譯)。

支援的區域

客戶自控金鑰可在受控磁碟的所有區域中使用。

重要

客戶自控金鑰須依賴 Azure 資源受控識別,這是 Microsoft Entra ID 的一項功能。 當您設定客戶管理的金鑰時,受控識別會在幕後自動指派給您的資源。 如果您之後將訂用帳戶、資源群組或受控磁碟從一個 Microsoft Entra 目錄移至另一個目錄,與受控磁碟相關聯的受控識別不會移轉至新的租用戶,因此客戶自控金鑰可能無法再運作。 如需詳細資訊,請參閱在 Microsoft Entra 目錄之間移轉訂用帳戶 (部分機器翻譯)。

若要為受控磁碟啟用客戶自控金鑰,請參閱我們的文章,其中說明了如何使用 Azure PowerShell 模組Azure CLIAzure 入口網站來加以啟用。

如需程式碼範例,請參閱使用 CLI 從快照集建立受控磁碟

主機加密 - VM 資料的端對端加密

當您在主機上啟用加密時,該加密會從 VM 主機本身,也就是 VM 配置到的 Azure 伺服器開始。 暫存磁碟和 OS/資料磁碟上快取的資料會儲存在該 VM 主機上。 在主機上啟用加密之後,所有資料都會在待用時加密,並流向作為保存位置的儲存體服務。 基本上,主機的加密會從端對端加密您的資料。 主機上的加密不會使用 VM 的 CPU,而且不會影響 VM 的效能。

在啟用端對端加密時,暫存磁碟和暫時性 OS 磁碟會使用平台代控金鑰進行待用加密。 視選取的磁碟加密類型而定,OS 和資料磁碟快取會使用客戶自控金鑰或平台代控金鑰進行待用加密。 例如,如果磁碟是使用客戶自控金鑰加密,則磁碟的快取會使用客戶自控金鑰加密,而如果磁碟使用平台代控金鑰加密,則磁碟的快取就會使用平台代控金鑰加密。

限制

  • 支援 4k 磁區大小 Ultra 磁碟和進階 SSD v2。
  • 只有在 2023/5/13 之後建立的 512e 磁區大小 Ultra 磁碟和進階 SSD v2 上受支援。
  • 無法在目前或曾經啟用 Azure 磁碟加密 的虛擬機 (VM) 或虛擬機擴展集上啟用。
  • Azure 磁碟加密無法在已啟用主機加密的磁碟上啟用。
  • 您可以在現有的虛擬機器擴展集上啟用加密。 不過,只有在啟用加密之後建立的新 VM 才會自動加密。
  • 現有的 VM 必須解除配置和重新配置,才能加密。

區域可用性

主機加密適用於所有磁碟類型的所有區域。

支援的 VM 大小

可透過程式設計方式來提取支援 VM 大小的完整清單。 若要瞭解如何以程式設計方式擷取它們,請參閱 Azure PowerShell 模組Azure CLI 文章的尋找支援的 VM 大小一節。

若要在主機端使用加密來啟用端對端加密,請參閱我們的文章,其中說明了如何使用 Azure PowerShell 模組Azure CLIAzure 入口網站來加以啟用。

雙重待用加密

要求高安全性,且擔憂與任何特定加密演算法、實作或金鑰遭盜用相關風險的客戶,現在可以選擇使用平台代控的加密金鑰,在基礎結構層使用不同的加密演算法/模式,以獲得額外的加密層。 這個新加密層可以套用至保存的 OS 和資料磁碟、快照集和映像,全都會以雙重加密進行待用加密。

限制

Ultra 磁碟或進階 SSD v2 磁碟目前不支援待用雙重加密。

支援的區域

所有可以使用受控磁碟的區域都能使用雙重加密。

若要為受控磁碟啟用雙重待用加密,請參閱我們的文章,其中說明了如何使用Azure PowerShell 模組Azure CLIAzure 入口網站來加以啟用。

伺服器端加密與 Azure 磁碟加密

Azure 磁碟加密會利用或是 Linux 的 DM-Crypt 或是 Windows 的 BitLocker 功能,在來賓 VM 中使用客戶管理的金鑰來加密受控磁碟。 使用客戶管理的金鑰進行伺服器端加密,可讓您藉由加密儲存庫服務中的資料,對您的 VM 使用任何作業系統類型和映像,而改善 ADE 的效能。

重要

客戶自控金鑰須依賴 Azure 資源受控識別,這是 Microsoft Entra ID 的一項功能。 當您設定客戶管理的金鑰時,受控識別會在幕後自動指派給您的資源。 如果您之後將訂用帳戶、資源群組或受控磁碟從一個 Microsoft Entra 目錄移至另一個目錄,與受控磁碟相關聯的受控識別不會移轉至新的租用戶,因此,客戶自控金鑰可能無法再運作。 如需詳細資訊,請參閱在 Microsoft Entra 目錄之間移轉訂用帳戶 (部分機器翻譯)。

下一步