Under active development Content is continuously updated and improved

V-242383User-managed resources must be created in dedicated namespaces.

CAT I - High
CNTR-K8-000290

>Control Description

Creating namespaces for user-managed resources is important when implementing Role-Based Access Controls (RBAC). RBAC allows for the authorization of users and helps support proper API server permissions separation and network micro segmentation. If user-managed resources are placed within the default namespaces, it becomes impossible to implement policies for RBAC permission, service account usage, network policies, and more.

>Check Content

To view the available namespaces,

$kubectl get namespaces

The default namespaces to be validated are default, kube-public, and kube-node-lease if it is created. For the default namespace,

$kubectl config set-context --current --namespace=default
$kubectl get all

For the kube-public namespace,

$kubectl config set-context --current --namespace=kube-public
$kubectl get all

For the kube-node-lease namespace,

$kubectl config set-context --current --namespace=kube-node-lease
$kubectl get all

The only valid return values are the kubernetes service (i.e., service/kubernetes) and nothing at all. If a return value is returned from the "kubectl get all" command and it is not the kubernetes service (i.e., service/kubernetes), this is a finding.

>Remediation

Move any user-managed resources from the default, kube-public, and kube-node-lease namespaces to user namespaces.

>CCI References

Control Correlation Identifiers (CCIs) map STIG findings to NIST 800-53 controls.

>Cross-Framework Mappings

NIST SP 800-53 r5

via DISA CCI List

Ask AI

Configure your API key to use AI features.