Ablageort im Repository (GitLab): Projekt2583-Richtlinien-Umsetzung StackRox
Diskussionsforum (Discourse): Projekt2583-Richtlinien-Umsetzung StackRox
Readme: Projekt2583-Richtlinien-Umsetzung StackRox
Beschreibung des Projektes:
PublicCode.YML: anzeigen
OSS Compliance: anzeigen
Dieses Projekt stellt Policies für StackRox bereit, die auf den durch die Interessensgemeinschaft Betrieb von Containern (IG BvC) erarbeiteten Richtlinien basieren. Diese wiederum stellen eine mit Teilnehmern mehrerer Bundesbehörden und IT Dienstleistern von Ländern und Bund Interpretation von technisch Prüfbaren Maßnahmen der Bausteine SYS.1.6 und APP.4.4 des BSI (Bundesamt für Sicherheit in der Informationstechnik) bereit.
Das Projekt soll es ermöglichen, dass Firmen, Behörden oder auch Privatpersonen, die StackRox einsetzen, ein leicht zu importierendes, und anzupassendes Set an Policies haben, die sie wiederverwenden und anpassen können.
######## 1. Auswählen der Policies, oder Nutzung des Bundles unter ./policies
######## 2. Anmeldung an StackRox
######## 3. Auswählen von Platform Configuration/Policy Management
######## 4. Auswählen von Import Policy
######## 5. Copy & Paste des der Policies, oder Upload vom Dateisystem
######## 6. Customizing der Policies
Jede Contribution ist willkommen. Für den einfacheren Einstieg hier ein paar Hinweise.
Es gibt technisch relevante Policies, die mit StackRox umsetzbar sind, die jedoch keinen BSI Bezug haben. Diese sind OUT OF SCOPE für das Projekt. Für jede zu implementierende Policy MUSS es eine ID im Richtlinienprojekt geben. Für eine IG BvC ID KANN es aber auch mehrere Policies geben, z.B. um mehrere Aspekte abzudecken/zu prüfen.
Es werden drei Typen der Policyimplementierung unterschieden. Sie sind in der `policy-spec.yaml` an Hand des `implementationType` ersichtlich:
`upstream` sind Policies, die schon bspw. in den Default Policies von StackRox vorhanden sind. Diese werden wiederverwendete um insbesondere Ausnahmen und Änderungen an StackRox selbst einfach übernehmen zu können ohne eigenen Aufwand zu haben. Die Policies werden durch das Script `policy-generator.py` heruntergeladen und verschiedene Felder wie Titel, Kategorie und andere überschrieben. Anschließend wird die Policy im Repository abgelegt. An diesen Policies soll keine händische Änderung erfolgen. Änderungen sollen über Overwrite-Definitionen in `policy-spec.yaml` implementiert werden.
`manual` sind Policies, für die keine Vorlagen existieren. Diese müssen im `policy-spec.yaml` hinterlegt sein, dass Script führt hier jedoch weniger Prüfungen und Änderungen durch.
`none` sind Policies, die nicht implementiert werden können, für die es jedoch eine Richtlinie der IG BvC gibt. Die Auflistung dieser Policies dient im Wesentlichen zur Vollständigkeitskontrolle.
Jede Policy sollte bei einem entsprechenden Testfall (-bad) auslösen, einen Testfall (-good) jedoch nicht.
Testfälle um die Policies zu testen, werden nicht in diesem Projekt geändert sondern kommen ebenfalls aus dem Richtlinien Projekt. Bei Fehlern in den Testfällen sind diese dort zu korrigieren.
Das Projekt ist gemäß LICENSE lizensiert.
Dieses Projekt ist in aktiver Entwicklung. Aktuell sind fast alle Richtlinien die technisch mit Stackrox abbildbar sind, als Policy vorhanden. Alle Issues oder MRs sind willkommen! Aktuell werden die Policies MANUELL gegen nur eine Kubernetes Distribution (OpenShift) getestet. Alternative Testumgebungen sind sehr willkommen!
siehe Issues. Es wird jedoch versucht mehr Automation und Hands On Erfahrung in die Policies zu Bringen um den Pflegeaufwand gering und die Wiederverwendbarkeit hoch zu halten.