全部产品
Search
文档中心

实时数仓Hologres:RAM用户权限授权快速入门

更新时间:Jan 31, 2024

本文为您介绍主账号如何授权RAM用户,从而实现RAM用户连接并使用Hologres。

前提条件

给RAM账号授权RAM用户权限

主账号授予RAM用户相应的权限后,RAM用户可以在Hologres管理控制台执行查看、购买或删除实例等操作。您可以登录访问控制管控台,查找目标RAM用户,为其添加权限。如果您需要为RAM用户授予拥有管控台查看实例信息的所有权限,请为其添加AliyunHologresFullAccessAliyunRAMReadOnlyAccess权限。

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

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

  3. 用户页面,单击目标RAM用户操作列的添加权限

  4. 新增授权。

    配置添加权限对话框的各项参数。

    说明

    通过指定资源组进行授权的方式暂不支持登录并使用HoloWeb。

    添加权限

    参数

    描述

    授权范围

    取值如下:

    • 整个云账号:权限在当前阿里云账号内生效。

    • 指定资源组:权限在指定的资源组内生效。

    说明

    指定资源组授权生效的前提是该云服务已支持资源组。更多信息请参见支持资源组的云服务

    授权主体

    需要授权的RAM用户。

    选择权限

    取值如下:

    • 系统策略。

    • 自定义策略。

    说明
    • 您也可以根据业务需求自定义新建权限策略。

    • 每次最多添加5条策略。如果您需要添加的策略数量大于5条,请分多次执行。

    系统策略自定义策略的权限说明如下:

    • 系统策略

      为RAM用户授予以下权限策略,RAM用户就会拥有所有操作的权限,如下表所示。

      权限策略

      描述

      AliyunHologresFullAccess

      管理Hologres服务的权限。

      说明

      该权限策略不包含实例的使用权限,仍需Superuser在实例中创建用户后才可以登录并使用Hologres实例,详情请参见与实例使用相关的RAM用户权限问题

      设置该权限后,RAM用户拥有的权限包括:

      • 查看管理控制台所有实例信息的权限,包括实例列表、实例详情、监控等页面。

      • 可执行涉及账单的操作,包括对实例购买、升降配、续费、停机、删除等操作。

      • 登录并使用HoloWeb的权限。

      • RAM用户购买实例后将会成为实例的Superuser,拥有实例的所有权限(阿里云账号也一并成为实例的Superuser)。

      • 对于阿里云账号已经创建的实例,RAM用户默认没有实例的权限,需要阿里云账号在实例内给RAM用户授予相应的权限,详情请参见授予RAM用户实例的开发权限

      • 无管理控制台用户管理页面展示所有用户的权限,需要授予listuser的权限(AliyunRAMReadOnlyAccess),才可以在管理控制台的用户管理查看用户信息。

      AliyunBSSOrderAccess

      在费用中心(BSS)查看、支付以及取消订单的权限。

      设置该权限后,子账号可以在管理控制台升级或降级实例的配置,以及为实例续费。

      AliyunRAMReadOnlyAccess

      只读访问控制(RAM)的权限。

      设置该权限后,RAM用户在HoloWeb的用户管理页面新增用户时可以展示当前阿里云账号下的所有RAM用户和RAM角色。

      AliyunHologresReadOnlyAccess

      只读管理Hologres的权限。

      设置该权限后,RAM用户拥有的权限包括:

      • 在管理控制台查看实例所有信息的权限,包括实例列表、实例详情、监控指标等信息。

      • 登录并使用HoloWeb的权限。

      • 无实例购买、升降配等涉及费用的操作权限。

      • 无实例的操作权限,需要阿里云账号给RAM用户授予实例级别的权限。

      • 不能在管理控制台或HoloWeb用户管理展示当前阿里云账号下的所有RAM用户,如需查看需要授予AliyunRAMReadOnlyAccess的权限。

      说明
      • RAM用户购买的实例,主账号和RAM用户默认均为Superuser。

      • 主账号购买的实例,RAM用户需要被主账号授权后,才能使用实例。

    • 自定义策略

      您可以根据业务需求,在 新建权限策略中自定义不同的权限。

      重要

      为用户配置权限策略时,请务必配置AliyunRAMReadOnlyAccess的权限策略,保障用户能够访问管控台。

      新建

      创建权限策略页面,您可以使用脚本编辑自定义权限。

      Hologres支持的自定义权限配置如下:

      重要

      实际使用时请删除注释,否则会导致代码不可用。

      {
          "Statement": [
              {  // 一次性授予所有权限,设置了该条,可不用设置下面的其他权限
                  "Effect": "Allow",
                  "Action": "hologram:*",//所有操作都有权限
                  "Resource": "acs:hologram:*:<账号ID>:instance/*"//针对所有region所有实例 <*不能被实例替代>
              },
              {   //购买或者续费实例
                  "Effect": "Allow",
                  "Action": "hologram:*",
                  "Resource": "acs:hologram:cn-<region>:<账号ID>:instance/*"
              },
              {   //删除实例
                  "Effect": "Allow",
                  "Action": "hologram:DeleteInstance",
                  "Resource": "acs:hologram:cn-<region>:<账号ID>:instance/*"//<需要配置才能删除,不配置不能删除但是会提示删除成功>
              },
              {   //ram账号购买权限。ram用户配置该权限后才可以购买实例
                  "Effect": "Allow",
                  "Action": "bss:PayOrder",
                  "Resource": "acs:hologram:cn-<region>:<账号ID>:instance/*"//<测试不通过>
              },
              {   //展示实例详情
                  "Effect": "Allow",
                  "Action": "hologram:GetInstance",
                  "Resource": "acs:hologram:cn-<region>:<账号ID>:instance/*" //<*能被实例替代>
              },
              { //展示实例列表
                  "Effect": "Allow",
                  "Action": "hologram:ListInstances",
                  "Resource": "acs:hologram:cn-<region>:<账号ID>:instance/*"//<*不能被实例替代>
              },
              {  //暂停实例
                  "Effect": "Allow",
                  "Action": "hologram:StopInstance",
                  "Resource": "acs:hologram:cn-<region>:<账号ID>:instance/*"
              },
              {  //恢复实例
                  "Effect": "Allow",
                  "Action": "hologram:ResumeInstance",
                  "Resource": "acs:hologram:cn-<region>:<账号ID>:instance/*"
              },
              {  //展示实例监控告警
                  "Effect": "Allow",
                  "Action": "hologram:GetInstanceMetrics",
                  "Resource": "acs:hologram:cn-<region>:<账号ID>:instance/*"//<*可以被实例替代>
              },
              {  //修改网络类型
                  "Effect": "Allow",
                  "Action": "hologram:UpdateInstanceNetworkType",
                  "Resource": "acs:hologram:cn-<region>:<账号ID>:instance/*"
              }.
              {  //访问HoloWeb
                  "Effect": "Allow",
                  "Action": "hologram:HoloWebAccess",
                  "Resource": "*"
              }      
          ],
          "Version": "1"
      }

      参数说明如下表所示。

      参数

      描述

      <region>

      地域,例如beijing

      <账号ID>

      阿里云账号的ID。

      *

      表示该阿里云账号中所有实例。您也可以替换*为具体的一个实例ID。

      示例语句如下。

      acs:hologram:cn-beijing:4322xxxxx:instance/hhhgggxxxx
      重要

      以下授权选项的instance/* 中的*不可以替换为具体某一个实例ID,只能设置为*

      {
          "Statement": [
              {  // 一次性授予所有权限,设置了该条,可不用设置下面的其他权限
                  "Effect": "Allow",
                  "Action": "hologram:*",//所有操作都有权限
                  "Resource": "acs:hologram:*:<账号ID>:instance/*"//针对所有region所有实例
              },
              {   //购买,续费实例
                  "Effect": "Allow",
                  "Action": "hologram:*",
                  "Resource": "acs:hologram:cn-<region>:<账号ID>:instance/*"
              },
              {   //删除实例
                  "Effect": "Allow",
                  "Action": "hologram:DeleteInstance",
                  "Resource": "acs:hologram:cn-<region>:<账号ID>:instance/*"
              },
              {   //RAM用户购买权限,需要购买实例必须加上该条
                  "Effect": "Allow",
                  "Action": "bss:PayOrder",
                  "Resource": "acs:hologram:cn-<region>:<账号ID>:instance/*"
              },
              { //展示实例列表
                  "Effect": "Allow",
                  "Action": "hologram:ListInstances",
                  "Resource": "acs:hologram:cn-<region>:<账号ID>:instance/*"
              },
              {  //暂停实例
                  "Effect": "Allow",
                  "Action": "hologram:StopInstance",
                  "Resource": "acs:hologram:cn-<region>:<账号ID>:instance/*"
              },
              {  //恢复实例
                  "Effect": "Allow",
                  "Action": "hologram:ResumeInstance",
                  "Resource": "acs:hologram:cn-<region>:<账号ID>:instance/*"
              },
              {  //展示实例监控告警
                  "Effect": "Allow",
                  "Action": "cms:DescribeMetricList", "cms:QueryMetricList"
                  "Resource": "acs:hologram:cn-<region>:<账号ID>:instance/*"
              },
              {  //修改网络类型
                  "Effect": "Allow",
                  "Action": "hologram:UpdateInstanceNetworkType",
                  "Resource": "acs:hologram:cn-<region>:<账号ID>:instance/*"
              }
          ],
          "Version": "1"
      }

    单击继续编辑基本信息,输入基本名称备注

  5. 单击确定

  6. 单击完成

为RAM账号授权实例开发权限

RAM用户必须经过主账号授予实例的开发权限后,才能在Hologres实例中进行数据开发。您可以登录Hologres管控台,访问HoloWeb,在用户管理页面新增用户并授予权限。下述内容以简单权限模型为例,为您展示如何为RAM用户授权实例开发权限。

说明

不同权限模型支持使用SQL语句为RAM用户授权,具体操作方法请参见如下。

  1. 使用主账号登录阿里云官网

  2. 登录Hologres管理控制台,单击实例列表页的目标实例名称,进入实例详情页。

  3. 在实例详情页的左侧导航栏,单击账号管理

  4. 用户管理页面,单击新增用户

  5. 在弹出的新增用户对话框中,配置如下参数。

    新增用户

    参数

    描述

    选择组织成员

    选择需要授权的RAM用户,将其创建至实例中。

    用户类型

    • 实例超级管理员(superuser):拥有实例内所有操作的权限。

    • 普通用户:默认无实例的操作权限。

      您需要授予RAM用户具体的操作权限后,RAM用户才能连接Hologres实例并使用。

  6. 可选:如您新增的用户是普通用户(Normal)类型,则需进一步为用户授权更多权限,具体操作如下。

    1. 在实例详情页的左侧导航栏,单击数据库管理

    2. DB授权页面,单击目标数据库操作列的用户授权

      用户授权

      说明

      如您当前列表没有数据库,您可单击右上角新增数据库

    3. 进入数据库的权限管理页面,单击新增授权

    4. 在弹出的新增授权对话框中,配置如下参数。

      新增授权

      参数

      描述

      用户

      需要授权的RAM用户。

      用户组

      • Admin:可以访问或操作数据库的所有对象,以及管理数据库的用户组。

      • Developer:可以使用DDL语句创建、删除或修改数据库的对象,以及读写数据库对象中的数据。

      • Writer:读写数据库对象中的数据。

      • Viewer:拥有所有数据库对象的只读权限。

  7. 单击确认,完成操作。

后续步骤

完成授权的RAM用户可以连接Hologres实例并进行相关开发。您可以在Hologres管控台使用HoloWeb进行可视化开发,更多关于HoloWeb的操作,详情请参见连接HoloWeb