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: actualmente 0 (cero) para todos los eventos.

  • id: un UUID generado para cada evento.

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

  • source: identifica el servicio que generó el evento.

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

  • time: la hora a la que se produjo el evento.

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

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

  • detail – 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:::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" } }

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:::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" } }

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:::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" } }

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:::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" } }

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: actualmente 0 (cero) para todos los eventos.

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

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

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

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

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

  • reason: para eventos de Objeto creado, la API de S3 utilizada para 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 del ciclo de vida de S3. 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 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.

    nota

    Algunos atributos del objeto (como etag y size) solo están presentes cuando se crea un marcador de eliminación.

  • restore-expiry-time: 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: 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: para eventos de Clase de almacenamiento de destino cambiada, 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: para eventos de Nivel de acceso de destino cambiado, el nuevo nivel de acceso del objeto. Para obtener más información, consulte Administración de costos con Amazon S3 Intelligent-Tiering.