Amazon EBS 加密 - Amazon EBS

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

Amazon EBS 加密

使用 Amazon EBS 加密 作為與 EC2 執行個體相關聯的 EBS 資源的直接加密解決方案。使用 Amazon EBS 加密,您不需要建置、維護或保護自己的金鑰管理基礎設施。在建立加密磁碟區和快照時,Amazon EBS 加密會使用 AWS KMS keys 。

加密操作會在託管 EC2 執行個體的伺服器上進行,以確保執行個體 data-at-rest 及其連接 EBS 儲存體 data-in-transit 之間以及之間的安全性。

您可以將加密和未加密磁碟區同時連接到執行個體。

EBS 加密的運作方式

您可以同時加密 EC2 執行個體的開機和資料磁碟區。

當您建立加密 EBS 磁碟區並連接到支援的執行個體類型時,便會加密下列資料類型:

  • 磁碟區內的待用資料

  • 所有在磁碟區和執行個體間移動的資料

  • 所有從磁碟區建立的快照

  • 所有從那些快照建立的磁碟區

Amazon EBS 會使用業界標準的 AES-256 資料加密,利用資料金鑰來加密您的磁碟區。資料金鑰是由您的金鑰產生, AWS KMS 然後 AWS KMS 使用您的 AWS KMS 金鑰加密,然後再與您的磁碟區資訊一起儲存。所有快照,以及使用相同 AWS KMS 金鑰從這些快照建立的任何後續磁碟區都會共用相同的資料金鑰。如需詳細資訊,請參閱AWS Key Management Service 開發人員指南中的 資料金鑰

Amazon EC2 搭配使用, AWS KMS 以稍微不同的方式加密和解密 EBS 磁碟區,具體取決於您從中建立加密磁碟區的快照是加密還是未加密。

加密快照時 EBS 加密的運作方式

當您從自己擁有的加密快照建立加密磁碟區時,Amazon EC2 會使用 AWS KMS 以下方式加密和解密 EBS 磁碟區:

  1. Amazon EC2 會將GenerateDataKeyWithoutPlaintext請求傳送到 AWS KMS,並指定您為磁碟區加密選擇的 KMS 金鑰。

  2. 如果磁碟區使用與快照相同的 KMS 金鑰加密,請 AWS KMS 使用與快照相同的資料金鑰,並在相同的 KMS 金鑰下加密該磁碟區。如果磁碟區使用不同的 KMS 金鑰加密,則 AWS KMS 會產生新的資料金鑰,並在您指定的 KMS 金鑰下加密該磁碟區。加密的資料金鑰會傳送給 Amazon EBS,隨磁碟區中繼資料一起存放。

  3. 當您將加密磁碟區連接到執行個體時,Amazon EC2 會傳送CreateGrant請求至,以 AWS KMS 便解密資料金鑰。

  4. AWS KMS 解密加密的資料金鑰,並將解密的資料金鑰傳送到 Amazon EC2。

  5. Amazon EC2 使用存放在 Nitro 硬體的純文字資料金鑰來加密磁碟區的磁碟 I/O。只要磁碟區連接到執行個體,純文字資料金鑰就會存在記憶體中。

快照未加密時 EBS 加密的運作方式

當您從未加密的快照建立加密磁碟區時,可使用 AWS KMS 搭配 Amazon EC2 來加密和解密 EBS 磁碟區:

  1. Amazon EC2 會將CreateGrant請求傳送到 AWS KMS,以便它可以加密從快照建立的磁碟區。

  2. Amazon EC2 會將GenerateDataKeyWithoutPlaintext請求傳送到 AWS KMS,並指定您為磁碟區加密選擇的 KMS 金鑰。

  3. AWS KMS 產生新的資料金鑰,在您選擇用於磁碟區加密的 KMS 金鑰下加密,然後將加密的資料金鑰傳送至 Amazon EBS,以便與磁碟區中繼資料一起存放。

  4. Amazon EC2 會傳送解密請求 AWS KMS 來解密加密的資料金鑰,然後使用該金鑰來加密磁碟區資料。

  5. 當您將加密磁碟區連接到執行個體時,Amazon EC2 會向其傳送CreateGrant請求 AWS KMS,以便解密資料金鑰。

  6. 當您將加密磁碟區連接到執行個體時,Amazon EC2 會傳送解密請求到 AWS KMS,並指定加密的資料金鑰。

  7. AWS KMS 解密加密的資料金鑰,並將解密的資料金鑰傳送到 Amazon EC2。

  8. Amazon EC2 使用存放在 Nitro 硬體的純文字資料金鑰來加密磁碟區的磁碟 I/O。只要磁碟區連接到執行個體,純文字資料金鑰就會存在記憶體中。

如需詳細資訊,請參閱AWS Key Management Service 開發人員指南中的 Amazon Elastic Block Store (Amazon EBS) 如何使用 AWS KMSAmazon EC2 的兩則範例

無法使用的 KMS 金鑰如何影響資料金鑰

當 KMS 金鑰變得無法使用時,效果幾乎是即時的 (視最終一致性而定)。KMS 金鑰的金鑰狀態變更反映了其最新狀況,所有在密碼編譯操作中使用 KMS 金鑰的請求都將失敗。

當您執行會導致 KMS 金鑰無法使用的動作,不會立即影響 EC2 執行個體或連接的 EBS 磁碟區。當磁碟區連接執行個體時,Amazon EC2 會採用資料金鑰 (而非 KMS 金鑰) 來加密所有磁碟 I/O。

然而,當加密的 EBS 磁碟區從 EC2 執行個體中斷連接時,Amazon EBS 就會從 Nitro 硬體移除資料金鑰。下次再將加密的 EBS 磁碟區連接到 EC2 執行個體,連接會失敗,因為 Amazon EBS 無法使用 KMS 金鑰來解密磁碟區的加密資料金鑰。若要再次使用 EBS 磁碟區,您必須讓 KMS 金鑰變得再次可用。

