Kube OSCAL catalog
This repo comprises the CIS Kubernetes Benchmark v1.7.0 as an OSCAL catalog.
This repo is managed using open source project compliance-trestle.
The initial catalog in OSCAL json
format was created using the trestle task ocp4-cis-profile-to-oscal-catalog
command.
Transformations between markdown
documents and the corresponding OSCAL catalog.json are managed by the trestle automation scripts,
which employ trestle core commands.
The catalog.
Example markdown.
The trestle Agile Authoring process facilitates management of the OSCAL json via the GIT managed lifecycle of markdown documents. The process employs GIT with trestle automation scripts as follows:
- check-out a markdown document, representing one part of the OSCAL catalog
- modify the markdown
- check-in the markdown document, and create a pull request for review
- once reviewed and approved, the markdown is employed to render a revised OSCAL catalog via the automation scripts in the repo
Before agile authoring can occur, steps employed to create the initial OSCAL catalog and markdown in this repo:
- Clone the kubernetes catalog repo
- Install compliance-trestle into a virtual environment
- Download
CIS_Kubernetes_Benchmark_v1.7.0.xlsx
into kubernetes catalogdata
folder: visit cisecurity.org - Run:
trestle task cis-xlsx-to-oscal-catalog -c data/cis-xlsx-ocp-to-oscal-catalog.config
- Push the
catalog.json
into the repo - The trestle automation creates the markdown
Before initial OSCAL catalog.json and markdown are created, steps employed to setup the repo:
- Create a repo
- Configure the repo by including a
GIT_TOKEN
(seerepo customization
below) and setting up teams and people if desired - Download a template repo (for example this one)
- Update the automation scripts (see
automation scripts customizations
below) - Popluate the repo
Settings -> Secrets and variables -> Actions
- Add Repository secret
GIT_TOKEN
with your personal token created here - Be sure token has
workflow
checked
These scripts were customized in scripts automation as follows.
trestle task ocp4-cis-profile-to-oscal-catalog -c data/trestle task cis-xlsx-to-oscal-catalog data/cis-xlsx-ocp-to-oscal-catalog.config
remote=https://[email protected]/ComplianceAsCode/kube-oscal-catalog
export COMMIT_BODY="Sync catalogs with kube-oscal-catalog repo"
cd kube-oscal-profile
remote=https://[email protected]/ComplianceAsCode/kube-oscal-profile