全部产品
弹性计算 会员服务 网络 安全 移动云 数加·大数据分析及展现 数加·大数据应用 管理与监控 云通信 阿里云办公 培训与认证 更多
存储与CDN 数据库 域名与网站(万网) 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网 智能硬件
消息队列 MQ

资源授权

更新时间:2018-03-09 20:52:47

消息队列支持云账户(主账号)将 Topic 资源授权给 RAM 用户(子账号),有权限的 RAM 用户可在消息队列控制台上进行资源的管理,以及通过 SDK 进行消息的发布与订阅。

授权策略

消息队列目前支持三种授权策略,您可以按照以下步骤查看:

  1. 登录RAM 控制台,点击进入策略管理>系统授权策略
  2. 策略名或备注的搜索框中输入“MQ”, 单击搜索。您便可以看到目前消息队列支持的三种授权策略。

关于这三种授权策略的具体说明如下:

AliyunMQFullAccess,消息队列的管理权限,被授予该权限的 RAM 用户除了具有主账户所有资源的所有操作权限外,还可以代替主账户在消息队列的控制台上进行资源的管理,比如创建和删除 Topic 等,需要注意的是该 RAM 用户创建的资源所有者为主账户。

AliyunMQPubOnlyAccess,消息队列的发布权限,被授予该权限的 RAM 用户具有主账户所有资源的发布权限,包括 MQ 控制台上创建生产者以及通过 SDK 进行消息发送的权限。

AliyunMQSubOnlyAccess,消息队列的订阅权限,被授予该权限的 RAM 用户具有主账号所有资源的订阅权限,包括 MQ 控制台上创建消费者以及通过 SDK 进行消息订阅的权限。

建议:

您可通过组合 AliyunMQPubOnlyAccess、AliyunMQSubOnlyAccess 两种策略,将主账户所有资源的发布和订阅权限授予给 RAM 用户。

与 AliyunMQFullAccess 策略相比,这种组合策略并不会将消息队列的管理权限授予 RAM 用户,也就是说组合策略没有 Topic 资源的创建、删除等管理操作权限。

创建自定义策略

通常情况下,消息队列提供的三种系统授权策略已经能满足大部分业务需求,如果您需要有更细粒度的授权需求,那么可以通过创建自定义策略来进行访问控制。

可参考创建自定义授权策略,按文中步骤创建自定义策略。

以下是一个自定义策略的示例:

  1. {
  2. "Version": "1",
  3. "Statement": [
  4. {
  5. "Action": "mq:PUB",
  6. "Resource": [
  7. "acs:mq:*:*:TopicA",
  8. "acs:mq:*:*:TopicB"
  9. ],
  10. "Effect": "Allow"
  11. }
  12. ]
  13. }

该示例表示:

  • 资源名称: TopicA、TopicB;
  • 操作权限:发布权限,包括创建生产者以及通过 SDK 进行消息订阅的权限。


给 RAM 用户授权

首先,请参考RAM 用户创建了解如何创建 RAM 用户,以及参考RAM 用户授权了解授权相关的基本操作以及用户组授权的概念。

授权步骤

主账户给 RAM 用户授权的具体步骤如下:

  1. 使用主账户登录RAM 控制台
  2. 点击左侧导航栏中的用户管理
  3. 找到需要授权的用户(可通过登录名进行搜索),并点击其右侧操作栏目下的授权按钮进入编辑个人授权策略页面。
  4. 添加需要的授权策略(可按关键词进行搜索),并点击确认
    • 从左侧可选授权策略下选择需要的策略,点击右向箭头(即授权)将其添加到已选授权策略中。
    • 反之,通过左向箭头可将右侧已选授权策略取消。

RAM 用户权限校验

RAM 用户可登录消息队列控制台进行检验。登录消息队列控制台后,在Topic 管理页面可以看到被授权的所有 Topic 资源。

登录步骤如下:

  1. 登录RAM 控制台
  2. 在 RAM 控制台左侧的产品列表中找到消息队列 ,点击即跳转到消息队列控制台。或者直接点击MQ 控制台进入。
本文导读目录