提示

如果您不想再存取存放在 EBS 磁碟區中的資料,且該資料已透過您打算設為無法使用的 KMS 金鑰所產生的資料金鑰進行加密,建議您先將 EBS 磁碟區從 EC2 執行個體中分離,然後再將 KMS 金鑰設為無法使用。

如需詳細資訊,請參閱《AWS Key Management Service 開發人員指南》中的無法使用的 KMS 金鑰如何影響資料金鑰

加密 EBS 資源

當您建立想要加密的磁碟區時,可透過啟用加密來加密 EBS 磁碟區或使用 預設加密 來啟用加密。

當您加密磁碟區時,您可指定使用對稱加密 KMS 金鑰 來加密磁碟區。如果您未指定 KMS 金鑰,則用於加密的 KMS 金鑰 取決於來源快照的加密狀態及其擁有權。如需詳細資訊,請參閱 加密結果表

注意

如果您使用 API 或指 AWS CLI 定 KMS 金鑰,請注意會以非同步方式 AWS 驗證 KMS 金鑰。因此,如果您指定的 KMS 金鑰 ID、別名或 ARN 無效,則動作雖顯示完成,但最終會失敗。

您不能變更與現有快照或磁碟區相關聯的 KMS 金鑰。但是,您可以在快照複製操作中建立與不同 KMS 金鑰 的關聯,讓複製後的快照使用新的 KMS 金鑰 來加密。

在建立時加密空白磁碟區

當您建立新的、空的 EBS 磁碟區,您可以透過對特定磁碟區建立操作來啟用加密。如果預設為啟用 EBS 加密,則會使用 EBS 加密的預設 KMS 金鑰 來自動加密磁碟區。您也可以為特定的磁碟區建立作業指定不同的對稱加密 KMS 金鑰。磁碟區在第一次可用時即會加密,因此您的資料始終受到保護。如需詳細程序,請參閱建立 Amazon EBS 磁碟區

依預設,您在建立磁碟區時選取的 KMS 金鑰 會加密您從其中產生的磁碟區,以及您從那些加密快照還原的磁碟區。您無法從已加密磁碟區或快照移除加密,這表示從已加密快照還原的磁碟區,或已加密快照的複本「一律」加密。

雖然無法支援加密磁碟區的公有快照,但您可以和特定帳戶共享加密快照。如需詳細指示,請參閱 共享 Amazon EBS 快照

加密未加密的資源

您無法直接加密現有的未加密磁碟區或快照。不過,您可以使用未加密的磁碟區或快照來建立加密的磁碟區或快照。如果您啟用預設加密,則 Amazon EBS 會使用預設 KMS 金鑰進行 EBS 加密,以此方式自動加密新的磁碟區及快照。您也可以在建立獨立的磁碟區或快照時啟用加密,藉此使用預設的 KMS 金鑰進行 Amazon EBS 加密,或使用對稱的客戶受管加密金鑰。如需詳細資訊,請參閱 建立 Amazon EBS 磁碟區複製 Amazon EBS 快照

若要以 受客戶管理的金鑰 將快照複本加密,則您必須同時啟用加密並指定 KMS 金鑰,如 複製未加密快照 (未啟用預設加密) 所示。

重要

Amazon EBS 不支援非對稱加密 KMS 金鑰。如需詳細資訊,請參閱《AWS Key Management Service 開發人員指南》中的 使用對稱和非對稱加密 KMS 金鑰

從 EBS 後端 AMI 啟動執行個體時,您也可以套用新的加密狀態。這是因為 EBS 後端 AMI 包括可依所述加密之 EBS 磁碟區的快照。如需詳細資訊,請參閱搭配 EBS 支援 AMI 使用加密

旋轉 AWS KMS 按鍵

密碼編譯最佳實務不鼓勵大量重複使用加密金鑰。

若要建立新的加密資料以搭配 Amazon EBS 加密使用,您可以建立新的客戶受管金鑰,然後變更應用程式以使用該新 KMS 金鑰。或者,您可以為現有客戶管理的金鑰啟用自動金鑰輪換功能。

當您為客戶受管金鑰啟用自動輪換金鑰時,每年都會為 KMS 金鑰 AWS KMS 產生新的加密資料。 AWS KMS 儲存所有先前版本的加密資料,以便您可以繼續解密和使用先前使用該 KMS 金鑰材料加密的磁碟區和快照。 AWS KMS 在您刪除 KMS 金鑰之前,不會刪除任何旋轉的金鑰材料。

當您使用輪替的客戶代管金鑰來加密新的磁碟區或快照時,請 AWS KMS 使用目前的 (新) 金鑰資料。當您使用輪替的客戶管理金鑰來解密磁碟區或快照集時, AWS KMS 會使用用來加密該磁碟區或快照的加密資料版本。如果磁碟區或快照已使用舊版的加密資料進行加密,則會 AWS KMS 繼續使用該舊版來解密該磁碟區或快照。 AWS KMS 在金鑰輪替之後,不會重新加密先前加密的磁碟區或快照,以便使用新的加密資料。它們仍使用最初加密的加密材料進行加密。您可以在應用程式和 AWS 服務中安全地使用輪換的客戶管理金鑰,而無需變更程式碼

注意
  • 只有具有 AWS KMS 建立金鑰材料的對稱式客戶管理金鑰才支援自動金鑰輪換。

  • AWS KMS AWS 受管金鑰 每年自動旋轉。您無法啟用或停用 AWS 受管金鑰的金鑰輪換。

如需詳細資訊,請參閱《AWS Key Management Service 開發人員指南》中的輪換 KMS 金鑰