跳到主要内容
版本:Latest

全局权限

权限 是你在为用户选择自定义权限时可以分配的个人访问权限。

全局权限定义用户在任何特定集群之外的授权。Rancher 提供四种开箱即用的默认全局权限:Administrator (管理员)、Restricted Admin (受限管理员)、Standard User (标准用户) 和 User-Base 用户。

  • 管理员:可以完全控制整个 Rancher 系统和其中的所有集群。

  • 受限管理员:可以完全控制下游集群,但不能更改本地 Kubernetes 集群。

  • 普通用户:可以创建新集群并使用它们。普通用户还可以在自己的集群中向其他用户分配集群权限。

  • User-Base 用户:只有登录权限。

你无法更新或删除内置的全局权限。

受限管理员

Rancher 2.5 创建了一个新的 restricted-admin 角色,以防止本地 Rancher Server Kubernetes 集群的权限提升。此角色对 Rancher 管理的所有下游集群具有完全管理员权限,但没有更改本地 Kubernetes 集群的权限。

restricted-admin 可以创建其他具有同样访问权限的 restricted-admin 用户。

Rancher 还增加了一个新设置,来将初始启动的管理员设置为 restricted-admin 角色。该设置适用于 Rancher Server 首次启动时创建的第一个用户。如果设置了这个环境变量,则不会创建全局管理员,也就无法通过 Rancher 创建全局管理员。

要以 restricted-admin 作为初始用户来启动 Rancher,你需要使用以下环境变量来启动 Rancher Server:

CATTLE_RESTRICTED_DEFAULT_ADMIN=true

restricted-admin 的权限列表

下表列出了 restricted-adminAdministratorStandard User 角色相比应具有的权限和操作:

类别操作全局管理员普通用户受限管理员受限管理员的注意事项
本地集群功能管理本地集群(列出、编辑、导入主机)
创建项目/命名空间
添加集群/项目成员
全局 DNS
访问 CRD 和 CR 的管理集群
另存为 RKE 模板
安全
启用身份验证配置身份验证
角色创建/分配 GlobalRoles否(可列出)认证 Webhook 允许为已经存在的权限创建 globalrole
创建/分配 ClusterRoles否(可列出)不在本地集群中
创建/分配 ProjectRoles否(可列出)不在本地集群中
用户添加用户/编辑/删除/停用用户
将全局角色分配给组在 Webhook 允许的范围内
刷新组
PSP管理 PSP 模板否(可列出)与 PSP 的全局管理员权限相同
工具
管理 RKE 模板
管理全局应用商店无法编辑/删除内置系统应用商店。可以管理 Helm 库
集群驱动
主机驱动
GlobalDNS 提供商是(自己)
GlobalDNS 条目是(自己)
设置
管理设置否(可列出)否(可列出)
用户
管理 API 密钥是(管理所有)是(管理自己的)是(管理自己的)
管理节点模板是(管理自己的)是(管理自己的)只能管理自己的节点模板,不能管理其他用户创建的节点模板。
管理云凭证是(管理自己的)是(管理自己的)只能管理自己的云凭证,不能管理其他用户创建的云凭证。
下游集群创建集群
编辑集群
轮换证书
立即创建快照
恢复快照
另存为 RKE 模板
运行 CIS 扫描
添加成员
创建项目
自 2.5 起的功能 Chart
安装 Fleet无法在本地集群中运行 Fleet
部署 EKS 集群
部署 GKE 集群
部署 AKS 集群

将全局管理员更改为受限管理员

如果 Rancher 已经有一个全局管理员,则应该将所有全局管理员更改为新的 restricted-admin

你可以前往安全 > 用户,并将所有管理员角色转为受限管理员。

已登录的用户可以根据需要将自己更改为 restricted-admin,但这应该是他们的最后一步操作,否则他们将没有进行该操作的权限。

分配全局权限

本地用户的全局权限分配与使用外部身份验证登录 Rancher 的用户不同。

新本地用户的全局权限

在创建新本地用户时,请在填写添加用户表单时为他分配全局权限。

如果需要查看新用户的默认权限:

  1. 在左上角,单击 ☰ > 用户 & 认证
  2. 在左侧导航栏中,单击角色
  3. 角色页面有按范围分组的角色选项卡。每个表都列出了范围内的角色。在全局选项卡的新用户的默认角色列中,默认授予新用户的权限用复选标记表示。

你可以更改默认全局权限来满足你的需要

使用外部身份验证程序的用户的全局权限

当用户首次使用外部身份验证提供程序登录 Rancher 时,他们会自动分配到新用户的默认角色的全局权限。默认情况下,Rancher 为新用户分配 Standard User 权限。

如果需要查看新用户的默认权限:

  1. 在左上角,单击 ☰ > 用户 & 认证
  2. 在左侧导航栏中,单击角色
  3. 角色页面有按范围分组的角色选项卡。每个表都列出了范围内的角色。在每个页面的新用户的默认角色列中,默认授予新用户的权限用复选标记表示。

你可以更改默认权限来满足你的需要

权限可以分配给单个用户。

如果外部身份验证提供程序支持组,你可以同时为组中的每个成员分配角色

自定义全局权限

使用自定义权限可以为用户配置在 Rancher 中的更受限或指定的访问权限。

当来自外部身份验证系统的用户首次登录 Rancher 时,他们会自动分配到一组全局权限(以下简称权限)。默认情况下,用户第一次登录后会被创建为用户,并分配到默认的用户权限。标准的用户权限允许用户登录和创建集群。

