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