使用 記錄 Amazon S3 API 呼叫 AWS CloudTrail - Amazon Simple Storage Service

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

使用 記錄 Amazon S3 API 呼叫 AWS CloudTrail

Amazon S3 與 AWS CloudTrail 整合,這項服務可提供由使用者、角色或 AWS 服務所採取之動作的記錄。CloudTrail 會將 Amazon S3 的所有 API 呼叫當做事件來擷取。擷取的呼叫包括來自 Amazon S3 主控台的呼叫,以及對 Amazon S3 API 操作發出的程式碼呼叫。您可以利用 CloudTrail 所收集的資訊來判斷向 Amazon S3 發出的請求,以及發出請求的 IP 位址、時間和其他詳細資訊。

每一筆事件或日誌專案都會包含產生請求者的資訊。身分資訊可協助您判斷下列事項:

  • 該請求是使用根使用者還是使用者憑證提出。

  • 請求是否代表 IAM Identity Center 使用者提出。

  • 提出該請求時,是否使用了特定角色或聯合身分使用者的暫時安全憑證。

  • 該請求是否由另一項 AWS 服務服務提出。

當您建立帳戶 AWS 帳戶 時CloudTrail 會在 中處於作用中狀態,而且您會自動存取 CloudTrail 事件歷史記錄。CloudTrail 事件歷史記錄為 AWS 區域中過去 90 天記錄的管理事件,提供可檢視、可搜尋、可下載且不可變的記錄。如需詳細資訊,請參閱「AWS CloudTrail 使用者指南」中的使用 CloudTrail 事件歷史記錄。檢視事件歷史記錄不會產生 CloudTrail 費用。

如需 AWS 帳戶 過去 90 天內持續記錄的事件,請建立線索或 CloudTrail Lake 事件資料存放區。

CloudTrail 追蹤

線索能讓 CloudTrail 將日誌檔案交付至 Amazon S3 儲存貯體。使用 建立的所有線索 AWS Management Console 都是多區域。您可以使用 AWS CLI建立單一或多區域追蹤。建議您建立多區域追蹤,因為您擷取 AWS 區域 帳戶中所有 的活動。如果您建立單一區域追蹤,您只能檢視追蹤 AWS 區域中記錄的事件。如需追蹤的詳細資訊,請參閱《AWS CloudTrail 使用者指南》中的為您的 AWS 帳戶建立追蹤為組織建立追蹤

您可以透過建立追蹤,免費將持續管理事件的一個複本從 CloudTrail 傳遞至您的 Amazon S3 儲存貯體,但這樣做會產生 Amazon S3 儲存費用。如需 CloudTrail 定價的詳細資訊,請參閱 AWS CloudTrail 定價。如需 Amazon S3 定價的相關資訊,請參閱 Amazon S3 定價

CloudTrail Lake 事件資料存放區

CloudTrail Lake 讓您能夠對事件執行 SQL 型查詢。CloudTrail Lake 會將分列式 JSON 格式的現有事件轉換為 Apache ORC 格式。ORC 是一種單欄式儲存格式,針對快速擷取資料進行了最佳化。系統會將事件彙總到事件資料存放區中,事件資料存放區是事件的不可變集合,其依據為您透過套用進階事件選取器選取的條件。套用於事件資料存放區的選取器控制哪些事件持續存在並可供您查詢。如需 CloudTrail Lake 的詳細資訊,請參閱AWS CloudTrail 《 使用者指南》中的使用 AWS CloudTrail Lake

CloudTrail Lake 事件資料存放區和查詢會產生費用。建立事件資料存放區時,您可以選擇要用於事件資料存放區的定價選項。此定價選項將決定擷取和儲存事件的成本,以及事件資料存放區的預設和最長保留期。如需 CloudTrail 定價的詳細資訊,請參閱 AWS CloudTrail 定價

日誌檔可存放於儲存貯體任意長時間,但您也可以定義 Amazon S3 生命週期規則,自動封存或刪除日誌檔案。預設情況下,將使用 Amazon S3 伺服器端加密 (SSE) 對日誌檔案進行加密。

搭配 Amazon S3 伺服器存取日誌和 CloudWatch Logs 使用 CloudTrail 日誌

AWS CloudTrail 日誌提供 Amazon S3 中使用者、角色或服務 AWS 所採取動作的記錄,而 Amazon S3 伺服器存取日誌則提供對 S3 儲存貯體提出之請求的詳細記錄。如需不同日誌的運作方式與其屬性、效能與成本的詳細資訊,請參閱Amazon S3 的記錄選項

您可以搭配使用 AWS CloudTrail 日誌與 Amazon S3 的伺服器存取日誌。CloudTrail 日誌為您提供 Amazon S3 儲存貯體層級和物件層級操作的詳細 API 追蹤。Amazon S3 的伺服器存取日誌可讓您查看 Amazon S3 中您的資料發生的物件層級操作。如需伺服器存取日誌的詳細資訊,請參閱「使用伺服器存取記錄記錄要求」。

您也可以將 CloudTrail 日誌與 Amazon CloudWatch for Amazon S3 一起使用。CloudTrail 與 CloudWatch Logs 整合可將 CloudTrail 擷取的 S3 儲存貯體層級 API 活動,傳送到您指定的 CloudWatch 日誌群組中的 CloudWatch 日誌串流。您可以建立 CloudWatch 警示來監控特定 API 活動,並在發生特定 API 活動時接收電子郵件通知。如需有關監控特定 API 活動的 CloudWatch 警示的詳細資訊,請參閱《AWS CloudTrail 使用者指南》。如需有關搭配 Amazon S3 使用 CloudWatch 的詳細資訊,請參閱使用 Amazon CloudWatch 監控指標

注意

當 VPC 端點政策拒絕 VPC 端點請求時,S3 不支援將 CloudTrail 日誌傳送給請求者或儲存貯體擁有者。

CloudTrail 會追蹤 Amazon S3 SOAP API 呼叫。

CloudTrail 會追蹤 Amazon S3 SOAP API 呼叫。透過 HTTP 的 Amazon S3 SOAP 支援已被取代,但仍可透過 HTTPS 取得。如需 Amazon S3 SOAP 支援的詳細資訊,請參閱 Amazon S3 API 參考中的附錄:SOAP API

重要

SOAP 不支援較新的 Amazon S3 功能。我們建議您使用 REST API 或 AWS SDKs。

下表顯示 CloudTrail 記錄所追蹤的 Amazon S3 SOAP 動作。

SOAP API 名稱 CloudTrail 日誌中使用的 API 事件名稱

ListAllMyBuckets

ListBuckets

CreateBucket

CreateBucket

DeleteBucket

DeleteBucket

GetBucketAccessControlPolicy

GetBucketAcl

SetBucketAccessControlPolicy

PutBucketAcl

GetBucketLoggingStatus

GetBucketLogging

SetBucketLoggingStatus

PutBucketLogging

如需 CloudTrail 和 Amazon S3 的詳細資訊,請參閱下列主題: