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 リソースネーム (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。PutObject、POST Object、CopyObject、または CompleteMultipartUpload。オブジェクトの削除イベントの場合、これは、オブジェクトが S3 API コールによって削除された場合は DeleteObject に設定され、オブジェクトが S3 ライフサイクル有効期限切れルールによって削除された場合はライフサイクルの有効期限切れに設定されます。詳細については、「オブジェクトの有効期限」を参照してください。 -
deletion-type– オブジェクトの削除イベントの場合、バージョン管理されていないオブジェクトが削除されるか、バージョン管理されたオブジェクトが完全に削除されると、これは完全に削除に設定されます。バージョン化したオブジェクトに削除マーカーが作成されると、これは削除マーカーの作成に設定されます。詳細については、「バージョニングが有効なバケットからのオブジェクトバージョンの削除」を参照してください。注記
一部のオブジェクト属性 (
etagやsizeなど) は、削除マーカーが作成された場合にのみ示されます。 -
restore-expiry-time– オブジェクトの復元完了イベントの場合、オブジェクトの一時コピーが S3 から削除される時刻。詳細については、「アーカイブされたオブジェクトの操作」を参照してください。 -
source-storage-class– オブジェクトの復元開始およびオブジェクトの復元完了イベントの場合の、復元されるオブジェクトのストレージクラス。詳細については、「アーカイブされたオブジェクトの操作」を参照してください。 -
destination-storage-class– オブジェクトストレージクラスの変更イベントの場合の、オブジェクトの新しいストレージクラス。詳細については、「Amazon S3 ライフサイクルを使用したオブジェクトの移行」を参照してください。 -
destination-access-tier– オブジェクトアクセス階層の変更イベントの場合の、オブジェクトの新しいアクセス階層。詳細については、「Amazon S3 Intelligent-Tiering によるストレージコストの管理」を参照してください。