Files
Benjamin Boenisch 4435e7ea0a Initial commit: breakpilot-compliance - Compliance SDK Platform
Services: Admin-Compliance, Backend-Compliance,
AI-Compliance-SDK, Consent-SDK, Developer-Portal,
PCA-Platform, DSMS

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 23:47:28 +01:00

392 lines
21 KiB
Python

"""
Seed data for Requirements.
Key requirements from:
- GDPR: Art. 5, 25, 28, 30, 32, 35 (Core Articles)
- AI Act: Art. 6, 9, 13, 14, 15 (High-Risk Requirements)
- CRA: Art. 10-15 (Vulnerability Handling)
- BSI-TR-03161: Security Requirements
"""
REQUIREMENTS_SEED = [
# =========================================================================
# GDPR - Datenschutz-Grundverordnung
# =========================================================================
{
"regulation_code": "GDPR",
"article": "Art. 5",
"paragraph": "(1)(a)",
"title": "Rechtmäßigkeit, Verarbeitung nach Treu und Glauben, Transparenz",
"description": "Personenbezogene Daten müssen rechtmäßig, nach Treu und Glauben und transparent verarbeitet werden.",
"requirement_text": "Personenbezogene Daten müssen auf rechtmäßige Weise, nach Treu und Glauben und in einer für die betroffene Person nachvollziehbaren Weise verarbeitet werden.",
"breakpilot_interpretation": "Breakpilot verarbeitet Daten nur mit gültiger Rechtsgrundlage (Einwilligung, Vertrag). Transparente Datenschutzerklärung und Consent-Management.",
"is_applicable": True,
"priority": 1,
},
{
"regulation_code": "GDPR",
"article": "Art. 5",
"paragraph": "(1)(b)",
"title": "Zweckbindung",
"description": "Daten dürfen nur für festgelegte, eindeutige und legitime Zwecke erhoben werden.",
"requirement_text": "Personenbezogene Daten müssen für festgelegte, eindeutige und legitime Zwecke erhoben werden und dürfen nicht in einer mit diesen Zwecken nicht zu vereinbarenden Weise weiterverarbeitet werden.",
"breakpilot_interpretation": "Jeder Verarbeitungszweck ist im Consent-System klar definiert. Keine Zweckänderung ohne neue Einwilligung.",
"is_applicable": True,
"priority": 1,
},
{
"regulation_code": "GDPR",
"article": "Art. 5",
"paragraph": "(1)(c)",
"title": "Datenminimierung",
"description": "Datenerhebung muss auf das notwendige Maß beschränkt sein.",
"requirement_text": "Personenbezogene Daten müssen dem Zweck angemessen und erheblich sowie auf das für die Zwecke der Verarbeitung notwendige Maß beschränkt sein.",
"breakpilot_interpretation": "Privacy by Design: Nur erforderliche Daten werden erhoben. Keine überschüssigen Profilfelder.",
"is_applicable": True,
"priority": 1,
},
{
"regulation_code": "GDPR",
"article": "Art. 5",
"paragraph": "(1)(f)",
"title": "Integrität und Vertraulichkeit",
"description": "Daten müssen vor unbefugter Verarbeitung und Verlust geschützt sein.",
"requirement_text": "Personenbezogene Daten müssen in einer Weise verarbeitet werden, die eine angemessene Sicherheit gewährleistet, einschließlich Schutz vor unbefugter oder unrechtmäßiger Verarbeitung und vor unbeabsichtigtem Verlust, Zerstörung oder Schädigung.",
"breakpilot_interpretation": "Verschlüsselung at Rest und in Transit, RBAC, Audit Logging, regelmäßige Backups.",
"is_applicable": True,
"priority": 1,
},
{
"regulation_code": "GDPR",
"article": "Art. 25",
"paragraph": "(1)",
"title": "Datenschutz durch Technikgestaltung",
"description": "Privacy by Design - Datenschutz muss in die Entwicklung eingebaut werden.",
"requirement_text": "Der Verantwortliche trifft sowohl zum Zeitpunkt der Festlegung der Mittel als auch zum Zeitpunkt der Verarbeitung geeignete technische und organisatorische Maßnahmen.",
"breakpilot_interpretation": "PbD-Checkliste für neue Features, Datenschutz-Review im Development-Prozess, Standard-Datenschutzeinstellungen.",
"is_applicable": True,
"priority": 1,
},
{
"regulation_code": "GDPR",
"article": "Art. 25",
"paragraph": "(2)",
"title": "Datenschutzfreundliche Voreinstellungen",
"description": "Privacy by Default - Standardeinstellungen müssen datenschutzfreundlich sein.",
"requirement_text": "Der Verantwortliche trifft geeignete Maßnahmen, die sicherstellen, dass durch Voreinstellung nur personenbezogene Daten verarbeitet werden, deren Verarbeitung für den jeweiligen bestimmten Verarbeitungszweck erforderlich ist.",
"breakpilot_interpretation": "Opt-In statt Opt-Out, minimale Default-Datenerhebung, Consent granular einholbar.",
"is_applicable": True,
"priority": 1,
},
{
"regulation_code": "GDPR",
"article": "Art. 28",
"paragraph": "(1)",
"title": "Auftragsverarbeiter",
"description": "Nur Auftragsverarbeiter mit hinreichenden Garantien dürfen beauftragt werden.",
"requirement_text": "Erfolgt eine Verarbeitung im Auftrag eines Verantwortlichen, so arbeitet dieser nur mit Auftragsverarbeitern, die hinreichend Garantien dafür bieten.",
"breakpilot_interpretation": "AVV mit allen Sub-Processors, regelmäßige Überprüfung der Garantien, Sub-Processor-Liste gepflegt.",
"is_applicable": True,
"priority": 2,
},
{
"regulation_code": "GDPR",
"article": "Art. 28",
"paragraph": "(3)",
"title": "AVV-Pflichtinhalte",
"description": "Auftragsverarbeitungsverträge müssen bestimmte Mindestinhalte haben.",
"requirement_text": "Die Verarbeitung durch einen Auftragsverarbeiter erfolgt auf der Grundlage eines Vertrags, der Gegenstand, Dauer, Art und Zweck der Verarbeitung, Art der Daten und Kategorien betroffener Personen festlegt.",
"breakpilot_interpretation": "AVV-Template nach Art. 28 Abs. 3, alle Pflichtklauseln enthalten, rechtliche Prüfung.",
"is_applicable": True,
"priority": 2,
},
{
"regulation_code": "GDPR",
"article": "Art. 30",
"paragraph": "(1)",
"title": "Verarbeitungsverzeichnis",
"description": "Führung eines Verzeichnisses aller Verarbeitungstätigkeiten.",
"requirement_text": "Jeder Verantwortliche führt ein Verzeichnis aller Verarbeitungstätigkeiten, die seiner Zuständigkeit unterliegen.",
"breakpilot_interpretation": "VVT gepflegt mit allen Verarbeitungen, regelmäßige Aktualisierung, alle Pflichtangaben enthalten.",
"is_applicable": True,
"priority": 1,
},
{
"regulation_code": "GDPR",
"article": "Art. 32",
"paragraph": "(1)(a)",
"title": "Pseudonymisierung und Verschlüsselung",
"description": "Technische Maßnahmen zur Pseudonymisierung und Verschlüsselung.",
"requirement_text": "Die Pseudonymisierung und Verschlüsselung personenbezogener Daten.",
"breakpilot_interpretation": "AES-256 Encryption at Rest, TLS 1.3 in Transit, Pseudonymisierung wo möglich.",
"is_applicable": True,
"priority": 1,
},
{
"regulation_code": "GDPR",
"article": "Art. 32",
"paragraph": "(1)(b)",
"title": "Vertraulichkeit und Integrität der Systeme",
"description": "Fähigkeit, Vertraulichkeit, Integrität und Verfügbarkeit sicherzustellen.",
"requirement_text": "Die Fähigkeit, die Vertraulichkeit, Integrität, Verfügbarkeit und Belastbarkeit der Systeme und Dienste im Zusammenhang mit der Verarbeitung auf Dauer sicherzustellen.",
"breakpilot_interpretation": "RBAC, Audit Logging, DDoS-Schutz, Monitoring & Alerting, redundante Infrastruktur.",
"is_applicable": True,
"priority": 1,
},
{
"regulation_code": "GDPR",
"article": "Art. 32",
"paragraph": "(1)(c)",
"title": "Wiederherstellbarkeit",
"description": "Fähigkeit zur raschen Wiederherstellung nach Zwischenfällen.",
"requirement_text": "Die Fähigkeit, die Verfügbarkeit der personenbezogenen Daten und den Zugang zu ihnen bei einem physischen oder technischen Zwischenfall rasch wiederherzustellen.",
"breakpilot_interpretation": "Tägliche Backups, dokumentierter Recovery-Plan, RTO < 4h, getestete Wiederherstellung.",
"is_applicable": True,
"priority": 1,
},
{
"regulation_code": "GDPR",
"article": "Art. 32",
"paragraph": "(1)(d)",
"title": "Regelmäßige Überprüfung",
"description": "Regelmäßige Überprüfung und Bewertung der Wirksamkeit der TOMs.",
"requirement_text": "Ein Verfahren zur regelmäßigen Überprüfung, Bewertung und Evaluierung der Wirksamkeit der technischen und organisatorischen Maßnahmen.",
"breakpilot_interpretation": "Jährliche Sicherheitsaudits, Penetration Tests, Control Reviews, Compliance Dashboard.",
"is_applicable": True,
"priority": 2,
},
{
"regulation_code": "GDPR",
"article": "Art. 35",
"paragraph": "(1)",
"title": "Datenschutz-Folgenabschätzung",
"description": "DPIA bei voraussichtlich hohem Risiko für Betroffene.",
"requirement_text": "Hat eine Form der Verarbeitung voraussichtlich ein hohes Risiko für die Rechte und Freiheiten natürlicher Personen zur Folge, so führt der Verantwortliche vorab eine Abschätzung der Folgen durch.",
"breakpilot_interpretation": "DPIA für KI-Verarbeitung und Schülerdaten durchgeführt, Risiken bewertet, Maßnahmen dokumentiert.",
"is_applicable": True,
"priority": 1,
},
# =========================================================================
# AI Act - KI-Verordnung
# =========================================================================
{
"regulation_code": "AIACT",
"article": "Art. 6",
"paragraph": "(1)",
"title": "Klassifizierungsregeln für Hochrisiko-KI-Systeme",
"description": "KI-Systeme müssen nach Risiko klassifiziert werden.",
"requirement_text": "Ein KI-System wird als Hochrisiko-KI-System eingestuft, wenn es als Sicherheitskomponente eines Produkts verwendet wird oder selbst ein Produkt ist, das unter bestimmte Harmonisierungsrechtsvorschriften fällt.",
"breakpilot_interpretation": "Breakpilot KI-Systeme klassifiziert als Limited Risk (Bildungsunterstützung). Keine High-Risk-Klassifizierung, da keine Bewertung/Prüfung mit rechtlicher Wirkung.",
"is_applicable": True,
"priority": 2,
},
{
"regulation_code": "AIACT",
"article": "Art. 9",
"paragraph": "(1)",
"title": "Risikomanagement für High-Risk-KI",
"description": "Risikomanagement-System für Hochrisiko-KI etablieren.",
"requirement_text": "Für Hochrisiko-KI-Systeme wird ein Risikomanagementsystem eingerichtet, umgesetzt, dokumentiert und aufrechterhalten.",
"breakpilot_interpretation": "Obwohl nicht High-Risk: Risikobewertung für KI-Use-Cases durchgeführt, Mitigationsmaßnahmen dokumentiert.",
"is_applicable": True,
"applicability_reason": "Best Practice auch für Limited Risk KI",
"priority": 2,
},
{
"regulation_code": "AIACT",
"article": "Art. 13",
"paragraph": "(1)",
"title": "Transparenz",
"description": "KI-Systeme müssen so konzipiert sein, dass Nutzer sie verstehen können.",
"requirement_text": "Hochrisiko-KI-Systeme werden so konzipiert und entwickelt, dass ihr Betrieb hinreichend transparent ist, damit die Nutzer die Ausgaben des Systems interpretieren und angemessen nutzen können.",
"breakpilot_interpretation": "KI-generierte Inhalte sind als solche gekennzeichnet. Erklärbare KI-Outputs wo möglich.",
"is_applicable": True,
"priority": 2,
},
{
"regulation_code": "AIACT",
"article": "Art. 14",
"paragraph": "(1)",
"title": "Menschliche Aufsicht",
"description": "Hochrisiko-KI-Systeme müssen menschliche Aufsicht ermöglichen.",
"requirement_text": "Hochrisiko-KI-Systeme werden so konzipiert und entwickelt, dass sie während der Zeit ihrer Nutzung wirksam von natürlichen Personen beaufsichtigt werden können.",
"breakpilot_interpretation": "Human-in-the-Loop für KI-generierte Arbeitsblätter. Lehrer können KI-Vorschläge prüfen und anpassen.",
"is_applicable": True,
"priority": 2,
},
{
"regulation_code": "AIACT",
"article": "Art. 15",
"paragraph": "(1)",
"title": "Genauigkeit, Robustheit und Cybersicherheit",
"description": "KI-Systeme müssen ein angemessenes Maß an Genauigkeit erreichen.",
"requirement_text": "Hochrisiko-KI-Systeme werden so konzipiert und entwickelt, dass sie in Bezug auf ihre Zweckbestimmung ein angemessenes Maß an Genauigkeit, Robustheit und Cybersicherheit erreichen.",
"breakpilot_interpretation": "LLM-Outputs werden auf Qualität geprüft. Feedback-Loop für kontinuierliche Verbesserung.",
"is_applicable": True,
"priority": 2,
},
{
"regulation_code": "AIACT",
"article": "Art. 50",
"paragraph": "(1)",
"title": "Kennzeichnungspflicht für KI-generierte Inhalte",
"description": "Nutzer müssen informiert werden, dass sie mit KI interagieren.",
"requirement_text": "Anbieter stellen sicher, dass KI-Systeme, die für die Interaktion mit natürlichen Personen bestimmt sind, so konzipiert werden, dass natürliche Personen darüber informiert werden, dass sie mit einem KI-System interagieren.",
"breakpilot_interpretation": "KI-Features sind klar als solche gekennzeichnet. KI-Icon und Hinweistexte implementiert.",
"is_applicable": True,
"priority": 1,
},
# =========================================================================
# CRA - Cyber Resilience Act
# =========================================================================
{
"regulation_code": "CRA",
"article": "Art. 10",
"paragraph": "(1)",
"title": "Wesentliche Cybersicherheitsanforderungen",
"description": "Produkte müssen ohne bekannte ausnutzbare Schwachstellen ausgeliefert werden.",
"requirement_text": "Produkte mit digitalen Elementen werden so konzipiert, entwickelt und hergestellt, dass sie ein angemessenes Cybersicherheitsniveau gewährleisten.",
"breakpilot_interpretation": "Secure-by-Design Entwicklung, SAST/DAST in CI, keine bekannten Critical/High CVEs bei Release.",
"is_applicable": True,
"priority": 1,
},
{
"regulation_code": "CRA",
"article": "Art. 11",
"paragraph": "(1)",
"title": "Meldung ausgenutzter Schwachstellen",
"description": "Aktiv ausgenutzte Schwachstellen müssen innerhalb von 24h gemeldet werden.",
"requirement_text": "Der Hersteller meldet dem CSIRT und der ENISA jede aktiv ausgenutzte Schwachstelle innerhalb von 24 Stunden nach Kenntnisnahme.",
"breakpilot_interpretation": "Incident Response Plan enthält 24h-Meldepflicht. Kontakt zu BSI/CERT-Bund etabliert.",
"is_applicable": True,
"priority": 1,
},
{
"regulation_code": "CRA",
"article": "Art. 13",
"paragraph": "(1)",
"title": "Software Bill of Materials",
"description": "SBOM muss für alle Produkte erstellt werden.",
"requirement_text": "Hersteller ermitteln und dokumentieren Komponenten, die in dem Produkt enthalten sind, unter anderem durch Erstellung einer Software-Stückliste.",
"breakpilot_interpretation": "CycloneDX SBOM wird automatisch bei jedem Release generiert und veröffentlicht.",
"is_applicable": True,
"priority": 1,
},
{
"regulation_code": "CRA",
"article": "Art. 14",
"paragraph": "(1)",
"title": "Sicherheitsupdates",
"description": "Sicherheitsupdates müssen kostenlos und zeitnah bereitgestellt werden.",
"requirement_text": "Hersteller stellen sicher, dass Schwachstellen durch kostenlose Sicherheitsupdates behoben werden können, die unverzüglich bereitgestellt werden.",
"breakpilot_interpretation": "Patch-SLA: Critical < 7 Tage, High < 30 Tage. Updates automatisch verteilt.",
"is_applicable": True,
"priority": 1,
},
{
"regulation_code": "CRA",
"article": "Art. 15",
"paragraph": "(1)",
"title": "Support-Zeitraum",
"description": "Mindest-Support-Zeitraum für Sicherheitsupdates.",
"requirement_text": "Der Support-Zeitraum beträgt mindestens fünf Jahre, es sei denn, die Lebensdauer des Produkts ist kürzer.",
"breakpilot_interpretation": "Breakpilot garantiert 5 Jahre Sicherheitsupdates ab Produktversion. EOL-Policy kommuniziert.",
"is_applicable": True,
"priority": 2,
},
# =========================================================================
# BSI-TR-03161 - Mobile Application Security
# =========================================================================
{
"regulation_code": "BSI-TR-03161-1",
"article": "O.Arch_1",
"paragraph": None,
"title": "Sichere Architektur",
"description": "Anwendung muss nach Prinzipien sicherer Architektur entwickelt werden.",
"requirement_text": "Die Architektur der Anwendung MUSS nach anerkannten Prinzipien sicherer Software-Architektur entwickelt werden.",
"breakpilot_interpretation": "Defense in Depth, Least Privilege, Fail Secure implementiert in Backend und Mobile App.",
"is_applicable": True,
"priority": 1,
},
{
"regulation_code": "BSI-TR-03161-1",
"article": "O.Auth_1",
"paragraph": None,
"title": "Starke Authentisierung",
"description": "Sichere Authentisierungsmechanismen müssen implementiert sein.",
"requirement_text": "Die Anwendung MUSS sichere Authentisierungsmechanismen implementieren.",
"breakpilot_interpretation": "JWT-basierte Authentifizierung, MFA für Admin-Accounts, sichere Session-Verwaltung.",
"is_applicable": True,
"priority": 1,
},
{
"regulation_code": "BSI-TR-03161-1",
"article": "O.Cryp_1",
"paragraph": None,
"title": "Sichere Kryptographie",
"description": "Nur sichere kryptographische Verfahren dürfen verwendet werden.",
"requirement_text": "Die Anwendung MUSS ausschließlich als sicher anerkannte kryptographische Verfahren verwenden.",
"breakpilot_interpretation": "TLS 1.3, AES-256, bcrypt für Passwörter. Keine schwachen Algorithmen (MD5, SHA1, DES).",
"is_applicable": True,
"priority": 1,
},
{
"regulation_code": "BSI-TR-03161-1",
"article": "O.Data_1",
"paragraph": None,
"title": "Datensicherheit",
"description": "Sensible Daten müssen angemessen geschützt werden.",
"requirement_text": "Die Anwendung MUSS sensible Daten sowohl bei der Übertragung als auch bei der Speicherung angemessen schützen.",
"breakpilot_interpretation": "Encryption at Rest und in Transit, keine PII in Logs, sichere Key-Speicherung in Vault.",
"is_applicable": True,
"priority": 1,
},
{
"regulation_code": "BSI-TR-03161-2",
"article": "O.Auth_2",
"paragraph": None,
"title": "Session Management",
"description": "Sichere Session-Verwaltung für Web-Anwendungen.",
"requirement_text": "Web-Anwendungen MÜSSEN ein sicheres Session-Management implementieren.",
"breakpilot_interpretation": "JWT mit kurzer Expiry, Refresh-Token-Rotation, CSRF-Schutz, Secure/HttpOnly Cookies.",
"is_applicable": True,
"priority": 1,
},
{
"regulation_code": "BSI-TR-03161-2",
"article": "O.Source_1",
"paragraph": None,
"title": "Input-Validierung",
"description": "Alle Eingaben müssen validiert werden.",
"requirement_text": "Alle Eingaben MÜSSEN vor der Verarbeitung auf Gültigkeit geprüft werden.",
"breakpilot_interpretation": "Server-side Validation für alle Inputs, Sanitization, Protection gegen Injection-Angriffe.",
"is_applicable": True,
"priority": 1,
},
{
"regulation_code": "BSI-TR-03161-3",
"article": "O.Back_1",
"paragraph": None,
"title": "Sichere Backend-Kommunikation",
"description": "Kommunikation zwischen Komponenten muss abgesichert sein.",
"requirement_text": "Die Kommunikation zwischen Frontend und Backend MUSS über sichere Kanäle erfolgen.",
"breakpilot_interpretation": "TLS 1.3 für alle internen Verbindungen, mTLS für Service-to-Service wo möglich.",
"is_applicable": True,
"priority": 1,
},
{
"regulation_code": "BSI-TR-03161-3",
"article": "O.Ops_1",
"paragraph": None,
"title": "Sichere Konfiguration",
"description": "Backend-Systeme müssen sicher konfiguriert sein.",
"requirement_text": "Backend-Systeme MÜSSEN nach Security-Best-Practices konfiguriert werden.",
"breakpilot_interpretation": "Hardened Container Images, keine Default-Credentials, Secrets in Vault, minimale Ports.",
"is_applicable": True,
"priority": 1,
},
]