Beispiel-Dokumentation: ServiceAccount API Access
Ziel
API-Zugriff aus Pods mit ServiceAccounts, Token-Mounts und RBAC gezielt begrenzen.
Was gemacht wird
Das Lab erstellt einen Pod ohne automatisch gemountetes Token und einen Job mit ServiceAccount, Role und RoleBinding zum Lesen von Pods.
Typische Kommandos
kubectl apply -f manifests/
kubectl auth can-i list pods --as=system:serviceaccount:api-access-lab:pod-reader -n api-access-lab
kubectl logs -n api-access-lab job/api-reader
kubectl describe pod -n api-access-lab no-token
Erfolg prüfen
pod-readerdarf Pods listen.- Der Job kann Pods im Namespace anzeigen.
- Der Pod
no-tokenhat keinen automatisch gemounteten ServiceAccount-Token.
Typische Fehler
automountServiceAccountToken: falsewird vergessen.- RoleBinding referenziert den falschen Namespace.
kubectl auth can-iwird ohne--asgeprüft.