本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用加密保護傳輸中的資料
Amazon S3 支援資料傳輸的 HTTP 和 HTTPS 通訊協定。HTTP 以純文字傳輸資料,而 HTTPS 透過使用 Transport Layer Security (TLS) 加密資料來新增安全層。TLS 可防止竊聽、資料竄改和man-in-the-middle攻擊。接受 HTTP 流量時,大多數實作會使用 HTTPS 和 TLS 傳輸中的加密來保護用戶端和 Amazon S3 之間傳輸的資料。
TLS 1.2 和 TLS 1.3 支援
Amazon S3 支援在所有 API 端點之間進行 HTTPS 連線的 TLS 1.2 和 TLS 1.3 AWS 區域。S3 會自動交涉用戶端軟體支援最強大的 TLS 保護,以及您存取的 S3 端點。目前的 AWS 工具 (2014 或更新版本),包括 AWS SDKs並 AWS CLI 自動預設為 TLS 1.3,您不需要採取任何動作。如果需要回溯相容於 TLS 1.2,您可以透過用戶端組態設定覆寫此自動交涉,以指定特定的 TLS 版本。使用 TLS 1.3 時,您可以選擇設定混合式後量子金鑰交換 (ML-KEM),以向 Amazon S3 提出可保護量子的請求。如需詳細資訊,請參閱為您的用戶端設定混合式後量子 TLS。
注意
所有 S3 端點都支援 TLS 1.3,但 Amazon S3 和多區域存取點 AWS PrivateLink 除外。
監控 TLS 用量
您可以使用 Amazon S3 伺服器存取日誌或 AWS CloudTrail 來監控對 Amazon S3 儲存貯體的請求。兩個記錄選項都會記錄每個請求中使用的 TLS 版本和密碼套件。
-
Amazon S3 伺服器存取日誌 – 伺服器存取日誌提供對儲存貯體提出之請求的詳細記錄。舉例來說,存取記錄資訊在安全與存取稽核中相當實用。如需詳細資訊,請參閱Amazon S3 伺服器存取日誌格式。
-
AWS CloudTrail – AWS CloudTrail 是一種服務,可提供使用者、角色或服務所採取動作的記錄 AWS 。CloudTrail 會將 Amazon S3 的所有 API 呼叫當做事件來擷取。如需詳細資訊,請參閱Amazon S3 CloudTrail 事件。
強制執行傳輸中的加密
強制執行傳輸到 Amazon S3 的資料加密是安全最佳實務。您可以透過各種政策機制,強制執行僅限 HTTPS 的通訊或使用特定 TLS 版本。其中包括 S3 儲存貯體的 IAM 資源型政策 (儲存貯體政策)、服務控制政策 SCPs)、資源控制政策 RCPs) 和 VPC 端點政策。
用於強制執行傳輸中加密的儲存貯體政策範例
您可以使用 S3 條件金鑰,根據用戶端使用的 TLS 版本s3:TlsVersion限制對 Amazon S3 儲存貯體的存取。如需詳細資訊,請參閱範例 6:需要最低 TLS 版本。
範例 使用 S3:TlsVersion條件索引鍵強制執行 TLS 1.3 的儲存貯體政策
{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyInsecureConnections", "Effect": "Deny", "Principal": "*", "Action": "s3:*", "Resource": [ "arn:aws:s3:::", "arn:aws:s3:::amzn-s3-demo-bucket1/*" ], "Condition": { "NumericLessThan": { "s3:TlsVersion": "1.3" } } } ] }amzn-s3-demo-bucket1
您可以在 S3 儲存貯體政策中使用aws:SecureTransport全域條件金鑰,以檢查請求是否透過 HTTPS (TLS) 傳送。與先前的範例不同,此條件不會檢查特定 TLS 版本。如需詳細資訊,請參閱限制僅 HTTPS 請求才能存取。
範例 使用aws:SecureTransport全域條件金鑰強制執行 HTTPS 的儲存貯體政策
{ "Version":"2012-10-17", "Statement": [ { "Sid": "RestrictToTLSRequestsOnly", "Action": "s3:*", "Effect": "Deny", "Resource": [ "arn:aws:s3:::", "arn:aws:s3:::amzn-s3-demo-bucket1/*" ], "Condition": { "Bool": { "aws:SecureTransport": "false" } }, "Principal": "*" } ] }amzn-s3-demo-bucket1
以金鑰和更多範例為基礎的範例政策
您可以在一個政策的先前範例中使用這兩種類型的條件金鑰。如需詳細資訊和其他強制執行方法,請參閱 AWS Storage 部落格文章使用 TLS1.2 或更新的 Amazon S3 強制執行傳輸中的加密。