Chapter 3. Red Hat Advanced Cluster Security Cloud Service architecture
Chapter 3. Red Hat Advanced Cluster Security Cloud Service architecture Discover Red Hat Advanced Cluster Security Cloud Service (RHACS Cloud Service) architecture and concepts. 3.1. Red Hat Advanced Cluster Security Cloud Service architecture overview Red Hat Advanced Cluster Security Cloud Service (RHACS Cloud Service) is a Red Hat managed Software-as-a-Service (SaaS) platform that lets you protect your Kubernetes and OpenShift Container Platform clusters and applications throughout the build, deploy, and runtime lifecycles. RHACS Cloud Service includes many built-in DevOps enforcement controls and security-focused best practices based on industry standards such as the Center for Internet Security (CIS) benchmarks and the National Institute of Standards Technology (NIST) guidelines. You can also integrate it with your existing DevOps tools and workflows to improve security and compliance. RHACS Cloud Service architecture The following graphic shows the architecture with the StackRox Scanner and Scanner V4. Installation of Scanner V4 is optional, but provides additional benefits. Central services include the user interface (UI), data storage, RHACS application programming interface (API), and image scanning capabilities. You deploy your Central service through the Red Hat Hybrid Cloud Console. When you create a new ACS instance, Red Hat creates your individual control plane for RHACS. RHACS Cloud Service allows you to secure self-managed clusters that communicate with a Central instance. The clusters you secure, called Secured Clusters, are managed by you, and not by Red Hat. Secured Cluster services include optional vulnerability scanning services, admission control services, and data collection services used for runtime monitoring and compliance. You install Secured Cluster services on any OpenShift or Kubernetes cluster you want to secure. 3.2. Central Red Hat manages Central, the control plane for RHACS Cloud Service. These services include the following components: Central : Central is the RHACS application management interface and services. It handles API interactions and user interface (RHACS Portal) access. Central DB : Central DB is the database for RHACS and handles all data persistence. It is currently based on PostgreSQL 13. Scanner V4 : Beginning with version 4.4, RHACS contains the Scanner V4 vulnerability scanner for scanning container images. Scanner V4 is built on ClairCore , which also powers the Clair scanner. Scanner V4 includes the Indexer, Matcher, and Scanner V4 DB components, which are used in scanning. StackRox Scanner : The StackRox Scanner is the default scanner in RHACS. The StackRox Scanner originates from a fork of the Clair v2 open source scanner. Scanner-DB : This database contains data for the StackRox Scanner. RHACS scanners analyze each image layer to determine the base operating system and identify programming language packages and packages that were installed by the operating system package manager. They match the findings against known vulnerabilities from various vulnerability sources. In addition, the StackRox Scanner identifies vulnerabilities in the node's operating system and platform. These capabilities are planned for Scanner V4 in a future release. 3.2.1. Vulnerability data sources Sources for vulnerabilities depend on the scanner that is used in your system. RHACS contains two scanners: StackRox Scanner and Scanner V4. StackRox Scanner is the default scanner and is deprecated beginning with release 4.6. Scanner V4 was introduced in release 4.4 and is the recommended image scanner. 3.2.1.1. StackRox Scanner sources StackRox Scanner uses the following vulnerability sources: Red Hat OVAL v2 Alpine Security Database Data tracked in Amazon Linux Security Center Debian Security Tracker Ubuntu CVE Tracker NVD : This is used for various purposes such as filling in information gaps when vendors do not provide information. For example, Alpine does not provide a description, CVSS score, severity, or published date. Note This product uses the NVD API but is not endorsed or certified by the NVD. Linux manual entries and NVD manual entries : The upstream StackRox project maintains a set of vulnerabilities that might not be discovered due to data formatting from other sources or absence of data. repository-to-cpe.json : Maps RPM repositories to their related CPEs, which is required for matching vulnerabilities for RHEL-based images. 3.2.1.2. Scanner V4 sources Scanner V4 uses the following vulnerability sources: Red Hat VEX Used with release 4.6 and later. This source provides vulnerability data in Vulnerability Exploitability eXchange(VEX) format. RHACS takes advantage of VEX benefits to significantly decrease the time needed for the initial loading of vulnerability data, and the space needed to store vulnerability data. RHACS might list a different number of vulnerabilities when you are scanning with a RHACS version that uses OVAL, such as RHACS version 4.5, and a version that uses VEX, such as version 4.6. For example, RHACS no longer displays vulnerabilities with a status of "under investigation," while these vulnerabilities were included with versions that used OVAL data. For more information about Red Hat security data, including information about the use of OVAL, Common Security Advisory Framework Version 2.0 (CSAF), and VEX, see The future of Red Hat security data . Red Hat CVE Map This is used in addition with VEX data for images which appear in the Red Hat Container Catalog . OSV This is used for language-related vulnerabilities, such as Go, Java, JavaScript, Python, and Ruby. This source might provide vulnerability IDs other than CVE IDs for vulnerabilities, such as a GitHub Security Advisory (GHSA) ID. Note RHACS uses the OSV database available at OSV.dev under Apache License 2.0 . NVD This is used for various purposes such as filling in information gaps when vendors do not provide information. For example, Alpine does not provide a description, CVSS score, severity, or published date. Note This product uses the NVD API but is not endorsed or certified by the NVD. Additional vulnerability sources Alpine Security Database Data tracked in Amazon Linux Security Center Debian Security Tracker Oracle OVAL Photon OVAL SUSE OVAL Ubuntu OVAL StackRox : The upstream StackRox project maintains a set of vulnerabilities that might not be discovered due to data formatting from other sources or absence of data. Scanner V4 Indexer sources Scanner V4 indexer uses the following files to index Red Hat containers: repository-to-cpe.json : Maps RPM repositories to their related CPEs, which is required for matching vulnerabilities for RHEL-based images. container-name-repos-map.json : This matches container names to their respective repositories. 3.3. Secured cluster services You install the secured cluster services on each cluster that you want to secure by using the Red Hat Advanced Cluster Security Cloud Service. Secured cluster services include the following components: Sensor : Sensor is the service responsible for analyzing and monitoring the cluster. Sensor listens to the OpenShift Container Platform or Kubernetes API and Collector events to report the current state of the cluster. Sensor also triggers deploy-time and runtime violations based on RHACS Cloud Service policies. In addition, Sensor is responsible for all cluster interactions, such as applying network policies, initiating reprocessing of RHACS Cloud Service policies, and interacting with the Admission controller. Admission controller : The Admission controller prevents users from creating workloads that violate security policies in RHACS Cloud Service. Collector : Collector analyzes and monitors container activity on cluster nodes. It collects container runtime and network activity information and sends the collected data to Sensor. StackRox Scanner : In Kubernetes, the secured cluster services include Scanner-slim as an optional component. However, on OpenShift Container Platform, RHACS Cloud Service installs a Scanner-slim version on each secured cluster to scan images in the OpenShift Container Platform integrated registry and optionally other registries. Scanner-DB : This database contains data for the StackRox Scanner. Scanner V4 : Scanner V4 components are installed on the secured cluster if enabled. Scanner V4 Indexer : The Scanner V4 Indexer performs image indexing, previously known as image analysis. Given an image and registry credentials, the Indexer pulls the image from the registry. It finds the base operating system, if it exists, and looks for packages. It stores and outputs an index report, which contains the findings for the given image. Scanner V4 DB : This component is installed if Scanner V4 is enabled. This database stores information for Scanner V4, including index reports. For best performance, configure a persistent volume claim (PVC) for Scanner V4 DB. Note When secured cluster services are installed on the same cluster as Central services and installed in the same namespace, secured cluster services do not deploy Scanner V4 components. Instead, it is assumed that Central services already include a deployment of Scanner V4. Additional resources External components 3.4. Data access and permissions Red Hat does not have access to the clusters on which you install the secured cluster services. Also, RHACS Cloud Service does not need permission to access the secured clusters. For example, you do not need to create new IAM policies, access roles, or API tokens. However, RHACS Cloud Service stores the data that secured cluster services send. All data is encrypted within RHACS Cloud Service. Encrypting the data within the RHACS Cloud Service platform helps to ensure the confidentiality and integrity of the data. When you install secured cluster services on a cluster, it generates data and transmits it to the RHACS Cloud Service. This data is kept secure within the RHACS Cloud Service platform, and only authorized SRE team members and systems can access this data. RHACS Cloud Service uses this data to monitor the security and compliance of your cluster and applications, and to provide valuable insights and analytics that can help you optimize your deployments.