×

Red Hat Advanced Cluster Security for Kubernetes (RHACS) 提供基于角色的访问控制 (RBAC),您可以使用它来配置角色并为不同用户授予对 Red Hat Advanced Cluster Security for Kubernetes 的不同访问级别。

从 3.63 版本开始,RHACS 包含一个范围访问控制功能,使您可以配置细粒度和特定的权限集,以定义给定的 RHACS 用户或用户组如何与 RHACS 交互,他们可以访问哪些资源以及可以执行哪些操作。

  • 角色是权限集和访问范围的集合。您可以通过指定规则将角色分配给用户和组。您可以在配置身份验证提供程序时配置这些规则。Red Hat Advanced Cluster Security for Kubernetes 中有两种类型的角色:

    • 由 Red Hat 创建的系统角色,不可更改。

    • 自定义角色,Red Hat Advanced Cluster Security for Kubernetes 管理员可以随时创建和更改。

      • 如果您为一个用户分配多个角色,则该用户可以访问已分配角色的组合权限。

      • 如果您将用户分配给自定义角色,然后删除该角色,则所有关联的用户将转移到您已配置的最低访问权限角色。

  • 权限集是一组权限,定义角色可以对给定资源执行的操作。资源是 Red Hat Advanced Cluster Security for Kubernetes 的功能,您可以为此设置查看(read)和修改(write)权限。Red Hat Advanced Cluster Security for Kubernetes 中有两种类型的权限集:

    • 系统权限集,由 Red Hat 创建,不可更改。

    • 自定义权限集,Red Hat Advanced Cluster Security for Kubernetes 管理员可以随时创建和更改。

  • 访问范围是一组用户可以访问的 Kubernetes 和 OpenShift Container Platform 资源。例如,您可以定义一个访问范围,只允许用户访问给定项目中关于 Pod 的信息。Red Hat Advanced Cluster Security for Kubernetes 中有两种类型的访问范围:

    • 系统访问范围,由 Red Hat 创建,不可更改。

    • 自定义访问范围,Red Hat Advanced Cluster Security for Kubernetes 管理员可以随时创建和更改。

系统角色

Red Hat Advanced Cluster Security for Kubernetes (RHACS) 包含一些默认系统角色,您可以在创建规则时将其应用于用户。您还可以根据需要创建自定义角色。

系统角色 描述

管理员 (Admin)

此角色面向管理员。使用它可以提供对所有资源的读写访问权限。

分析员 (Analyst)

此角色面向无法进行任何更改但可以查看所有内容的用户。使用它可以为所有资源提供只读访问权限。

持续集成 (Continuous Integration)

此角色面向 CI(持续集成)系统,并包含执行部署策略所需的权限集。

网络图查看器 (Network Graph Viewer)

此角色面向需要查看网络图的用户。

无 (None)

此角色对任何资源均无读写访问权限。您可以将此角色设置为所有用户的最低访问权限角色。

传感器创建者 (Sensor Creator)

RHACS 使用此角色来自动化新的集群设置。它包含在安全集群中创建传感器的权限集。

漏洞管理审批者 (Vulnerability Management Approver)

此角色允许您提供访问权限以批准漏洞延期或误报请求。

漏洞管理请求者 (Vulnerability Management Requester)

此角色允许您提供访问权限以请求漏洞延期或误报。

漏洞报告创建者 (Vulnerability Report Creator)

此角色允许您创建和管理计划漏洞报告的漏洞报告配置。

查看系统角色的权限集和访问范围

您可以查看默认系统角色的权限集和访问范围。

步骤
  1. 在 RHACS 门户中,转到**平台配置** → **访问控制**。

  2. 选择**角色**。

  3. 单击其中一个角色以查看其详细信息。详细信息页面显示所选角色的权限集和访问范围。

您无法修改默认系统角色的权限集和访问范围。

创建自定义角色

您可以从**访问控制**视图创建新角色。

先决条件
  • 您必须具有**管理员**角色,或者对Access资源具有读写权限才能创建、修改和删除自定义角色。

  • 您必须在创建角色之前为自定义角色创建权限集和访问范围。

步骤
  1. 在 RHACS 门户中,转到**平台配置** → **访问控制**。

  2. 选择**角色**。

  3. 单击**创建角色**。

  4. 输入新角色的**名称**和**描述**。

  5. 为角色选择一个**权限集**。

  6. 为角色选择一个**访问范围**。

  7. 单击**保存**。

将角色分配给用户或组

您可以使用 RHACS 门户将角色分配给用户或组。

步骤
  1. 在 RHACS 门户中,转到**平台配置** → **访问控制**。

  2. 从身份验证提供程序列表中,选择身份验证提供程序。

  3. 单击**编辑最小角色和规则**。

  4. 在**规则**部分,单击**添加新规则**。

  5. 对于**键**,从useridnameemailgroup中选择一个值。

  6. 对于**值**,根据您选择的键输入用户 ID、名称、电子邮件地址或组的值。

  7. 单击**角色**下拉菜单,然后选择要分配的角色。

  8. 单击**保存**。

