CCE权限管理是在统一身份认证服务(IAM)与Kubernetes的角色访问控制(RBAC)的能力基础上,打造的细粒度权限管理功能,支持基于统一身份认证(IAM)的细粒度权限控制和IAM Token认证,支持集群级别、命名空间级别的权限控制,帮助用户便捷灵活的对租户下的IAM用户、用户组设定不同的操作权限。
如果您需要对已购买的CCE集群及相关资源进行精细的权限管理,例如限制不同部门的员工拥有部门内资源的细粒度权限,您可以使用CCE权限管理提供的增强能力进行多维度的权限管理。
本章节将介绍CCE权限管理机制及其涉及到的基本概念。如果当前帐号已经能满足您的要求,您可以跳过本章节,不影响您使用CCE服务的其它功能。
CCE的权限管理包括“集群权限”和“命名空间权限”两种能力,能够从集群和命名空间层面对用户组或用户进行细粒度授权,具体解释如下:
- 集群权限:是基于IAM系统策略的授权,可以通过用户组功能实现IAM用户的授权。用户组是用户的集合,通过集群权限设置可以让某些用户组操作集群(如创建/删除集群、节点、节点池、模板、插件等),而让某些用户组仅能查看集群。
集群权限涉及CCE非Kubernetes API,支持IAM细粒度策略、企业项目管理相关能力。
- 命名空间权限:是基于Kubernetes RBAC能力的授权,通过权限设置可以让不同的用户或用户组拥有操作不同Kubernetes资源的权限。同时CCE基于开源能力进行了增强,可以支持基于IAM用户或用户组粒度进行RBAC授权、IAM token直接访问API进行RBAC认证鉴权。
命名空间权限涉及CCE Kubernetes API,基于Kubernetes RBAC能力进行增强,支持对接IAM用户/用户组进行授权和认证鉴权,但与IAM细粒度策略独立。
注意:“集群权限”仅针对与集群相关的资源(如创建/删除集群、节点、节点池、模板、插件等)有效,您必须确保同时配置了“命名空间权限”,才能有操作Kubernetes资源(如工作负载、Service等)的权限。
统一身份认证(Identity and Access Management,简称IAM)是提供权限管理的基础服务,可以帮助您安全地控制服务和资源的访问权限。
您注册后,系统自动创建帐号,帐号是资源的归属以及使用计费的主体,对其所拥有的资源具有完全控制权限,可以访问所有的云服务。
如果您在购买了多种资源,例如弹性云主机、云硬盘、裸金属服务器等,您的团队或应用程序需要使用您在中的资源,您可以使用IAM的用户管理功能,给员工或应用程序创建IAM用户,并授予IAM用户刚好能完成工作所需的权限,新创建的IAM用户可以使用自己单独的用户名和密码登录。IAM用户的作用是多用户协同操作同一帐号时,避免分享帐号的密码。
Kubernetes基于角色的访问控制(Role-Based Access Control,即”RBAC”)使用”rbac.authorization.k8s.io” API Group实现授权决策,允许管理员通过Kubernetes API动态配置策略。详情请参见命名空间权限。