Files
msolarczekandClaude Opus 5 c8e6f30a27
CI / build-and-check (push) Canceled after 0s
CI / audit (push) Canceled after 0s
CI / sbom (push) Canceled after 0s
Basis: Certvia dev@a48c5fb als Fundament für Craftvia
Unveränderter Stand von certvia/dev (a48c5fb) plus Craftvia-Spezifikation
und Brandbook unter docs/craftvia/. ISMS-Module werden im Folgecommit entfernt.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-14 11:05:39 +02:00

4.8 KiB
Raw Permalink Blame History

C3 — Regelfähige Vorlagen-Auszeichnung (Annotationskonvention + Verify + Erweiterung)

Schaltet frei: B4 (Richtlinien – Import + Upload + Control-Mapping). Grundlage: isms-vorlagenpaket-v2/ (34 Vorlagen, mapping.json, variables.schema.json, _verify.py).

1. Ist-Zustand (Informationssicherheit) — vollständig annotiert

Das Vorlagenpaket ist für die Informationssicherheit bereits regelfähig ausgezeichnet und konsistent:

  • 34 Vorlagen – Leitlinie L00, Richtlinien R01–R14, Verfahren VA-01 … VA-19, plus Technische-Sicherheits-Baseline.md, Nachweisregister_zentral.md, ISA-Mapping-Matrix.md.
  • 316 Anforderungen in mapping.json (312 ISA + 4 kundenspezifisch KI), je mit stabiler ID, type, level, policy, condition-Flag, req_anchor/impl_anchor, verfahren.
  • python3 _verify.py → OK (Render ohne offene Platzhalter für FLAG_INCLUDE_SHOULD an/aus, keine verwaisten Anker, keine Handlebars-Reste). Dieser Lauf ist die Abnahmebedingung jeder Änderung.

Für Informationssicherheit ist C3 damit als „bestätigt/konsistent" zu betrachten; die SME-Aufgabe ist Pflege + die Erweiterung um Prototypenschutz/Datenschutz (Abschnitt 3).

2. Annotationskonvention (verbindlich für alle Vorlagen)

Konstrukt Bedeutung Beispiel
{{VARIABLE}} Variable aus variables.schema.json {{ORG_NAME}}, {{MFA_SCOPE}}
{{#if FLAG_X}} … {{/if}} Bedingter Block (Feature-Flag/Reifegrad/Schutzbedarf) {{#if FLAG_HIGH_PROTECTION}} … {{/if}}
[MUSS]/[SOLL]/[HOCH]/[SEHR HOCH] Sichtbare Kennzeichnung der Anforderungsstufe - **[SOLL]** …
<!-- REQ <id> --> Hidden-Anker vor einer Einzelanforderung <!-- REQ 4.1.2-H1 -->
<!-- IMPL <control> --> Hidden-Anker vor dem Umsetzungstext (Control-gebündelt) <!-- IMPL 4.1.2 -->
<!-- IMPL <control>-elev --> Umsetzungsvariante für erhöhten Schutzbedarf <!-- IMPL 4.1.2-elev -->
{{LINK:ZIEL}} Laufzeit-Link (Dokument/Nachweisregister) {{LINK:R08#4.1.2}}
Verfahrensanker `<!-- FULFILLS POLICY -->` VA erfüllt Anforderungen

Regeln für eine regelfähige Auszeichnung

  1. Jede Einzelanforderung erhält genau einen <!-- REQ <id> -->-Anker, dessen ID exakt der mapping.json-id entspricht.
  2. [SOLL] immer in {{#if FLAG_INCLUDE_SHOULD}}, [HOCH] in {{#if FLAG_HIGH_PROTECTION}}, [SEHR HOCH] in {{#if FLAG_VERY_HIGH_PROTECTION}}. Der condition-Wert in mapping.json und der {{#if}} im Dokument müssen übereinstimmen.
  3. Feature-abhängige Klauseln (Cloud/KI/OT/Dev/Mobil/PKI/Extern/Kundensysteme) in den passenden {{#if FLAG_*}}-Block.
  4. Konkrete Zahlenwerte nie hart schreiben, sondern über Baseline-Variable ({{PW_MIN_LENGTH}} …) referenzieren.
  5. <!-- … -->-Anker im Dokument belassen (im Lesemodus unsichtbar); nur der PDF-/Druckexport entfernt sie.
  6. Nach jeder Änderung python3 _verify.py → OK.

3. Erweiterung: Prototypenschutz (P01) + Datenschutz (D01)

Das Paket ist „VDA ISA 2027 (Information Security)". Für die Prüfziele Prototypenschutz (8.x) und Datenschutz (9.x) sind Vorlagen + mapping.json-Einträge neu anzulegen — nach identischer Konvention. Vorschlag:

  • Neue Vorlage P01_Prototypenschutz.md (Richtlinie Prototypenschutz) + Verfahren VA-20_Prototypen-Zutritt-und-Transport. Deckt 8.1.x (physische Sicherheit/Perimeter/Zonen/Zutritt/Einbruch/Besucher/Mandantentrennung), 8.2.x (Geheimhaltung/Unterauftragnehmer/Schulung/Klassifizierung/Bildaufzeichnung), 8.3.x (Transport/Lagerung). 8.4.x/8.5.x nur bei erweitertem Prüfziel.
  • Neue Vorlage D01_Datenschutz.md (Richtlinie Datenschutz) — kann R14 Compliance & Datenschutz erweitern/aufteilen; Verfahren VA-18 Datenschutz-und-Compliance-Pflege ist vorhanden. Deckt 9.1.x–9.8.x.
  • Je neuer Anforderung ein mapping.json-Eintrag im gleichen Schema (id,policy=P01/D01,control,level,type,is_isa=true,req_anchor,impl_anchor,condition,requirement,verfahren). Anforderungs-IDs siehe C1/C6-Dekomposition (8.1.1-M1 …, 9.1.1-M1 …).
  • Neue FLAG_* bei Bedarf zuerst in variables.schema.json (z. B. FLAG_PROTOTYPE_PROTECTION), damit _verify.py sie kennt; Prototypenschutz-Klauseln in {{#if FLAG_PROTOTYPE_PROTECTION}}.
  • _verify.py um die neuen Verzeichnisse/Anker erweitern, dann → OK.

4. Control-Zuordnung beim manuellen Upload (B4b)

Für hochgeladene eigene Richtlinien (kein Template): Pflichtfeld „belegt Controls" (Multi-Select aus dem Control-Katalog). Optional je Control die abgedeckten Anforderungs-IDs. Diese Zuordnung fließt wie ein <!-- REQ -->-Anker in die Nachweislage (Schritt 7) — ohne Tailoring, aber mit voller Reifegrad-/Gap-Wirkung. Ein späterer Gap-Check (Dokumentinhalt ↔ Anforderungstext) ist als Option vorgesehen (offener Entscheidungspunkt).