Estructura de mensaje de evento EventBridge - Amazon Simple Storage Service

Estructura de mensaje de evento EventBridge

El mensaje de notificación que Amazon S3 envía para publicar un evento está en formato JSON. Cuando Amazon S3 envía un evento a Amazon EventBridge, aparecen los siguientes campos.

  • version (versión): actualmente 0 (cero) para todos los eventos.

  • id: un UUID de versión 4 generado para cada evento.

  • detail-type (tipo de detalle): el tipo de evento que se envía. Para obtener una lista de los tipos de eventos, consulte Uso de EventBridge.

  • source (origen): identifica el servicio que generó el evento.

  • account (cuenta): el ID de 12 dígitos de la Cuenta de AWS del propietario del bucket.

  • time (hora): la hora en que ocurrió el evento.

  • region (región): identifica la Región de AWS del bucket.

  • resources (recursos): una matriz JSON que contiene el nombre de recurso de Amazon (ARN) del bucket.

  • detail (detalle): un objeto JSON que contiene información sobre el evento. Para obtener más información acerca de lo que se puede incluir en este campo, consulte Campo de detalle del mensaje de evento.

Ejemplos de estructura de mensaje de evento

A continuación, se muestran ejemplos de algunos de los mensajes de notificación de eventos de Amazon S3 que se pueden enviar a Amazon EventBridge.

Objeto creado

{ "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:::DOC-EXAMPLE-BUCKET1" ], "detail": { "version": "0", "bucket": { "name": "DOC-EXAMPLE-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" } }

Objeto eliminado (utilizando 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:::DOC-EXAMPLE-BUCKET1" ], "detail": { "version": "0", "bucket": { "name": "DOC-EXAMPLE-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" } }

Objeto eliminado (utilizando vencimiento del ciclo de vida)

{ "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:::DOC-EXAMPLE-BUCKET1" ], "detail": { "version": "0", "bucket": { "name": "DOC-EXAMPLE-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" } }

Restauración de objetos completada

{ "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:::DOC-EXAMPLE-BUCKET1" ], "detail": { "version": "0", "bucket": { "name": "DOC-EXAMPLE-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" } }

Campo de detalle del mensaje de evento

El campo de detalles contiene un objeto JSON con información sobre el evento. Los siguientes campos pueden estar presentes en el campo de detalles.

  • version (versión): actualmente 0 (cero) para todos los eventos.

  • bucket: información sobre el bucket de Amazon S3 involucrado en el evento.

  • object (objeto): información sobre el objeto de Amazon S3 involucrado en el evento.

  • request-id (id de solicitud): ID de solicitud en la respuesta de S3.

  • requester (solicitante): ID de la Cuenta de AWS o entidad principal de servicio de AWS del solicitante.

  • source-ip-address (dirección IP de origen): dirección IP de origen de la solicitud de S3. Solo está presente para eventos desencadenados por una solicitud de S3.

  • reason (motivo): para eventos de objeto creado, la API de S3 solía crear el objeto: PutObject, POST Object, CopyObject o CompleteMultipartUpload. Para eventos de objeto eliminado, esto se configura en DeleteObject cuando se elimina un objeto mediante una llamada a la API de S3, o vencimiento del ciclo de vida cuando se elimina un objeto mediante una regla de vencimiento de S3 Lifecycle. Para obtener más información, consulte Vencimiento de objetos.

  • deletion-type: para eventos de objeto eliminado, cuando se elimina un objeto sin control de versiones o se elimina de forma permanente un objeto con control de versiones, esto se establece en Permanently Deleted (Eliminado de forma permanente). Cuando se crea un marcador de eliminación para un objeto con control de versiones, esto se establece en Delete Marker Created (Marcador de eliminación creado). Para obtener más información, consulte Eliminar versiones de objetos de un bucket con control de versiones habilitado.

  • restore-expiry-time (restauración de tiempo de vencimiento): para eventos de restauración de objetos completada, la hora en que la copia temporal del objeto se eliminará de S3. Para obtener más información, consulte Trabajar con objetos archivados.

  • source-storage-class (clase de almacenamiento de origen): para eventos de restauración de objetos iniciada y restauración de objetos completada, la clase de almacenamiento del objeto que se está restaurando. Para obtener más información, consulte Trabajar con objetos archivados.

  • destination-storage-class (clase de almacenamiento de destino): para eventos de cambio de clase de almacenamiento de objetos, la nueva clase de almacenamiento del objeto. Para obtener más información, consulte Transición de objetos con Amazon S3 Lifecycle.

  • destination-access-tier (nivel de acceso de destino): para eventos de cambio de nivel de acceso a objetos, el nuevo nivel de acceso del objeto. Para obtener más información, consulte Amazon S3 Intelligent Tiering.