我應該使用 AWS KMS 受管金鑰還是客戶管理的 KMS 金鑰來加密 Amazon S3 上的物件?

1 分的閱讀內容
0

我想搭配使用伺服器端加密和 AWS Key Management Service (SSE-KMS),處理存放在 Amazon Simple Storage Service (Amazon S3) 上的物件。我應該使用客戶管理的 AWS KMS 金鑰嗎? 或者,我應該使用稱為 aws/s3 的 AWS KMS 受管金鑰嗎? 這兩種金鑰有什麼差別?

解決方案

AWS Key Management Service (AWS KMS) 會管理預設的 aws/s3 AWS KMS 金鑰,但您可以完全控制客戶管理的金鑰。

使用預設的 aws/s3 KMS 金鑰

**注意:**KMS 金鑰在 Amazon S3 主控台中的名稱是 aws/s3。不過,如果您使用的是 AWS Command Line Interface (AWS CLI),請勿指定該名稱或 ID。

在下列情況下,請考慮使用預設的 aws/s3 KMS 金鑰:

  • 您正在使用與 AWS KMS 金鑰位於相同 AWS 帳戶中的 AWS Identity and Access Management (IAM) 主體上傳或存取 S3 物件。
  • 您不想管理 KMS 金鑰的政策。

若要使用預設 aws/s3 KMS 金鑰加密物件,請在上傳期間將加密方法定義為 SSE-KMS,但請勿指定金鑰:

aws s3 cp ./mytextfile.txt s3://DOC-EXAMPLE-BUCKET/ --sse aws:kms

**注意:**如果您在執行 AWS CLI 命令時收到錯誤,請確認您使用的是最新版 AWS CLI

使用客戶管理的金鑰

在下列情況下,請考慮使用客戶管理的金鑰:

  • 您想要建立、輪換、停用或定義金鑰的存取控制。
  • 您想要授予對 S3 物件的跨帳戶存取權。您可以設定客戶管理金鑰的政策,以允許從其他帳戶存取。

若要使用客戶管理的金鑰來加密物件,請在上傳期間將加密方法定義為 SSE-KMS。然後,將您的客戶管理的金鑰指定為金鑰 (--sse-kms-key-id):

aws s3 cp ./mytextfile.txt s3://DOC-EXAMPLE-BUCKET/ --sse aws:kms --sse-kms-key-id testkey

若要控制對客戶管理金鑰的存取權,請修改金鑰政策。如需有關如何建立金鑰政策的詳細資訊,請參閱建立金鑰政策


相關資訊

使用伺服器端加密功能保護資料

Amazon Simple Storage Service (Amazon S3) 如何利用 AWS KMS

AWS 官方
AWS 官方已更新 1 年前