Kostenlose DevOps-Analyse
Zurück zum Glossar
DevOps Glossar·Compliance·Zuletzt geprüft

Policy-as-Code

// Direkte Antwort

Was bringt Policy-as-Code?

Policy-as-Code, oft auch Compliance as Code genannt, definiert Compliance-Regeln als maschinenlesbare Dateien, die bei jedem Deployment automatisch geprüft werden. Tools wie Open Policy Agent machen Compliance versionierbar, testbar und durchsetzbar. Niemand muss mehr auf das manuelle Audit einmal im Jahr warten.

Auch bekannt als: Policy as Code · Richtlinien als Code · Open Policy Agent

// Kurz gefragt1 Klick, anonym

Ist Policy-as-Code bei Ihnen gerade ein Thema?

Wir fragen kurz, wie dringend das Thema bei Ihnen gerade ist. Je nach Antwort zeigen wir Ihnen direkt den passenden nächsten Schritt — ganz ohne Formular.

// Im DetailPolicy-as-Code

Eine Policy-Engine bekommt zwei Dinge. Das eine ist die Regel, geschrieben als Code. Das andere ist der Gegenstand der Prüfung, etwa ein Kubernetes-Manifest, ein Terraform-Plan oder ein API-Aufruf, meist als JSON. Die Engine wertet die Regel gegen diese Daten aus und liefert „erlaubt" oder „verweigert", oft mit einer Begründung. Die Pipeline oder der Cluster reagiert auf diese Antwort und bricht den Build ab oder weist das Deployment zurück. Das verbreitetste Werkzeug dafür ist Open Policy Agent (OPA) mit seiner Sprache Rego. Für Kubernetes gibt es daneben Kyverno, das Regeln als YAML beschreibt.

Eine Regel wie „kein Container darf als root laufen" oder „jedes Deployment braucht eine gültige SBOM" liegt damit im Repository wie Anwendungscode. Das Team bespricht Änderungen im Review und sichert die Regel mit Tests ab. Verstöße fallen beim Deployment auf und nicht erst im Audit Monate später. Eine Regel im Wiki-Artikel hängt davon ab, dass sich jemand an sie erinnert. Eine Regel als Code hängt nur davon ab, dass die Pipeline läuft.

Aus Sicht des Audits heißt dieselbe Idee Compliance as Code. Anforderungen aus der IEC 62443, aus NIS2 oder aus internen Sicherheitsrichtlinien werden zu ausführbaren Gates. Weil jede Regel versioniert im Repository liegt, entsteht die Audit-Spur nebenbei. Fragt der Auditor „Wer hat diese Regel wann geändert?", beantwortet ein git log das in Sekunden. Ohne Repository dauert dieselbe Antwort eine Woche Suche quer durch Laufwerke und Mail-Postfächer.

Bei den Werkzeugen hat sich seit 2024 einiges bewegt. OPA 1.0 erschien im Dezember 2024 und machte die bereinigte Sprachfassung Rego v1 zum Standard. Kubernetes bringt seit Version 1.30 die ValidatingAdmissionPolicy als stabile, eingebaute Policy-Prüfung mit. Sie nutzt die Ausdruckssprache CEL und braucht für einfache Cluster-Regeln keinen zusätzlichen Admission-Webhook. Wer Regeln über CI-Pipelines, Terraform, APIs und Kubernetes hinweg durchsetzen will, bleibt bei OPA am flexibelsten. Wer nur Kubernetes absichert, kommt mit Kyverno oder den Bordmitteln meist schlanker aus.

Die meisten Projekte stolpern über zu strikte Regeln. Eine Policy blockiert einen legitimen Sonderfall, das Team braucht den Release trotzdem, und die Ausnahme entsteht am System vorbei. Das verhindert nur ein dokumentierter Ausnahmeprozess. Dazu kommt die Einarbeitung in Rego: Eine Regel ohne Tests kann selbst falsch sein und lässt dann genau das durch, was sie verhindern soll.

// Beispiele aus der Praxis2 Szenarien
/01

Unsignierte Images im Fertigungs-Cluster

In einem Fertigungs-Cluster liefen Container aus öffentlichen Registries, die niemand geprüft hatte. Der Betreiber setzte OPA als Admission-Controller ein, der nur signierte Images aus der internen Registry und nur Pods mit definierten Ressourcen-Limits zulässt. Der Cluster weist Verstöße jetzt vor dem Scheduling ab, bevor der Pod überhaupt startet.

