Kubernetes - 允许带有命名空间的 ClusterRole 吗?
Kubernetes - ClusterRole with namespace is allowed?
If you want to define a role within a namespace, use a Role
; if you want to define a role cluster-wide, use a ClusterRole
.
那么,为什么我能够在命名空间中为非命名空间资源 StorageClass
(或者简称 sc
)创建一个 ClusterRole
?
kubectl -n apps create clusterrole scrole --verb=create,update,patch,delete --resource=sc
此外,Role
适用于命名空间资源 仅 而 ClusterRole
适用于非命名空间资源 [=26] 是否正确=]只有?
命名空间参数是多余的,即使您在创建 ClusterRole
时提供它也不会被使用。
A ClusterRole
也可以定义命名空间范围内资源的权限,您可以使用 RoleBinding
将权限分配给用户或组或服务帐户。当您这样做时,它基本上是在 RoleBinding
为 created.This 的命名空间内为资源提供权限,以避免在每个命名空间中创建重复的 Roles
以提供相同的权限。
此外,当您在 ClusterRole
中拥有集群范围内的资源时,您需要使用 ClusterRoleBinding
将权限分配给用户或组或服务帐户。
If you want to define a role within a namespace, use a
Role
; if you want to define a role cluster-wide, use aClusterRole
.
那么,为什么我能够在命名空间中为非命名空间资源 StorageClass
(或者简称 sc
)创建一个 ClusterRole
?
kubectl -n apps create clusterrole scrole --verb=create,update,patch,delete --resource=sc
此外,Role
适用于命名空间资源 仅 而 ClusterRole
适用于非命名空间资源 [=26] 是否正确=]只有?
命名空间参数是多余的,即使您在创建 ClusterRole
时提供它也不会被使用。
A ClusterRole
也可以定义命名空间范围内资源的权限,您可以使用 RoleBinding
将权限分配给用户或组或服务帐户。当您这样做时,它基本上是在 RoleBinding
为 created.This 的命名空间内为资源提供权限,以避免在每个命名空间中创建重复的 Roles
以提供相同的权限。
此外,当您在 ClusterRole
中拥有集群范围内的资源时,您需要使用 ClusterRoleBinding
将权限分配给用户或组或服务帐户。