透過存取 AWS 服務事件 AWS CloudTrail - Amazon EventBridge

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

透過存取 AWS 服務事件 AWS CloudTrail

AWS CloudTrail 是自動記錄 AWS API呼叫等事件的服務。您可以建立使用來源資訊的 EventBridge 規則 CloudTrail。如需有關的詳細資訊 CloudTrail,請參閱什麼是 AWS CloudTrail?

由傳送的所有事件都 CloudTrail 具AWS API Call via CloudTrail有的值detail-type

若要記錄detail-type值為的事件AWS API Call via CloudTrail,則需要啟用記錄功能的 CloudTrail 追蹤。

CloudTrail 搭配 Amazon S3 使用時,您需要進行設定 CloudTrail 以記錄資料事件。如需詳細資訊,請參閱啟用 S3 儲存貯體和物件的 CloudTrail 事件記錄

AWS 服務中的某些事件可以由服務本身報告,也可以由服務報告 CloudTrail。 EventBridge 例如,啟動或停止執行個體的 Amazon EC2 API 呼叫會透過產生 EventBridge 事件和事件 CloudTrail。

CloudTrail 透過建立追蹤,支援API呼叫者和資源擁有者在 Amazon S3 儲存貯體中接收事件,並透過以下方式將事件傳遞給API呼叫者。 EventBridge除了來電者之外,資源擁有API者還可以透過監控跨帳戶API呼叫。 EventBridge CloudTrail與的整合 EventBridge 提供了一種便利的方式來設定自動化規則型工作流程以回應事件。

您無法使用大於 256 KB 的 AWS Put* 事件API呼叫事件作為事件模式,因為任何 Put* 事件要求的大小上限為 256 KB。如需有關可使用之API通話的詳細資訊,請參閱CloudTrail 支援的服務和整合

從 AWS 服務接收唯讀管理事件

您可以在預設或自訂事件匯流排上設定規則,以透過以下方式接收來自 AWS 服務的唯讀管理事件 CloudTrail。管理事件可讓您查看對 AWS 帳戶中資源執行的管理作業。這些也稱為控制平面操作。如需詳細資訊,請參閱《CloudTrail 使用者指南》中的記錄管理事件

針對有關預設或自訂事件匯流排的每個規則,您可以設定規則狀態來控制要接收的事件類型:

  • 停用規則,使其 EventBridge 不符合規則的事件。

  • 啟用規則,使事件與規則 EventBridge 相符,但透過傳送的唯讀 AWS 管理事件除外 CloudTrail。

  • 啟用規則,使所有事件與規則 EventBridge 相符,包括透過傳遞的唯讀管理事件 CloudTrail。

合作夥伴活動匯流排不會接收 AWS 事件。

決定是否接收唯讀管理事件時需要考量的一些事項:

  • 某些唯讀管理事件 (例如 AWS Key Management Service GetKeyPolicyDescribeKey、或IAMGetPolicyGetRole事件) 發生在比典型變更事件高得多的磁碟區。

  • 如果這些事件不是以 DescribeGetList 開頭,您可能已經收到唯讀的管理事件。例如,下列事件 AWS STS APIs是變更事件,甚至認為它們以動詞開頭Get

    • GetFederationToken

    • GetSessionToken

    如需不遵守DescribeGetList命名慣例 (依 AWS 服務) 的唯讀管理事件清單,請參閱AWS 服務所產生的管理事件 EventBridge

若要建立接收唯讀管理事件的規則 AWS CLI
  • 使用 put-rule 指令建立或更新規則,並使用參數執行下列作業:

    • 指定規則屬於預設事件匯流排或特定自訂事件匯流排

    • 將規則狀態設為 ENABLED_WITH_ALL_CLOUDTRAIL_MANAGEMENT_EVENTS

    aws events put-rule --name "ruleForManagementEvents" --event-bus-name "default" --state "ENABLED_WITH_ALL_CLOUDTRAIL_MANAGEMENT_EVENTS"

注意

僅支援透過 AWS CLI和 AWS CloudFormation 範本啟用 CloudWatch 管理事件的規則。

下列範例說明如何與特定事件進行比對。最佳實務是為比對特定事件定義專用規則,以保持清晰和易於編輯。

在此情況下,專用規則會符合來源的AssumeRole管理事件 AWS Security Token Service。

{ "source" : [ "aws.sts" ], "detail-type": ["AWS API Call via CloudTrail"], "detail" : { "eventName" : ["AssumeRole"] } }