プロファイル適用性: レベル2
Kubernetesはデフォルトのネームスペースを提供しており、ネームスペースが指定されていない場合にオブジェクトが配置されます。このネームスペースにオブジェクトを配置すると、RBACやその他の制御の適用がより困難になります。
Kubernetesクラスター内のリソースは、セキュリティ制御をそのレベルで適用し、リソースを管理しやすくするために、名前空間によって分離されるべきです。
![]() |
注意オブジェクト作成時に名前空間が指定されていない場合、
default 名前空間が使用されます。 |
監査
このコマンドを実行してデフォルトネームスペース内のオブジェクトを一覧表示します:
kubectl get $(kubectl api-resources --verbs=list --namespaced=true -o name | paste -sd, -) --ignore-not-found -n default
そこにあるべき唯一のエントリは、kubernetesサービスのようなシステム管理リソースです
または
kubectl get pods -n default
デフォルトの名前空間にリソースが見つかりません
No resources found in default namespace
。修復
Kubernetesリソースの適切な分離を可能にするために、名前空間が作成されていることを確認し、すべての新しいリソースが特定の名前空間で作成されるようにしてください。