Open Policy Agent (OPA) für Cloud-Sicherheit und Compliance verwenden
9. Oktober 2019
0 Min. LesezeitAnmerkung der Redaktion
Dieser Blogbeitrag erschien ursprünglich auf fugue.co. Fugue wurde 2022 Teil von Snyk und ist ein wichtiger Bestandteil von Snyk IaC.
So wie die Herausforderungen beim Verwalten umfangreicher Cloud-Infrastrukturen zur Entwicklung von Infrastructure as Code geführt haben, hat das Bedürfnis, die Sicherheit und Compliance dieser Umgebungen zu gewährleisten, Policy as Code hervorgebracht. Cloud-Infrastrukturen sind schlicht zu umfangreich, komplex und dynamisch, um ihnen mit herkömmlichen Sicherheitsansätzen wie manuellen Audits und Checklisten gerecht zu werden.
Leider sind die meisten Policy-as-Code-Sprachen proprietär und quelloffen nicht verfügbar, da sie von Cloud-Anbietern bereitgestellt werden. Sie binden Kunden an einen Anbieter, sind mit anderen Policy-Frameworks im Unternehmen möglicherweise inkompatibel und lassen sich oft nur schwer auf spezifische Anwendungsfälle zuschneiden.
Open Policy Agent (OPA) ist eine quelloffene Policy-Engine für allgemeine Zwecke, und Rego ist die deklarative Policy-Sprache von OPA. In Kombination mit Fugue bietet sie maximale Flexibilität bei der Umsetzung von Richtlinien für Cloud-Infrastrukturen. Die Cloud Native Computing Foundation (CNCF) nahm OPA im April 2019 als gehostetes Projekt auf Inkubationsstufe auf.
Bei Fugue nutzen wir OPA und Rego als Policy-as-Code-Framework in unserer SaaS-Lösung für Cloud-Sicherheit und Compliance – und das funktioniert einfach hervorragend. OPA wird vor allem zur Entwicklung von Zugriffsrichtlinien für Kubernetes eingesetzt. Wir nutzen die Technologie jedoch auch umfassend für eine Vielzahl weiterer Anwendungsfälle rund um Cloud-Infrastrukturen auf Amazon Web Services (AWS) und Microsoft Azure. Unsere Ankündigung finden Sie hier.
Durch den Einsatz von OPA und Rego konnten wir unseren Kunden leistungsstarke und flexible Policy-as-Code-Funktionen bieten. Dazu gehört auch die Möglichkeit, schnell und einfach benutzerdefinierte Richtlinien für Cloud-Infrastrukturen zu erstellen.
Die benutzerdefinierten Regeln von Fugue auf Basis von OPA ermöglichen es Nutzern:
Benutzerdefinierte, nutzerdefinierte Regeln für Cloud-Infrastrukturen in OPA Rego über die Fugue API, CLI und Weboberfläche zu erstellen und zu verwalten
Benutzerdefinierte Regeln während der Erstellung zu validieren und zu testen – mit hilfreichen Fehlermeldungen, die Zeit sparen
Die Compliance mit benutzerdefinierten Regeln und sofort einsatzbereiten Policy-Frameworks kontinuierlich zu validieren und darüber zu berichten
Hier einige Beispiele für benutzerdefinierte Richtlinien mit OPA und Fugue:
Öffentlich zugängliche und unverschlüsselte S3-Buckets erkennen
Zulässige Cloud-Regionen festlegen
Zulässige Maschinen-Images (z. B. AMIs) festlegen
Sicherstellen, dass VPC-Flow-Logs konfiguriert sind
Zulässige Instanzgrößen (z. B. EC2) festlegen
IAM-Richtlinien auf Prinzipien der minimalen Berechtigungen überprüfen
Welche Ingress-Regeln für Security Groups zulässig sind
Soll eine Security Group beispielsweise Port 9200 nicht für den gesamten Datenverkehr aus dem Internet öffnen, kann die Regel wie folgt formuliert werden:
Die meisten Unternehmen müssen außerdem einen oder mehrere Compliance-Frameworks einhalten. Daher bietet Fugue mit OPA standardmäßig Unterstützung für CIS Foundations Benchmarks (AWS und Azure), GDPR, HIPAA, ISO 27001, NIST 800-53, PCI und SOC 2.
Fugue führt mit OPA täglich Millionen von Sicherheitsregelprüfungen durch. Deshalb haben wir viel Arbeit in Entwicklertools investiert und werden all diese Beiträge mit der Open-Source-Community teilen. Wir sind begeistert von OPA und freuen uns darauf, uns stärker an diesem wichtigen Open-Source-Projekt zu beteiligen.
IaC-Sicherheit für Entwickler
Snyk schützt Ihre Infrastructure as Code vom SDLC bis zur Laufzeit in der Cloud mit einer einheitlichen Policy-as-Code-Engine, damit jedes Team sicher entwickeln, bereitstellen und betreiben kann.
