feat: DSR Prozessbeschreibungen Art. 15-21 mit Swim-Lane-Diagrammen
Some checks failed
Build + Deploy / build-admin-compliance (push) Successful in 10s
Build + Deploy / build-backend-compliance (push) Successful in 9s
Build + Deploy / build-ai-sdk (push) Successful in 8s
Build + Deploy / build-developer-portal (push) Successful in 7s
Build + Deploy / build-tts (push) Successful in 7s
Build + Deploy / build-document-crawler (push) Successful in 7s
Build + Deploy / build-dsms-gateway (push) Successful in 7s
CI / branch-name (push) Has been skipped
CI / guardrail-integrity (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go (push) Failing after 41s
CI / test-python-backend (push) Successful in 35s
CI / test-python-document-crawler (push) Successful in 25s
CI / test-python-dsms-gateway (push) Successful in 21s
CI / loc-budget (push) Failing after 13s
CI / secret-scan (push) Has been skipped
CI / go-lint (push) Has been skipped
CI / nodejs-build (push) Successful in 2m29s
CI / dep-audit (push) Has been skipped
CI / sbom-scan (push) Has been skipped
CI / validate-canonical-controls (push) Successful in 13s
Build + Deploy / trigger-orca (push) Successful in 1m53s
Some checks failed
Build + Deploy / build-admin-compliance (push) Successful in 10s
Build + Deploy / build-backend-compliance (push) Successful in 9s
Build + Deploy / build-ai-sdk (push) Successful in 8s
Build + Deploy / build-developer-portal (push) Successful in 7s
Build + Deploy / build-tts (push) Successful in 7s
Build + Deploy / build-document-crawler (push) Successful in 7s
Build + Deploy / build-dsms-gateway (push) Successful in 7s
CI / branch-name (push) Has been skipped
CI / guardrail-integrity (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go (push) Failing after 41s
CI / test-python-backend (push) Successful in 35s
CI / test-python-document-crawler (push) Successful in 25s
CI / test-python-dsms-gateway (push) Successful in 21s
CI / loc-budget (push) Failing after 13s
CI / secret-scan (push) Has been skipped
CI / go-lint (push) Has been skipped
CI / nodejs-build (push) Successful in 2m29s
CI / dep-audit (push) Has been skipped
CI / sbom-scan (push) Has been skipped
CI / validate-canonical-controls (push) Successful in 13s
Build + Deploy / trigger-orca (push) Successful in 1m53s
7 vollstaendige Prozessbeschreibungen fuer den Document Generator: - Art. 15: Auskunftsrecht (30 Tage, 6 Schritte, Informationskatalog) - Art. 16: Berichtigungsrecht (14 Tage, inkl. Art. 19 Mitteilung) - Art. 17: Loeschungsrecht (14 Tage, Art. 17(3) Ausnahmen-Checkliste) - Art. 18: Einschraenkungsrecht (14 Tage, erlaubte Verarbeitung) - Art. 19: Mitteilungspflicht (automatisch bei Art. 16/17/18) - Art. 20: Datenuebertragbarkeit (30 Tage, JSON/CSV/XML Export) - Art. 21: Widerspruchsrecht (30 Tage, Sonderfall Direktwerbung) Jede Beschreibung enthaelt: - Mermaid Swim-Lane-Diagramm (Betroffener/Sachbearbeitung/Fachabteilung/DSB) - Detaillierte Schritt-Tabelle mit Verantwortlichkeiten und Fristen - Rechtsgrundlagen-Verweise - Firmen-Platzhalter (FIRMENNAME, VERSION, DATUM, DSB_NAME) Integration: - 7 neue Typen in VALID_DOCUMENT_TYPES (legal_template_routes.py) - Neue Kategorie "DSR-Prozesse" im Document Generator Frontend - DSR types-core.ts: templateType Feld verknuepft DSR → Document Generator - Migration 085 seeded die Templates in die legal_templates Tabelle [migration-approved] Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -18,6 +18,10 @@ export const CATEGORIES: { key: string; label: string; types: string[] | null }[
|
|||||||
{ key: 'cloud', label: 'Cloud', types: ['cloud_service_agreement'] },
|
{ key: 'cloud', label: 'Cloud', types: ['cloud_service_agreement'] },
|
||||||
{ key: 'misc', label: 'Weitere', types: ['community_guidelines', 'copyright_policy', 'data_usage_clause'] },
|
{ key: 'misc', label: 'Weitere', types: ['community_guidelines', 'copyright_policy', 'data_usage_clause'] },
|
||||||
{ key: 'dsfa', label: 'DSFA', types: ['dsfa'] },
|
{ key: 'dsfa', label: 'DSFA', types: ['dsfa'] },
|
||||||
|
{ key: 'dsr', label: 'DSR-Prozesse', types: [
|
||||||
|
'dsr_process_art15', 'dsr_process_art16', 'dsr_process_art17',
|
||||||
|
'dsr_process_art18', 'dsr_process_art19', 'dsr_process_art20', 'dsr_process_art21',
|
||||||
|
]},
|
||||||
]
|
]
|
||||||
|
|
||||||
// =============================================================================
|
// =============================================================================
|
||||||
|
|||||||
@@ -52,6 +52,8 @@ export interface DSRTypeInfo {
|
|||||||
color: string
|
color: string
|
||||||
bgColor: string
|
bgColor: string
|
||||||
processDocument?: string
|
processDocument?: string
|
||||||
|
/** Document type in the legal_templates table for the Document Generator */
|
||||||
|
templateType?: string
|
||||||
}
|
}
|
||||||
|
|
||||||
export const DSR_TYPE_INFO: Record<DSRType, DSRTypeInfo> = {
|
export const DSR_TYPE_INFO: Record<DSRType, DSRTypeInfo> = {
|
||||||
@@ -60,41 +62,47 @@ export const DSR_TYPE_INFO: Record<DSRType, DSRTypeInfo> = {
|
|||||||
description: 'Recht auf Auskunft ueber gespeicherte personenbezogene Daten',
|
description: 'Recht auf Auskunft ueber gespeicherte personenbezogene Daten',
|
||||||
defaultDeadlineDays: 30, maxExtensionMonths: 2,
|
defaultDeadlineDays: 30, maxExtensionMonths: 2,
|
||||||
color: 'text-blue-700', bgColor: 'bg-blue-100',
|
color: 'text-blue-700', bgColor: 'bg-blue-100',
|
||||||
processDocument: 'Prozessbeschreibung Art. 15 DSGVO_v02.pdf'
|
processDocument: 'Prozessbeschreibung Art. 15 DSGVO_v02.pdf',
|
||||||
|
templateType: 'dsr_process_art15',
|
||||||
},
|
},
|
||||||
rectification: {
|
rectification: {
|
||||||
type: 'rectification', article: 'Art. 16', label: 'Berichtigungsrecht', labelShort: 'Berichtigung',
|
type: 'rectification', article: 'Art. 16', label: 'Berichtigungsrecht', labelShort: 'Berichtigung',
|
||||||
description: 'Recht auf Berichtigung unrichtiger personenbezogener Daten',
|
description: 'Recht auf Berichtigung unrichtiger personenbezogener Daten',
|
||||||
defaultDeadlineDays: 14, maxExtensionMonths: 2,
|
defaultDeadlineDays: 14, maxExtensionMonths: 2,
|
||||||
color: 'text-yellow-700', bgColor: 'bg-yellow-100',
|
color: 'text-yellow-700', bgColor: 'bg-yellow-100',
|
||||||
processDocument: 'Prozessbeschriebung Art. 16 DSGVO_v02.pdf'
|
processDocument: 'Prozessbeschreibung Art. 16 DSGVO_v02.pdf',
|
||||||
|
templateType: 'dsr_process_art16',
|
||||||
},
|
},
|
||||||
erasure: {
|
erasure: {
|
||||||
type: 'erasure', article: 'Art. 17', label: 'Loeschungsrecht', labelShort: 'Loeschung',
|
type: 'erasure', article: 'Art. 17', label: 'Loeschungsrecht', labelShort: 'Loeschung',
|
||||||
description: 'Recht auf Loeschung personenbezogener Daten ("Recht auf Vergessenwerden")',
|
description: 'Recht auf Loeschung personenbezogener Daten ("Recht auf Vergessenwerden")',
|
||||||
defaultDeadlineDays: 14, maxExtensionMonths: 2,
|
defaultDeadlineDays: 14, maxExtensionMonths: 2,
|
||||||
color: 'text-red-700', bgColor: 'bg-red-100',
|
color: 'text-red-700', bgColor: 'bg-red-100',
|
||||||
processDocument: 'Prozessbeschreibung Art. 17 DSGVO_v03.pdf'
|
processDocument: 'Prozessbeschreibung Art. 17 DSGVO_v03.pdf',
|
||||||
|
templateType: 'dsr_process_art17',
|
||||||
},
|
},
|
||||||
restriction: {
|
restriction: {
|
||||||
type: 'restriction', article: 'Art. 18', label: 'Einschraenkungsrecht', labelShort: 'Einschraenkung',
|
type: 'restriction', article: 'Art. 18', label: 'Einschraenkungsrecht', labelShort: 'Einschraenkung',
|
||||||
description: 'Recht auf Einschraenkung der Verarbeitung',
|
description: 'Recht auf Einschraenkung der Verarbeitung',
|
||||||
defaultDeadlineDays: 14, maxExtensionMonths: 2,
|
defaultDeadlineDays: 14, maxExtensionMonths: 2,
|
||||||
color: 'text-orange-700', bgColor: 'bg-orange-100',
|
color: 'text-orange-700', bgColor: 'bg-orange-100',
|
||||||
processDocument: 'Prozessbeschreibung Art. 18 DSGVO_v01.pdf'
|
processDocument: 'Prozessbeschreibung Art. 18 DSGVO_v01.pdf',
|
||||||
|
templateType: 'dsr_process_art18',
|
||||||
},
|
},
|
||||||
portability: {
|
portability: {
|
||||||
type: 'portability', article: 'Art. 20', label: 'Datenuebertragbarkeit', labelShort: 'Uebertragung',
|
type: 'portability', article: 'Art. 20', label: 'Datenuebertragbarkeit', labelShort: 'Uebertragung',
|
||||||
description: 'Recht auf Datenuebertragbarkeit in maschinenlesbarem Format',
|
description: 'Recht auf Datenuebertragbarkeit in maschinenlesbarem Format',
|
||||||
defaultDeadlineDays: 30, maxExtensionMonths: 2,
|
defaultDeadlineDays: 30, maxExtensionMonths: 2,
|
||||||
color: 'text-purple-700', bgColor: 'bg-purple-100',
|
color: 'text-purple-700', bgColor: 'bg-purple-100',
|
||||||
processDocument: 'Prozessbeschreibung Art. 20 DSGVO_v02.pdf'
|
processDocument: 'Prozessbeschreibung Art. 20 DSGVO_v02.pdf',
|
||||||
|
templateType: 'dsr_process_art20',
|
||||||
},
|
},
|
||||||
objection: {
|
objection: {
|
||||||
type: 'objection', article: 'Art. 21', label: 'Widerspruchsrecht', labelShort: 'Widerspruch',
|
type: 'objection', article: 'Art. 21', label: 'Widerspruchsrecht', labelShort: 'Widerspruch',
|
||||||
description: 'Recht auf Widerspruch gegen die Verarbeitung',
|
description: 'Recht auf Widerspruch gegen die Verarbeitung',
|
||||||
defaultDeadlineDays: 30, maxExtensionMonths: 0,
|
defaultDeadlineDays: 30, maxExtensionMonths: 0,
|
||||||
color: 'text-gray-700', bgColor: 'bg-gray-100'
|
color: 'text-gray-700', bgColor: 'bg-gray-100',
|
||||||
|
templateType: 'dsr_process_art21',
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -101,6 +101,14 @@ VALID_DOCUMENT_TYPES = {
|
|||||||
"tom_documentation",
|
"tom_documentation",
|
||||||
"loeschkonzept",
|
"loeschkonzept",
|
||||||
"pflichtenregister",
|
"pflichtenregister",
|
||||||
|
# DSR Process Documents (Migration 085)
|
||||||
|
"dsr_process_art15",
|
||||||
|
"dsr_process_art16",
|
||||||
|
"dsr_process_art17",
|
||||||
|
"dsr_process_art18",
|
||||||
|
"dsr_process_art19",
|
||||||
|
"dsr_process_art20",
|
||||||
|
"dsr_process_art21",
|
||||||
}
|
}
|
||||||
VALID_STATUSES = {"published", "draft", "archived"}
|
VALID_STATUSES = {"published", "draft", "archived"}
|
||||||
|
|
||||||
|
|||||||
466
backend-compliance/migrations/085_dsr_process_templates.sql
Normal file
466
backend-compliance/migrations/085_dsr_process_templates.sql
Normal file
@@ -0,0 +1,466 @@
|
|||||||
|
-- Migration 085: DSR Process Document Templates (Art. 15-21 DSGVO)
|
||||||
|
-- Prozessbeschreibungen mit Swim-Lane-Diagrammen fuer den Document Generator
|
||||||
|
|
||||||
|
INSERT INTO compliance_legal_templates (id, tenant_id, document_type, title, language, status, content, placeholders, created_at, updated_at)
|
||||||
|
VALUES
|
||||||
|
|
||||||
|
-- ============================================================================
|
||||||
|
-- Art. 15 DSGVO — Auskunftsrecht
|
||||||
|
-- ============================================================================
|
||||||
|
(gen_random_uuid(), '9282a473-5c95-4b3a-bf78-0ecc0ec71d3e', 'dsr_process_art15',
|
||||||
|
'Prozessbeschreibung: Auskunftsrecht (Art. 15 DSGVO)', 'de', 'published',
|
||||||
|
'<h1>Prozessbeschreibung: Auskunftsrecht nach Art. 15 DSGVO</h1>
|
||||||
|
<p><strong>Verantwortliche Stelle:</strong> {{FIRMENNAME}}<br/>
|
||||||
|
<strong>Version:</strong> {{VERSION}}<br/>
|
||||||
|
<strong>Stand:</strong> {{DATUM}}<br/>
|
||||||
|
<strong>Genehmigt durch:</strong> {{DSB_NAME}}</p>
|
||||||
|
|
||||||
|
<h2>1. Zweck und Geltungsbereich</h2>
|
||||||
|
<p>Diese Prozessbeschreibung regelt den Ablauf bei Auskunftsersuchen betroffener Personen nach Art. 15 DSGVO. Jede natuerliche Person hat das Recht, eine Bestaetigung darueber zu verlangen, ob personenbezogene Daten verarbeitet werden, und ggf. Auskunft ueber diese Daten zu erhalten.</p>
|
||||||
|
|
||||||
|
<h2>2. Rechtsgrundlage</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Art. 15 DSGVO — Auskunftsrecht der betroffenen Person</li>
|
||||||
|
<li>Art. 12 DSGVO — Transparente Information und Kommunikation</li>
|
||||||
|
<li>Erwaegungsgrund 63 — Recht auf Zugang zu personenbezogenen Daten</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2>3. Frist</h2>
|
||||||
|
<p><strong>30 Tage</strong> nach Eingang der Anfrage. Verlaengerung um weitere 2 Monate bei komplexen Anfragen moeglich (Art. 12 Abs. 3 DSGVO), mit Begruendung innerhalb der ersten 30 Tage.</p>
|
||||||
|
|
||||||
|
<h2>4. Prozessablauf (Swim Lane)</h2>
|
||||||
|
<pre class="mermaid">
|
||||||
|
graph TD
|
||||||
|
subgraph Betroffener
|
||||||
|
A1[Auskunftsersuchen einreichen]
|
||||||
|
A7[Auskunft erhalten und pruefen]
|
||||||
|
end
|
||||||
|
subgraph Empfang/Sachbearbeitung
|
||||||
|
B1[Anfrage erfassen und dokumentieren]
|
||||||
|
B2[Identitaet pruefen]
|
||||||
|
B3{Identitaet bestaetigt?}
|
||||||
|
end
|
||||||
|
subgraph Fachabteilung
|
||||||
|
C1[Alle Verarbeitungstaetigkeiten identifizieren]
|
||||||
|
C2[Personenbezogene Daten zusammenstellen]
|
||||||
|
C3[Daten auf Drittrechte pruefen]
|
||||||
|
C4[Auskunft erstellen]
|
||||||
|
end
|
||||||
|
subgraph Datenschutzbeauftragter
|
||||||
|
D1[Auskunft auf Vollstaendigkeit pruefen]
|
||||||
|
D2[Freigabe erteilen]
|
||||||
|
end
|
||||||
|
|
||||||
|
A1 --> B1 --> B2 --> B3
|
||||||
|
B3 -- Nein --> B2
|
||||||
|
B3 -- Ja --> C1 --> C2 --> C3 --> C4 --> D1 --> D2 --> A7
|
||||||
|
</pre>
|
||||||
|
|
||||||
|
<h2>5. Detaillierte Schritte</h2>
|
||||||
|
<table>
|
||||||
|
<tr><th>Schritt</th><th>Verantwortlich</th><th>Beschreibung</th><th>Frist</th></tr>
|
||||||
|
<tr><td>1. Eingang</td><td>Empfang</td><td>Anfrage dokumentieren, Eingangsbestaetigung senden</td><td>1 Tag</td></tr>
|
||||||
|
<tr><td>2. ID-Pruefung</td><td>Sachbearbeitung</td><td>Identitaet des Antragstellers verifizieren</td><td>3 Tage</td></tr>
|
||||||
|
<tr><td>3. Datenerhebung</td><td>Fachabteilung</td><td>Alle verarbeiteten Daten zusammenstellen</td><td>14 Tage</td></tr>
|
||||||
|
<tr><td>4. Pruefung Drittrechte</td><td>Fachabteilung</td><td>Rechte Dritter pruefen und ggf. schwaerzen</td><td>5 Tage</td></tr>
|
||||||
|
<tr><td>5. QS + Freigabe</td><td>DSB</td><td>Vollstaendigkeit und Richtigkeit pruefen</td><td>3 Tage</td></tr>
|
||||||
|
<tr><td>6. Versand</td><td>Sachbearbeitung</td><td>Auskunft an Betroffenen uebermitteln</td><td>1 Tag</td></tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<h2>6. Zu liefernde Informationen (Art. 15 Abs. 1)</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Verarbeitungszwecke</li>
|
||||||
|
<li>Kategorien personenbezogener Daten</li>
|
||||||
|
<li>Empfaenger oder Kategorien von Empfaengern</li>
|
||||||
|
<li>Speicherdauer oder Kriterien fuer die Festlegung</li>
|
||||||
|
<li>Bestehen eines Rechts auf Berichtigung, Loeschung, Einschraenkung, Widerspruch</li>
|
||||||
|
<li>Beschwerderecht bei einer Aufsichtsbehoerde</li>
|
||||||
|
<li>Herkunft der Daten (wenn nicht beim Betroffenen erhoben)</li>
|
||||||
|
<li>Bestehen einer automatisierten Entscheidungsfindung inkl. Profiling</li>
|
||||||
|
<li>Bei Drittlanduebermittlung: geeignete Garantien</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2>7. Dokumentation</h2>
|
||||||
|
<p>Alle Schritte werden im DSR-Modul von {{FIRMENNAME}} protokolliert inkl. Zeitstempel, Bearbeiter und Ergebnis.</p>',
|
||||||
|
'["FIRMENNAME", "VERSION", "DATUM", "DSB_NAME"]'::jsonb,
|
||||||
|
NOW(), NOW()),
|
||||||
|
|
||||||
|
-- ============================================================================
|
||||||
|
-- Art. 16 DSGVO — Recht auf Berichtigung
|
||||||
|
-- ============================================================================
|
||||||
|
(gen_random_uuid(), '9282a473-5c95-4b3a-bf78-0ecc0ec71d3e', 'dsr_process_art16',
|
||||||
|
'Prozessbeschreibung: Recht auf Berichtigung (Art. 16 DSGVO)', 'de', 'published',
|
||||||
|
'<h1>Prozessbeschreibung: Recht auf Berichtigung nach Art. 16 DSGVO</h1>
|
||||||
|
<p><strong>Verantwortliche Stelle:</strong> {{FIRMENNAME}}<br/>
|
||||||
|
<strong>Version:</strong> {{VERSION}}<br/>
|
||||||
|
<strong>Stand:</strong> {{DATUM}}<br/>
|
||||||
|
<strong>Genehmigt durch:</strong> {{DSB_NAME}}</p>
|
||||||
|
|
||||||
|
<h2>1. Zweck</h2>
|
||||||
|
<p>Regelung des Ablaufs bei Antraegen auf Berichtigung unrichtiger personenbezogener Daten nach Art. 16 DSGVO.</p>
|
||||||
|
|
||||||
|
<h2>2. Rechtsgrundlage</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Art. 16 DSGVO — Recht auf Berichtigung</li>
|
||||||
|
<li>Art. 19 DSGVO — Mitteilungspflicht an Empfaenger</li>
|
||||||
|
<li>Art. 5 Abs. 1 lit. d DSGVO — Grundsatz der Richtigkeit</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2>3. Frist</h2>
|
||||||
|
<p><strong>Unverzueglich</strong>, spaetestens innerhalb von <strong>14 Tagen</strong>.</p>
|
||||||
|
|
||||||
|
<h2>4. Prozessablauf</h2>
|
||||||
|
<pre class="mermaid">
|
||||||
|
graph TD
|
||||||
|
subgraph Betroffener
|
||||||
|
A1[Berichtigungsantrag stellen]
|
||||||
|
A5[Bestaetigung erhalten]
|
||||||
|
end
|
||||||
|
subgraph Sachbearbeitung
|
||||||
|
B1[Antrag erfassen]
|
||||||
|
B2[Identitaet pruefen]
|
||||||
|
B3[Unrichtigkeit pruefen]
|
||||||
|
B4{Berechtigt?}
|
||||||
|
end
|
||||||
|
subgraph Fachabteilung
|
||||||
|
C1[Daten in allen Systemen berichtigen]
|
||||||
|
C2[Empfaenger benachrichtigen Art. 19]
|
||||||
|
end
|
||||||
|
subgraph DSB
|
||||||
|
D1[Berichtigung dokumentieren]
|
||||||
|
end
|
||||||
|
|
||||||
|
A1 --> B1 --> B2 --> B3 --> B4
|
||||||
|
B4 -- Nein --> A5
|
||||||
|
B4 -- Ja --> C1 --> C2 --> D1 --> A5
|
||||||
|
</pre>
|
||||||
|
|
||||||
|
<h2>5. Schritte</h2>
|
||||||
|
<table>
|
||||||
|
<tr><th>Schritt</th><th>Verantwortlich</th><th>Beschreibung</th><th>Frist</th></tr>
|
||||||
|
<tr><td>1. Eingang</td><td>Empfang</td><td>Antrag dokumentieren</td><td>1 Tag</td></tr>
|
||||||
|
<tr><td>2. ID-Pruefung</td><td>Sachbearbeitung</td><td>Identitaet verifizieren</td><td>2 Tage</td></tr>
|
||||||
|
<tr><td>3. Sachpruefung</td><td>Sachbearbeitung</td><td>Unrichtigkeit der Daten bestaetigen</td><td>3 Tage</td></tr>
|
||||||
|
<tr><td>4. Berichtigung</td><td>Fachabteilung</td><td>Daten in allen Systemen korrigieren</td><td>3 Tage</td></tr>
|
||||||
|
<tr><td>5. Mitteilung Art. 19</td><td>Fachabteilung</td><td>Alle Empfaenger ueber Berichtigung informieren</td><td>3 Tage</td></tr>
|
||||||
|
<tr><td>6. Dokumentation</td><td>DSB</td><td>Berichtigung protokollieren</td><td>1 Tag</td></tr>
|
||||||
|
</table>',
|
||||||
|
'["FIRMENNAME", "VERSION", "DATUM", "DSB_NAME"]'::jsonb,
|
||||||
|
NOW(), NOW()),
|
||||||
|
|
||||||
|
-- ============================================================================
|
||||||
|
-- Art. 17 DSGVO — Recht auf Loeschung
|
||||||
|
-- ============================================================================
|
||||||
|
(gen_random_uuid(), '9282a473-5c95-4b3a-bf78-0ecc0ec71d3e', 'dsr_process_art17',
|
||||||
|
'Prozessbeschreibung: Recht auf Loeschung (Art. 17 DSGVO)', 'de', 'published',
|
||||||
|
'<h1>Prozessbeschreibung: Recht auf Loeschung nach Art. 17 DSGVO</h1>
|
||||||
|
<p><strong>Verantwortliche Stelle:</strong> {{FIRMENNAME}}<br/>
|
||||||
|
<strong>Version:</strong> {{VERSION}}<br/>
|
||||||
|
<strong>Stand:</strong> {{DATUM}}<br/>
|
||||||
|
<strong>Genehmigt durch:</strong> {{DSB_NAME}}</p>
|
||||||
|
|
||||||
|
<h2>1. Zweck</h2>
|
||||||
|
<p>Regelung des Ablaufs bei Loeschungsersuchen (Recht auf Vergessenwerden) nach Art. 17 DSGVO.</p>
|
||||||
|
|
||||||
|
<h2>2. Rechtsgrundlage</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Art. 17 DSGVO — Recht auf Loeschung</li>
|
||||||
|
<li>Art. 17 Abs. 3 DSGVO — Ausnahmen (Meinungsfreiheit, rechtliche Verpflichtung, oeffentliches Interesse, Rechtsansprueche)</li>
|
||||||
|
<li>Art. 19 DSGVO — Mitteilungspflicht an Empfaenger</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2>3. Frist</h2>
|
||||||
|
<p><strong>Unverzueglich</strong>, spaetestens innerhalb von <strong>14 Tagen</strong>.</p>
|
||||||
|
|
||||||
|
<h2>4. Prozessablauf</h2>
|
||||||
|
<pre class="mermaid">
|
||||||
|
graph TD
|
||||||
|
subgraph Betroffener
|
||||||
|
A1[Loeschungsantrag stellen]
|
||||||
|
A6[Bestaetigung erhalten]
|
||||||
|
end
|
||||||
|
subgraph Sachbearbeitung
|
||||||
|
B1[Antrag erfassen + ID pruefen]
|
||||||
|
B2[Loeschungsgrund pruefen]
|
||||||
|
end
|
||||||
|
subgraph DSB
|
||||||
|
C1[Art. 17 Abs. 3 Ausnahmen pruefen]
|
||||||
|
C2{Ausnahme greift?}
|
||||||
|
C3[Ablehnung mit Begruendung]
|
||||||
|
end
|
||||||
|
subgraph Fachabteilung
|
||||||
|
D1[Daten in allen Systemen loeschen]
|
||||||
|
D2[Backups markieren]
|
||||||
|
D3[Empfaenger benachrichtigen Art. 19]
|
||||||
|
D4[Loeschprotokoll erstellen]
|
||||||
|
end
|
||||||
|
|
||||||
|
A1 --> B1 --> B2 --> C1 --> C2
|
||||||
|
C2 -- Ja --> C3 --> A6
|
||||||
|
C2 -- Nein --> D1 --> D2 --> D3 --> D4 --> A6
|
||||||
|
</pre>
|
||||||
|
|
||||||
|
<h2>5. Art. 17 Abs. 3 Ausnahmen (Checkliste)</h2>
|
||||||
|
<table>
|
||||||
|
<tr><th>Ausnahme</th><th>Beschreibung</th></tr>
|
||||||
|
<tr><td>a) Meinungsfreiheit</td><td>Ausuebung des Rechts auf freie Meinungsaeusserung und Information</td></tr>
|
||||||
|
<tr><td>b) Rechtliche Verpflichtung</td><td>Erfuellung einer rechtlichen Verpflichtung (z.B. Aufbewahrungspflichten)</td></tr>
|
||||||
|
<tr><td>c) Oeffentliches Interesse</td><td>Gruende des oeffentlichen Interesses im Bereich Gesundheit</td></tr>
|
||||||
|
<tr><td>d) Archivzwecke</td><td>Im oeffentlichen Interesse liegende Archivzwecke, Forschung, Statistik</td></tr>
|
||||||
|
<tr><td>e) Rechtsansprueche</td><td>Geltendmachung, Ausuebung oder Verteidigung von Rechtsanspruechen</td></tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<h2>6. Schritte</h2>
|
||||||
|
<table>
|
||||||
|
<tr><th>Schritt</th><th>Verantwortlich</th><th>Beschreibung</th><th>Frist</th></tr>
|
||||||
|
<tr><td>1. Eingang + ID</td><td>Sachbearbeitung</td><td>Antrag dokumentieren, Identitaet verifizieren</td><td>3 Tage</td></tr>
|
||||||
|
<tr><td>2. Ausnahmepruefung</td><td>DSB</td><td>Art. 17 Abs. 3 Checkliste durchgehen</td><td>3 Tage</td></tr>
|
||||||
|
<tr><td>3. Loeschung</td><td>Fachabteilung</td><td>Daten in allen Systemen loeschen</td><td>3 Tage</td></tr>
|
||||||
|
<tr><td>4. Backup-Handling</td><td>IT</td><td>Backups markieren, bei naechstem Zyklus loeschen</td><td>3 Tage</td></tr>
|
||||||
|
<tr><td>5. Mitteilung Art. 19</td><td>Fachabteilung</td><td>Empfaenger ueber Loeschung informieren</td><td>2 Tage</td></tr>
|
||||||
|
</table>',
|
||||||
|
'["FIRMENNAME", "VERSION", "DATUM", "DSB_NAME"]'::jsonb,
|
||||||
|
NOW(), NOW()),
|
||||||
|
|
||||||
|
-- ============================================================================
|
||||||
|
-- Art. 18 DSGVO — Recht auf Einschraenkung der Verarbeitung
|
||||||
|
-- ============================================================================
|
||||||
|
(gen_random_uuid(), '9282a473-5c95-4b3a-bf78-0ecc0ec71d3e', 'dsr_process_art18',
|
||||||
|
'Prozessbeschreibung: Einschraenkung der Verarbeitung (Art. 18 DSGVO)', 'de', 'published',
|
||||||
|
'<h1>Prozessbeschreibung: Einschraenkung der Verarbeitung nach Art. 18 DSGVO</h1>
|
||||||
|
<p><strong>Verantwortliche Stelle:</strong> {{FIRMENNAME}}<br/>
|
||||||
|
<strong>Version:</strong> {{VERSION}}<br/>
|
||||||
|
<strong>Stand:</strong> {{DATUM}}<br/>
|
||||||
|
<strong>Genehmigt durch:</strong> {{DSB_NAME}}</p>
|
||||||
|
|
||||||
|
<h2>1. Zweck</h2>
|
||||||
|
<p>Regelung des Ablaufs bei Antraegen auf Einschraenkung der Verarbeitung personenbezogener Daten nach Art. 18 DSGVO.</p>
|
||||||
|
|
||||||
|
<h2>2. Rechtsgrundlage und Voraussetzungen</h2>
|
||||||
|
<p>Die betroffene Person kann die Einschraenkung verlangen wenn:</p>
|
||||||
|
<ul>
|
||||||
|
<li>a) Richtigkeit der Daten bestritten wird (fuer die Dauer der Ueberpruefung)</li>
|
||||||
|
<li>b) Verarbeitung unrechtmaessig ist und Betroffener Loeschung ablehnt</li>
|
||||||
|
<li>c) Verantwortlicher Daten nicht mehr benoetigt, Betroffener aber fuer Rechtsansprueche</li>
|
||||||
|
<li>d) Widerspruch nach Art. 21 eingelegt wurde (fuer die Dauer der Pruefung)</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2>3. Frist</h2>
|
||||||
|
<p><strong>Unverzueglich</strong>, spaetestens innerhalb von <strong>14 Tagen</strong>.</p>
|
||||||
|
|
||||||
|
<h2>4. Prozessablauf</h2>
|
||||||
|
<pre class="mermaid">
|
||||||
|
graph TD
|
||||||
|
subgraph Betroffener
|
||||||
|
A1[Antrag auf Einschraenkung]
|
||||||
|
A5[Bestaetigung erhalten]
|
||||||
|
end
|
||||||
|
subgraph Sachbearbeitung
|
||||||
|
B1[Antrag erfassen + ID pruefen]
|
||||||
|
B2[Voraussetzung nach Art. 18 Abs. 1 pruefen]
|
||||||
|
B3{Berechtigt?}
|
||||||
|
end
|
||||||
|
subgraph IT/Fachabteilung
|
||||||
|
C1[Daten markieren/sperren]
|
||||||
|
C2[Verarbeitung einschraenken]
|
||||||
|
C3[Empfaenger benachrichtigen Art. 19]
|
||||||
|
end
|
||||||
|
subgraph DSB
|
||||||
|
D1[Dokumentation + Wiedervorlage]
|
||||||
|
end
|
||||||
|
|
||||||
|
A1 --> B1 --> B2 --> B3
|
||||||
|
B3 -- Nein --> A5
|
||||||
|
B3 -- Ja --> C1 --> C2 --> C3 --> D1 --> A5
|
||||||
|
</pre>
|
||||||
|
|
||||||
|
<h2>5. Erlaubte Verarbeitung bei Einschraenkung (Art. 18 Abs. 2)</h2>
|
||||||
|
<p>Eingeschraenkte Daten duerfen nur noch verarbeitet werden fuer:</p>
|
||||||
|
<ul>
|
||||||
|
<li>Speicherung</li>
|
||||||
|
<li>Mit Einwilligung der betroffenen Person</li>
|
||||||
|
<li>Zur Geltendmachung von Rechtsanspruechen</li>
|
||||||
|
<li>Zum Schutz der Rechte einer anderen Person</li>
|
||||||
|
<li>Aus Gruenden eines wichtigen oeffentlichen Interesses</li>
|
||||||
|
</ul>',
|
||||||
|
'["FIRMENNAME", "VERSION", "DATUM", "DSB_NAME"]'::jsonb,
|
||||||
|
NOW(), NOW()),
|
||||||
|
|
||||||
|
-- ============================================================================
|
||||||
|
-- Art. 19 DSGVO — Mitteilungspflicht
|
||||||
|
-- ============================================================================
|
||||||
|
(gen_random_uuid(), '9282a473-5c95-4b3a-bf78-0ecc0ec71d3e', 'dsr_process_art19',
|
||||||
|
'Prozessbeschreibung: Mitteilungspflicht (Art. 19 DSGVO)', 'de', 'published',
|
||||||
|
'<h1>Prozessbeschreibung: Mitteilungspflicht nach Art. 19 DSGVO</h1>
|
||||||
|
<p><strong>Verantwortliche Stelle:</strong> {{FIRMENNAME}}<br/>
|
||||||
|
<strong>Version:</strong> {{VERSION}}<br/>
|
||||||
|
<strong>Stand:</strong> {{DATUM}}<br/>
|
||||||
|
<strong>Genehmigt durch:</strong> {{DSB_NAME}}</p>
|
||||||
|
|
||||||
|
<h2>1. Zweck</h2>
|
||||||
|
<p>Art. 19 DSGVO verpflichtet den Verantwortlichen, alle Empfaenger, denen personenbezogene Daten offengelegt wurden, ueber jede Berichtigung (Art. 16), Loeschung (Art. 17) oder Einschraenkung (Art. 18) zu informieren — es sei denn, dies ist unverhaeltnismaessig.</p>
|
||||||
|
|
||||||
|
<h2>2. Rechtsgrundlage</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Art. 19 DSGVO — Mitteilungspflicht im Zusammenhang mit der Berichtigung oder Loeschung personenbezogener Daten oder der Einschraenkung der Verarbeitung</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2>3. Ausloeser</h2>
|
||||||
|
<p>Art. 19 wird automatisch ausgeloest bei:</p>
|
||||||
|
<ul>
|
||||||
|
<li>Erfolgreicher Berichtigung nach Art. 16</li>
|
||||||
|
<li>Erfolgreicher Loeschung nach Art. 17</li>
|
||||||
|
<li>Einschraenkung der Verarbeitung nach Art. 18</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2>4. Prozessablauf</h2>
|
||||||
|
<pre class="mermaid">
|
||||||
|
graph TD
|
||||||
|
subgraph Ausloeser
|
||||||
|
A1[Berichtigung/Loeschung/Einschraenkung durchgefuehrt]
|
||||||
|
end
|
||||||
|
subgraph Sachbearbeitung
|
||||||
|
B1[Alle Empfaenger aus VVT identifizieren]
|
||||||
|
B2[Auftragsverarbeiter identifizieren]
|
||||||
|
B3{Mitteilung verhaeltnismaessig?}
|
||||||
|
B4[Mitteilung an jeden Empfaenger senden]
|
||||||
|
B5[Unverhaeltnismaessigkeit dokumentieren]
|
||||||
|
end
|
||||||
|
subgraph DSB
|
||||||
|
C1[Mitteilung dokumentieren]
|
||||||
|
C2[Betroffenen ueber Empfaenger informieren auf Verlangen]
|
||||||
|
end
|
||||||
|
|
||||||
|
A1 --> B1 --> B2 --> B3
|
||||||
|
B3 -- Nein --> B5 --> C1
|
||||||
|
B3 -- Ja --> B4 --> C1 --> C2
|
||||||
|
</pre>
|
||||||
|
|
||||||
|
<h2>5. Pflicht zur Auskunft ueber Empfaenger</h2>
|
||||||
|
<p>Der Verantwortliche muss dem Betroffenen auf Verlangen die Empfaenger mitteilen, an die die Daten offengelegt wurden.</p>',
|
||||||
|
'["FIRMENNAME", "VERSION", "DATUM", "DSB_NAME"]'::jsonb,
|
||||||
|
NOW(), NOW()),
|
||||||
|
|
||||||
|
-- ============================================================================
|
||||||
|
-- Art. 20 DSGVO — Recht auf Datenuebertragbarkeit
|
||||||
|
-- ============================================================================
|
||||||
|
(gen_random_uuid(), '9282a473-5c95-4b3a-bf78-0ecc0ec71d3e', 'dsr_process_art20',
|
||||||
|
'Prozessbeschreibung: Datenuebertragbarkeit (Art. 20 DSGVO)', 'de', 'published',
|
||||||
|
'<h1>Prozessbeschreibung: Recht auf Datenuebertragbarkeit nach Art. 20 DSGVO</h1>
|
||||||
|
<p><strong>Verantwortliche Stelle:</strong> {{FIRMENNAME}}<br/>
|
||||||
|
<strong>Version:</strong> {{VERSION}}<br/>
|
||||||
|
<strong>Stand:</strong> {{DATUM}}<br/>
|
||||||
|
<strong>Genehmigt durch:</strong> {{DSB_NAME}}</p>
|
||||||
|
|
||||||
|
<h2>1. Zweck</h2>
|
||||||
|
<p>Regelung des Ablaufs bei Antraegen auf Datenuebertragbarkeit. Die betroffene Person hat das Recht, die sie betreffenden personenbezogenen Daten in einem strukturierten, gaengigen und maschinenlesbaren Format zu erhalten.</p>
|
||||||
|
|
||||||
|
<h2>2. Rechtsgrundlage und Voraussetzungen</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Art. 20 DSGVO — Recht auf Datenuebertragbarkeit</li>
|
||||||
|
<li>Gilt nur fuer Daten, die auf Einwilligung (Art. 6 Abs. 1 lit. a) oder Vertrag (Art. 6 Abs. 1 lit. b) basieren</li>
|
||||||
|
<li>Gilt nur fuer automatisiert verarbeitete Daten</li>
|
||||||
|
<li>Nur vom Betroffenen selbst bereitgestellte Daten</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2>3. Frist</h2>
|
||||||
|
<p><strong>30 Tage</strong> nach Eingang der Anfrage.</p>
|
||||||
|
|
||||||
|
<h2>4. Prozessablauf</h2>
|
||||||
|
<pre class="mermaid">
|
||||||
|
graph TD
|
||||||
|
subgraph Betroffener
|
||||||
|
A1[Antrag auf Datenuebertragung]
|
||||||
|
A5[Daten erhalten / Direktuebertragung bestaetigt]
|
||||||
|
end
|
||||||
|
subgraph Sachbearbeitung
|
||||||
|
B1[Antrag erfassen + ID pruefen]
|
||||||
|
B2[Rechtsgrundlage pruefen - Einwilligung oder Vertrag?]
|
||||||
|
B3{Voraussetzungen erfuellt?}
|
||||||
|
end
|
||||||
|
subgraph IT
|
||||||
|
C1[Daten identifizieren und extrahieren]
|
||||||
|
C2[In maschinenlesbares Format konvertieren - JSON/CSV/XML]
|
||||||
|
C3{Direktuebertragung gewuenscht?}
|
||||||
|
C4[Daten an Betroffenen uebergeben]
|
||||||
|
C5[Daten an anderen Verantwortlichen uebertragen]
|
||||||
|
end
|
||||||
|
|
||||||
|
A1 --> B1 --> B2 --> B3
|
||||||
|
B3 -- Nein --> A5
|
||||||
|
B3 -- Ja --> C1 --> C2 --> C3
|
||||||
|
C3 -- Nein --> C4 --> A5
|
||||||
|
C3 -- Ja --> C5 --> A5
|
||||||
|
</pre>
|
||||||
|
|
||||||
|
<h2>5. Exportformate</h2>
|
||||||
|
<ul>
|
||||||
|
<li>JSON (bevorzugt)</li>
|
||||||
|
<li>CSV (fuer tabellarische Daten)</li>
|
||||||
|
<li>XML (bei Bedarf)</li>
|
||||||
|
</ul>',
|
||||||
|
'["FIRMENNAME", "VERSION", "DATUM", "DSB_NAME"]'::jsonb,
|
||||||
|
NOW(), NOW()),
|
||||||
|
|
||||||
|
-- ============================================================================
|
||||||
|
-- Art. 21 DSGVO — Widerspruchsrecht
|
||||||
|
-- ============================================================================
|
||||||
|
(gen_random_uuid(), '9282a473-5c95-4b3a-bf78-0ecc0ec71d3e', 'dsr_process_art21',
|
||||||
|
'Prozessbeschreibung: Widerspruchsrecht (Art. 21 DSGVO)', 'de', 'published',
|
||||||
|
'<h1>Prozessbeschreibung: Widerspruchsrecht nach Art. 21 DSGVO</h1>
|
||||||
|
<p><strong>Verantwortliche Stelle:</strong> {{FIRMENNAME}}<br/>
|
||||||
|
<strong>Version:</strong> {{VERSION}}<br/>
|
||||||
|
<strong>Stand:</strong> {{DATUM}}<br/>
|
||||||
|
<strong>Genehmigt durch:</strong> {{DSB_NAME}}</p>
|
||||||
|
|
||||||
|
<h2>1. Zweck</h2>
|
||||||
|
<p>Regelung des Ablaufs bei Widerspruechen gegen die Verarbeitung personenbezogener Daten nach Art. 21 DSGVO.</p>
|
||||||
|
|
||||||
|
<h2>2. Rechtsgrundlage</h2>
|
||||||
|
<ul>
|
||||||
|
<li>Art. 21 Abs. 1 DSGVO — Allgemeines Widerspruchsrecht (bei Verarbeitung nach Art. 6 Abs. 1 lit. e oder f)</li>
|
||||||
|
<li>Art. 21 Abs. 2 DSGVO — Widerspruch gegen Direktwerbung (absolutes Recht, keine Abwaegung)</li>
|
||||||
|
<li>Art. 21 Abs. 6 DSGVO — Widerspruch gegen wissenschaftliche/historische Forschung</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h2>3. Frist</h2>
|
||||||
|
<p><strong>30 Tage</strong> nach Eingang des Widerspruchs.</p>
|
||||||
|
|
||||||
|
<h2>4. Prozessablauf</h2>
|
||||||
|
<pre class="mermaid">
|
||||||
|
graph TD
|
||||||
|
subgraph Betroffener
|
||||||
|
A1[Widerspruch einlegen]
|
||||||
|
A6[Ergebnis erhalten]
|
||||||
|
end
|
||||||
|
subgraph Sachbearbeitung
|
||||||
|
B1[Widerspruch erfassen + ID pruefen]
|
||||||
|
B2{Art des Widerspruchs?}
|
||||||
|
end
|
||||||
|
subgraph Fall: Direktwerbung
|
||||||
|
C1[Verarbeitung fuer Direktwerbung SOFORT einstellen]
|
||||||
|
C2[Bestaetigung senden]
|
||||||
|
end
|
||||||
|
subgraph Fall: Allgemeiner Widerspruch
|
||||||
|
D1[Zwingende schutzwuerdige Gruende pruefen]
|
||||||
|
D2{Zwingende Gruende vorhanden?}
|
||||||
|
D3[Verarbeitung einstellen]
|
||||||
|
D4[Widerspruch ablehnen mit Begruendung]
|
||||||
|
end
|
||||||
|
|
||||||
|
A1 --> B1 --> B2
|
||||||
|
B2 -- Direktwerbung Art. 21 Abs. 2 --> C1 --> C2 --> A6
|
||||||
|
B2 -- Allgemein Art. 21 Abs. 1 --> D1 --> D2
|
||||||
|
D2 -- Nein --> D3 --> A6
|
||||||
|
D2 -- Ja --> D4 --> A6
|
||||||
|
</pre>
|
||||||
|
|
||||||
|
<h2>5. Besonderheit: Widerspruch gegen Direktwerbung</h2>
|
||||||
|
<p><strong>Absolutes Recht — keine Interessenabwaegung erforderlich.</strong> Bei Widerspruch gegen Direktwerbung muss die Verarbeitung sofort eingestellt werden. Dies umfasst auch Profiling, soweit es mit Direktwerbung zusammenhaengt.</p>
|
||||||
|
|
||||||
|
<h2>6. Interessenabwaegung bei allgemeinem Widerspruch</h2>
|
||||||
|
<p>Bei Widerspruch nach Art. 21 Abs. 1 muss der Verantwortliche nachweisen, dass zwingende schutzwuerdige Gruende fuer die Verarbeitung vorliegen, die die Interessen des Betroffenen ueberwiegen.</p>',
|
||||||
|
'["FIRMENNAME", "VERSION", "DATUM", "DSB_NAME"]'::jsonb,
|
||||||
|
NOW(), NOW())
|
||||||
|
|
||||||
|
ON CONFLICT DO NOTHING;
|
||||||
Reference in New Issue
Block a user