身份认证与访问控制
身份认证
用户访问ModelArts的方式有多种,包括ModelArts控制台、API、SDK,无论访问方式封装成何种形式,其本质都是通过ModelArts提供的REST风格的API接口进行请求。
ModelArts的接口均需要进行认证鉴权以此来判断是否通过身份认证。通过控制台发出的请求需要通过Token认证鉴权,调用API接口认证鉴权支持Token认证和AK/SK认证两种方式。
访问控制
ModelArts作为一个完备的AI开发平台,支持用户对其进行细粒度的权限配置,以达到精细化资源、权限管理之目的。为了支持客户对ModelArts的权限做精细化控制,提供了3个方面的能力来支撑,分别是:IAM权限控制、委托授权和工作空间。
- IAM权限控制
用户使用ModelArts的任何功能,都需要通过IAM权限体系进行正确的权限授权。例如:用户希望在ModelArts创建训练作业,则该用户必须拥有 "modelarts:trainJob:create" 的权限才可以完成操作(无论界面操作还是API调用)。
管理员新创建的用户在没有配置细粒度授权策略时,默认具有ModelArts所有权限。如果需要控制用户的详细权限,管理员可以通过IAM为用户组配置细粒度授权策略,使用户获得策略定义的权限,操作对应云服务的资源。基于策略授权时,管理员可以按ModelArts的资源类型选择授权范围。详细的资源权限项可以参见API参考中的权限策略和授权项章节。
- 委托授权
为了完成AI计算的各种操作,ModelArts在AI计算任务执行过程中需要访问用户的其他服务,例如训练过程中,需要访问OBS读取用户的训练数据。在这个过程中,就出现了ModelArts“代表”用户去访问其他云服务的情形。从安全角度出发,ModelArts代表用户访问任何云服务之前,均需要先获得用户的授权,而这个动作就是一个“委托”的过程。用户授权ModelArts再代表自己访问特定的云服务,以完成其在ModelArts平台上执行的AI计算任务。
ModelArts服务不会保存用户的Token认证凭据,在后台作业中操作用户的资源(如OBS桶)前,需要用户通过IAM委托向ModelArts显式授权,ModelArts在需要时使用用户的委托获取临时认证凭据用于操作用户资源,具体配置见配置访问授权章节。
- 工作空间
工作空间是ModelArts面向已经开通企业项目的企业客户提供的一个高阶功能,用于进一步将用户的资源划分在多个逻辑隔离的空间中,并支持以空间维度进行访问的权限限定。
在开通工作空间后,系统会默认为您创建一个“default”空间,您之前所创建的所有资源,均在该空间下。当您创建新的工作空间之后,相当于您拥有了一个新的“ModelArts分身”,您可以通过菜单栏的左上角进行工作空间的切换,不同工作空间中的工作互不影响。ModelArts的用户需要为不同的业务目标开发算法、管理和部署模型,此时可以创建多个工作空间,把不同应用开发过程的输出内容划分到不同工作空间中,便于管理和使用。
远程接入管理
使用本地IDE远程SSH连接ModelArts的Notebook开发环境时,需要用到密钥对进行鉴权认证。同时支持白名单访问控制,即设置允许远程接入访问这个Notebook的IP地址。