文档首页/ AI开发平台ModelArts/ 准备工作/ 配置访问授权(全局配置)
更新时间:2024-04-30 GMT+08:00

配置访问授权(全局配置)

场景描述

ModelArts与其他服务类似,对外暴露的每个功能,都通过IAM的权限来进行控制。比如,用户(此处指IAM子用户,而非租户)希望在ModelArts创建训练作业,则该用户必须拥有 "modelarts:trainJob:create" 的权限才可以完成操作(无论界面操作还是API调用)。

而ModelArts还有一个特殊的地方在于,为了完成AI计算的各种操作,AI平台在任务执行过程中需要访问用户的其他服务,典型的就是训练过程中,需要访问OBS读取用户的训练数据。在这个过程中,就出现了ModelArts“代表”用户去访问其他云服务的情形。从安全角度出发,ModelArts代表用户访问任何云服务之前,均需要先获得用户的授权,而这个动作就是一个“委托”的过程。用户授权ModelArts再代表自己访问特定的云服务,以完成其在ModelArts平台上执行的AI计算任务。

ModelArts提供了一键式自动授权功能,用户可以在ModelArts的全局配置功能中,快速完成委托授权,由ModelArts为用户自动创建委托并配置到ModelArts服务中。

一键式自动授权方式为保证使用业务过程中有足够的权限,基于依赖服务的预置系统策略指定授权范围,创建的委托的权限比较大,基本覆盖了依赖服务的全部权限。如果您需要对委托授权的权限范围进行精确控制,请使用定制化委托授权。更多权限控制的内容请参见权限管理章节。

本章节主要介绍一键式自动授权方式。一键式自动授权方式支持给IAM子用户、联邦用户(虚拟IAM用户)、委托用户和所有用户授权。

约束与限制

  • 华为云账号
    • 只有华为云账号可以使用委托授权,可以为当前账号授权,也可以为当前账号下的所有IAM用户授权。
    • 多个IAM用户或账号,可使用同一个委托。
    • 一个账号下,最多可创建50个委托。
    • 对于首次使用ModelArts的新用户,请直接新增委托即可。一般用户新增普通用户权限即可满足使用要求。如果有精细化权限管理的需求,可以自定义权限按需设置。
  • IAM用户
    • 如果已获得委托授权,则可以在全局配置页面中查看到已获得的委托授权信息。
    • 如果未获得委托授权,当打开“访问授权”页面时,ModelArts会提醒您当前用户未配置授权,需联系此IAM用户的管理员账号进行委托授权。

添加授权

  1. 登录ModelArts管理控制台,在左侧导航栏选择“全局配置”,进入“全局配置”页面。
  2. 单击“添加授权”,进入“访问授权”配置页面,根据参数说明进行配置。
    表1 参数说明

    参数

    说明

    “授权对象类型”

    包括IAM子用户、联邦用户、委托用户和所有用户。

    • IAM子用户:由主账号在IAM中创建的用户,是服务的使用人员,具有独立的身份凭证(密码和访问密钥),根据账号授予的权限使用资源。IAM子用户相关介绍请参见IAM用户介绍
    • 联邦用户:又称企业虚拟用户。联邦用户相关介绍请参见联邦身份认证
    • 委托用户:IAM中创建的一个委托。IAM创建委托相关介绍请参见创建委托
    • 所有用户:该选项表示会将委托的权限授权到当前账号下的所有子账号、包括未来创建的子账号,授权范围较大,需谨慎使用。个人用户选择“所有用户”即可。

    “授权对象”

    “授权对象类型”选择“所有用户”时不涉及此参数。

    • IAM子用户:选择指定的IAM子用户,给指定的IAM子用户配置委托授权。
      图1 选择IAM子用户
    • 联邦用户:输入联邦用户的用户名或用户ID。
      图2 选择联邦用户
    • 委托用户:选择委托名称。使用账号A创建一个权限委托,在此处将该委托授权给账号B拥有的委托。在使用账号B登录控制台时,可以在控制台右上角的个人账号切换角色到账号A,使用账号A的委托权限。
      图3 委托用户切换角色

    “委托选择”

    • 已有委托:列表中如果已有委托选项,则直接选择一个可用的委托为上述选择的用户授权。单击委托名称查看该委托的权限详情。
    • 新增委托:如果没有委托可选,可以在新增委托中创建委托权限。对于首次使用ModelArts的用户,需要新增委托。

    “新增委托 > 委托名称”

    系统自动创建委托名称,用户可以手动修改。

    “新增委托 > 授权方式”

    • 角色授权:IAM最初提供的一种根据用户的工作职能定义权限的粗粒度授权机制。该机制以服务为粒度,提供有限的服务相关角色用于授权。由于华为云各服务之间存在业务依赖关系,因此给用户授予角色时,可能需要一并授予依赖的其他角色,才能正确完成业务。角色并不能满足用户对精细化授权的要求,无法完全达到企业对权限最小化的安全管控要求。
    • 策略授权:IAM最新提供的一种细粒度授权的能力,可以精确到具体服务的操作、资源以及请求条件等。基于策略的授权是一种更加灵活的授权方式,能够满足企业对权限最小化的安全管控要求。

    角色与策略相关介绍请参考权限基本概念

    “新增委托 > 权限配置 > 普通用户”

    普通用户包括用户使用ModelArts完成AI开发的所有必要功能权限,如数据的访问、训练任务的创建和管理等。一般用户选择此项即可。

    可以单击“查看权限列表”,查看普通用户权限。

    “新增委托 > 权限配置 > 自定义”

    如用户有精细化权限管理的需求,可使用自定义模式灵活按需配置ModelArts创建的委托权限。可以根据实际需要在权限列表中勾选要配置的权限。

  3. 然后勾选“我已经详细阅读并同意《ModelArts服务声明》”,单击“创建”,即可完成委托配置。

