Information
Kubernetes uses the API Server to control communication to the other services that makeup Kubernetes. The use of authorizations and not the default of 'AlwaysAllow' enables the Kubernetes functions control to only the groups that need them.
To control access the API server must have one of the following options set for the authorization mode:
--authorization-mode=ABAC Attribute-Based Access Control (ABAC) mode allows a user to configure policies using local files.
--authorization-mode=RBAC Role-based access control (RBAC) mode allows a user to create and store policies using the Kubernetes API.
--authorization-mode=Webhook
WebHook is an HTTP callback mode that allows a user to manage authorization using a remote REST endpoint.
--authorization-mode=Node
Node authorization is a special-purpose authorization mode that specifically authorizes API requests made by kubelets.
--authorization-mode=AlwaysDeny
This flag blocks all requests. Use this flag only for testing.
Satisfies: SRG-APP-000340-CTR-000770, SRG-APP-000033-CTR-000095, SRG-APP-000378-CTR-000880
Solution
Edit the Kubernetes API Server manifest file in the /etc/kubernetes/manifests directory on the Kubernetes Control Plane.
Set the value of '--authorization-mode' to 'Node,RBAC'.