Skip to content

Architecture

Test config YAML representation

The tests (or "controls") are maintained in YAML documents. There are different versions of these test YAML files reflecting different versions and platforms of the CIS Kubernetes Benchmark. You will find more information about the test file YAML definitions in our controls documentation.

Kube-bench benchmarks

The test files for the various versions of Benchmarks can be found in directories with same name as the Benchmark versions under the cfg directory next to the kube-bench executable, for example ./cfg/cis-1.5 will contain all test files for CIS Kubernetes Benchmark v1.5.1 which are: master.yaml, controlplane.yaml, node.yaml, etcd.yaml, policies.yaml and config.yaml

Check the contents of the benchmark directory under cfg to see which targets are available for that benchmark. Each file except config.yaml represents a target (also known as a control in other parts of this documentation).

The following table shows the valid targets based on the CIS Benchmark version. | CIS Benchmark | Targets | |---|---| | cis-1.5| master, controlplane, node, etcd, policies | | cis-1.6| master, controlplane, node, etcd, policies | | gke-1.0| master, controlplane, node, etcd, policies, managedservices | | eks-1.0| controlplane, node, policies, managedservices | | ack-1.0| master, controlplane, node, etcd, policies, managedservices | | rh-0.7| master,node| | rh-1.0| master, controlplane, node, etcd, policies |