Skip to content

Instantly share code, notes, and snippets.

@sergsoares
Created July 14, 2022 18:23
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save sergsoares/fd876e868e851b58ccfe5c6b9e195be9 to your computer and use it in GitHub Desktop.
Save sergsoares/fd876e868e851b58ccfe5c6b9e195be9 to your computer and use it in GitHub Desktop.
Create a Cluster Role but only use RoleBinding to give access for only 2 specific namespaces (otherwise all namespaces like ClusterRoleBinding)
apiVersion: v1
kind: ServiceAccount
metadata:
name: myapp
namespace: mynamespace
---
kind: ClusterRole
apiVersion: rbac.authorization.k8s.io/v1
metadata:
namespace: mynamespace
name: myapp
rules:
- apiGroups: [""]
resources:
- "secrets"
- "pods"
- "configmaps"
- "services"
- "deployments"
- "replicasets"
- "horizontalpodautoscalers"
- "ingresses"
verbs: ["*"]
---
kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
name: myapp
namespace: mynamespace
subjects:
- kind: ServiceAccount
name: myapp
namespace: mynamespace
roleRef:
kind: ClusterRole
name: myapp
apiGroup: rbac.authorization.k8s.io
---
kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
name: myapp
namespace: default
subjects:
- kind: ServiceAccount
name: myapp
namespace: other-namespace
roleRef:
kind: ClusterRole
name: myapp
apiGroup: rbac.authorization.k8s.io
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment