Policy and compliance in Red Hat cloud stack
One capability and three perspectives!
There is still some debate about comparing security, policy, and compliance in Red Hat cloud stack products, we are certainly talking about following three products:
We sometimes get similar feedback from existing OpenShift customers asking about differences, and similarities between OCP, RHACM, and RHACS in addition to best practices on how to use all together to manage security and compliance.
OpenShift Compliance Operator
Starting with Openshift, It comes with a built-in?compliance operator?that allows administrators to describe the desired compliance state of a cluster and provides them with an overview of gaps and ways to remediate them.
The assessment requires a continuous scanning for both API resources and nodes, this happens using OpenSCAP, a NIST-certified tool, to scan and enforce security policies provided by the compliance content/configuration.
The compliance content is grouped into compliance profiles. There are numerous predefined industry standard profiles like FISMA, CIS OCP benchmark, PCI-DSS, NERC-CIP, But you can also create your own profiles.
All the above mentioned features come with the OpenShift compliance operator, So OpenShift does not need any extra component to achieve this.
Red Hat Advanced Cluster Management
While It is clear the role of compliance operator in OCP, the confusion starts when we add RHACM as a management layer that already comes with policy and compliance features and here is the explanation:
RHACM?is responsible for?creating and managing policies, It includes the policy framework that?supports policy creation and deployment to various managed clusters?in addition to taking remediation actions when policies are violated. At the managed clusters level, RHACM provides a policy controller to evaluate one or more policies on the managed cluster against the specified controls and generates Kubernetes events for violations. Violations are propagated to the hub cluster.
领英推荐
RHACM and OpenShift Compliance Operator
When compliance is mentioned in the context of RHACM, it refers to RHACM’s ability to propagate policies, using the Policy Controller from the hub cluster that runs RHACM, to managed clusters so that the same API objects are placed across the managed clusters. In this context, RHACM can define a policy to?enforce the deployment of the OpenShift compliance operator on all managed clusters?while?compliance scanning is still taken care of by the compliance operator. RHACM also comes with built-in controllers like K8s configuration, Certificate, IAM, and policy set controllers, they all work alongside Openshift compliance operator to support a long list of policies including but not limited to namespace, pod, memory usage, Role, Role Binding, ETCD encryption, and Image vulnerability policy in addition to support for Kyverno engine policies like add network policy, add quota policy, and sync secrets policy.
So,RHACM does NOT provide any scanning based on the OpenSCAP contents, but it guarantees the required configurations are loaded across the managed clusters to secure them.
RHACM and Gatekeeper/Open Policy Agent (OPA)
Having said that, RHACM is also shipped with a built-in policy to deploy the?Gatekeeper/Open Policy Agent (OPA)?operator on the managed clusters, after deployment, RHACM uses its policy framework to propagate Gatekeeper policy from Hub to the managed cluster.
OPA is another policy engine (CNCF graduated project), It helps in making decisions based on the policy using a policy language called Rego. API Server can be configured to query OPA for admission control decisions when API objects are created, updated, or deleted.
RHACM and kyverno
Kyverno?is a policy engine designed for Kubernetes. It can validate, mutate, and generate configurations using admission controls and background scans. Kyverno policy sets are supported as part of Red Hat Advanced Cluster Management. once any of the supported Kyverno cluster policies is created, RHACM will then manage where to enforce it using its placement rules.
Red Hat Advanced Cluster Security
RHACS helps improve the security of the application build process, protect the application platform and configurations, and detect and respond to runtime issues. It comes with a?built-in policy engine?that includes hundreds of built-in controls to enforce DevOps and security-focused best practices based on industry standards such as Center for Internet Security (CIS) Benchmarks and National Institute of Standards Technology (NIST) guidelines, configuration management of both containers and Kubernetes, and runtime security. Compliance is one of the core areas RHACS covers, as It can audit your systems against CIS Benchmarks, NIST, PCI, and HIPAA, with interactive dashboards presenting overall systems violations, compliance statistics and top risky deployments across all managed clusters and one-click for on-demand scanning audit reports.
Best Practices
Technically
Manageability
Commercially