全部產品
Search
文件中心

Elastic Compute Service:加密雲端硬碟

更新時間:Oct 25, 2024

雲端硬碟加密是指通過密碼編譯演算法保護儲存在雲端硬碟中的資料免受未經授權的訪問和泄露。在資料被寫入雲端硬碟時對其進行加密,並確保資料在未授權情況下無法被訪問或解密,即使雲端硬碟資料泄露也無法解密,並在授權使用者讀取雲端硬碟資料時自動解密,從而確保雲端硬碟資料的機密性和完整性。本文介紹雲端硬碟加密原理、使用限制以及如何?雲端硬碟加密等。

加密概述

加密原理

在ECS的加密過程中,雲端硬碟、鏡像和快照的加密都是採用行業標準的AES-256密碼編譯演算法,並且通過Key Management Service(Key Management Service)進行加密。加密金鑰採用雙層設計,並通過信封加密的機制實現對資料的加密,第一層為使用者的主要金鑰CMK(Customer Master Key),第二層為根據主要金鑰產生的資料密鑰DK(Data Key)。其中,主要金鑰CMK用於對資料密鑰DK進行加解密操作和保護,資料密鑰DK用於對真實業務資料進行加解密操作和保護。加密流程和信封加密機制如下:

  1. 加密資料密鑰DK。

    在使用資料密鑰DK之前,會用主要金鑰CMK加密資料密鑰。加密後的資料密鑰(非明文)可以安全地與加密的業務資料一同儲存。這樣即使儲存介質被訪問,沒有CMK也無法解密資料密鑰。

  2. 儲存和讀取加密資料。

    當需要讀取加密資料時,首先通過KMS請求解密資料密鑰。KMS驗證請求後,返回資料密鑰的明文形式,這一過程通常在記憶體中完成,不會儲存在任何儲存介質上。然後,使用管理程式在記憶體中的明文資料密鑰來解密雲端硬碟I/O操作中的資料。

說明

整個信封加密過程中,主要金鑰的明文不會在KMS託管的密碼機之外進行儲存和使用。同時,資料密鑰明文僅會在使用者使用的服務執行個體所在的宿主機的記憶體中進行使用,永遠不會以明文形式儲存在任何儲存介質上。

更多資訊,請參見雲產品整合KMS加密概述

加密金鑰

KMS的預設密鑰包含服務密鑰和主要金鑰。ECS預設使用服務密鑰對使用者資料進行加密,也支援使用者在KMS上自訂主要金鑰對使用者資料進行加密。關於密鑰的更多說明,請參見密鑰服務概述

  • 服務密鑰

    您首次在一個地區加密雲端硬碟時,系統會自動在當前地區KMS中建立一個專為ECS使用的服務密鑰Default Service CMK(別名為alias/acs/ecs)。每個使用者在每個地區的服務密鑰是唯一的,您無法管理服務密鑰的生命週期。服務密鑰可以協助您獲得最基本的資料保護能力。但是對於高安全要求層級的情境,服務密鑰可能存在一些密鑰管理上的短板,例如不能自主管理密鑰的生命週期。

  • 主要金鑰

    您可以選擇自己建立或者上傳主要金鑰到KMS,並且管理密鑰的生命週期。使用密鑰可以獲得更多的安全能力。您可以禁用或啟用密鑰、通過KMS匯入內建的密鑰等操作進一步增強密鑰生命週期管理能力和控制ECS資料加解密的能力。密鑰還支援通行金鑰輪轉的能力,可以加強密鑰使用的安全性,以提升業務資料的安全性。禁用密鑰、計劃刪除密鑰等操作,請參見管理密鑰

    重要

    使用主要金鑰建立加密雲端硬碟、複製加密快照或加密鏡像時,不支援非對稱金鑰。更多資訊,請參見密鑰管理類型和密鑰規格

如何證明資料落盤已加密

在雲端硬碟加密機制中,您對雲端硬碟資料是否加密是無感的,您可以按照以下思路來證明資料落盤儲存時是加密的。

  1. 建立加密雲端硬碟時使用KMS主要金鑰。具體操作,請參見如何加密雲端硬碟

  2. 禁用KMS主要金鑰。具體操作,請參見管理密鑰

  3. 通過reboot命令重啟ECS執行個體

由於加密雲端硬碟關聯的KMS加密金鑰失效,導致ECS執行個體無法重啟,系統硬碟出現IO hang,雲端硬碟無法進行讀寫操作,從而證明使用者資料在落盤儲存時是被加密的。

計費說明

KMS為您提供免費的預設密鑰(服務密鑰和主要金鑰),預設密鑰無需購買KMS執行個體可直接使用。如果您需要擴充主要金鑰、使用憑據管家能力或為自建應用構建應用程式層密碼技術方案,您需要付費購買軟體密鑰管理執行個體或硬體密鑰管理執行個體。關於使用KMS的更多計費資訊,請參見產品計費

使用限制

限制項

說明

執行個體規格

  • 加密系統硬碟或通過快照建立雲端硬碟:不包括ecs.ebmg5、ecs.ebmgn5t、ecs.ebmi3、ecs.sccg5、ecs.scch5、ecs.ebmc4和ecs.ebmhfg5。更多資訊,請參見執行個體規格類型系列

  • 建立空資料盤:無限制。

