本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
設定和監視目錄值區的預設加密
Amazon S3 儲存貯體預設已啟用儲存貯體加密,而新物件會透過使用伺服器端加密搭配 Amazon S3 受管金鑰 (SSE-S3) 來自動加密。此加密免費適用於 Amazon S3 儲存貯體中的所有新物件。
如果您需要對加密金鑰進行更多控制,例如管理金鑰輪替和存取原則授與,您可以選擇使用伺服器端加密 AWS Key Management Service (AWS KMS)鍵(SSE-KMS)。
注意
建議儲存貯體的預設加密使用所需的加密設定,且不要覆寫
CreateSession
要求或PUT
物件要求中的儲存貯體預設加密。然後,新物件會使用所需的加密設定自動加密。如需目錄值區中加密覆寫行為的詳細資訊,請參閱使用以下指定伺服器端加密 AWS KMS 用於新對象上傳。若要使用 SSE-來加密目錄值區中的新物件KMS,您必須使用KMS金鑰 (特別是客戶管理的金鑰) 將 SSE-指定KMS為目錄儲存貯體的預設加密組態。然後,當針對區域端點API作業建立工作階段時,會在工作階段期間使用 SSE-和 S3 儲存貯體金鑰自動加密KMS和解密新物件。
將預設儲存貯體加密設定為 SSE-時KMS,S3 儲存貯體金鑰一律會在
PUT
目錄儲存貯體中啟用並且無法停用。GET
當您將KMS加密物件從一般用途儲存貯體複製SSE到目錄儲存貯體、從目錄儲存貯體到一般用途儲存貯體,或在目錄儲存貯體之間複製時,不支援 S3 儲存貯體金鑰 CopyObject, UploadPartCopy,該 Copy Batch 作業中的作業,或 import 工作。在這種情況下,Amazon S3 打電話 AWS KMS 每次對KMS加密對象發出複製請求時。有關 S3 存儲桶密鑰如何減少您的更多信息 AWS KMS 請求成本,請參閱KMS使用 Amazon S3 儲存貯體金鑰降低成本 SSE。當您指定 AWS KMS 用於在目錄儲存貯體中加密的客戶管理金鑰,僅使用金鑰 ID 或金鑰ARN。不支援金鑰的索KMS引鍵別名格式。
雙層伺服器端加密 AWS KMS 目錄儲存貯體中的預設加密不支援使用客戶提供的金鑰 (SSE-C) 的金鑰 (DSSE-KMS) 和伺服器端加密。
如需有關設定預設加密的更多資訊,請參閱設定預設加密。
如需預設加密所需權限的詳細資訊,請參閱 PutBucketEncryption在 Amazon 簡單存儲服務API參考中。
您可以使用 Amazon S3 主控台為 S3 儲存貯體設定 Amazon S3 預設加密 AWS SDKs,Amazon S3 REST API 和 AWS Command Line Interface (AWS CLI).
設定 Amazon S3 儲存貯體的預設加密
登入 AWS Management Console 並在打開 Amazon S3 控制台https://console.aws.amazon.com/s3/
。 -
在左側導覽窗格中,選擇 Buckets (儲存貯體)。
-
在 Buckets (儲存貯體) 清單中,選擇您所需的儲存貯體名稱。
-
選擇屬性索引標籤。
-
在伺服器端加密設定下,目錄儲存貯體使用 Amazon S3 受管金鑰 (SSE-S3) 的伺服器端加密。
-
選擇 Save changes (儲存變更)。
這些範例說明如何使用 SSE-S3 或使用 SSE-KMS 搭配 S3 儲存貯體金鑰來設定預設加密。
如需預設加密的詳細資訊,請參閱對 Amazon S3 儲存貯體設定預設伺服器端加密行為。有關使用的更多信息 AWS CLI 若要設定預設加密,請參閱put-bucket-encryption
範例 — 使用 SSE-S3 進行默認加密
此範例會使用 Amazon S3 受管金鑰設定預設儲存貯體加密。若要使用指令,請取代 user input placeholders
使用您自己的信息。
aws s3api put-bucket-encryption --bucket
bucket-base-name
--azid
--x-s3 --server-side-encryption-configuration '{ "Rules": [ { "ApplyServerSideEncryptionByDefault": { "SSEAlgorithm": "AES256" } } ] }'
範例 — KMS 使用 S3 儲存貯體金鑰的SSE預設加密
此範例KMS使用 S3 儲存貯體金鑰設定預設儲存貯體加密。SSE若要使用指令,請取代 user input placeholders
使用您自己的信息。
aws s3api put-bucket-encryption --bucket
bucket-base-name
--azid
--x-s3 --server-side-encryption-configuration '{ "Rules": [ { "ApplyServerSideEncryptionByDefault": { "SSEAlgorithm": "aws:kms", "KMSMasterKeyID": "KMS-Key-ARN
" }, "BucketKeyEnabled": true } ] }'
使用此RESTAPIPutBucketEncryption
作業可以使用 SSE-S3 或 SSE-KMS 的伺服器端加密類型來設定預設加密。
如需詳細資訊,請參閱 PutBucketEncryption在 Amazon 簡單存儲服務API參考中。
使用時 AWS SDKs,您可以請求 Amazon S3 使用 AWS KMS keys 用於伺服器端加密。如下所示 AWS SDKs對於 Java 和. NET範例使用 SSE-KMS 和 S3 儲存貯體金鑰設定目錄儲存貯體的預設加密組態。如需其他的相關資訊SDKs,請參閱上的範例程式碼和程式庫
重要
當您使用 AWS KMS key 對於 Amazon S3 中的伺服器端加密,您必須選擇對稱加密KMS金鑰。Amazon S3 僅支援對稱加密KMS金鑰。如需有關這些金鑰的詳細資訊,請參閱 KMS AWS Key Management Service 開發人員指南。
監視目錄值區的預設加密 AWS CloudTrail
您可以使用以下方式追蹤 Amazon S3 目錄儲存貯體的預設加密組態請求 AWS CloudTrail 事件。 CloudTrail 記錄檔中會使用下列API事件名稱:
-
PutBucketEncryption
-
GetBucketEncryption
-
DeleteBucketEncryption
注意
EventBridge 目錄值區不支援。
雙層伺服器端加密 AWS Key Management Service (AWS KMS) 金鑰 (DSSE-KMS) 或伺服器端加密使用客戶提供的加密金鑰 (SSE-C) 在目錄儲存貯體中不支援。
如需使用監視預設加密的詳細資訊 AWS CloudTrail,請參閱監視默認加密 AWS CloudTrail 和 Amazon EventBridge。