Services: Admin-Lehrer, Backend-Lehrer, Studio v2, Website, Klausur-Service, School-Service, Voice-Service, Geo-Service, BreakPilot Drive, Agent-Core Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
181 lines
9.7 KiB
TypeScript
181 lines
9.7 KiB
TypeScript
import type { SystemInfoConfig } from './types'
|
|
|
|
export const dsrConfig: SystemInfoConfig = {
|
|
title: 'DSR Management System-Info',
|
|
description: 'Bearbeitung von DSGVO-Betroffenenrechten (Art. 15-22).',
|
|
version: '2.0',
|
|
privacyNotes: [
|
|
'Automatische Fristenueberwachung (30 Tage)',
|
|
'Identitaetsverifizierung vor Datenauskunft',
|
|
'Verschluesselte Datenexporte',
|
|
'Protokollierung aller Bearbeitungsschritte',
|
|
],
|
|
architecture: {
|
|
layers: [
|
|
{ title: 'Request Portal', components: ['Antragsformular', 'Status-Tracking', 'Upload'], color: '#3b82f6' },
|
|
{ title: 'Processing Engine', components: ['Workflow Engine', 'Data Collector', 'Export Generator'], color: '#8b5cf6' },
|
|
{ title: 'Data Sources', components: ['PostgreSQL', 'MinIO', 'External APIs'], color: '#10b981' },
|
|
{ title: 'Notification', components: ['E-Mail', 'Audit Log', 'Reports'], color: '#f59e0b' },
|
|
],
|
|
},
|
|
features: [
|
|
{ name: 'Art. 15 Auskunft', status: 'active', description: 'Automatisierter Datenexport' },
|
|
{ name: 'Art. 17 Löschung', status: 'active', description: 'Kaskadierte Datenlöschung' },
|
|
{ name: 'Art. 20 Portabilitaet', status: 'active', description: 'JSON/CSV Export' },
|
|
{ name: 'Art. 16 Berichtigung', status: 'active', description: 'Datenkorrektur-Workflow' },
|
|
{ name: 'KI-Assistenz', status: 'planned', description: 'Automatische Kategorisierung' },
|
|
],
|
|
roadmap: [
|
|
{ phase: 'Phase 1: Automation (Q1)', priority: 'high', items: ['Automatische Datensammlung', 'Template-basierte Antworten', 'Fristen-Alerts', 'Batch-Verarbeitung'] },
|
|
{ phase: 'Phase 2: Self-Service (Q2)', priority: 'medium', items: ['Nutzer-Portal', 'Echtzeit-Status', 'Sofort-Download', 'Identitaets-Verifizierung'] },
|
|
{ phase: 'Phase 3: Analytics (Q3)', priority: 'low', items: ['DSR-Metriken', 'Trend-Analyse', 'Compliance-Scoring', 'Benchmarking'] },
|
|
],
|
|
technicalDetails: [
|
|
{ component: 'Workflow', technology: 'State Machine', description: 'Definierte Bearbeitungsstatus' },
|
|
{ component: 'Export', technology: 'JSON/CSV/PDF', description: 'Maschinenlesbare Formate' },
|
|
{ component: 'Encryption', technology: 'AES-256-GCM', description: 'Export-Verschluesselung' },
|
|
{ component: 'Verification', technology: 'TOTP/E-Mail', description: 'Zwei-Faktor' },
|
|
],
|
|
auditInfo: [
|
|
{
|
|
category: 'DSGVO-Rechte Implementation',
|
|
items: [
|
|
{ label: 'Art. 15 Auskunft', value: 'Automatisiert', status: 'ok' },
|
|
{ label: 'Art. 16 Berichtigung', value: 'Workflow', status: 'ok' },
|
|
{ label: 'Art. 17 Loeschung', value: 'Kaskadiert', status: 'ok' },
|
|
{ label: 'Art. 20 Portabilitaet', value: 'JSON/CSV', status: 'ok' },
|
|
{ label: 'Art. 21 Widerspruch', value: 'Implementiert', status: 'ok' },
|
|
],
|
|
},
|
|
{
|
|
category: 'Fristen & SLAs',
|
|
items: [
|
|
{ label: 'Bearbeitungsfrist', value: '30 Tage', status: 'ok' },
|
|
{ label: 'Fristverlängerung', value: '+60 Tage moeglich', status: 'ok' },
|
|
{ label: 'Automatische Erinnerung', value: '7 Tage vor Ablauf', status: 'ok' },
|
|
{ label: 'Eskalation', value: 'Nach 25 Tagen', status: 'ok' },
|
|
],
|
|
},
|
|
{
|
|
category: 'Sicherheit',
|
|
items: [
|
|
{ label: 'Identitaetspruefung', value: 'Zweistufig', status: 'ok' },
|
|
{ label: 'Export-Verschluesselung', value: 'AES-256-GCM', status: 'ok' },
|
|
{ label: 'Zugriffskontrolle', value: 'RBAC', status: 'ok' },
|
|
{ label: 'Audit-Log', value: 'Lueckenlos', status: 'ok' },
|
|
],
|
|
},
|
|
],
|
|
fullDocumentation: `
|
|
<h2>Datenschutzanfragen (DSR) Management</h2>
|
|
|
|
<h3>1. Uebersicht</h3>
|
|
<p>Das DSR-Modul verarbeitet alle Betroffenenrechte-Anfragen gemaess DSGVO Art. 15-22. Es automatisiert den Prozess von der Anfrage bis zur Erfuellung und stellt die Einhaltung der gesetzlichen Fristen sicher.</p>
|
|
|
|
<h3>2. Unterstuetzte Anfragetypen</h3>
|
|
<table>
|
|
<tr><th>Artikel</th><th>Recht</th><th>Automatisierung</th><th>SLA</th></tr>
|
|
<tr><td>Art. 15</td><td>Auskunft</td><td>Vollautomatisch</td><td>30 Tage</td></tr>
|
|
<tr><td>Art. 16</td><td>Berichtigung</td><td>Workflow</td><td>30 Tage</td></tr>
|
|
<tr><td>Art. 17</td><td>Loeschung</td><td>Kaskadiert</td><td>30 Tage</td></tr>
|
|
<tr><td>Art. 18</td><td>Einschraenkung</td><td>Workflow</td><td>30 Tage</td></tr>
|
|
<tr><td>Art. 20</td><td>Portabilitaet</td><td>Vollautomatisch</td><td>30 Tage</td></tr>
|
|
<tr><td>Art. 21</td><td>Widerspruch</td><td>Workflow</td><td>30 Tage</td></tr>
|
|
</table>
|
|
|
|
<h3>3. Workflow-Architektur</h3>
|
|
<pre>
|
|
┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐
|
|
│ Anfrage │ --> │ Verifizierung│ --> │ Bearbeitung │ --> │ Erfuellung │
|
|
│ eingang │ │ Identitaet │ │ (Auto/Man)│ │ & Export │
|
|
└─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘
|
|
│ │ │ │
|
|
v v v v
|
|
┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐
|
|
│ Ticket │ │ E-Mail │ │ Datensammlung│ │ Audit │
|
|
│ erstellt │ │ OTP Code │ │ aus Systemen │ │ Log │
|
|
└─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘
|
|
</pre>
|
|
|
|
<h3>4. API Endpoints</h3>
|
|
<table>
|
|
<tr><th>Endpoint</th><th>Methode</th><th>Beschreibung</th></tr>
|
|
<tr><td>/api/dsr/requests</td><td>GET</td><td>Alle Anfragen listen</td></tr>
|
|
<tr><td>/api/dsr/requests</td><td>POST</td><td>Neue Anfrage erstellen</td></tr>
|
|
<tr><td>/api/dsr/requests/{id}</td><td>GET</td><td>Anfrage-Details</td></tr>
|
|
<tr><td>/api/dsr/requests/{id}/verify</td><td>POST</td><td>Identitaet verifizieren</td></tr>
|
|
<tr><td>/api/dsr/requests/{id}/process</td><td>POST</td><td>Bearbeitung starten</td></tr>
|
|
<tr><td>/api/dsr/requests/{id}/export</td><td>GET</td><td>Datenexport herunterladen</td></tr>
|
|
</table>
|
|
|
|
<h3>5. Datensammlung</h3>
|
|
<p>Bei einer Auskunftsanfrage werden Daten aus folgenden Quellen gesammelt:</p>
|
|
<ul>
|
|
<li><strong>PostgreSQL:</strong> Stammdaten, Consents, Aktivitaetslog</li>
|
|
<li><strong>MinIO:</strong> Hochgeladene Dokumente, Profilbilder</li>
|
|
<li><strong>Qdrant:</strong> Embeddings-Metadaten (ohne Vektoren)</li>
|
|
<li><strong>Audit-Log:</strong> Alle Systemaktivitaeten</li>
|
|
</ul>
|
|
|
|
<h3>6. Export-Formate</h3>
|
|
<table>
|
|
<tr><th>Format</th><th>Inhalt</th><th>Use Case</th></tr>
|
|
<tr><td>JSON</td><td>Strukturierte Daten</td><td>Maschinenlesbar, Portabilitaet</td></tr>
|
|
<tr><td>CSV</td><td>Tabellarische Daten</td><td>Excel-kompatibel</td></tr>
|
|
<tr><td>PDF</td><td>Formatierter Report</td><td>Menschenlesbar</td></tr>
|
|
<tr><td>ZIP</td><td>Alle Formate + Dateien</td><td>Vollstaendiger Export</td></tr>
|
|
</table>
|
|
|
|
<h3>7. Identitaetsverifizierung</h3>
|
|
<p>Zweistufige Verifizierung zum Schutz vor unbefugten Anfragen:</p>
|
|
<ol>
|
|
<li><strong>Stufe 1:</strong> E-Mail-Verifizierung mit OTP-Code (6-stellig, 15 Min gueltig)</li>
|
|
<li><strong>Stufe 2:</strong> Bei sensiblen Daten: Ausweiskopie oder Video-Ident</li>
|
|
</ol>
|
|
|
|
<h3>8. Loeschprozess (Art. 17)</h3>
|
|
<pre>
|
|
Loeschanfrage
|
|
│
|
|
v
|
|
┌────────────────────────────────────────────────────────────┐
|
|
│ Pruefung Ausnahmen │
|
|
│ - Rechtliche Aufbewahrungspflichten? │
|
|
│ - Laufende Vertraege? │
|
|
│ - Berechtigtes Interesse? │
|
|
└────────────────────────────────────────────────────────────┘
|
|
│
|
|
├── Ausnahme greift --> Teilloeschung + Begruendung
|
|
│
|
|
v
|
|
┌────────────────────────────────────────────────────────────┐
|
|
│ Kaskadierte Loeschung │
|
|
│ 1. Anwendungsdaten (PostgreSQL) │
|
|
│ 2. Dateien (MinIO) │
|
|
│ 3. Embeddings (Qdrant) │
|
|
│ 4. Backups (nach Retention-Policy) │
|
|
└────────────────────────────────────────────────────────────┘
|
|
</pre>
|
|
|
|
<h3>9. Audit-Trail</h3>
|
|
<p>Jede DSR-Anfrage wird vollstaendig protokolliert:</p>
|
|
<ul>
|
|
<li>Eingang der Anfrage mit Timestamp</li>
|
|
<li>Verifizierungsschritte</li>
|
|
<li>Bearbeitende Person(en)</li>
|
|
<li>Gesammelte Datenquellen</li>
|
|
<li>Erfuellung oder Ablehnung mit Begruendung</li>
|
|
<li>Export-Download mit Hash</li>
|
|
</ul>
|
|
|
|
<h3>10. Metriken & KPIs</h3>
|
|
<table>
|
|
<tr><th>Metrik</th><th>Ziel</th><th>Aktuell</th></tr>
|
|
<tr><td>Durchschnittliche Bearbeitungszeit</td><td>< 14 Tage</td><td>Tracking aktiv</td></tr>
|
|
<tr><td>Fristenueberschreitung</td><td>0%</td><td>Alerting aktiv</td></tr>
|
|
<tr><td>Automatisierungsgrad</td><td>> 80%</td><td>Art. 15/20</td></tr>
|
|
<tr><td>Identitaetspruefung-Erfolgsrate</td><td>> 95%</td><td>Tracking aktiv</td></tr>
|
|
</table>
|
|
`,
|
|
}
|