You need to enable JavaScript to run this app.
导航

授权管理概述

最近更新时间2023.12.13 19:07:10

首次发布时间2023.07.20 10:49:30

分布式云原生平台的用户授权包括 IAM (Identity and Access Management,基于身份的权限控制)授权和联邦集群的 RBAC (Role-Based Access Control ,基于角色的权限控制)授权。

IAM 授权

Identity and Access Management(IAM)是基于身份的权限控制,系统包含了不同产品模块的 IAM 预设策略。在多用户协同管理资源的场景下,IAM 子用户操作分布式云原生平台资源时,需要授予相应的权限和策略。

说明

分布式云原生平台为子用户配置 IAM 权限的方法参见:配置 IAM 权限

系统预设策略

系统预设策略统一由火山引擎创建,您只能使用不能修改,策略的版本更新由火山引擎维护,分布式云原生平台提供 3 种系统预设策略。

策略角色类型策略描述

DCPFullAccess

管理员

分布式云原生平台(DCP)的全部管理权限,以及关联资源的只读权限。

  • 拥有 DCP 内所有资源的全部读写权限,允许对 DCP 内的所有资源进行全生命周期管理,例如:纳管容器集群、创建/删除主控实例、使用 Yaml 分发资源等。

  • 拥有私有网络(VPC)及其子网的只读权限,允许查看所有 VPC 及其子网等信息。

  • 拥有访问控制中的只读权限,允许查看所有的 IAM 用户信息。

DCPMemberAccess普通用户分布式云原生平台(DCP)的普通用户权限,拥有联邦集群的只读权限和资源分发的读写权限。允许查看容器集群、主控实例、成员集群等相关信息,允许使用 Yaml 分发资源,以及分发资源的全生命周期管理。
DCPReadonlyAccess只读用户分布式云原生平台(DCP)的只读访问权限,仅可以查看所有集群和资源。

用户自定义策略

自定义策略是由用户创建的更精细化描述资源管理的权限集合,可以灵活满足用户的差异化权限管理需求,用户可自主创建、更新和删除策略,以及维护策略的版本。自定义策略通过 JSON 格式的 PolicyDocument 表达,由一系列 Statement 组成,Statement 由 Effect、Action、Resource 组成,详细写作语法参见:策略语法

以下是分布式云原生平台中普通用户权限的策略示例,具体自定义策略可按需配置。

{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "dcp:Get*",
        "dcp:List*",
        "dcp:Check*",
        "dcp:CreateResourceByYaml",
        "dcp:UpdateResourceByYaml",
        "dcp:DeleteResource"
      ],
      "Resource": [
        "*"
      ]
    }
  ]
}

RBAC 授权

Role-Based Access Control (RBAC) 是基于角色的权限控制,联邦集群中提供 RBAC 授权功能,允许基主控实例或容器集群对 IAM 子用户进行 Kubernetes 集群资源授权。

  • 主控实例 RBAC 授权:属于联邦授权,是分布式云原生平台授予主控实例的 RBAC 权限。
  • 容器集群 RBAC 授权:属于集群授权,是分布式云原生平台授予注册集群的 RBAC 权限。属于集群纳管到分布式云原生平台后授予的 RBAC 权限,归分布式云原生平台管理。
  • VKE 集群 RBAC 授权:属于集群授权,是火山引擎容器服务授予 VKE 集群的 RBAC 权限。属于集群纳管到分布式云原生平台前授予的 RBAC 权限,不归分布式云原生平台管理。

RBAC 权限生效原则

  • 联邦授权和集群授权独立生效,互不影响,授权用户主控实例的 RBAC 访问权限将同步授予所有成员集群。
  • 集群授权同时存在,授权结果取并集。例如:容器集群 RBAC 授权、VKE 集群 RBAC 授权同时存在时,RBAC 授权结果取并集。

主控实例 RBAC 角色

分布式云原生平台基于主控实例预置 4 种 RBAC 角色,详细描述如下。

说明

分布式云原生平台为子用户配置主控实例 RBAC 权限的方法参见:配置主控实例 RBAC 权限

角色权限范围角色描述
集群管理员全部命名空间拥有主控实例及其管理资源的所有权限,允许对当前主控实例内全部命名空间中的分发资源和分发策略进行读写操作。

空间管理员

指定命名空间

允许对当前主控实例内指定命名空间中的分发资源和分发策略进行读写操作。除此之外,拥有部署策略(集群级)、存储类、存储卷、命名空间、资源配额、资源限制的只读权限。

开发人员

指定命名空间

允许对当前主控实例内指定命名空间中的分发资源进行读写,以及对分发策略进行只读访问。除此之外,拥有部署策略(集群级)、存储类、存储卷、命名空间、资源配额、资源限制的只读权限。

只读用户

指定命名空间

允许对当前主控实例内指定命名空间中的分发资源和分发策略进行只读访问。除此之外,拥有对部署策略(集群级)、存储类、存储卷、命名空间、资源配额、资源限制的只读权限。

容器集群 RBAC 角色

分布式云原生平台基于容器集群预置 4 种 RBAC 角色,除此之外,还支持使用自定义角色,详细描述如下。

说明

分布式云原生平台为子用户配置容器集群 RBAC 权限的方法参见:配置容器集群 RBAC 权限

角色权限范围角色描述
集群管理员全部命名空间允许对集群中以及全部命名空间中的全部资源进行读写,拥有对集群节点、存储类、存储卷、命名空间、资源配额、资源限制的读写权限。
运维管理员全部命名空间允许对全部命名空间中控制台可见 Kubernetes 资源进行读写,拥有对集群节点、存储类、存储卷、命名空间、资源配额、资源限制的读写权限。

开发者

指定命名空间

允许对指定命名空间中控制台可见 Kubernetes 资源进行读写,拥有对集群节点、存储类、存储卷、命名空间、资源配额、资源限制的只读权限。

只读用户指定命名空间允许对指定命名空间中控制台可见 Kubernetes 资源只读访问,拥有对集群节点、存储类、存储卷、命名空间、资源配额、资源限制的只读权限。
自定义自定义指定集群角色授权,对各类资源的访问权限由集群角色而定。