为RAM用户授权

为确保RAM用户能正常使用EMR Serverless StarRocks控制台功能,您需要使用阿里云账号登录访问控制RAM(Resource Access Management)控制台,授予RAM用户相应的权限。

背景信息

访问控制RAM是阿里云提供的资源访问控制服务,详情请参见什么是访问控制。在EMR Serverless StarRocks中,RAM的典型使用场景如下:

  • 用户:如果您购买了EMR Serverless StarRocks实例,您的组织里有多个用户(例如运维、开发或数据分析)需要使用这些实例,您可以创建一个策略允许部分用户使用这些实例。避免将同一个AccessKey泄露给多人。

  • 用户组:您可以创建多个用户组,并授予不同的权限策略,实现批量管理用户权限。用户组授权过程与授权用户的过程相同。

权限策略/角色

  • 系统策略/角色

    • EMR Serverless StarRocks使用的策略如下。

      策略名称

      描述

      AliyunEMRStarRocksFullAccess

      EMR Serverless StarRocks管理员权限,包括所有操作和功能。

      AliyunEMRStarRocksReadOnlyAccess

      EMR Serverless StarRocks只读权限。只有查看实例列表、查询实例详情的权限,没有创建、更新、修改实例的权限。

      AliyunBSSOrderAccess

      在费用中心(BSS)查看、支付以及取消订单的权限。在管理控制台升级或降级实例的配置,以及为实例续费。

      AliyunSLBFullAccess

      管理负载均衡服务(SLB)的权限。如果您要配置StarRocks公网或内网白名单,则需要拥有该权限才能对SLB进行操作和管理。

    • EMR Serverless StarRocks使用的角色如下。

      角色名称

      描述

      AliyunEMRStarRocksAccessingOSSRole

      EMR Serverless StarRocks使用此角色来访问您在OSS产品中的数据。

  • 自定义策略

    如果您熟悉阿里云各种云服务API,并且需要精细化的权限控制策略,可参见权限策略语法和结构,创建自定义策略。创建时,您需要精准地设计权限策略脚本。

操作步骤

  1. 使用RAM管理员登录RAM控制台

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

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

    image

    您也可以选中多个RAM用户,单击用户列表下方的添加权限,为RAM用户批量授权。

  4. 新增授权面板,根据需求选择授权范围、授权主体和权限,为RAM用户添加权限。

    参数

    描述

    资源范围

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

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

    授权主体

    需要授权的RAM用户。

    权限策略

    系统策略中,输入StarRocks搜索EMR Serverless StarRocks相关权限策略,然后单击需要授予RAM用户的权限策略,选择该权限。各权限策略的详细说明,请参见权限策略/角色

  5. 单击确认新增授权

    完成授权后,权限立即生效,您可以使用授权的RAM用户登录EMR Serverless控制台,进行相关操作。

常见问题

为什么RAM用户突然无法查看实例列表,提示需要授权?

  • 问题描述:使用RAM用户登录后,无法查看实例列表,系统提示需要授权。尽管RAM用户已绑定AliyunServiceRoleForEMRStarRocks角色,且权限策略未发生变更,但功能仍不可用。

  • 问题原因

    • 资源组级别限制。

      RAM用户当前绑定的AliyunEMRStarRocksReadOnlyAccess策略是以资源组级别进行授权的,而新鉴权逻辑要求该策略为账号级别

    • 服务关联角色权限不足。

      RAM用户虽然绑定了AliyunServiceRoleForEMRStarRocks角色,但该角色的权限范围未覆盖ram:GetRole接口的账号级别鉴权需求。

  • 解决方案

    • 调整现有策略为账号级别。

    • 新增账号级别的自定义策略。

      如果无法调整现有策略,可以为RAM用户额外绑定一个账号级别的AliyunServiceRoleForEMRStarRocks策略,具体内容如下。

      {
        "Action": ["ram:GetRole"],
        "Resource": "acs:ram:*:*:role/AliyunServiceRoleForEMRStarRocks",
        "Effect": "Allow"
      }