S3 Express One Zone 的安全最佳實務 - Amazon Simple Storage Service

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

S3 Express One Zone 的安全最佳實務

在您開發和實作自己的安全政策時,可考慮使用 Amazon S3 Express One Zone 提供的多種安全功能。以下最佳實務為一般準則,並不代表完整的安全解決方案。這些最佳實務可能不適用或無法滿足您的環境需求,因此請將其視為實用建議就好,而不要當作是指示。

預設封鎖公開存取和物件擁有權設定

若要使用 S3 Express One Zone 儲存類別,您必須使用 S3 目錄儲存貯體。目錄儲存貯體支援 S3 封鎖公開存取和 S3 物件擁有權。這些 S3 功能可用來稽核和管理對儲存貯體和物件的存取權。

根據預設,目錄儲存貯體的所有封鎖公開存取設定都會啟用。此外,物件擁有權會設定為儲存貯體擁有者強制執行,這表示存取控制清單 (ACL) 已停用。這些設定無法修改。如需這些功能的詳細資訊,請參閱 封鎖對 Amazon S3 儲存體的公開存取權控制物件的擁有權並停用儲存貯體的 ACL

注意

您無法授予存放在目錄儲存貯體中的物件存取權。您只能授予目錄儲存貯體的存取權。S3 Express One Zone 的授權模式與 Amazon S3 的授權模式不同。如需詳細資訊,請參閱 CreateSession 授權

身分驗證和授權

S3 Express One Zone 的身分驗證和授權機制會根據您對區域 (Zone) 端點 API 操作還是區域 (Region) 端點 API 操作發出請求而有所不同。區域 (Zone) API 操作是物件層級(資料平面)操作。區域 (Region) API 操作是儲存貯體層級 (控制平面) 操作。

使用 S3 Express One Zone,您可以透過新的工作階段型機制來驗證和授權對區域 (Zone) 端點 API 操作的請求,此機制經過最佳化,可提供最低延遲。使用工作階段型身分驗證時,AWS SDK 會使用 CreateSession API 操作請求臨時憑證,以提供對目錄儲存貯體的低延遲存取。這些臨時憑證的範圍會設為特定目錄儲存貯體,並於 5 分鐘後過期。您可以使用這些臨時憑證來簽署區域 (物件層級) API 呼叫。如需詳細資訊,請參閱 CreateSession 授權

使用 S3 Express One Zone 憑證簽署請求

您可以使用 S3 Express One Zone 憑證,透過 AWS 第 4 版簽署程序簽署區域端點 (物件層級) API 請求,並以 s3express 作為服務名稱。當您簽署請求時,請使用從 CreateSession 傳回的秘密金鑰,同時提供具有 x-amzn-s3session-token header 的工作階段權杖。如需詳細資訊,請參閱 CreateSession

S3 Express One Zone 類別支援的 AWS SDK 可管理憑證並代表您進行簽署。我們建議您使用適用於 S3 Express One Zone 的 AWS SDK 來重新整理憑證並為您簽署請求。

使用 IAM 憑證簽署請求

所有區域 (儲存貯體層級) API 呼叫都必須透過 AWS Identity and Access Management (IAM) 憑證進行驗證和簽署,而非臨時工作階段憑證。IAM 憑證包含 IAM 身分的存取金鑰 ID 和私密存取金鑰。所有 CopyObjectHeadBucket 請求也都必須使用 IAM 憑證進行驗證和簽署。

為了讓區域 (物件層級) 操作呼叫達到最低延遲,建議您使用透過呼叫 CreateSession 取得的 S3 Express One Zone 憑證來簽署請求,但不包括 CopyObjectHeadBucket 請求。

使用 AWS CloudTrail

AWS CloudTrail 針對使用者、角色或 Amazon S3 中的 AWS 服務 所採取的動作提供記錄。您可以使用收集的信息 CloudTrail 來確定以下內容:

  • 對 Amazon S3 提出的請求

  • 提出請求的 IP 地址

  • 提出要求的人員

  • 提出請求的時間

  • 有關請求的其他詳細資訊

當您設定時AWS 帳戶,預設 CloudTrail 為啟用。下列區域端點 API 作業 (儲存貯體層級或控制平面、API 作業) 會記錄到。 CloudTrail

  • CreateBucket

  • DeleteBucket

  • DeleteBucketPolicy

  • PutBucketPolicy

  • GetBucketPolicy

  • ListDirectoryBuckets

您可以在 CloudTrail 主控台中檢視最近的事件。若要為 Amazon S3 儲存貯體建立持續的活動和事件記錄,您可以在 CloudTrail 主控台中建立追蹤。如需詳細資訊,請參閱《AWS CloudTrail 使用者指南》中的 Creating a trail

注意

對於 S3 Express 單一區域,不支援區域端點 (物件層級或資料平面) API 操作 (例如,PutObjectGetObject) 的 CloudTrail 記錄。

使用 AWS 監控工具來實作監控

監控是維持 Amazon S3 和 AWS 解決方案可靠性、安全性、可用性與效能的重要環節。AWS 會提供數種工具和服務,協助您監控 Amazon S3 和其他 AWS 服務。例如,您可以監控 Amazon S3 的 Amazon CloudWatch 指標,尤其是BucketSizeBytesNumberOfObjects儲存指標。

存放在 S3 Express One Zone 儲存類別中的物件不會反映在 Amazon S3 的 BucketSizeBytesNumberOfObjects 儲存指標中。不過,S3 Express One Zone 可支援 BucketSizeBytesNumberOfObjects 儲存指標。若要查看您選擇的指標,您可以指定 StorageType 維度來區分 Amazon S3 儲存類別和 S3 Express One Zone 儲存類別。如需詳細資訊,請參閱 使用 Amazon 監控指標 CloudWatch

如需更多詳細資訊,請參閱 使用 Amazon 監控指標 CloudWatch監控 Amazon S3