Envío de eventos a un servicio de AWS en otra cuenta en EventBridge - Amazon EventBridge

Envío de eventos a un servicio de AWS en otra cuenta en EventBridge

EventBridge puede enviar eventos desde un bus de eventos de una cuenta de AWS a servicios de AWS compatibles de otra cuenta, lo que simplifica la arquitectura de las soluciones basadas en eventos y reduce la latencia.

Por ejemplo, supongamos que tiene un conjunto de buses de eventos, alojados en varias cuentas, para los que debe enviar los eventos relacionados con la seguridad a una cola de Amazon SQS en una cuenta centralizada para su posterior procesamiento y análisis asíncronos.

EventBridge admite el envío de eventos a destinos entre cuentas de la misma región.

Servicios admitidos

EventBridge admite el envío de eventos a los siguientes destinos en otras cuentas de AWS:

  • API de Amazon API Gateway

  • Flujos de Amazon Kinesis Data Streams

  • Funciones de Lambda

  • Temas de Amazon SNS

  • Colas de Amazon SQS

Para obtener más información acerca de los precios, consulte Precios de Amazon EventBridge.

Permisos

Para activar el acceso a los servicios de AWS como objetivos para la entrega de eventos entre cuentas, se deben seguir los siguientes pasos:

  • Especificación de un rol de ejecución

  • asociar una política de recursos.

Especificación de un rol de ejecución

Especifique un rol de ejecución para que EventBridge lo utilice al enviar eventos al destino cuando se active la regla.

Este rol de ejecución debe estar en la misma cuenta que el bus de eventos. EventBridge asume este rol al intentar invocar el destino y se aplica a cualquier política de control de servicios (SCP) que afecte a esta cuenta.

Las SCP son un tipo de política de organización que puede utilizar para administrar permisos en su organización. Para obtener más información, consulte Políticas de control de servicios en la Guía del usuario de AWS Organizations.

Por ejemplo, la siguiente política permite que el servicio de EventBridge asuma el rol de ejecución:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "events.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

Y la siguiente política permite al rol enviar mensajes a las colas de Amazon SQS:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "sqs:SendMessage", "Resource": "arn:aws:sqs:us-east-1:123456789012:queue-name" } ] }

En el caso de las cuentas que utilicen AWS Organizations, puede aplicar un SCP para evitar que se invoquen recursos que no pertenecen a su organización, tal como se muestra en el siguiente ejemplo:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Action": [ "*" ], "Resource": "*", "Effect": "Deny", "Condition": { "StringNotEquals": { "aws:ResourceOrgID": "o-1234567890" } } } ] }
nota

Para los destinos entre cuentas distintos de los buses de eventos, no se admiten las llamadas a PutTarget desde una cuenta diferente a la del bus de eventos, incluso si se proporciona un rol de ejecución desde la cuenta que llama.

Asociación de una política de acceso a recursos con el destino

Los servicios de AWS que pueden recibir eventos entre cuentas admiten las políticas de IAM basadas en recursos. Esto le permite asociar una política de acceso a recursos con el destino, de modo que pueda especificar qué cuenta tiene acceso al destino.

Si tomamos el ejemplo anterior, la siguiente política permite a la cuenta del bus de eventos acceder a la cola de Amazon SQS de la cuenta de destino:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Action": [ "SQS:SendMessage" ], "Effect": "Allow", "Resource": "arn:aws:sqs:us-east-1:123456789012:queue-name", "Principal": { "AWS": "123456789012" } } ] }

Para obtener más información, consulte Políticas basadas en identidad y políticas basadas en recursos en la Guía del usuario de AWS Identity and Access Management.

Creación de reglas que envían eventos a servicios de AWS de otras cuentas

Especificar un servicio de AWS en otra cuenta como destino forma parte de la creación de la regla del bus de eventos.

Cómo crear una regla que envíe eventos a un servicio de AWS en otra cuenta de AWS mediante la consola
  1. Siga los pasos que se indican en el procedimiento Creación de reglas que reaccionan a eventos en Amazon EventBridge.

  2. En el paso Seleccionar los destinos, cuando se le pida que seleccione un tipo de destino:

    1. Seleccione el servicio de AWS.

    2. Seleccione un servicio de AWS que sea compatible con los destinos entre cuentas.

      Para obtener más información, consulte Servicios admitidos.

    3. En Ubicación de destino, elija Destino en otra cuenta de AWS.

    4. Introduzca el ARN del recurso de destino al que desea enviar eventos.

    5. Seleccione el nombre del rol de ejecución que se va a utilizar en la lista desplegable.

    6. Proporcione la información adicional solicitada para el servicio que seleccione. Los campos que se muestran varían en función del servicio seleccionado.

  3. Siga los pasos del procedimiento para crear la regla.