雲端硬碟類型

  • 本地碟:不支援。

  • 加密系統硬碟:僅支援加密ESSD雲端硬碟、ESSD Entry雲端硬碟和ESSD AutoPL雲端硬碟。

  • 加密資料盤:

    • 建立空資料盤:無限制。

    • 通過快照建立雲端硬碟:僅支援加密ESSD雲端硬碟、ESSD Entry雲端硬碟和ESSD AutoPL雲端硬碟。

密鑰

  • 目前華東5(南京-本地地區)、華東6(福州-本地地區)、泰國(曼穀)和韓國(首爾)地區不支援選擇密鑰。

  • 首次在密鑰下拉式清單中選擇主要金鑰時,需要單擊先授權,根據頁面引導為ECS授權AliyunECSDiskEncryptDefaultRole角色,允許ECS訪問KMS資源。更多資訊,請參見加密ECS資源許可權

權限原則

對於部分高安全合規要求的企業,針對企業帳號下所有RAM子帳號可能要求必須使用加密以保護資料的機密性。ECS支援配置自訂權限原則限制RAM子帳號僅支援建立加密雲端硬碟,詳細的策略資訊,請參見限制RAM使用者僅支援建立加密雲端硬碟

注意事項

  • 加密行為無法復原,一旦建立為加密雲端硬碟,無法轉換為非加密雲端硬碟。

  • 由於刪除、禁用密鑰等操作會導緻密鑰失效,密鑰失效後會存在已建立的加密雲端硬碟、加密鏡像、加密快照資料不可恢複的風險。建議您在刪除、禁用密鑰前,使用禁用密鑰功能,或者自行排查該密鑰是否存在關聯使用的雲資源,避免密鑰丟失後資料不可恢複。

    警告

    聲明:由使用者自行操作密鑰失效後導致關聯的雲端硬碟資源相關資料丟失後不可恢複的風險,由使用者自行承擔責任。

如何加密雲端硬碟

建立ECS執行個體或雲端硬碟時加密雲端硬碟

控制台方式

  • 建立ECS執行個體

    本步驟僅描述建立ECS執行個體時如何加密系統硬碟或資料盤,其餘配置說明,請參見自訂購買執行個體

    1. 儲存地區選取項目雲端硬碟類型,並配置容量等資訊。

    2. 選中加密選項,並在下拉式清單中選擇一個加密金鑰。

      image

  • 建立雲端硬碟

    本步驟僅描述建立雲端硬碟時如何配置加密選項,其餘配置說明,請參見建立雲端硬碟

    1. 儲存參數處,選擇雲端硬碟類型,並配置容量等資訊。

    2. 選中加密選項,並在下拉式清單中選擇一個加密金鑰。

      image.png

說明
  • 在控制台選擇加密金鑰時,可以選擇服務密鑰(Default Service CMK)或事先在KMS中建立的密鑰。關於加密金鑰的更多說明,請參見加密金鑰。選擇主要金鑰有地區和許可權限制,詳情請參見使用限制

  • 如果選擇用快照建立磁碟,執行個體規格類型系列及雲端硬碟類型必須滿足限制條件才能選擇加密選項,詳情請參見使用限制

API方式

  • 建立ECS執行個體

    通過調用API介面RunInstances建立ECS執行個體時,設定系統硬碟SystemDisk或資料盤DataDisk的Encrypted值和KMSKeyId值,來加密系統硬碟和資料盤。

  • 建立雲端硬碟

    通過調用API介面CreateDisk建立資料盤時,設定Encrypted值和KMSKeyId值,來加密資料盤。

將存量非加密盤轉換為加密雲端硬碟

您可以通過以下幾種方式加密存量系統硬碟或資料盤。

控制台方式

  • 加密系統硬碟

    1. 為ECS執行個體建立鏡像。具體操作,請參見使用執行個體建立自訂鏡像

    2. 將鏡像複製為加密鏡像。具體操作,請參見複製鏡像

    3. 基於加密鏡像實現加密系統硬碟。

      • 使用加密鏡像更換源ECS執行個體的系統硬碟,源ECS執行個體的系統硬碟會自動加密。具體操作,請參見更換作業系統(系統硬碟)

      • 使用加密鏡像重新建立新的ECS執行個體,新ECS執行個體的系統硬碟以及資料盤(如果有)會自動加密。具體操作,請參見使用自訂鏡像建立執行個體

  • 加密資料盤

    1. 為資料盤建立快照。具體操作,請參見建立快照

    2. 將快照式複寫為加密快照。具體操作,請參見複製快照

    3. 基於加密快照建立新的雲端硬碟,雲端硬碟資料是加密的。具體操作,請參見使用快照建立雲端硬碟

    4. 將建立的加密雲端硬碟掛載至源ECS執行個體。具體操作,請參見掛載資料盤

OOS自動編排方案

您可以通過OOS公用模板ACS-ECS-BulkyEncryptSystemDisk實現對多台ECS執行個體中的系統硬碟大量加密。具體操作,請參見通過OOS大量加密系統硬碟

說明

CloudOps Orchestration Service (OOS)是全面、免費的雲上自動化營運平台,可以幫您實現標準化營運任務,從而實踐營運即代碼(Operations as Code)的先進理念。更多資訊,請參見什麼是系統營運管理OOS的公用模板說明,請參見公用模板