Amazon S3 CloudTrail 活動 - Amazon Simple Storage Service

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

Amazon S3 CloudTrail 活動

重要

Amazon S3 現在會使用 Amazon S3 受管金鑰 (SSE-S3) 套用伺服器端加密,做為 Amazon S3 中每個儲存貯體的加密基礎層級。從 2023 年 1 月 5 日起,所有上傳到 Amazon S3 的新物件都會自動加密,無需額外費用,也不會影響效能。S3 儲存貯體預設加密組態和新物件上傳的自動加密狀態可在 AWS CloudTrail 日誌、S3 庫存、S3 儲存鏡頭、Amazon S3 API 主控台,以及在 AWS Command Line Interface 以及 AWS SDKs。如需詳細資訊,請參閱預設加密FAQ

本節提供 S3 記錄到的事件的相關資訊 CloudTrail。

Amazon S3 資料事件 CloudTrail

資料事件提供在資源上或在資源中執行的資源操作的相關資訊 (例如,讀取或寫入 Amazon S3 物件)。這些也稱為資料平面操作。資料事件通常是大量資料的活動。依預設, CloudTrail 不會記錄資料事件。 CloudTrail 事件歷史記錄不會記錄數據事件。

資料事件需支付額外的費用。如需 CloudTrail 定價的詳細資訊,請參閱 AWS CloudTrail 定價

您可以使用 CloudTrail 主控台記錄 Amazon S3 資源類型的資料事件, AWS CLI,或 CloudTrail API操作。如需如何記錄資料事件的詳細資訊,請參閱使用 AWS Management Console記錄資料事件 AWS Command Line Interface 中的 AWS CloudTrail 使用者指南

下表列出您可以記錄其資料事件的 Amazon S3 資源類型。[資料事件類型 (主控台)] 欄顯示可從主控台的 [資料事件類型 CloudTrail ] 清單中選擇的值。resource .type 值資料行會顯示resources.type值,您在使用 AWS CLI 或 CloudTrail APIs。[資料APIs記錄到 CloudTrail] 欄會顯示資源類型記錄的API呼叫。 CloudTrail

資料事件類型 (主控台) resources.type 值 資料APIs記錄到 CloudTrail
S3 AWS::S3::Object
S3 快遞一區 AWS::S3Express::Object
S3 存取點 AWS::S3::Access Point
S3 Object Lambda AWS::S3ObjectLambda::AccessPoint
S3 Outposts AWS::S3Outposts::Object

您可以設定進階事件選取器來篩選eventNamereadOnly、和resources.ARN欄位,以僅記錄對您很重要的事件。如需這些欄位的詳細資訊,請參閱〈AdvancedFieldSelector 中的 AWS CloudTrail API參考

Amazon S3 管理事件 CloudTrail

Amazon S3 會將所有控制平面操作記錄為管理事件。如需 S3 API 操作的詳細資訊,請參閱 Amazon S3 API 參考資料。

如何 CloudTrail 擷取對 Amazon S3 發出的請求

依預設,會 CloudTrail 記錄過去 90 天內發出的 S3 儲存貯體層級API呼叫,但不記錄對物件發出的請求。儲存貯體層級呼叫包括 CreateBucketDeleteBucketPutBucketLifecyclePutBucketPolicy 等事件。您可以在主控台上查看值區層級事件。 CloudTrail 但是,您無法在其中檢視資料事件 (Amazon S3 物件層級呼叫),您必須剖析或查詢這些事件的 CloudTrail日誌。

透過日誌記錄追蹤的 Amazon S3 帳戶層級動作 CloudTrail

CloudTrail 記錄帳戶層級動作。Amazon S3 記錄與其他記錄一起編寫 AWS 服務 記錄檔中的記錄。 CloudTrail 根據時間週期和檔案大小決定何時建立和寫入新檔案。

本節中的表格列出記錄支援的 Amazon S3 帳戶層級動作。 CloudTrail

透過 CloudTrail 記錄追蹤的 Amazon S3 帳戶層級API動作會顯示為下列事件名稱。 CloudTrail 事件名稱與API動作名稱不同。例如, DeletePublicAccessBlock 是 DeleteAccountPublicAccessBlock。

透過記錄追蹤的 Amazon S3 儲存貯體層級動作 CloudTrail

根據預設,會針對一般用途值區 CloudTrail 記錄儲存貯體層級的動作。Amazon S3 記錄與其他記錄一起編寫 AWS 記錄檔中的服務記錄。 CloudTrail 根據時間週期和檔案大小決定何時建立和寫入新檔案。

本節列出記錄支援的 Amazon S3 儲存貯體層級動作。 CloudTrail

透過 CloudTrail 記錄追蹤的 Amazon S3 儲存貯體層級API動作會顯示為下列事件名稱。在某些情況下, CloudTrail 事件名稱與API動作名稱不同。例如,PutBucketLifecycleConfigurationPutBucketLifecycle

除了這些API操作之外,您還可以使用 OPTIONS 物件物件層級動作。此動作會被視為 CloudTrail 記錄時的值區層級動作,因為動作會檢查值區的CORS組態。

透過記錄追蹤 Amazon S3 快速單區域儲存貯體層級 (區域API端點) 動作 CloudTrail

依預設,會將目錄值區的儲存貯體層級動作 CloudTrail 記錄為管理事件。eventsource適用於 S3 快速單一區域的 CloudTrail 管理事件是s3express.amazonaws.com

下列區域端點API作業會記錄到 CloudTrail。

如需詳細資訊,請參閱使用記錄 AWS CloudTrail 適用於 S3 快遞一區

跨帳戶案例中的 Amazon S3 物件層級動作

以下是涉及跨帳戶案例中物件層級API呼叫的特殊使用案例,以及如何報告 CloudTrail 記錄檔。 CloudTrail 將日誌傳遞給請求者(發出API呼叫的帳戶),但在某些拒絕訪問的情況下,日誌條目被編輯或省略。設定跨帳戶存取時,請考慮本節中的範例。

注意

這些範例假設記 CloudTrail 錄已適當設定。

範例 1:將記錄 CloudTrail傳送給值區擁有者

CloudTrail 即使值區擁有者沒有相同物件API作業的權限,也會將記錄傳送給值區擁有者。請考慮下列跨帳戶案例:

  • 帳戶 A 擁有儲存貯體。

  • 帳戶 B (申請者) 嘗試存取該儲存貯體中的物件。

  • 帳戶 C 擁有物件。帳戶 C 可能與 A 帳戶相同,也可能不相同。

注意

CloudTrail 一律會將物件層級API記錄傳送給要求者 (帳戶 B)。此 CloudTrail 外,即使值區擁有者不擁有物件 (Accounts C) 或對該物件具有相同API作業的權限,也會將相同的記錄傳送給值區擁有者 (帳戶 A)。

範例 2: CloudTrail 不擴散設定物件中使用的電子郵件地址 ACLs

請考慮下列跨帳戶案例:

  • 帳戶 A 擁有儲存貯體。

  • 帳戶 B(請求者)使用電子郵件地址發送設置對象ACL授予的請求。如需有關的更多資訊ACLs,請參閱存取控制清單 (ACL) 概觀

請求者會取得日誌與電子郵件資訊。不過,值區擁有者 (如果他們有資格接收記錄檔),如範例 1 — 取得報告事件的記 CloudTrail 錄檔。但是,值區擁有者不會取得ACL設定資訊,特別是受權者電子郵件地址和授權。記錄檔告知值區擁有者的唯一資訊是帳戶 B 進行ACLAPI呼叫。