Red Hat OpenShift policies in DevOps Config
-
- UpdatedJan 30, 2025
- 3 minutes to read
- Yokohama
- DevOps
Red Hat OpenShift policies in DevOps Config
By default, the DevOps Config Policy content pack contains a set of policies to validate your Red Hat OpenShift configuration.
Audit Log Maximum Backup Is Set (openshift_audit_log_maxbackup_is_set)
Checks whether the maximum number of old audit log files to be retained for API servers is set.
Results into a non-compliant status when the --audit-log-maxbackup
argument is either not set or not within the specified limits.
- Input arguments
- lowerLimit
- The lower limit of the
--audit-log-maxbackup
argument. - Type: Integer
- Mandatory: False
- The lower limit of the
- upperLimit
- The upper limit of the
--audit-log-maxbackup
argument. - Type: Integer
- Mandatory: False
- The upper limit of the
- lowerLimit
Audit Log Maximum File Size Is Set (openshift_audit_log_maxsize_is_set)
Checks whether the maximum file size specified as the rollover threshold for audit log files is set. After an audit log file reaches the maximum file size, the original audit log file is renamed and a new log file with the original name is created.
Results into a non-compliant status when the --audit-log-maxsize
argument is either not set or not within the specified limits.
- Input arguments
- lowerLimit
- The lower memory limit of the
--audit-log-maxsize
argument. - Type: Integer
- Mandatory: True
- The lower memory limit of the
- upperLimit
- The upper memory limit of the
--audit-log-maxsize
argument. - Type: Integer
- Mandatory: True
- The upper memory limit of the
- lowerLimit
Audit Log Path Isn't Set (openshift_audit_log_path_is_not_set)
Checks whether the auditing is enabled in OpenShift and the audit log file path is set.
Results into a non-compliant status when either the --audit-log-path
argument for openshift-kube-apiserver isn’t set to /var/log/kube-apiserver/audit.log or the
--audit-log-path
argument for openshift-apiserver isn’t set to /var/log/openshift-apiserver/audit.log.
Basic Auth File Isn’t Set (openshift_basic_auth_file_is_not_set)
Checks whether OpenShift doesn’t use the basic authentication mechanism to authenticate requests to the API server.
Results into a non-compliant status when the --basic-auth-file
argument is set.
Containers Run Without Privilege Access (openshift_container_is_not_privileged)
Checks whether the containers within an OpenShift pod are run without privileged access.
Results into a non-compliant status when the privileged field for a container is set to true
.
Host PID Namespace Is Disabled (openshift_scc_with_hostPID_namespace_disabled)
Checks whether there is at least one security context constraint (SCC) is defined that doesn’t allow containers to share the host PID namespace.
Results into a warning when there’s an SCC defined with the allowHostPID field set to true
.
NamespaceLifecycle Plugin Is Enabled (openshift_namespacelifecycle_plugin_is_enabled)
Checks whether the admission control plugin NamespaceLifecycle is enabled.
Results into a non-compliant status when the NamespaceLifecycle plugin is disabled.
Read-Only Port Is Disabled (openshift_read_only_port_disabled)
Checks whether the Kubelet API server isn’t using the read-only port or the read-only port is set to 0
.
Results into a non-compliant status when the kubelet-read-only-port
argument isn’t set to 0
.
Request Timeout Is Set (openshift_request_timeout_is_set)
Checks whether the global request timeout for API servers is set.
Results into a non-compliant status when the --min-request-timeout
argument is either not set or not within the specified limits.
- Input arguments
- lowerLimit
- The lower limit of the
--min-request-timeout
argument. - Type: Integer
- Mandatory: False
- The lower limit of the
- upperLimit
- The upper limit of the
--min-request-timeout
argument. - Type: Integer
- Mandatory: False
- The upper limit of the
- lowerLimit
Streaming Connections Timeout Isn't Disabled (openshift_streaming_connections_timeout_not_disabled)
Checks whether the timeouts are set on streaming connections to ensure protection against denial-of-service attacks, inactive connections, and ephemeral ports exhaustion.
Results into a non-compliant status when the streamingConnectionIdleTimeout
argument is set to 0
in the Kubelet config file.
Token Auth File Isn’t Set (openshift_token_auth_file_is_not_set)
Checks whether OpenShift doesn't use a static token file to authenticate requests to the API server.
Results into a non-compliant status when the --token-auth-file
argument is set.
On this page
- Audit Log Maximum Backup Is Set (openshift_audit_log_maxbackup_is_set)
- Audit Log Maximum File Size Is Set (openshift_audit_log_maxsize_is_set)
- Audit Log Path Isn't Set (openshift_audit_log_path_is_not_set)
- Basic Auth File Isn’t Set (openshift_basic_auth_file_is_not_set)
- Containers Run Without Privilege Access (openshift_container_is_not_privileged)
- Host PID Namespace Is Disabled (openshift_scc_with_hostPID_namespace_disabled)
- NamespaceLifecycle Plugin Is Enabled (openshift_namespacelifecycle_plugin_is_enabled)
- Read-Only Port Is Disabled (openshift_read_only_port_disabled)
- Request Timeout Is Set (openshift_request_timeout_is_set)
- Streaming Connections Timeout Isn't Disabled (openshift_streaming_connections_timeout_not_disabled)
- Token Auth File Isn’t Set (openshift_token_auth_file_is_not_set)