您可以对每个用户或组重复这些说明并分配不同的角色。

系统权限集

Red Hat Advanced Cluster Security for Kubernetes 包含一些默认系统权限集,您可以将其应用于角色。您还可以根据需要创建自定义权限集。

权限集 描述

管理员 (Admin)

提供对所有资源的读写访问权限。

分析员 (Analyst)

提供所有资源的只读访问权限。

持续集成 (Continuous Integration)

此权限集面向 CI(持续集成)系统,并包含执行部署策略所需的权限。

网络图查看器 (Network Graph Viewer)

提供查看网络图的最低权限。

无 (None)

任何资源都不允许读写权限。

传感器创建者 (Sensor Creator)

提供在安全集群中创建传感器所需的资源权限。

查看系统权限集的权限

您可以在 RHACS 门户中查看系统权限集的权限。

步骤
  1. 在 RHACS 门户中,转到**平台配置** → **访问控制**。

  2. 选择**权限集**。

  3. 单击其中一个权限集以查看其详细信息。详细信息页面显示所选权限集的资源列表及其权限。

您无法修改系统权限集的权限。

创建自定义权限集

您可以从**访问控制**视图创建新的权限集。

先决条件
  • 您必须具有**管理员**角色,或者对Access资源具有读写权限才能创建、修改和删除权限集。

步骤
  1. 在 RHACS 门户中,转到**平台配置** → **访问控制**。

  2. 选择**权限集**。

  3. 单击**创建权限集**。

  4. 输入新权限集的**名称**和**描述**。

  5. 对于每个资源,在**访问级别**列下,从无访问权限只读访问权限读写访问权限中选择一个权限。

    • 如果您正在为用户配置权限集,则必须为以下资源授予只读权限:

      • 警报 (Alert)

      • 集群 (Cluster)

      • 部署 (Deployment)

      • 镜像 (Image)

      • 网络策略 (NetworkPolicy)

      • 网络图 (NetworkGraph)

      • 工作流管理 (WorkflowAdministration)

      • 密钥 (Secret)

    • 创建新权限集时,这些权限会预先选中。

    • 如果您没有授予这些权限,用户将无法在 RHACS 门户中查看页面。

  6. 单击**保存**。

系统访问范围

Red Hat Advanced Cluster Security for Kubernetes包含一些可应用于角色的默认系统访问范围。您也可以根据需要创建自定义访问范围。

访问范围 描述

无限制

提供对Red Hat Advanced Cluster Security for Kubernetes监控的所有集群和命名空间的访问。

拒绝所有

不提供对任何Kubernetes和OpenShift Container Platform资源的访问。

查看系统访问范围的详细信息

您可以在RHACS门户中查看对访问范围允许和不允许的Kubernetes和OpenShift Container Platform资源。

步骤
  1. 在 RHACS 门户中,转到**平台配置** → **访问控制**。

  2. 选择**访问范围**。

  3. 单击其中一个访问范围以查看其详细信息。详细信息页面显示集群和命名空间列表,以及哪些允许用于所选访问范围。

您无法修改系统访问范围的允许资源。

创建自定义访问范围

您可以从**访问控制**视图创建新的访问范围。

先决条件
  • 您必须具有**管理员**角色,或具有对AuthProviderRole资源的读写权限的权限集的角色,才能创建、修改和删除权限集。

步骤
  1. 在 RHACS 门户中,转到**平台配置** → **访问控制**。

  2. 选择**访问范围**。

  3. 单击**创建访问范围**。

  4. 输入新访问范围的**名称**和**描述**。

  5. 在**允许的资源**部分下

    • 使用**集群过滤器**和**命名空间过滤器**字段过滤列表中可见的集群和命名空间列表。

    • 展开**集群名称**以查看该集群中的命名空间列表。

    • 要允许访问集群中的所有命名空间,请切换**手动选择**列中的开关。

      访问特定集群允许用户访问集群范围内的以下资源:

      • OpenShift Container Platform或Kubernetes集群元数据和安全信息

      • 授权集群的合规性信息

      • 节点元数据和安全信息

      • 访问该集群中的所有命名空间及其关联的安全信息

    • 要允许访问命名空间,请切换命名空间的**手动选择**列中的开关。

      访问特定命名空间可以访问命名空间范围内的以下信息:

      • 部署的警报和违规

      • 镜像的漏洞数据

      • 部署元数据和安全信息

      • 角色和用户信息

      • 部署的网络图、策略和基线信息

      • 进程信息和进程基线配置

      • 每个部署的优先级风险信息

  6. 如果要根据标签允许访问集群和命名空间,请单击**标签选择规则**部分下的**添加标签选择器**。然后单击**添加规则**以指定标签选择器的**键**和**值**对。您可以指定集群和命名空间的标签。

  7. 单击**保存**。

