共用方式為


使用客戶自控金鑰來設定 Azure Cache for Redis 執行個體的磁碟加密 (預覽)

根據預設,Redis 伺服器中的資料會儲存在記憶體中。 此資料不會加密。 您可以先對資料實作自己的加密方法,再將資料寫入到快取中。 在某些情況下,會因為作業系統執行作業,或是您刻意進行使用匯出 (部分機器翻譯) 或資料持續性 (部分機器翻譯) 來保存資料的動作,因此資料可能會位於磁碟上。

Azure Cache for Redis 預設會提供平台代控金鑰 (PMK) (也稱為 Microsoft 代控金鑰 (MMK)) 來加密所有階層中的磁碟資料。 Enterprise 和 Enterprise Flash 階層的 Azure Cache for Redis 另外提供了使用客戶自控金鑰 (CMK) 來加密 OS 和資料持續性磁碟的功能。 客戶自控金鑰可用來包裝 MMK 以控制這些金鑰的存取。 這使得 CMK 成為「金鑰加密金鑰」(簡稱 KEK)。 如需詳細資訊,請參閱 Azure 中的金鑰管理 (部分機器翻譯)。

CMK 磁碟加密的可用性範圍

基本、標準、進階 Enterprise,Enterprise Flash
Microsoft 代控金鑰 (MMK) Yes Yes
客戶自控金鑰 (CMK) No 是 (預覽)

警告

根據預設,所有 Azure Cache for Redis 階層都會使用 Microsoft 代控金鑰來加密掛接至快取執行個體的磁碟。 不過,在基本層和標準層中,C0 和 C1 SKU 不支援任何磁碟加密。

重要

在進階層中,資料持續性會將資料直接串流至 Azure 儲存體,因此磁碟加密較不重要。 Azure 儲存體會改為提供各種不同的加密方法以供使用。

加密涵蓋範圍

企業層級

在「Enterprise」階層中,會使用磁碟加密來加密持續性磁碟、暫存檔案和 OS 磁碟:

  • 持續性磁碟:保存所保存的 RDB 或 AOF 檔案作為資料持續性 (部分機器翻譯) 的一部分
  • 「匯出」中使用的暫存檔案:會加密匯出的所使用暫存資料。 當您匯出 (部分機器翻譯) 資料時,會由儲存體帳戶中的設定來控制最終匯出資料的加密。
  • OS 磁碟

預設會使用 MMK 來加密這些磁碟,但也可以使用 CMK 來加密。

在「Enterprise Flash」階層中,也會使用非揮發性記憶體 Express (NVMe) 快閃儲存體將金鑰和值部分儲存在磁碟上。 不過,此磁碟與用於所保存資料的磁碟不同。 與其相反,這是暫時性的磁碟,而且在快取停止、解除配置或重新啟動後便不會保存資料。 這是暫時性的資料,因此這個磁碟上僅支援 MMK。

儲存的資料 磁碟 加密選項
持續性檔案 持續性磁碟 MMK 或 CMK
等待匯出的 RDB 檔案 OS 磁碟和持續性磁碟 MMK 或 CMK
金鑰和值 (僅限 Enterprise Flash 階層) 暫時性 NVMe 磁碟 MMK

其他階層

在「基本層、標準層和進階層」中,預設會使用 MMK 來加密 OS 磁碟。 不會掛接持續性磁碟,而是改為使用 Azure 儲存體。 C0 和 C1 SKU 不會使用磁碟加密。

先決條件與限制

一般必要條件和限制

  • C0 或 C1 SKU 的基本層和標準層無法使用磁碟加密
  • 僅支援以使用者指派的受控識別來連線到 Azure Key Vault。 不支援系統指派的受控識別。
  • 在現有的快取執行個體上於 MMK 與 CMK 之間進行變更會觸發長時間執行的維護作業。 不建議將此用於生產環境,否則會發生服務中斷。