但是,在某些组织中,这些权限可能会被认为权限过大。你可以为用户分配一组更具限制性的自定义全局权限,而不是为用户分配 AdministratorStandard User 的默认全局权限。

默认角色(管理员和标准用户)都内置了多个全局权限。系统管理员角色包括所有全局权限,而默认用户角色包括三个全局权限,分别是创建集群,使用应用商店模板,和 User Base(登录 Rancher 的最低权限)。换句话说,自定义全局权限是模块化的,因此,如果你要更改默认用户角色权限,你可以选择需要包括在新的默认用户角色中的全局权限子集。

管理员可以通过多种方式强制执行自定义全局权限:

自定义全局权限参考

下表列出了每个可用的自定义全局权限,以及该权限是否包含在默认全局权限 AdministratorStandard UserUser-Base 中:

自定义全局权限管理员普通用户User-Base
创建集群
创建 RKE 模板
管理身份验证
管理应用商店
管理集群驱动
管理主机驱动
管理 PodSecurityPolicy 模板
管理角色
管理设置
管理用户
使用应用商店模板
User-Base(基本登录访问)

如果需要查看每个全局权限对应哪些 Kubernetes 资源:

  1. 在左上角,单击 ☰ > 用户 & 认证
  2. 在左侧导航栏中,单击角色
  3. 如果单击单个角色的名称,表格会显示该角色授权的所有操作和资源。
注意事项:
  • 上面列出的每个权限都包含多个未在 Rancher UI 中列出的权限。如果需要获取完整权限列表以及组成权限的规则,请通过 /v3/globalRoles API 进行访问。
  • 在查看 Rancher 创建的默认角色关联的资源时,如果在一行上有多个 Kubernetes API 资源,则该资源将带有 (Custom) 标识。这不代表这个资源是自定义资源,而只是表明多个 Kubernetes API 资源作为一个资源。

配置默认全局权限

如果你想限制新用户的默认权限,你可以删除作为默认角色的用户权限,然后分配多个单独的权限作为默认权限。你也可以在一组其他标准权限之上添加管理权限。

备注

默认角色仅分配给从外部身份验证提供程序添加的用户。对于本地用户,在将用户添加到 Rancher 时,必须显式分配全局权限。你可以在添加用户时自定义这些全局权限。

要更改在外部用户首次登录时分配给他们的默认全局权限,请执行以下步骤:

  1. 在左上角,单击 ☰ > 用户 & 认证
  2. 在左侧导航栏中,单击角色。在角色页面上,确保选择了全局选项卡。
  3. 查找要添加或删除的默认权限集。然后,通过选择 ⋮ > 编辑配置来编辑权限。
  4. 如果要将权限添加为默认权限,请选择是:新用户的默认角色,然后单击保存。如果要删除默认权限,请编辑该权限并选择

结果:默认全局权限已根据你的更改配置。分配给新用户的权限会在新用户的默认角色列中显示为复选标记。

为单个用户配置全局权限

要为单个用户配置权限:

  1. 在左上角,单击 ☰ > 用户 & 认证
  2. 在左侧导航栏中,单击用户
  3. 找到要更改访问级别的用户,然后单击 ⋮ > 编辑配置
  4. 全局权限内置角色部分中,选中你希望用户拥有的权限的复选框。如果你在角色页面创建了角色,这些角色将出现在自定义部分,你也可以选择这些角色。
  5. 单击保存

结果:用户的全局权限已更新。

为组配置全局权限

如果你有一组需要在 Rancher 中有相同访问权限的用户,你可以一次性将权限分配给整个组来节省时间。这样,组中的用户在第一次登录 Rancher 时能拥有相应级别的访问权限。

将自定义全局角色分配给组后,该角色将在组中用户登录 Rancher 时分配给用户。

对于现有用户,新权限将在用户退出 Rancher 并重新登录时,或当管理员刷新用户组成员名单时生效。

对于新用户,新权限在用户首次登录 Rancher 时生效。除了新用户的默认角色全局权限外,来自该组的新用户还将获得自定义全局角色的权限。默认情况下,新用户的默认角色权限等同于 Standard User 全局角色,但默认权限可以配置。

如果从外部身份验证提供程序组中删除用户,该用户将失去分配给该组的自定义全局角色的权限。他们将继续拥有分配给他们的所有剩余角色,这通常包括标记为新用户的默认角色的角色。Rancher 将在用户登出或管理员刷新用户组成员名单时删除与组关联的权限。

先决条件:

只有在以下情况下,你才能将全局角色分配给组:

要将自定义全局角色分配给组,请执行以下步骤:

  1. 在左上角,单击 ☰ > 用户 & 认证
  2. 在左侧导航栏中,单击
  3. 转到你要分配自定义全局角色的组,然后单击 ⋮ > 编辑配置
  4. 全局权限自定义和/或内置角色部分中,选择该组应具有的权限。
  5. 单击创建

结果:自定义全局角色会在组内用户登录 Rancher 时生效。

刷新用户组成员名单

当管理员更新组的全局权限时,更改将在组成员退出 Rancher 并重新登录后生效。

如果要让更改立即生效,管理员或集群所有者可以刷新用户组成员名单。

如果用户已经从外部身份验证服务中的组中删除,管理员也可能需要刷新用户组成员名单。在这种情况下,刷新操作会让 Rancher 知道用户已从组中删除。

要刷新用户组成员名单:

  1. 在左上角,单击 ☰ > 用户 & 认证
  2. 在左侧导航栏中,单击用户
  3. 单击刷新用户组成员名单

结果:对组成员权限的所有更改都会生效。