EventBridge admite el enrutamiento de eventos dentro de la misma cuenta y entre cuentas distintas. Puede usar reglas de eventos para filtrar y enrutar eventos a un bus de eventos que pertenezca a la misma cuenta de Alibaba Cloud o a una diferente.
Requisitos previos
Contexto
Enrutamiento dentro de la misma cuenta
En la siguiente figura, el bus de eventos del sistema default y los buses de eventos personalizados A, B y C pertenecen a la cuenta A de Alibaba Cloud. Puede enrutar eventos desde cualquiera de estos buses hacia otro bus de eventos personalizado dentro de la misma cuenta para su procesamiento centralizado.
Enrutamiento entre cuentas
Las cuentas A y B de Alibaba Cloud pertenecen a la misma organización o a organizaciones relacionadas. Puede enrutar eventos desde la cuenta emisora (Cuenta A) hacia un bus de eventos en la cuenta receptora (Cuenta B) para su procesamiento centralizado. El flujo de trabajo es el siguiente:
La cuenta receptora (Cuenta B) crea un rol de RAM. La entidad de confianza para este rol es la cuenta emisora (Cuenta A).
La cuenta receptora (Cuenta B) otorga al rol de RAM permiso para publicar eventos. Esto permite que la Cuenta A asuma el rol y publique eventos en la Cuenta B.
La cuenta receptora (Cuenta B) modifica la directiva de confianza del rol de RAM para permitir que el servicio EventBridge de la cuenta emisora asuma dicho rol.
La cuenta emisora (Cuenta A) crea una regla de eventos para enrutar eventos hacia un bus de eventos en la cuenta receptora (Cuenta B).

