EventBridge 事件訊息結構 - Amazon Simple Storage Service

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

EventBridge 事件訊息結構

Amazon S3 傳送以發佈事件的通知訊息為 JSON 格式。Amazon S3 將事件傳送至 Amazon EventBridge 時,會出現下列欄位。

  • version – 目前所有事件為 0 (零)。

  • id – 為每個事件產生的 UUID。

  • detail-type – 正在傳送的事件類型。如需事件類型的清單,請參閱 使用 EventBridge

  • source – 識別產生事件的服務。

  • account – 儲存貯體擁有者的 12 位數 AWS 帳戶 ID。

  • time – 事件發生的時間。

  • region – 識別儲存貯 AWS 區域 體的 。

  • resources – 包含儲存貯體 Amazon Resource Name (ARN) 的 JSON 陣列。

  • detail:包含事件相關資訊的 JSON 物件。如需此欄位可以包含哪些項目的詳細資訊,請參閱 事件訊息詳細資訊欄位

事件訊息結構範例

以下是可傳送至 Amazon EventBridge 之部分 Amazon S3 事件通知訊息的範例。

物件已建立

{ "version": "0", "id": "17793124-05d4-b198-2fde-7ededc63b103", "detail-type": "Object Created", "source": "aws.s3", "account": "111122223333", "time": "2021-11-12T00:00:00Z", "region": "ca-central-1", "resources": [ "arn:aws:s3:::amzn-s3-demo-bucket1" ], "detail": { "version": "0", "bucket": { "name": "amzn-s3-demo-bucket1" }, "object": { "key": "example-key", "size": 5, "etag": "b1946ac92492d2347c6235b4d2611184", "version-id": "IYV3p45BT0ac8hjHg1houSdS1a.Mro8e", "sequencer": "617f08299329d189" }, "request-id": "N4N7GDK58NMKJ12R", "requester": "123456789012", "source-ip-address": "1.2.3.4", "reason": "PutObject" } }

物件已刪除 (使用 DeleteObject)

{ "version": "0", "id": "2ee9cc15-d022-99ea-1fb8-1b1bac4850f9", "detail-type": "Object Deleted", "source": "aws.s3", "account": "111122223333", "time": "2021-11-12T00:00:00Z", "region": "ca-central-1", "resources": [ "arn:aws:s3:::amzn-s3-demo-bucket1" ], "detail": { "version": "0", "bucket": { "name": "amzn-s3-demo-bucket1" }, "object": { "key": "example-key", "etag": "d41d8cd98f00b204e9800998ecf8427e", "version-id": "1QW9g1Z99LUNbvaaYVpW9xDlOLU.qxgF", "sequencer": "617f0837b476e463" }, "request-id": "0BH729840619AG5K", "requester": "123456789012", "source-ip-address": "1.2.3.4", "reason": "DeleteObject", "deletion-type": "Delete Marker Created" } }

物件已刪除 (使用生命週期過期)

{ "version": "0", "id": "ad1de317-e409-eba2-9552-30113f8d88e3", "detail-type": "Object Deleted", "source": "aws.s3", "account": "111122223333", "time": "2021-11-12T00:00:00Z", "region": "ca-central-1", "resources": [ "arn:aws:s3:::amzn-s3-demo-bucket1" ], "detail": { "version": "0", "bucket": { "name": "amzn-s3-demo-bucket1" }, "object": { "key": "example-key", "etag": "d41d8cd98f00b204e9800998ecf8427e", "version-id": "mtB0cV.jejK63XkRNceanNMC.qXPWLeK", "sequencer": "617b398000000000" }, "request-id": "20EB74C14654DC47", "requester": "s3.amazonaws.com", "reason": "Lifecycle Expiration", "deletion-type": "Delete Marker Created" } }

物件還原已完成

{ "version": "0", "id": "6924de0d-13e2-6bbf-c0c1-b903b753565e", "detail-type": "Object Restore Completed", "source": "aws.s3", "account": "111122223333", "time": "2021-11-12T00:00:00Z", "region": "ca-central-1", "resources": [ "arn:aws:s3:::amzn-s3-demo-bucket1" ], "detail": { "version": "0", "bucket": { "name": "amzn-s3-demo-bucket1" }, "object": { "key": "example-key", "size": 5, "etag": "b1946ac92492d2347c6235b4d2611184", "version-id": "KKsjUC1.6gIjqtvhfg5AdMI0eCePIiT3" }, "request-id": "189F19CB7FB1B6A4", "requester": "s3.amazonaws.com", "restore-expiry-time": "2021-11-13T00:00:00Z", "source-storage-class": "GLACIER" } }

事件訊息詳細資訊欄位

詳細資訊欄位包含具有事件相關資訊的 JSON 物件。下列欄位可能會出現在詳細資訊欄位中。

  • version – 目前所有事件為 0 (零)。

  • bucket – 事件所涉及 Amazon S3 儲存貯體的相關資訊。

  • object – 有關事件中涉及的 Amazon S3 物件的資訊。

  • request-id – S3 回應中的請求 ID。

  • requester –申請者的 AWS 帳戶 ID AWS 或服務主體。

  • source-ip-address – S3 請求的來源 IP 地址。僅適用於由 S3 請求觸發的事件。

  • reason – 對於物件建立的事件,用於建立物件的 S3 API:PutObjectCopyObjectPOST ObjectCompleteMultipartUpload。對於物件刪除事件,當物件被 S3 API 呼叫DeleteObject刪除時,這會設定為 ,或者當物件被 S3 生命週期過期規則刪除時,會設定為生命週期過期。如需詳細資訊,請參閱即將到期的物件

  • deletion-type – 對於已刪除物件的事件,當刪除未版本控制的物件,或永久刪除版本控制的物件時,這會設定為永久刪除。當為版本控制物件建立刪除標記時,會設定為 Delete Marker Created (刪除建立的標記)。如需詳細資訊,請參閱刪除啟用版本控制功能之儲存貯體中的物件

    注意

    某些物件屬性 (例如 etagsize) 只有在建立刪除標記之後才會出現。

  • restore-expiry-time – 針對物件還原已完成事件,將從 S3 刪除物件臨時複本的時間。如需詳細資訊,請參閱使用封存的物件

  • source-storage-class – 針對物件還原已啟動物件還原已完成的事件,為要還原之物件的儲存體方案。如需詳細資訊,請參閱使用封存的物件

  • destination-storage-class – 對於物件儲存體方案已變更的事件,則為物件的新儲存體方案。如需詳細資訊,請參閱使用 Amazon S3 生命週期轉換物件

  • destination-access-tier – 針對物件存取層已變更的事件,則為物件的新存取層。如需詳細資訊,請參閱使用 Amazon S3 Intelligent-Tiering 管理儲存成本