Closed slashben closed 11 months ago
๐ฏ Main theme: Adding SOC2 compliance controls for Kubernetes
๐ PR summary: This PR introduces SOC2 compliance controls for Kubernetes. It includes the creation of a SOC2 framework with some of the existing controls and the addition of two new controls: C-0263, which checks if ingress uses TLS, and C-0264, which checks if PersistentVolumes are encrypted. Each control has associated rules and tests to validate the implementation.
๐ Type of PR: Enhancement
๐งช Relevant tests added: Yes
โฑ๏ธ Estimated effort to review [1-5]: 4, because the PR involves complex security controls and requires a deep understanding of Kubernetes and SOC2 compliance.
๐ Security concerns: No security concerns found
๐ก General suggestions: The PR is well-structured and the new controls seem to be well-implemented. However, it would be beneficial to include more detailed comments in the code to explain the logic behind the checks, especially for developers who may not be familiar with SOC2 compliance.
Summary:
type:
enhancement
description:
This PR introduces SOC2 compliance controls for Kubernetes. It includes the following main changes:
main_files_walkthrough:
files:
- `controls/C-0263-ingress-tls.json`: Added a new control to check if Ingress resources use TLS. - `controls/C-0264-pv-encrypted.json`: Added a new control to detect unencrypted PersistentVolumes. - `frameworks/soc2.json`: Created a SOC2 framework and added the new controls to it. - `rules/ingress-no-tls/raw.rego`: Added a rule to check if Ingress resources have TLS enabled. - `rules/pv-without-encryption/raw.rego`: Added a rule to check if PersistentVolumes are encrypted. - `rules/ingress-no-tls/test/failed_with_ingress/expected.json`: Added a test case for the scenario where Ingress does not have TLS enabled. - `rules/pv-without-encryption/test/eks/expected.json`: Added a test case for the scenario where PersistentVolume is not encrypted.User Description:
Overview