允许 RoleBinding 中的每个人使用命名空间
Allow everyone in RoleBinding for a namespace
我正在尝试创建一个 public 命名空间 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。
提前致谢。
我认为你应该使用特殊组 system:authenticated
https://kubernetes.io/docs/reference/access-authn-authz/authentication/#authentication-strategies
我正在尝试创建一个 public 命名空间 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。
提前致谢。
我认为你应该使用特殊组 system:authenticated
https://kubernetes.io/docs/reference/access-authn-authz/authentication/#authentication-strategies