Profilanwendbarkeit: Stufe 1
Das
default
-Dienstkonto 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
default
-Dienstkonto bereit, das von Cluster-Workloads verwendet wird, bei denen dem Pod kein
spezifisches Dienstkonto zugewiesen ist.Wenn der Zugriff auf die Kubernetes-API von einem Pod aus erforderlich ist, sollte
ein spezifisches Servicekonto für diesen Pod erstellt und diesem Servicekonto die
entsprechenden Rechte gewährt werden.
Das Standarddienstkonto sollte so konfiguriert sein, dass es kein Dienstkontotoken
bereitstellt und keine expliziten Rechtezuweisungen hat.
![]() |
HinweisStandardmäßig erlaubt das
default -Dienstkonto, dass sein Dienstkontotoken in Pods in seinem Namespace 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.Wiederherstellung
Erstellen Sie explizite Dienstkonten, wenn 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
Automatische Behebung für das Standardkonto:
kubectl patch serviceaccount default -p $'automountServiceAccountToken: false'