Kubernetes - 允许带有命名空间的 ClusterRole 吗?

Kubernetes - ClusterRole with namespace is allowed?

documentation 说,

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 将权限分配给用户或组或服务帐户。