查看授权的权限列表

用户可以在“全局配置”页面的授权列表中,查看已经配置的委托授权内容。单击授权内容列的“查看权限”,可以查看该授权的权限详情。

图4 查看权限
图5 普通用户权限列表

修改授权权限范围

  1. 在查看授权详情时,如果想要修改授权范围,可以在权限详情页单击“去IAM修改委托权限”
    图6 去IAM修改委托权限
  2. 进入IAM控制台的委托页面。找到对应的委托信息,修改该委托的基本信息,主要是持续时间。“持续时间”可以选择永久、1天,或者自定义天数,例如30天。
    图7 手动创建的委托
  3. 在授权记录页面单击“授权”,勾选要配置的策略,单击下一步设置最小授权范围,单击“确定”,完成授权修改。

    设置最小授权范围时,可以选择指定的区域,也可以选择所有区域,即不设置范围。

删除授权

为了更好的管理您的授权,您可以删除某一IAM用户的授权,也可批量清空所有用户的授权。

  • 删除某一用户的授权

    “全局配置”页面,展示当前账号下为其IAM用户配置的授权列表,针对某一用户,您可以单击“操作”列的“删除”,输入“DELETE”后单击“确认”,可删除此用户的授权。删除生效后,此用户将无法继续使用ModelArts的相关功能。

  • 批量清空所有授权

    “全局配置”页面,单击授权列表上方的“清空授权”,输入“DELETE”后单击“确认”,可删除当前账号下的所有授权。删除生效后,此账号及其所有IAM子用户将无法继续使用ModelArts的相关功能。

常见问题

  1. 首次使用ModelArts如何配置授权?

    直接选择“新增委托”中的“普通用户”权限即可,普通用户包括用户使用ModelArts完成AI开发的所有必要功能权限,如数据的访问、训练任务的创建和管理等。一般用户选择此项即可。

  2. 访问密钥授权哪去了?

    全局配置中使用密钥委托授权功能已下线,对于之前使用访问密钥授权的老用户,建议修改为委托授权方式。在全局配置页面,一键“清空授权”,然后再使用委托授权完成授权配置。

  3. 如何获取访问密钥AK/SK?

    如果在其他功能(例如PyCharmtoolKit/VSCode登录,访问在线服务等)中使用到访问密钥AK/SK认证,获取AK/SK方式请参考如何获取访问密钥章节。

  4. 如何删除已有委托列表下面的委托名称?
    图8 已有委托

    需要前往统一身份认证服务IAM控制台的委托页面删除。

    图9 统一身份认证
  5. 进入ModelArts控制台的某个页面时,为什么会提示权限不足?

    可能原因是用户委托权限配置不足或模块能力升级,需要更新授权信息。根据界面操作提示追加授权即可。