跨账号推送授权

本文为您介配置轻量消息队列(原 MNS)主题模型跨账号推送授权的具体操作。

前提条件

已创建阿里云账号A、B两个账号:

  • 阿里云账号A:主账号IDtestAccountID

  • 阿里云账号B:主账号IDtestAccountID1

文本以阿里云账号A将消息推送到阿里云账号B为例进行介绍。

步骤一:为B账号创建RAM角色

  1. 创建RAM角色,并允许A账号扮演该RAM角色。

    1. 使用阿里云账号B(主账号)或RAM管理员登录RAM控制台

    2. 在左侧导航栏,选择身份管理 > 角色

    3. 角色页面,单击创建角色

    4. 创建角色页面,选择信任主体类型云服务,然后选择具体的阿里云服务,最后单击确定

      image

    5. 创建角色对话框,输入角色名称,然后单击确定

  2. 修改RAM角色的信任策略。

    1. 信任策略页签,单击编辑信任策略

    2. 在编辑器中修改信任策略内容,然后单击确定

      说明

      "Service": "mns.aliyuncs.com"改为"Service": "testAccountID@mns.aliyuncs.com",其中testAccountID需要替换为阿里云账号A的主账号ID。

      image

步骤二:为B账号RAM角色授权跨账号权限

推送到轻量消息队列(原 MNS)队列

  1. 使用阿里云账号B(主账号)或RAM管理员登录RAM控制台

  2. 在左侧导航栏,选择权限管理 > 权限策略

  3. 权限策略页面,单击创建权限策略

  4. 创建权限策略页面,单击可视化编辑页签。

  5. 配置以下权限策略,单击确定

    1. 效果区域,选择允许拒绝

    2. 服务区域,选择云服务轻量消息队列(原 MNS)

    3. 操作区域,选择指定操作,然后选中写操作中的mns:SendMessage复选框。

    4. 资源区域,选择全部资源指定资源

  6. 创建权限策略对话框,输入权限策略名称备注,然后单击确定

  7. 在左侧导航栏,选择身份管理 > 角色

  8. 角色页面,单击步骤一创建的RAM角色名称。

  9. 权限管理页签,单击精确授权

  10. 精确授权对话框,配置以下信息,单击确定

    • 权限策略类型:选择自定义策略

    • 策略名称:在文本框中输入刚创建的权限策略名称。

推送到函数计算

  1. 使用阿里云账号B(主账号)或RAM管理员登录RAM控制台

  2. 在左侧导航栏,选择身份管理 > 角色

  3. 角色页面,单击步骤一创建的RAM角色名称。

  4. 权限管理页签,单击新增授权

  5. 新增授权面板,配置以下权限策略,单击确认新增授权

    • 资源范围:选择账号级别

    • 权限策略:选中AliyunFCInvocationAccess复选框。

推送到云消息队列 Kafka 版

  1. 使用阿里云账号B(主账号)或RAM管理员登录RAM控制台

  2. 在左侧导航栏,选择权限管理 > 权限策略

  3. 权限策略页面,单击创建权限策略

  4. 创建权限策略页面,单击脚本编辑页签,将权限策略内容修改为如下所示,然后单击确定

    {
      "Version": "1",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": "eventbridge:*EventStreaming",
          "Resource": "*"
        }
      ]
    }
  5. 创建权限策略对话框,输入权限策略名称备注,然后单击确定

  6. 在左侧导航栏,选择身份管理 > 角色

  7. 角色页面,单击步骤一创建的RAM角色名称。

  8. 权限管理页签,单击精确授权

  9. 精确授权对话框,配置以下信息,单击确定

    • 权限策略类型:选择自定义策略

    • 策略名称:在文本框中输入刚创建的权限策略名称。

步骤三:获取B账号跨账号授权RAM角色ARN

说明

在跨账号场景下,使用阿里云账号A创建订阅时,需要在服务关联角色处填入RAM角色的ARN。

  1. 使用阿里云账号B(主账号)或RAM管理员登录RAM控制台

  2. 在左侧导航栏,选择身份管理 > 角色

  3. 角色页面,单击步骤一创建的RAM角色名称。

  4. 基本信息区域,单击ARN后面的复制

    image

相关文档

轻量消息队列(原 MNS)主题跨账号订阅的操作请参见: