1.1.1 Ensure that the API server pod specification file permissions are set to 600 or more restrictive | ACCESS CONTROL, MEDIA PROTECTION |
1.1.2 Ensure that the API server pod specification file ownership is set to root:root | ACCESS CONTROL |
1.1.3 Ensure that the controller manager pod specification file permissions are set to 600 or more restrictive | ACCESS CONTROL, MEDIA PROTECTION |
1.1.4 Ensure that the controller manager pod specification file ownership is set to root:root | ACCESS CONTROL |
1.1.5 Ensure that the scheduler pod specification file permissions are set to 600 or more restrictive | ACCESS CONTROL, MEDIA PROTECTION |
1.1.6 Ensure that the scheduler pod specification file ownership is set to root:root | ACCESS CONTROL |
1.1.7 Ensure that the etcd pod specification file permissions are set to 600 or more restrictive | ACCESS CONTROL, MEDIA PROTECTION |
1.1.8 Ensure that the etcd pod specification file ownership is set to root:root | ACCESS CONTROL |
1.1.9 Ensure that the Container Network Interface file permissions are set to 600 or more restrictive | ACCESS CONTROL, MEDIA PROTECTION |
1.1.10 Ensure that the Container Network Interface file ownership is set to root:root | ACCESS CONTROL |
1.1.11 Ensure that the etcd data directory permissions are set to 700 or more restrictive | ACCESS CONTROL, MEDIA PROTECTION |
1.1.12 Ensure that the etcd data directory ownership is set to etcd:etcd | ACCESS CONTROL |
1.1.13 Ensure that the kubeconfig file permissions are set to 600 or more restrictive | ACCESS CONTROL, MEDIA PROTECTION |
1.1.14 Ensure that the kubeconfig file ownership is set to root:root | ACCESS CONTROL |
1.1.15 Ensure that the Scheduler kubeconfig file permissions are set to 600 or more restrictive | ACCESS CONTROL, MEDIA PROTECTION |
1.1.16 Ensure that the Scheduler kubeconfig file ownership is set to root:root | ACCESS CONTROL |
1.1.17 Ensure that the Controller Manager kubeconfig file permissions are set to 600 or more restrictive | ACCESS CONTROL, MEDIA PROTECTION |
1.1.18 Ensure that the Controller Manager kubeconfig file ownership is set to root:root | ACCESS CONTROL |
1.1.19 Ensure that the OpenShift PKI directory and file ownership is set to root:root | ACCESS CONTROL |
1.1.20 Ensure that the OpenShift PKI certificate file permissions are set to 600 or more restrictive | ACCESS CONTROL, MEDIA PROTECTION |
1.1.21 Ensure that the OpenShift PKI key file permissions are set to 600 | ACCESS CONTROL, MEDIA PROTECTION |
1.2.1 Ensure that anonymous requests are authorized | ACCESS CONTROL, MEDIA PROTECTION |
1.2.2 Ensure that the --basic-auth-file argument is not set | CONFIGURATION MANAGEMENT, MAINTENANCE |
1.2.3 Ensure that the --token-auth-file parameter is not set | CONFIGURATION MANAGEMENT, MAINTENANCE |
1.2.4 Use https for kubelet connections | ACCESS CONTROL, IDENTIFICATION AND AUTHENTICATION, SYSTEM AND COMMUNICATIONS PROTECTION |
1.2.5 Ensure that the kubelet uses certificates to authenticate | SYSTEM AND SERVICES ACQUISITION |
1.2.6 Verify that the kubelet certificate authority is set as appropriate | SYSTEM AND SERVICES ACQUISITION |
1.2.7 Ensure that the --authorization-mode argument is not set to AlwaysAllow | ACCESS CONTROL, MEDIA PROTECTION |
1.2.8 Verify that RBAC is enabled | ACCESS CONTROL, AUDIT AND ACCOUNTABILITY |
1.2.9 Ensure that the APIPriorityAndFairness feature gate is enabled | ACCESS CONTROL, SYSTEM AND COMMUNICATIONS PROTECTION |
1.2.10 Ensure that the admission control plugin AlwaysAdmit is not set | ACCESS CONTROL, MEDIA PROTECTION |
1.2.11 Ensure that the admission control plugin AlwaysPullImages is not set | ACCESS CONTROL, MEDIA PROTECTION |
1.2.12 Ensure that the admission control plugin ServiceAccount is set | ACCESS CONTROL, MEDIA PROTECTION |
1.2.13 Ensure that the admission control plugin NamespaceLifecycle is set | CONFIGURATION MANAGEMENT, SYSTEM AND SERVICES ACQUISITION |
1.2.14 Ensure that the admission control plugin SecurityContextConstraint is set | SYSTEM AND SERVICES ACQUISITION |
1.2.15 Ensure that the admission control plugin NodeRestriction is set | SYSTEM AND SERVICES ACQUISITION |
1.2.16 Ensure that the --insecure-bind-address argument is not set | SYSTEM AND SERVICES ACQUISITION |
1.2.17 Ensure that the --insecure-port argument is set to 0 | SYSTEM AND SERVICES ACQUISITION |
1.2.18 Ensure that the --secure-port argument is not set to 0 | ACCESS CONTROL, IDENTIFICATION AND AUTHENTICATION, SYSTEM AND COMMUNICATIONS PROTECTION |
1.2.19 Ensure that the healthz endpoint is protected by RBAC | ACCESS CONTROL, AUDIT AND ACCOUNTABILITY |
1.2.20 Ensure that the --audit-log-path argument is set | AUDIT AND ACCOUNTABILITY |
1.2.21 Ensure that the audit logs are forwarded off the cluster for retention | AUDIT AND ACCOUNTABILITY |
1.2.22 Ensure that the maximumRetainedFiles argument is set to 10 or as appropriate | AUDIT AND ACCOUNTABILITY |
1.2.23 Ensure that the maximumFileSizeMegabytes argument is set to 100 | AUDIT AND ACCOUNTABILITY |
1.2.24 Ensure that the --request-timeout argument is set | CONFIGURATION MANAGEMENT, SYSTEM AND SERVICES ACQUISITION |
1.2.25 Ensure that the --service-account-lookup argument is set to true | ACCESS CONTROL, MEDIA PROTECTION |
1.2.26 Ensure that the --service-account-key-file argument is set as appropriate | IDENTIFICATION AND AUTHENTICATION |
1.2.27 Ensure that the --etcd-certfile and --etcd-keyfile arguments are set as appropriate | IDENTIFICATION AND AUTHENTICATION, SYSTEM AND COMMUNICATIONS PROTECTION |
1.2.28 Ensure that the --tls-cert-file and --tls-private-key-file arguments are set as appropriate | ACCESS CONTROL, IDENTIFICATION AND AUTHENTICATION, SYSTEM AND COMMUNICATIONS PROTECTION |
1.2.29 Ensure that the --client-ca-file argument is set as appropriate | ACCESS CONTROL, IDENTIFICATION AND AUTHENTICATION, SYSTEM AND COMMUNICATIONS PROTECTION |