Azure Key Vault 必要條件和限制

  • 包含客戶自控金鑰的 Azure Key Vault 資源必須位於與快取資源相同的區域中。
  • 必須在 Azure Key Vault 執行個體中啟用清除保護和虛刪除。 預設不會啟用清除保護。
  • 當您在 Azure Key Vault 中使用防火牆規則時,必須將 Key Vault 執行個體設定為允許信任的服務
  • 僅支援 RSA 金鑰
  • 使用者指派的受控識別必須在 Key Vault 存取原則中獲得「取得」、、「解除包裝金鑰」和「包裝金鑰」權限,或是獲得 Azure 角色型存取控制中的對等權限。 此案例所需、具有最低權限的建議內建角色定義稱為 KeyVault 密碼編譯服務加密使用者 (部分機器翻譯)。

如何在 Enterprise 快取上設定 CMK 加密

使用入口網站建立啟用了 CMK 的新快取

  1. 登入 Azure 入口網站並開始建立 Redis Enterprise 快取 (部分機器翻譯) 快速入門指南。

  2. 在 [進階] 頁面上,移至標題為 [客戶自控金鑰待用加密] 的區段,然後啟用 [使用客戶自控金鑰] 選項。

    Screenshot of the advanced settings with customer-managed key encryption checked and in a red box.

  3. 選取 [新增]使用者指派的受控識別 (部分機器翻譯) 指派給資源。 此受控識別可用來連線到保存客戶自控金鑰的 Azure Key Vault (部分機器翻譯) 執行個體。

    Screenshot showing user managed identity in the working pane.

  4. 選取您選擇的使用者指派受控識別,然後選擇要使用的金鑰輸入方法。

  5. 如果使用 [選取 Azure 金鑰保存庫和金鑰] 輸入方法,請選擇保存了客戶自控金鑰的 Key Vault 執行個體。 這個執行個體必須位於與快取相同的區域。

    注意

    如需如何設定 Azure Key Vault 執行個體的指示,請參閱 Azure Key Vault 快速入門指南 (部分機器翻譯)。 您也可以選取 Key Vault 選取項目下方的 [建立金鑰保存庫] 連結,來建立新的 Key Vault 執行個體。 請記住,Key Vault 執行個體中必須同時啟用清除保護和虛刪除。

  6. 使用 [客戶自控金鑰 (RSA)] 和 [版本] 下拉式清單來選擇特定金鑰和版本。

    Screenshot showing the select identity and key fields completed.

  7. 如果使用 [URI] 輸入方法,請為您從 Azure Key Vault 選擇的金鑰輸入「金鑰識別碼 URI」。

  8. 輸入完快取的所有資訊時,請選取 [檢閱 + 建立]

將 CMK 加密新增至現有 Enterprise 快取

  1. 移至快取執行個體 [資源] 功能表中的 [加密]。 如果已設定好 CMK,則會看到金鑰資訊。

  2. 如果尚未設定好,或想要變更 CMK 設定,請選取 [變更加密設定]Screenshot encryption selected in the Resource menu for an Enterprise tier cache.

  3. 選取 [使用客戶自控金鑰] 以查看設定選項。

  4. 選取 [新增]使用者指派的受控識別 (部分機器翻譯) 指派給資源。 此受控識別可用來連線到保存客戶自控金鑰的 Azure Key Vault (部分機器翻譯) 執行個體。

  5. 選取您選擇的使用者指派受控識別,然後選擇要使用的金鑰輸入方法。

  6. 如果使用 [選取 Azure 金鑰保存庫和金鑰] 輸入方法,請選擇保存了客戶自控金鑰的 Key Vault 執行個體。 這個執行個體必須位於與快取相同的區域。

    注意

    如需如何設定 Azure Key Vault 執行個體的指示,請參閱 Azure Key Vault 快速入門指南 (部分機器翻譯)。 您也可以選取 Key Vault 選取項目下方的 [建立金鑰保存庫] 連結,來建立新的 Key Vault 執行個體。

  7. 使用 [客戶自控金鑰 (RSA)] 下拉式清單來選擇特定金鑰。 如果有多個版本的金鑰可供選擇,請使用 [版本] 下拉式清單。 Screenshot showing the select identity and key fields completed for Encryption.

  8. 如果使用 [URI] 輸入方法,請為您從 Azure Key Vault 選擇的金鑰輸入「金鑰識別碼 URI」。

  9. 選取儲存

下一步

深入了解 Azure Cache for Redis 功能: