Amazon EC2 執行個體驗證 - Amazon Elastic Compute Cloud

Amazon EC2 執行個體驗證

驗證是一個程序,讓您能夠以密碼編譯方式,向任何一方證明僅可信軟體、驅動程式及啟動程序在 Amazon EC2 執行個體上執行。Amazon EC2 執行個體驗證採用 Nitro 可信平台模組 (NitroTPM) 與可驗證的 AMI 技術。

驗證的第一步是建置可驗證的 AMI,以及確定該 AMI 的參考衡量項。可驗證的 AMI 是從頭開始建置以進行驗證的 AMI。參考衡量項是您納入 AMI 的所有軟體與組態的衡量項目。若要了解如何獲取參考衡量項的詳細資訊,請參閱 建置範例映像說明

透過可驗證的 AMI 來生成參考衡量項。

下一步是透過可驗證的 AMI,來啟動一個支援 Nitro-TPM 的 EC2 執行個體。在您啟動該執行個體之後,可使用 NitroTPM 工具來生成驗證文件。您隨後可將驗證文件中的 EC2 執行個體實際衡量項與參考衡量項做比較,以便查看執行個體是否使用您信任的軟體與組態。

藉由比較可驗證的 AMI 建立程序期間生成的參考衡量項與執行個體驗證文件中包括的衡量項,您可確認僅受信任的軟體與程式碼會在執行個體上執行。

生成驗證文件。

與 AWS KMS 的整合

如需讓衡量項比較程序更簡易,您可將 AWS Key Management Service (AWS KMS) 用做驗證文件的確認者。藉助 AWS KMS,您可建立基於驗證的 KMS 金鑰政策,僅當您提供的驗證文件所包含的衡量項與參考衡量項相符時,才會允許透過 KMS 金鑰執行特定作業。如需執行此操作,可將特定條件索引鍵新增至將參考衡量項用做條件金鑰值的 KMS 金鑰政策,然後指定滿足條件索引鍵時允許哪些 KMS 作業。

若使用 KMS 金鑰執行 KMS 作業,必須連接驗證文件與 KMS 請求。AWS KMS 隨後會依據 KMS 金鑰政策中的參考衡量項,對驗證文件中的衡量項進行驗證,且僅在符合衡量項時允許金鑰存取權。

另外,若針對執行個體生成驗證文件,必須為您擁有的金鑰對指定公有金鑰。驗證文件內包括指定的公有金鑰。若 AWS KMS 對驗證文件進行驗證,並且允許解密作業,則會使用驗證文件中包括的公有金鑰對回應自動加密,然後再將其傳回。此操作可確保能夠對回應解密,並且僅可搭配驗證文件內包括的公有金鑰相符的私有金鑰使用。

這樣一來,確保僅在可信軟體與程式碼執行的執行個體,能夠使用 KMS 金鑰來執行密碼編譯作業。

驗證隔離的運算環境

一般來說,您可建置 EC2 執行個體,以及將其設定為隔離的運算環境,這不會提供互動式存取,亦不會設置機制讓管理員及使用者可存取 EC2 執行個體中正在處理的資料。藉助 EC2 執行個體驗證,您可向第三方或服務證明,執行個體以隔離式運算環境執行。如需更多詳細資訊,請參閱 將資料與您自己的運算子隔離

若要了解範例,請參閱建立隔離式運算環境的範例 Amazon Linux 2023 映像說明。您可將此範例映像說明用做起點,然後自訂說明來滿足您的要求。

AWS 共同責任模式

NitroTPM 與可驗證的 AMI 是建置區塊,能夠協助您在 EC2 執行個體上建立及設定驗證。您負責設定 AMI,以便滿足您各自使用案例的要求。若要了解詳細資訊,請參閱 AWS 共同責任模型