More Info:
Restrict kubelet nodes to reading only objects associated with them.Risk Level
MediumAddress
SecurityCompliance Standards
- CIS Kubernetes
Triage and Remediation
- Remediation
Remediation
Manual Steps
Manual Steps
-
On every control plane node, open the kube‑apiserver static pod manifest for editing:
-
In the
spec.containers[0].commandlist, locate any existing--authorization-mode=entry. Edit it so that it includesNode(and typicallyRBAC), for example:If there is no--authorization-modeline, add one under the other- --arguments. - Save and exit the editor. The kube-apiserver static pod will be restarted automatically by kubelet when the manifest file changes. Be aware this briefly restarts the API server on this node.
-
After 30–60 seconds, verify the kube-apiserver process on this control plane node now includes
--authorization-mode=Nodein its arguments: -
Inspect the output and confirm that the
kube-apiservercommand line contains an--authorization-mode=flag whose value includesNode(for example,--authorization-mode=Node,RBAC). Repeat these steps on every control plane node.
Using kubectl
Using kubectl
kubectl cannot modify the kube-apiserver static pod manifest or its process flags, so this finding cannot be fixed via the Kubernetes API. The required change must be made directly on each control plane node in
/etc/kubernetes/manifests/kube-apiserver.yaml; follow the Manual Steps section to perform and verify the fix.Automation
Automation

