配置访问授权(全局配置)
场景描述
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用户的管理员账号进行委托授权。
添加授权
- 登录ModelArts管理控制台,在左侧导航栏选择“全局配置”,进入“全局配置”页面。
- 单击“添加授权”,进入“访问授权”配置页面,根据参数说明进行配置。
表1 参数说明 参数
说明
“授权对象类型”
包括IAM子用户、联邦用户、委托用户和所有用户。
“授权对象”
“授权对象类型”选择“所有用户”时不涉及此参数。
- IAM子用户:选择指定的IAM子用户,给指定的IAM子用户配置委托授权。
图1 选择IAM子用户
- 联邦用户:输入联邦用户的用户名或用户ID。
图2 选择联邦用户
- 委托用户:选择委托名称。使用账号A创建一个权限委托,在此处将该委托授权给账号B拥有的委托。在使用账号B登录控制台时,可以在控制台右上角的个人账号切换角色到账号A,使用账号A的委托权限。
图3 委托用户切换角色
“委托选择”
- 已有委托:列表中如果已有委托选项,则直接选择一个可用的委托为上述选择的用户授权。单击委托名称查看该委托的权限详情。
- 新增委托:如果没有委托可选,可以在新增委托中创建委托权限。对于首次使用ModelArts的用户,需要新增委托。
“新增委托 > 委托名称”
系统自动创建委托名称,用户可以手动修改。
“新增委托 > 授权方式”
- 角色授权:IAM最初提供的一种根据用户的工作职能定义权限的粗粒度授权机制。该机制以服务为粒度,提供有限的服务相关角色用于授权。由于华为云各服务之间存在业务依赖关系,因此给用户授予角色时,可能需要一并授予依赖的其他角色,才能正确完成业务。角色并不能满足用户对精细化授权的要求,无法完全达到企业对权限最小化的安全管控要求。
- 策略授权:IAM最新提供的一种细粒度授权的能力,可以精确到具体服务的操作、资源以及请求条件等。基于策略的授权是一种更加灵活的授权方式,能够满足企业对权限最小化的安全管控要求。
角色与策略相关介绍请参考权限基本概念。
“新增委托 > 权限配置 > 普通用户”
普通用户包括用户使用ModelArts完成AI开发的所有必要功能权限,如数据的访问、训练任务的创建和管理等。一般用户选择此项即可。
可以单击“查看权限列表”,查看普通用户权限。
“新增委托 > 权限配置 > 自定义”
如用户有精细化权限管理的需求,可使用自定义模式灵活按需配置ModelArts创建的委托权限。可以根据实际需要在权限列表中勾选要配置的权限。
- IAM子用户:选择指定的IAM子用户,给指定的IAM子用户配置委托授权。
- 然后勾选“我已经详细阅读并同意《ModelArts服务声明》”,单击“创建”,即可完成委托配置。
查看授权的权限列表
用户可以在“全局配置”页面的授权列表中,查看已经配置的委托授权内容。单击授权内容列的“查看权限”,可以查看该授权的权限详情。
修改授权权限范围
- 在查看授权详情时,如果想要修改授权范围,可以在权限详情页单击“去IAM修改委托权限”。
图6 去IAM修改委托权限
- 进入IAM控制台的委托页面。找到对应的委托信息,修改该委托的基本信息,主要是持续时间。“持续时间”可以选择永久、1天,或者自定义天数,例如30天。
图7 手动创建的委托
- 在授权记录页面单击“授权”,勾选要配置的策略,单击下一步设置最小授权范围,单击“确定”,完成授权修改。
设置最小授权范围时,可以选择指定的区域,也可以选择所有区域,即不设置范围。
删除授权
为了更好的管理您的授权,您可以删除某一IAM用户的授权,也可批量清空所有用户的授权。
- 删除某一用户的授权
在“全局配置”页面,展示当前账号下为其IAM用户配置的授权列表,针对某一用户,您可以单击“操作”列的“删除”,输入“DELETE”后单击“确认”,可删除此用户的授权。删除生效后,此用户将无法继续使用ModelArts的相关功能。
- 批量清空所有授权
在“全局配置”页面,单击授权列表上方的“清空授权”,输入“DELETE”后单击“确认”,可删除当前账号下的所有授权。删除生效后,此账号及其所有IAM子用户将无法继续使用ModelArts的相关功能。
常见问题
- 首次使用ModelArts如何配置授权?
直接选择“新增委托”中的“普通用户”权限即可,普通用户包括用户使用ModelArts完成AI开发的所有必要功能权限,如数据的访问、训练任务的创建和管理等。一般用户选择此项即可。
- 访问密钥授权哪去了?
全局配置中使用密钥委托授权功能已下线,对于之前使用访问密钥授权的老用户,建议修改为委托授权方式。在全局配置页面,一键“清空授权”,然后再使用委托授权完成授权配置。
- 如何获取访问密钥AK/SK?
如果在其他功能(例如PyCharmtoolKit/VSCode登录,访问在线服务等)中使用到访问密钥AK/SK认证,获取AK/SK方式请参考如何获取访问密钥章节。
- 如何删除已有委托列表下面的委托名称?
图8 已有委托
需要前往统一身份认证服务IAM控制台的委托页面删除。
图9 统一身份认证
- 进入ModelArts控制台的某个页面时,为什么会提示权限不足?