资源定义

Red Hat Advanced Cluster Security for Kubernetes包含许多资源。下表列出了Red Hat Advanced Cluster Security for Kubernetes资源,并描述了用户可以使用readwrite权限执行的操作。

  • 为防止权限提升,创建新令牌时,您的角色权限会限制您可以为此令牌分配的权限。例如,如果您只有Integration资源的read权限,则无法创建具有write权限的令牌。

  • 如果希望自定义角色为其他用户创建令牌以供使用,则必须为此自定义角色分配所需的权限。

  • 将短生命周期令牌用于机器到机器的通信,例如CI/CD管道、脚本和其他自动化。此外,请使用roxctl central login命令进行人机通信,例如roxctl CLI或API访问。

资源 读取权限 写入权限

访问

查看与用户元数据匹配的单点登录 (SSO) 和基于角色的访问控制 (RBAC) 规则的配置,以及已访问您的 Red Hat Advanced Cluster Security for Kubernetes 实例的 Red Hat Advanced Cluster Security for Kubernetes 角色和用户,包括身份验证提供程序提供的有关它们的元数据。

创建、修改或删除 SSO 配置和已配置的 RBAC 规则。

管理

查看以下项目:

  • 数据保留、安全通知和其他相关配置选项

  • Red Hat Advanced Cluster Security for Kubernetes组件中的当前日志记录详细程度

  • 上传的探测文件清单内容

  • 现有的镜像扫描器集成

  • 自动升级的状态

  • 关于Red Hat Advanced Cluster Security for Kubernetes服务间身份验证的元数据

  • 扫描程序包的内容(下载)

编辑以下项目:

  • 数据保留、安全通知和相关配置

  • 日志记录级别

  • Central中的支持包(上传)

  • 镜像扫描器集成(创建/修改/删除)

  • 安全集群的自动升级(启用/禁用)

  • 服务间身份验证凭据(撤销/重新颁发)

警报 (Alert)

查看现有的策略违规。

解决或编辑策略违规。

CVE

仅限内部使用

仅限内部使用

集群 (Cluster)

查看现有的安全集群。

添加新的安全集群并修改或删除现有集群。

合规性

查看合规性标准和结果、最近的合规性运行以及相关的完成状态。

触发合规性运行。

部署 (Deployment)

查看安全集群中的部署(工作负载)。

N/A

DeploymentExtension

查看以下项目:

  • 进程基线

  • 部署中的进程活动

  • 风险结果

修改以下项目:

  • 进程基线(添加或删除进程)

检测

检查镜像或部署YAML的构建时策略。

N/A

镜像 (Image)

查看镜像、其组件及其漏洞。

N/A

集成

查看集成及其配置,包括备份、注册表、镜像签名、通知系统和API令牌。

添加、修改和删除集成及其配置和API令牌。

K8sRole

查看安全集群中Kubernetes RBAC的角色。

N/A

K8sRoleBinding

查看安全集群中Kubernetes RBAC的角色绑定。

N/A

K8sSubject

查看安全集群中Kubernetes RBAC的用户和组。

N/A

命名空间

查看安全集群中现有的Kubernetes命名空间。

N/A

网络图 (NetworkGraph)

查看安全集群中活动和允许的网络连接。

N/A

网络策略 (NetworkPolicy)

查看安全集群中现有的网络策略并模拟更改。

在安全集群中应用网络策略更改。

节点

查看安全集群中现有的Kubernetes节点。

N/A

工作流管理 (WorkflowAdministration)

查看所有资源集合。

添加、修改或删除资源集合。

角色

查看现有的Red Hat Advanced Cluster Security for Kubernetes RBAC角色及其权限。

添加、修改或删除角色及其权限。

密钥 (Secret)

查看安全集群中关于密钥的元数据。

N/A

ServiceAccount

列出安全集群中的Kubernetes服务帐户。

N/A

VulnerabilityManagementApprovals

查看所有待处理的漏洞延期或误报请求。

批准或拒绝任何待处理的延期或误报请求,并将任何先前批准的请求移回观察状态。

VulnerabilityManagementRequests

查看所有待处理的漏洞延期或误报请求。

请求延迟漏洞,将其标记为误报,或将同一用户先前批准的待处理请求移回观察状态。

WatchedImage

查看未部署和监控的监视镜像。

配置监视镜像。

工作流管理 (WorkflowAdministration)

查看所有资源集合。

创建、修改或删除资源集合。

身份验证和授权资源的声明式配置

您可以使用声明式配置来配置身份验证和授权资源,例如身份验证提供程序、角色、权限集和访问范围。有关如何使用声明式配置的说明,请参阅“附加资源”部分中的“使用声明式配置”。

其他资源