项目级别租户资源访问控制

租户资源(包括外部数据源、网络连接、自定义镜像及配额组)的权限均由租户管理员通过RAM Policy控制。用户在项目中使用归属项目的对象(包括Schema、Table、Role、Instance、Resource、Function、View等),权限由项目管理员通过MaxCompute内的授权方案控制。租户资源对象可以跨项目使用,如果租户资源的管理者不希望某个项目使用其创建的租户资源,则可以通过开启项目级别租户资源访问控制来制定租户资源和项目的授权关系。

使用说明

对于租户对象是否有权被项目使用,以及在项目中使用权限的再分配,有如下两种安全管理模式:

  • 模式一:开启项目级别租户资源访问控制

    说明

    目前此功能仅提供预览,暂不支持开启检查。

    租户资源创建者可以通过设置资源与项目的挂载关系,指定哪些项目可以使用其创建的资源,再由项目管理员通过授权方案对项目内部的用户授予使用资源的权限。

    开启项目级别租户资源访问控制,即可以指定某些项目是否能够使用资源管理者的租户对象。用户可以按照安全管理能力要求决定使用哪种模式。目前暂无租户管理员强制所有项目都开启项目级别租户资源访问控制的开关,如果需要,请通过工单联系MaxCompute技术支持。

    重要

    所有的租户资源对象,一起受项目级别租户资源访问控制开关的控制,打开开关则对所有租户资源的所有对象进行权限检查。

  • 模式二:不开启项目级别租户资源访问控制

    任何项目内有权限运行任务的用户,都可以使用任务相关的租户资源。

开启项目级别租户资源访问控制

开启项目级别租户资源访问控制,需要执行如下操作:

  1. 进行租户对象与项目的挂载关系配置。

    单击租户对象(例如外部数据源)操作列的挂载项目,选择挂载的项目,单击确定,完成挂载关系的配置。

    挂载完成的租户对象查看方法:

    1. 登录MaxCompute控制台,在左上角选择地域。

    2. 单击目标Project操作列的管理

    3. 参数配置页签的权限属性区域,单击查看项目绑定租户资源,即可查看项目与网络连接、外部数据源、镜像及配额组的绑定情况。

  2. 对于已挂载到项目上的租户对象,进行Policy配置。详情请参见Policy权限控制

    1. 在MaxCompute控制台的左侧导航栏选择工作区 > 项目管理,单击目标Project操作列的管理

    2. 项目配置页面的角色权限页签,单击目标角色操作列的编辑角色

    3. 在编辑角色对话框中,选择授权方式Policy

    4. Policy授权脚本框中修改角色Policy。

      示例:以计算Quota为例,项目project_a内配置用户a可以使用Quota 500 CU的Policy如下:

      {
          "Statement":[
              {
                  "Action":[
                      "odps:Usage"
                  ],
                  "Effect":"Allow",
                  "Resource":[
                      "acs:odps:*:regions/*/quotas/500cu"
                  ]
              }
          ],
          "Version":"1"
      }

      当用户a具有project_a内租户资源使用权限后,才可以在开启项目级别租户资源访问控制模式下,进行用户/角色粒度的租户资源使用权限控制。

  3. 项目开启租户对象检查开关(即开启项目级别租户资源访问控制)。

    说明

    目前此功能仅提供预览,暂不支持开启检查。

    1. 在MaxCompute控制台的工作区 > 项目管理页面,单击目标Project操作列的管理

    2. 参数配置页签的权限属性区域,单击编辑

    3. 打开开启项目级别租户资源访问控制开关,并单击提交

      重要

      开启后,项目将立即对正在使用和后续使用的租户对象(包括外部数据源、网络连接、自定义镜像、配额组)进行使用权限校验。因此在没有完全完成租户对象与项目的挂载关系配置,以及Policy授权之前,请勿轻易打开检查开关。权限缺失可能会造成依赖权限的任务失败。

相关文档

更多租户资源的信息请参见: