資料保護和加密 - Amazon Simple Storage Service

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

資料保護和加密

如需如何為目錄儲存貯體設定加密的詳細資訊,請參閱下列主題。

伺服器端加密

根據預設,所有目錄儲存貯體都設定了加密,所有上傳至目錄儲存貯體的新物件都會在靜態時自動加密。使用 Amazon S3 受管金鑰的伺服器端加密 (SSE-S3) 是所有儲存貯體的預設加密組態。如果您想要指定不同的加密類型,您可以透過設定儲存貯體的預設加密組態,使用具有 AWS Key Management Service (AWS KMS) 金鑰 (SSE-KMS) 的伺服器端加密。如需目錄儲存貯體中 SSE-KMS 的詳細資訊,請參閱在目錄儲存貯體中使用伺服器端加密與 AWS KMS 金鑰 (SSE-KMS)

建議儲存貯體的預設加密使用所需的加密組態,而且您不會覆寫 CreateSession 請求或 PUT 物件請求中的儲存貯體預設加密。然後,新的物件會以所需的加密設定自動加密。如需在目錄儲存貯體中覆寫加密行為的詳細資訊,請參閱使用 指定伺服器端加密 AWS KMS 以進行新物件上傳

目錄儲存貯體中的 SSE-KMS 與一般用途儲存貯體中的 SSE-KMS 在下列層面不同。

  • 您的 SSE-KMS 組態在儲存貯體的生命週期內,每個目錄儲存貯體只能支援 1 個客戶自管金鑰。不支援 AWS 受管金鑰 (aws/s3)。此外,為 SSE-KMS 指定客戶自管金鑰之後,即無法覆寫儲存貯體 SSE-KMS 組態的客戶自管金鑰。

    您可以透過下列方式識別為儲存貯體的 SSE-KMS 組態指定的客戶自管金鑰:

    • 您可以提出 HeadObject API 操作請求,在回應中尋找 x-amz-server-side-encryption-aws-kms-key-id 的值。

    若要為資料使用新的客戶自管金鑰,建議您使用新的客戶自管金鑰,將現有的物件複製到新的目錄儲存貯體。

  • 對於 CopyObjectUploadPartCopy 以外的區域端點 (物件層級) API 操作,您會透過 CreateSession 驗證和授權請求以取得低延遲。建議儲存貯體的預設加密使用所需的加密組態,而且您不會覆寫 CreateSession 請求或 PUT 物件請求中的儲存貯體預設加密。然後,新的物件會以所需的加密設定自動加密。若要使用 SSE-KMS 加密目錄儲存貯體中的新物件,您必須使用 KMS 金鑰 (特別是客戶自管金鑰) 將 SSE-KMS 指定為目錄儲存貯體的預設加密組態。然後,在為區域端點 API 操作建立工作階段時,系統會在工作階段期間使用 SSE-KMS 和 S3 儲存貯體金鑰自動加密和解密新物件。如需在目錄儲存貯體中覆寫加密行為的詳細資訊,請參閱使用 指定伺服器端加密 AWS KMS 以進行新物件上傳

    在區域端點 API 呼叫中 (CopyObjectUploadPartCopy 除外),您無法覆寫 CreateSession 請求中的加密設定值 (x-amz-server-side-encryptionx-amz-server-side-encryption-aws-kms-key-idx-amz-server-side-encryption-contextx-amz-server-side-encryption-bucket-key-enabled)。您不需要在區域端點 API 呼叫中明確指定這些加密設定值,Amazon S3 將使用 CreateSession 請求中的加密設定值來保護目錄儲存貯體中的新物件。

    注意

    當您使用 AWS CLI 或 AWS SDKs 時,對於 CreateSession,工作階段字符會自動重新整理,以避免工作階段過期時服務中斷。 AWS CLI 或 AWS SDKs 會針對CreateSession請求使用儲存貯體的預設加密組態。不支援覆寫 CreateSession 請求中的加密設定值。此外,在區域端點 API 呼叫中 (CopyObjectUploadPartCopy 除外),不支援覆寫 CreateSession 請求中的加密設定值。

  • 對於 CopyObject,若要使用 SSE-KMS 加密目錄儲存貯體中的新物件複本,您必須使用 KMS 金鑰 (特別是客戶自管金鑰) 將 SSE-KMS 指定為目錄儲存貯體的預設加密組態。然後,當您使用 SSE-KMS 為新物件複本指定伺服器端加密設定時,您必須確保加密金鑰與您為目錄儲存貯體的預設加密組態指定的客戶自管金鑰相同。對於 UploadPartCopy,若要使用 SSE-KMS 加密目錄儲存貯體中的新物件組件複本,您必須使用 KMS 金鑰 (特別是客戶自管金鑰) 將 SSE-KMS 指定為目錄儲存貯體的預設加密組態。您無法在 UploadPartCopy 請求標頭中,使用 SSE-KMS 為新的物件組件複本指定伺服器端加密設定。此外,您在 CreateMultipartUpload 請求中提供的加密設定必須符合目的地儲存貯體的預設加密組態。

  • 目錄儲存貯體中的 GETPUT 操作一律會啟用 S3 儲存貯體金鑰,且無法停用。當您透過 CopyObjectUploadPartCopyBatch Operations 中的 Copy 操作import 作業,將 SSE-KMS 加密物件從一般用途儲存貯體複製到目錄儲存貯體、從目錄儲存貯體複製到一般用途儲存貯體或在目錄儲存貯體之間複製時,不支援 S3 儲存貯體金鑰。在此情況下,Amazon S3 AWS KMS 會在每次對 KMS 加密物件提出複製請求時呼叫 。

  • 當您在目錄儲存貯體中指定用於加密的 AWS KMS 客戶自管金鑰時,請僅使用金鑰 ID 或金鑰 ARN。不支援 KMS 金鑰的金鑰別名格式。

目錄儲存貯體不支援使用 AWS Key Management Service (AWS KMS) 金鑰 (DSSE-KMS) 的雙層伺服器端加密,或使用客戶提供加密金鑰 (SSE-C) 的伺服器端加密。

傳輸中加密

目錄儲存貯體使用地區與區域 API 端點。需要區域 (Region) 或區域 (Zone) 端點,取決於您使用的 Amazon S3 API 操作。您可以透過閘道虛擬私有雲端 (VPC) 端點存取區域 (Zone) 和區域 (Region) 端點。使用閘道端點不需額外付費。若要進一步了解區域 (Region) 和區域 (Zone) API 端點,請參閱 目錄儲存貯體的網路

資料刪除

您可以使用 Amazon S3 主控台、 AWS SDKs、 AWS Command Line Interface (AWS CLI) 或 Amazon S3 REST API,直接從目錄儲存貯體刪除一或多個物件。由於目錄儲存貯體中的所有物件都會產生儲存成本,因此建議您刪除不再需要的物件。

刪除存放在目錄儲存貯體中的物件也會週期性地刪除任何父目錄,如果這些父目錄未包含所要刪除物件以外的任何物件。

注意

S3 Express One Zone 不支援多重要素驗證 (MFA) 刪除和 S3 版本控制。