Ansichten:
Profilanwendbarkeit: Stufe 1
Das Standarddienstkonto sollte nicht verwendet werden, um sicherzustellen, dass die den Anwendungen gewährten Rechte leichter geprüft und überprüft werden können.
Kubernetes stellt ein Standard-Servicekonto bereit, das von Cluster-Workloads verwendet wird, wenn dem Pod kein spezifisches Servicekonto zugewiesen ist. Wenn von einem Pod aus auf die Kubernetes-API zugegriffen werden muss, sollte ein spezifisches Servicekonto für diesen Pod erstellt und diesem Servicekonto entsprechende Rechte zugewiesen werden.
Das Standarddienstkonto sollte so konfiguriert sein, dass es kein Dienstkontotoken bereitstellt und keine expliziten Rechtezuweisungen hat.
Hinweis
Hinweis
Standardmäßig erlaubt das Standarddienstkonto, dass sein Dienstkontotoken in Pods innerhalb seines Namensraums eingebunden wird.

Auswirkung

Alle Workloads, die Zugriff auf die Kubernetes-API benötigen, erfordern die Erstellung eines expliziten Servicekontos.

Prüfung

Überprüfen Sie für jeden Namespace im Cluster die Rechte, die dem Standard-Servicekonto zugewiesen sind, und stellen Sie sicher, dass ihm keine Rollen oder Clusterrollen zugewiesen sind, außer den Standardrollen.
Stellen Sie außerdem sicher, dass die Einstellung automountServiceAccountToken: false für jedes Standarddienstkonto vorhanden ist.
kubectl get serviceaccounts/default -o yaml
Beispielausgabe:
 apiVersion: v1 
automountServiceAccountToken: false 
kind: ServiceAccount 
metadata: 
  creationTimestamp: "2025-10-18T16:11:09Z" 
  name: default namespace: default 
...

Wiederherstellung

Erstellen Sie explizite Dienstkonten, wo immer ein Kubernetes-Workload spezifischen Zugriff auf den Kubernetes-API-Server benötigt. Ändern Sie die Konfiguration jedes Standarddienstkontos, um diesen Wert einzuschließen.
automountServiceAccountToken: false