Cheatsheet 11 - Access Control
| Befehl | 
Aktion | 
kubectl get namespace | 
Namespaces anzeigen | 
kubectl get pods --namespace=<namespace> | 
Pods in einem Namespace anzeigen | 
kubectl config view | 
Aktuelle Kubeconfig anzeigen | 
kubectl config get-contexts | 
Verfügbare Contexts anzeigen | 
kubectl config current-context | 
Aktuellen Context anzeigen | 
kubectl config set-context --current --namespace=<namespace> --user=<user> | 
Aktuellen Context setzen | 
kubectl apply -f pod.yaml --as system:serviceaccount:<namespace>:<serviceaccount> | 
Befehl als anderer Nutzer ausführen | 
Namespace-Manifest Beispiel
---
apiVersion: v1
kind: Namespace
metadata:
  name: test
 
Namespace in einer Resource definieren
---
apiVersion: apps/v1
kind: Deployment  # Auch Pod, Job oder jegliche weitere Resource.
metadata:
  name: my-resource
  namespace: my-namespace
spec:
  [...]
 
ServiceAccount-Manifest Beispiel
---
apiVersion: v1
kind: ServiceAccount
metadata:
  name: my-service-account
  namespace: my-namespace
 
Role-Manifest Beispiel
---
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
  name: my-role
  namespace: my-namespace
rules:
- apiGroups: [""]
  resources:
  - pods
  verbs:
  - create
  - get
  - list
  - watch
  - delete
 
RoleBinding-Manifest Beispiel
---
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
  name: my-role-binding
  namespace: my-namespace
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: Role
  name: my-role
subjects:
- kind: ServiceAccount
  name: my-service-account
  namespace: my-namespace