我正在尝试创建一个public-ns
应该可供所有用户和组访问的公共命名空间。我已将 RoleBinding 定义如下,它允许 2 个组和 2 个用户访问命名空间。
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
name: allow-everyone
namespace: public-ns
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: Role
name: pods-services
subjects:
- apiGroup: rbac.authorization.k8s.io
kind: User
name: user-one
- apiGroup: rbac.authorization.k8s.io
kind: User
name: user-two
- apiGroup: rbac.authorization.k8s.io
kind: Group
name: group-one
- apiGroup: rbac.authorization.k8s.io
kind: Group
name: group-two
现在,我想允许所有组访问此命名空间。我试过给予'*'
,any
但没有奏效。
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
name: allow-everyone
namespace: public-ns
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: Role
name: pods-services
subjects:
- apiGroup: rbac.authorization.k8s.io
kind: Group
name: any ## tried '*' as well
谁能建议我如何为每个人授予此特定命名空间的权限。如果这是不可能的,建议的任何替代方案都会很棒。
注意:在带有 Keycloak 的 K8s 上启用了 OIDC。
提前致谢。