RBAC

RBAC

Roles and ClusterRoles are Kubernetes objects that define a set of permissions. These permissions determine what users can do in the cluster. A Role defines permissions within a particular namespace, and a ClusterRole defines cluster-wide permissions not specific to a single namespace.
notion image

Managing k8s Role-Based Access Control (RBAC)

Relevant Documentation

  1. Create a Role spec file.
# vi role.yml apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: namespace: default name: pod-reader rules: - apiGroups: [""] resources: ["pods", "pods/log"] verbs: ["get", "watch", "list"] #kubectl apply -f role.yml
  1. Bind the role to the dev user.
# vi rolebinding.yml yamlCopy code apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: name: pod-reader namespace: default subjects: - kind: User name: dev apiGroup: rbac.authorization.k8s.io roleRef: kind: Role name: pod-reader apiGroup: rbac.authorization.k8s.io #kubectl apply -f rolebinding.yml