保護 Windows 和 Linux VM 的加密選項
假設您公司的交易夥伴設有安全性原則,要求其交易資料必須受到增強式加密的保護。 您使用在 Windows 伺服器上執行的 B2B 應用程式,並將資料儲存在伺服器資料磁碟上。 現在您即將轉換至雲端,因此必須向交易夥伴證明,未經授權的使用者、裝置或應用程式無法存取儲存在您 Azure VM 上的資料。 您必須決定實作 B2B 資料加密的策略。
根據稽核需求的指定,您的加密金鑰必須由內部管理,而非由任何協力廠商管理。 您也想要確保 Azure 型伺服器是否保有效能和管理能力。 因此在實作加密之前,您希望確定效能不會受到影響。
什麼是加密?
加密是指將有意義的資訊轉換成看似無意義的內容,例如隨機排列的字母和數字。 加密程序會在建立加密資料的演算法中使用某種形式的金鑰。 執行解密時也需要金鑰。 金鑰可以是「對稱」(加密和解密使用相同的金鑰) 或「非對稱」(使用不同的金鑰)。 後者的範例是用於數位憑證的公開-私密金鑰組。
對稱加密
使用對稱金鑰的演算法 (例如進階加密標準 (AES)),其速度通常會優於公開金鑰演算法,且常用來保護大型資料存放區。 由於只有一個金鑰,因此必須擬妥相關程序,防止公眾得知該金鑰。
非對稱加密
使用非對稱演算法時,只有配對的私密金鑰成員必須保持私密且安全。 正如其名所示,公開金鑰可以提供給任何人,而不會危害加密資料。 不過,公開金鑰演算法的缺點是速度比對稱演算法慢,且無法用來加密大量資料。
金鑰管理
在 Azure 中,Microsoft 或客戶可以管理您的加密金鑰。 對客戶管理的金鑰需求,通常來自於需要證明符合 HIPAA 合規性或其他規定的組織。 此類合規性可能會要求必須記錄對金鑰的存取,且必須進行定期的金鑰變更並加以記錄。
Azure 磁碟加密技術
適用於 Azure VM 的主要加密型磁碟保護技術包括:
- Azure 儲存體服務加密 (SSE)
- Azure 磁碟加密 (ADE)
儲存體服務加密是在資料中心中的實體磁碟上執行。 若某人直接存取了實體磁碟,資料將會加密。 從磁碟存取資料時,系統會將其解密並載入到記憶體中。
Azure 磁碟加密可加密虛擬機器的虛擬硬碟 (VHD)。 若使用 ADE 來保護 VHD,只有擁有該磁碟的虛擬機器可以存取磁碟映像。
可以同時使用這兩個服務來保護您的資料。
儲存體服務加密
Azure 儲存體服務加密是 Azure 的內建加密服務,用於保護待用資料。 Azure 儲存體平台會在資料儲存到若干儲存體服務 (包括 Azure 受控磁碟) 之前,自動對資料加密。 加密依預設會使用 256 位元 AES 加密來啟用,並由儲存體帳戶管理員來管理。
系統會針對所有新的和現有的儲存體帳戶啟用 Azure 儲存體服務加密,且無法停用它。 預設會保護您的資料,因此無須修改您的程式碼或應用程式,即可利用儲存體服務加密。
SSE 不會影響 Azure 儲存體服務的效能。
Azure 磁碟加密
虛擬機器 (VM) 擁有者會管理 ADE。 它使用 BitLocker (在 Windows VM 上) 和 DM-Crypt (在 Linux VM 上) 對 Windows 和 Linux VM 控制的磁碟進行加密控管。 BitLocker 磁碟機加密是與作業系統整合的資料保護功能,可因應遺失、遭竊或未經正常管道報廢的電腦資料遭竊或公開的威脅。 同樣地,DM-Crypt 會在 Linux 的待用資料寫入至儲存體之前為其加密。
ADE 可確保 VM 磁碟上的所有資料都會在 Azure 儲存體中進行待用加密,且備份至 Recovery 保存庫的 VM 都必須使用 ADE。
使用 ADE 時,VM 會以客戶控制的金鑰和原則開機。 ADE 會與 Azure Key Vault 整合以管理這些磁碟加密金鑰與祕密。
注意
ADE 不支援對基本層 VM 加密,且您無法搭配使用內部部署金鑰管理服務 (KMS) 與 ADE。
使用加密的時機
電腦資料在傳輸時 (透過網際網路或其他網路傳輸) 和待用時 (已儲存至儲存裝置) 都會有風險。 在保護 Azure VM 磁碟上的資料時,待用方面會是主要考量。 例如,可能會有人下載與 Azure VM 相關聯的虛擬硬碟 (VHD) 檔案,並將其儲存在自己的膝上型電腦上。 如果 VHD 未加密,VHD 的內容就可能遭到可在本身的電腦上掛接該 VHD 檔案的任何人存取。
就作業系統 (OS) 磁碟而言,密碼之類的資料會自動加密,因此即使 VHD 本身並未加密,此類資訊仍不易遭到存取。 應用程式也可自動加密其本身的資料。 不過,即使有此類保護,如果有人基於惡意意圖設法想取得資料磁碟的存取權,而磁碟本身並未加密,這些人即有機會利用該應用程式的資料保護機制現存的任何已知弱點進行入侵。 磁碟加密設置妥當後,就無法發動此類攻擊。
儲存體服務加密屬於 Azure 的一部分,而在使用儲存體服務加密時,對 VM 磁碟 I/O 不會有明顯的效能影響。 使用 SSE 的受控磁碟是目前的預設值,且應該沒有必要加以變更。 ADE 會使用 VM 作業系統工具 BitLocker 和 DM-Crypt。 因此,執行 VM 磁碟上的加密或解密時,VM 本身必須執行一些工作。 除了特定情況外,此類額外的 VM CPU 活動所產生的影響通常是可忽略的。 例如,如果您有需要大量 CPU 的應用程式,則可能會採取不加密 OS 磁碟以盡可能提高效能的做法。 在這類情況下,您可以將應用程式資料儲存在個別的加密資料磁碟上,既可獲得您所需的效能,又不會犧牲安全性。
Azure 提供兩種互補的加密技術,用以保護 Azure VM 磁碟。 這兩個技術 (SSE 和 ADE) 分別可在不同的層級加密,並且有不同的用途。 兩者都使用 AES 256 位元加密。 同時使用這兩種技術可提供深度防禦的保護,杜絕未經授權者存取您的 Azure 儲存體和特定 VHD。