Un solo bus de eventos de una cuenta receptora puede admitir eventos provenientes de varias cuentas emisoras. El campo de extensión aliyunoriginalaccountid de estos eventos identifica su origen, y la cuenta receptora puede filtrar los eventos mediante el campo aliyunoriginalaccountid.
Uso
El enrutamiento de eventos, tanto dentro de la misma cuenta como entre cuentas distintas, admite el enrutamiento entre diferentes regiones.
Solo puede enrutar eventos desde un bus de eventos del sistema hacia un bus de eventos personalizado. Del mismo modo, solo puede enrutar eventos desde un bus de eventos personalizado hacia otro bus de eventos personalizado.
Enrutamiento dentro de la misma cuenta
Inicie sesión en la consola de EventBridge. En el panel de navegación izquierdo, haga clic en Event Buses.
En la barra de navegación superior, seleccione una región. En la página Event Buses, haga clic en el bus de eventos del sistema default.
En el panel de navegación izquierdo, haga clic en Event Rules y luego en Create Rule.
-
En el asistente Create Rule, complete los siguientes pasos.
En la pestaña Configure Basic Info, introduzca un Name y una Description para la regla, y luego haga clic en Next.
-
En la pestaña Configure Event Pattern, configure los siguientes parámetros y luego haga clic en Next.
Event Sources: Seleccione un servicio de Alibaba Cloud.
Event Type: Seleccione un tipo de evento.
Pattern Content: Introduzca un patrón de eventos.
-
En la pestaña Configure Targets, configure los siguientes parámetros y luego haga clic en Create.
Service Type: Seleccione EventBridge.
Destination Type: Seleccione Same-account Event Bus.
Region: Seleccione la región donde se encuentra el bus de eventos de destino.
Event Buses: Seleccione un bus de eventos.
Event: El valor predeterminado es Complete Event, que entrega el evento completo y sin transformar en formato CloudEvents 1.0.
NotaUna regla de eventos puede tener un máximo de cinco destinos.
A continuación, puede consultar el evento en el bus de eventos de destino. Para obtener más información, consulte Query events.
Enrutamiento entre cuentas
Paso 1: Crear un rol de RAM
Inicie sesión en la consola de RAM con la cuenta receptora (Cuenta B).
En el panel de navegación izquierdo, elija Identities > Roles.
En la página Roles, haga clic en Create Role.
-
En la página Create Role, en Trusted entity type, seleccione Alibaba Cloud Account y luego haga clic en Next.
Current Alibaba Cloud Account: Permite que todos los usuarios de RAM y roles de RAM de la cuenta actual de Alibaba Cloud asuman este rol.
Other Alibaba Cloud Account: Permite que todos los usuarios de RAM y roles de RAM de otra cuenta de Alibaba Cloud asuman este rol. Debe introducir el ID de la otra cuenta. Esta opción se utiliza para el acceso a recursos entre cuentas. Para obtener más información, consulte Use a RAM role to access resources across Alibaba Cloud accounts. Puede ver el ID de su cuenta en la página Security Settings.
-
Configure la información del rol.
Introduzca un Role Name.
Opcional: Introduzca Remarks.
En Select Trusted Alibaba Cloud Account, seleccione Other Alibaba Cloud Account, introduzca el ID de la cuenta emisora (Cuenta A) y luego haga clic en Done.
Paso 2: Otorgar permisos al rol
Inicie sesión en la consola de RAM con la cuenta receptora (Cuenta B).
En el panel de navegación izquierdo, elija Identities > Roles.
-
En la página Roles, busque el rol de RAM de destino y haga clic en Add Permissions en la columna Actions.
También puede seleccionar varios roles de RAM y hacer clic en Add Permissions en la parte inferior de la lista para otorgar permisos de forma masiva.
-
En el panel Attach Policy, configure los siguientes ajustes.
-
Seleccione el alcance de la autorización.
Account: El permiso se aplica a toda la cuenta de Alibaba Cloud.
-
Resource Group: El permiso se aplica únicamente al resource group especificado.
NotaPara otorgar permisos sobre un resource group, el servicio en la nube debe ser compatible con resource groups. Para obtener más información, consulte Services that work with resource groups.
-
Especifique la entidad de seguridad.
La entidad de seguridad es el rol de RAM que está autorizando. El rol de RAM actual se selecciona de forma predeterminada, pero puede agregar otros.
-
Seleccione una directiva de permisos.
En la lista Policy, busque y seleccione AliyunEventBridgePutEventsPolicy, y luego haga clic en OK.
NotaPuede adjuntar un máximo de cinco directivas a la vez. Para adjuntar más, repita la operación.
Si las directivas del sistema no cumplen con sus requisitos, cree una directiva personalizada para un control de acceso detallado y otorgue permisos a la cuenta emisora sobre buses de eventos específicos. Para obtener más información, consulte Create custom policies.
-
Paso 3: Modificar la directiva de confianza
Inicie sesión en la consola de RAM con la cuenta receptora (Cuenta B).
En el panel de navegación izquierdo, elija Identities > Roles.
En la página Roles, haga clic en el nombre del rol de RAM de destino.
Haga clic en la pestaña Trust Policy y luego en Edit Trust Policy.
-
Modifique la directiva de confianza y luego haga clic en Save Trust Policy.
El siguiente código muestra un ejemplo de directiva de confianza:
{ "Statement":[ { "Action":"sts:AssumeRole", "Effect":"Allow", "Principal":{ "Service":[ "Account_A_ID@eventbridge.aliyuncs.com" ] } } ], "Version":"1" }Después de guardar la directiva, el servicio EventBridge de la cuenta emisora (Cuenta A) podrá asumir el rol de RAM.
Paso 4: Crear una regla de eventos
Inicie sesión en la consola de EventBridge con la cuenta emisora (Cuenta A). En el panel de navegación izquierdo, haga clic en Event Buses.
En la barra de navegación superior, seleccione una región. En la página Event Buses, haga clic en el bus de eventos del sistema default.
En el panel de navegación izquierdo, haga clic en Event Rules y luego en Create Rule.
-
En el asistente Create Rule, complete los siguientes pasos.
En la pestaña Configure Basic Info, introduzca un Name y una Description para la regla, y luego haga clic en Next.
-
En la pestaña Configure Event Pattern, configure los siguientes parámetros y luego haga clic en Next.
Event Sources: Seleccione un servicio de Alibaba Cloud.
Event Type: Seleccione un tipo de evento.
Pattern Content: Introduzca un patrón de eventos.
-
En la pestaña Configure Targets, configure los siguientes parámetros y luego haga clic en Create.
Service Type: Seleccione EventBridge.
Destination Type: Seleccione Cross-account Event Bus.
Region: Seleccione la región de la cuenta de destino.
Account ID: Introduzca el ID de la cuenta receptora (Cuenta B).
Event Bus Name: Introduzca default.
Role: Introduzca el nombre del rol de RAM que creó en el Paso 1.
Event: El valor predeterminado es Complete Event, que entrega el evento completo y sin transformar en formato CloudEvents 1.0.
NotaUna regla de eventos puede tener un máximo de cinco destinos.
La cuenta receptora (Cuenta B) podrá entonces consultar los eventos enrutados. Para obtener más información, consulte Query events.