/02

Unverschlüsselte Storage-Buckets vor dem apply stoppen

Die Sicherheitsrichtlinie eines Unternehmens verlangte verschlüsselte Cloud-Ressourcen, geprüft wurde das stichprobenartig. Heute prüft eine Policy vor jedem terraform apply, ob neue Ressourcen verschlüsselt und korrekt getaggt sind. Fehlt die Verschlüsselung, bricht die Pipeline ab, und die Vorgabe greift ohne manuelle Kontrolle.

// Welcher Weg passt?Policy-as-Code
// In 2 Klicks: Ihr Policy-as-Code-EinstiegSchritt 1 / 2

Wo lohnt sich Policy-as-Code zuerst?

Policy-as-Code macht Regeln maschinell prüfbar statt zum PDF im Wiki — der beste Einstieg hängt daran, was Sie absichern wollen. Zwei Klicks geben die Richtung.

Was möchten Sie regelbasiert absichern?

// Häufige FragenFAQ
Wo in der Pipeline werden Policies geprüft?
Sinnvoll sind drei Stellen: im Pull Request als Pre-Merge-Check, im CI-Build als Gate vor dem Deployment und zur Laufzeit als Admission-Control im Cluster. Der Pre-Merge-Check gibt Entwicklern früh Feedback. Die Admission-Control fängt ab, was an der Pipeline vorbei direkt in den Cluster gelangt, zum Beispiel ein manuelles kubectl apply.
Brauche ich für Policy-as-Code zwingend Open Policy Agent?
Nein, OPA ist verbreitet, aber nicht alternativlos. Für reine Kubernetes-Szenarien ist Kyverno oft einfacher, weil Regeln als YAML statt in Rego entstehen. Für einfache Cluster-Regeln reicht auch die eingebaute ValidatingAdmissionPolicy. OPA lohnt sich, wenn Sie neben Kubernetes auch Terraform, CI-Pipelines oder APIs absichern.
Wie gehe ich mit berechtigten Ausnahmen um?
Über einen dokumentierten Ausnahmeprozess im Repository. Ausnahmen stehen als versionierte Annotationen oder gepflegte Allowlists im Code, jeweils mit Begründung und Ablaufdatum. So bleibt nachvollziehbar, wer welches Risiko wie lange akzeptiert hat, und keine Ausnahme bleibt stillschweigend für immer bestehen.
Was ist Compliance as Code?
Compliance as Code ist dasselbe Prinzip wie Policy-as-Code, betrachtet aus der Audit-Perspektive. Regulatorische Anforderungen, etwa aus IEC 62443, NIS2 oder internen Richtlinien, liegen als maschinenlesbare, versionierte Regeln vor, und die Pipeline prüft sie bei jedem Deployment. Der Nachweis für den Auditor entsteht damit als Nebenprodukt der Pipeline statt in wochenlanger Dokumentenarbeit.
Warum ist es wichtig, dass Policies versionierbar sind?
Weil eine Regel erst auditierbar ist, wenn ihre Geschichte nachvollziehbar ist. Im Repository hat jede Änderung Autor, Zeitpunkt und Begründung, das Team prüft sie im Review und kann sie bei Fehlern zurückrollen. Eine Richtlinie im PDF kann nichts davon.
// Ihre Einschätzung1 Klick, anonym

Wo steht Ihr Team bei Policy-as-Code?

Uns interessiert, wo Ihr Team bei diesem Thema steht. Auf Basis Ihrer Antwort schlagen wir Ihnen den sinnvollsten nächsten Schritt vor — ganz ohne Formular.

// Quellen und Referenzen3 Quellen

Weiterführende Primärquellen zu Policy-as-Code: Normtexte, Hersteller- und Projektdokumentation. Alle Ziele öffnen in einem neuen Tab.

// Nächster Schritt

Erstgespräch.
Kostenlos.
90 Tage zum Ergebnis.

Wir klären gemeinsam, wie Sie in 90 Tagen die ersten messbaren Industrial-DevOps-Erfolge erzielen.

Erstgespräch buchen
Seit 2006 · 47+ Projekte
Industrie · Automotive · Finance