基于角色的访问控制策略(RBAC)

概述

本节介绍了访问 Istio 功能所需的权限。

集群管理权限

默认情况下,cluster-admin可以执行以下操作:

  • 在集群中安装 istio 应用。
  • 为 Istio 配置资源分配。

管理和编辑权限

默认情况下,只有istio-administio-edit可以执行以下操作:

  • 启用和禁用 Istio 侧边框自动注入命名空间的功能。
  • 将 Istio sidecar 添加到工作负载中。
  • 查看该集群的流量指标和流量图。
  • 配置 Istio 的资源(如网关、目标规则或虚拟服务)。

Kubernetes 的默认权限摘要

Istio 创建了三个ClusterRoles,并将 Istio CRD 访问权限添加到以下默认的 K8sClusterRole中。

通过 chart 创建 ClusterRole默认 K8s ClusterRoleRancher 角色
istio-adminadmin项目所有者
istio-editedit项目成员
istio-viewview只读

Rancher 将继续使用集群所有者、集群成员、项目所有者、项目成员等作为角色名称,但将利用默认角色来确定访问权限。对于每个默认的 K8sClusterRole都有不同的 Istio CRD 权限和 K8s 操作权限(Create(C)、Get(G)、List(L)、Watch(W)、Update(U)、Patch(P)、Delete(D)、All(*))可以执行。详情请参考下表:

CRDsadmineditview
config.istio.ioGLWGLWGLW
adaptersGLWGLWGLW
attributemanifestsGLWGLWGLW
handlersGLWGLWGLW
httpapispecbindingsGLWGLWGLW
httpapispecsGLWGLWGLW
instancesGLWGLWGLW
quotaspecbindingsGLWGLWGLW
quotaspecsGLWGLWGLW
rulesGLWGLWGLW
templatesGLWGLWGLW
networking.istio.ioGLW
destinationrulesGLW
envoyfiltersGLW
gatewaysGLW
serviceentriesGLW
sidecarsGLW
virtualservicesGLW
workloadentriesGLW
security.istio.ioGLW
authorizationpoliciesGLW
peerauthenticationsGLW
requestauthenticationsGLW