UCS权限概述
UCS在统一身份认证服务(IAM)能力基础上,为用户提供细粒度的权限管理功能,帮助用户灵活便捷地对租户下的IAM用户设置不同的UCS资源权限,结合权限策略和舰队设计,可实现企业不同部门或项目之间的权限隔离。
UCS权限类型
UCS权限管理是在IAM与Kubernetes的角色访问控制(RBAC)的能力基础上,打造的细粒度权限管理功能。支持UCS服务资源权限、集群中Kubernetes资源权限两种维度的权限控制,这两种权限针对的是不同类型的资源,在授权机制上也存在一些差异,具体如下:
- UCS服务资源权限:是基于IAM系统策略的授权。UCS服务资源包括容器舰队、集群、联邦实例等等,管理员可以针对用户的角色(如开发、运维)进行差异化授权,精细控制他们对UCS资源的使用范围。
- 集群中Kubernetes资源权限:是基于Kubernetes RBAC能力的授权,可授予针对集群内Kubernetes资源对象的细化权限,通过权限设置可以让不同的用户有操作不同Kubernetes资源对象(如工作负载、任务、服务等Kubernetes原生资源)的权限。
UCS的权限可以从使用的阶段来看,第一个阶段是创建和管理基础设施资源的权限,也就是拥有创建容器舰队、注册集群、开通集群联邦等操作的权限;第二个阶段是使用集群Kubernetes资源对象(如工作负载、服务等)的权限;第三个阶段是监控运维基础设施资源以及Kubernetes资源的权限。其中,第一个和第三个阶段属于UCS服务资源权限,在IAM控制台按照IAM系统策略的方式授予;第二个阶段属于集群中Kubernetes资源权限,由管理员在UCS控制台“权限管理”页面创建,并在“容器舰队”页面完成权限与特定舰队或集群的关联。
权限管理流程
新建IAM用户的权限管理主要流程可参见权限管理流程。
基本概念说明
UCS权限管理包含如下基本概念,其关系如图3所示。
- 用户:由管理员账号在统一身份认证服务(IAM)中创建的用户,是云服务的使用人员,具有独立的身份凭证(密码和访问密钥),根据账号授予的权限使用资源。
- 用户组:用户组是用户的集合,IAM可以通过用户组功能实现用户的授权。您创建的IAM用户,加入特定用户组后,将具备对应用户组的权限。例如,管理员为用户组授予UCS FullAccess权限后,其中的用户将具备UCS服务的管理员权限。当某个用户加入多个用户组时,此用户同时拥有多个用户组的权限,即多个用户组权限的全集。
- 权限:由UCS管理员定义的某个或某些用户对集群中Kubernetes资源的操作范围,UCS预置了几个常用权限,包括管理员权限、只读权限、开发权限,同时也支持用户自定义权限。更多介绍请参见创建权限。
- 舰队:舰队是多个集群的集合,管理员可以使用舰队来实现关联集群的分类。舰队还可以实现多集群的统一管理,包括权限管理、安全策略、配置管理以及多集群编排等统一管理的能力。舰队与权限是多对多的关系,即一个权限可以关联多个舰队,一个舰队也可以关联多个权限。
约束与限制
- 本地集群支持使用华为云IAM Token访问Kube APIServer;同时,不对UCS的系统策略(UCS FullAccess、UCS CommonOperations、UCS CIAOperations和UCS ReadOnlyAccess)进行识别。
- 对于多云集群,目前只有华为云账号可以执行集群注册的操作,暂不支持IAM系统策略。