同组织或关联组织下不同的阿里云账号通常需要进行事件互通,事件总线EventBridge提供跨账号路由事件的能力,您可以将多个账号的事件路由到一个账号中统一处理。本文介绍跨账号路由事件的背景信息、注意事项、操作步骤和结果验证。

背景信息

如下图所示,在实际应用场景中,阿里云账号A、B属于同组织或者相关组织,您可以将发送账号A其RAM用户的审计事件路由到接收账号B的云服务专用总线中集中处理。操作步骤如下所示:

  1. 接收账号B创建RAM角色。可信实体为发送账号A。
  2. 接收账号B为RAM角色授予发布事件的权限。发送账号A可以扮演RAM角色,拥有向接收账号B发布事件的权限。
  3. 接收账号B修改RAM角色的信任策略,为接收账号B的阿里云服务添加发布事件的权限策略。接收账号B的阿里云服务也可以扮演RAM角色,拥有向接收账号B发布事件的权限。
  4. 发送账号A创建事件规则,将审计事件路由到接收账号B的云服务专用总线。
跨账号路由事件
说明 接收账号的同一个总线支持来自多个发送账号的事件,这些事件的aliyunoriginalaccountid扩展字段将标识事件的归属信息,接收账号可通过aliyunoriginalaccountid字段过滤事件。

地域限制

跨云账号事件路由,目前只对华北5(呼和浩特)地域开放。

使用限制

  • 只支持在同一个地域内跨账号路由事件。
  • 云服务总线的事件只能路由到云服务总线。
  • 自定义总线的事件只能路由到自定义总线。

步骤一:创建RAM角色

  1. 使用阿里云账号B登录RAM控制台
  2. 在左侧导航栏,单击RAM角色管理
  3. RAM角色管理页面,单击创建RAM角色
  4. 创建RAM角色面板,选择可信实体类型为阿里云账号,然后单击下一步
  5. 输入角色名称备注
  6. 选择云账号为其他云账号,输入发送账号A的ID,然后单击完成

步骤二:为RAM角色授权

  1. 在左侧导航栏,单击RAM角色管理
  2. RAM角色管理页面,单击目标RAM角色操作列的添加权限
  3. 权限策略名称列表下,找到并单击EventBridgePutEventsPolicy,然后单击确定
    说明 如果系统策略无法满足您的需求,您可以通过创建自定义策略实现精细化权限管理,将部分总线的权限授予发送账号。更多信息,请参见创建自定义策略

步骤三:修改信任策略

  1. 在左侧导航栏,单击RAM角色管理
  2. RAM角色管理页面,单击目标RAM角色名称。
  3. 单击信任策略管理页签,然后单击修改信任策略
  4. 修改信任权限策略内容,然后单击确定
    {
        "Statement":[
            {
                "Action":"sts:AssumeRole",
                "Effect":"Allow",
                "Principal":{
                    "Service":[
                        "${账号A}@eventbridge.aliyuncs.com"
                    ]
                }
            }
        ],
        "Version":"1"
    }
    配置完成后,账号A的事件总线EventBridge可以扮演RAM角色。

步骤四:创建规则

  1. 登录事件总线EventBridge控制台
  2. 在左侧导航栏,选择事件驱动 > 事件规则
  3. 在顶部菜单栏,选择地域。
  4. 事件规则页面,选择云服务专用总线,然后单击创建规则
  5. 创建规则页面,完成以下操作。
    1. 配置基本信息配置向导页面,在名称文本框输入规则名称,在描述文本框输入规则的描述,然后单击下一步
    2. 配置事件模式配置向导页面,事件源类型选择阿里云官方事件源,从事件源列表选择阿里云官方事件源,从事件类型列表选择事件类型,在事件模式内容文本框输入事件模式,然后单击下一步
    3. 配置事件目标配置向导页面,配置以下参数,然后单击创建
      • 服务类型:单击事件总线
      • 目标账户类型:默认选择其他阿里云账号
      • 账号ID:输入接收账号的ID。
      • 总线名称:输入default
      • 事件:默认选择完整事件,不做转换,直接投递原生CloudEvents 1.0协议中的完整结构。
      说明 1个事件规则最多可以添加5个目标。

结果验证

您可以使用接收账号查询事件。更多信息,请参见按事件ID查询事件按时间范围查询事件