milestone 1 progress - smart-village-solutions/sva-studio GitHub Wiki
Aktuelles Datum: 4. Februar 2026 Status: 🟡 IN PROGRESS (30% - Security-Phase abgeschlossen)
Fortschritt: 85% (17/20)
- ✅ Zentraler Anmeldedienst: Keycloak mit OIDC-Integration
- ✅ Single-Sign-On: OAuth 2.0 Callback-Flow implementiert
- ✅ Session-Management: Redis-basierte Session-Verwaltung
- ✅ Token-Sicherheit:
- AES-256-GCM Verschlüsselung für Tokens at-rest
- JWT-Tokens vom Keycloak mit Signatur
- Token-Refresh-Flow implementiert
- ✅ Transportverschlüsselung:
- TLS 1.3 für Redis (Port 6380)
- HTTPS für alle Auth-APIs
- ✅ Zugriffskontrolle:
- Redis ACL mit Minimal-Permissions
- Session-Isolation pro User
- ✅ Logout-Flow: Session-Revocation + Cookie-Deletion
- ✅ Automatischer Logout: TTL-basiert (7 Tage, konfigurierbar)
- ❌ Zwei-Faktor-Authentifizierung (2FA): Noch nicht implementiert
- ❌ Passkeys/WebAuthn: Noch nicht implementiert
- ❌ Brute-Force-Schutz: Noch nicht implementiert
- ❌ Sicherheits-Alerts: Noch nicht implementiert
- ❌ SIEM-Integration: Noch nicht implementiert
- ❌ Passwort-Richtlinien: Server-seitig in Keycloak, nicht in App
Status: STAGING-READY ✅
Fortschritt: 100% (4/4 dokumentiert)
Fortschritt: 100% (Dokumentation complete)
- ✅ Health-Check-Endpoint (
/health/redis) Design dokumentiert - ✅ Prometheus-Metriken (16 Metriken definiert)
- ✅ Grafana-Dashboards (2 Dashboards designed)
- ✅ Alert-Regeln (7 kritische + High-Priority Alerts)
- ⏳ TODO: Implementation in Code
- ⏳ TODO: Staging-Deployment konfigurieren
- ⏳ TODO: Monitoring-Stack (Prometheus, Grafana) aufsetzen
Status: DOKUMENTIERT, NICHT IMPLEMENTIERT
Fortschritt: 100% (Runbook complete)
- ✅ RDB-Backup-Strategie dokumentiert
- ✅ AOF-Persistence-Strategie dokumentiert
- ✅ Restore-Szenarien (3 Szenarien dokumentiert)
- ✅ HA-Setup (Redis Sentinel) designed
- ✅ Cross-Region-Backup designed
- ✅ Disaster-Recovery-Tests documented
- ✅ Automation (Kubernetes CronJob) skizziert
- ⏳ TODO: Implementation
- ⏳ TODO: Production-Konfiguration
Status: DOKUMENTIERT, NICHT IMPLEMENTIERT
Fortschritt: 0% – CRITICAL PATH ITEM
Fortschritt: 0/10
Was noch zu tun ist:
- Rollenmodell implementieren (Admin, Redakteur, Prüfer, Designer)
- Granulare Rechte-System (Modul-, Inhalts-, Feld-, Aktions-Ebene)
- Rechte-Vererbung über Organisationsebenen
- Zugriffsbindung (Content zu Rollen/Personen)
- Review-Workflow für Änderungsanträge
- Genehmigungsworkflow (4-Augen-Prinzip, optional)
- Benachrichtigungssystem
- Support-Features (temporäre Rollenübernahme)
- Admin-UI für Rollenverwaltung
- Database-Schema für Rollen/Rechte
Geschätzter Aufwand: 10-15 Arbeitstage
Fortschritt: 40/100
Was bereits umgesetzt:
- ✅ Account-Erstellung via Keycloak OAuth-Callback
- ✅ Basis-Benutzer-Objekt (userId, email, name)
- ✅ Session-Zuordnung zu User
Was noch zu tun ist:
- Profil-Selbstverwaltung (Passwort, Kontaktdaten, Präferenzen)
- Nutzertypen (intern vs. extern) definieren
- Onboarding-Prozess (Einladung, Schulungsbestätigung)
- Offboarding-Automation (Rollen entziehen, Sessions löschen)
- Vertretungsrechte (mit Ablaufdatum)
- Admin-UI für Benutzerverwaltung
Geschätzter Aufwand: 5-7 Arbeitstage
Fortschritt: 0/100
Was noch zu tun ist:
- Multi-Level-Struktur-Modell (Landkreis → Region → Gemeinde → Ortsteil)
- Mehrfach-Zugehörigkeit (User in mehreren Organisationen)
- Mandantenfähigkeit (Row-Level Security)
- Delegierte Administration
- Privacy-Optionen (Namennennung vs. Anonymität)
- Beitrittsprinzip (Einladung/Bewerbung)
- Database-Schema für Organisationen
- Admin-UI für Struktur-Management
Geschätzter Aufwand: 8-10 Arbeitstage
Fortschritt: 40/100
Was bereits umgesetzt:
- ✅ Basis-Audit-Logging (Session-Events)
- ✅ Token-Verschlüsselung (Datenschutz at-rest)
- ✅ TLS-Verschlüsselung (Datenschutz in-transit)
Was noch zu tun ist:
- Umfassendes Audit-Logging (alle sicherheitsrelevanten Aktionen)
- Audit-Export (CSV/JSON)
- DSGVO-Datenexport-API
- Regelmäßige Überprüfungs-Erinnerungen
- Automatische Dokumentation von Änderungen
Geschätzter Aufwand: 5-7 Arbeitstage
Fortschritt: 0/100
Was noch zu tun ist:
- Self-Service Löschantrag-Interface
- Admin-Interface für Löschanträge
- Status-Workflow (Eingereicht → Prüfung → Genehmigt/Abgelehnt)
- Benachrichtigungssystem
- Impact-Analyse vor Löschung
- Automatisierte Lösch-Routinen (Cronjobs)
- Soft-Delete + Hard-Delete
- Pseudonymisierung als Alternative
- Aufbewahrungsfristen
- Archivierung vor Löschung
Geschätzter Aufwand: 10-12 Arbeitstage (CRITICAL PATH)
Fortschritt: 0%
Fortschritt: 0/100
Was noch zu tun ist:
- Content-Model definieren (Titel, Body, Author, Status, etc.)
- Database-Schema (PostgreSQL/Supabase)
- CRUD-APIs (Create, Read, Update, Delete)
- Workflow (Entwurf → Prüfung → Veröffentlichung)
- Versionierung (Wer, Wann, Was)
- Publishing-UI
- Preview-Funktion
- Archivierung
Geschätzter Aufwand: 8-10 Arbeitstage
Fortschritt: 0/100
Was noch zu tun ist:
- Zentrale Medien-Bibliothek
- Upload & Auto-Optimierung (Thumbnails, responsive Varianten)
- Bildbearbeitung (Zuschneiden, Drehen, Filter, Fokuspunkt)
- Metadaten-Management (Title, Alt-Text, Copyright, EXIF)
- Versionierung
- Verwendungsnachweis
- Ordnerstruktur + Berechtigungen
- Bulk-Operationen
- Externe Integration (S3, Azure, Cloudinary, CDN)
Geschätzter Aufwand: 12-15 Arbeitstage
Fortschritt: 0/100
Was noch zu tun ist:
- Dashboard mit Widgets (Meine Aufgaben, Quick-Actions, Stats)
- Navigation (Hauptmenü, Breadcrumbs)
- Responsive Design
- Barrierefreiheit (WCAG 2.1 AA)
- Dark-Mode (optional)
- Analytics-Integration (optional)
Geschätzter Aufwand: 10-12 Arbeitstage
| Bereich | Status | Fortschritt | Aufwand |
|---|---|---|---|
| Authentifizierung | ✅ Ready | 85% | ✅ Done |
| Monitoring/Ops | ⏳ Dokumentiert | 100% Doc | ⏳ TBD Implementation |
| Rollen & Rechte | ❌ TODO | 0% | 10-15 Tage |
| Benutzer-Accounts | ⏳ Partial | 40% | 5-7 Tage |
| Organisation | ❌ TODO | 0% | 8-10 Tage |
| Datenschutz | ⏳ Partial | 40% | 5-7 Tage |
| Datenlöschung | ❌ TODO | 0% | 10-12 Tage |
| News-Modul | ❌ TODO | 0% | 8-10 Tage |
| Medienverwaltung | ❌ TODO | 0% | 12-15 Tage |
| Dashboard & UI | ❌ TODO | 0% | 10-12 Tage |
| TOTAL | 🟡 30% | 30% | ~75-100 Tage |
- Rollen- & Rechtemanagement (10-15 Tage) – Alles andere hängt davon ab
- Datenlöschkonzept (10-12 Tage) – DSGVO-Compliance MUSS
- News-Modul (8-10 Tage) – MVP-Feature
- Medienverwaltung (12-15 Tage) – MVP-Feature
- Benutzer-Accounts (5-7 Tage) – Abhängig von Rollen & Rechte
Kritischer Pfad-Gesamtdauer: ~50-60 Arbeitstage (10-12 Wochen mit 1 Senior Dev)
- Database-Schema für Rollen/Rechte designen
- Permissions-API implementieren
- Admin-UI für Rollenverwaltung
- Testing (Unit + Integration)
- News-Modul Database + APIs
- Medienverwaltung Backend
- UI/UX für beide Features
- DSGVO-Datenlöschung
- Audit-Logging erweitern
- Monitoring implementieren
Vorher: Milestone 1 Status unbekannt Nachher:
- ✅ 30% des Milestone 1 Funktionalität abgeschlossen (Security-Foundation)
- ✅ 70% noch zu implementieren
- ✅ Critical-Path identifiziert
- ✅ Aufwandschätzung durchgeführt (75-100 Tage)
- ✅ Blockierendes Rollen-&-Rechte-System identifiziert
4. Februar 2026 - 14:30 UTC:
- Redacted Security Review für Redis Session Store abgeschlossen ✅
- Monitoring/Alerting Anforderungen dokumentiert ✅
- Backup/Restore Runbook erstellt ✅
- Branch
feature/redis-session-store-securityerstellt + committed ✅ - Milestone-1-Fortschrittsanalyse durchgeführt ✅
Nächstes Review: Nach Rollen-&-Rechte-System-Implementierung (ca. 2 Wochen)
Für Fragen zum Milestone 1:
- Authentifizierung:
packages/auth/ - Database-Schema: TBD (noch zu definieren)
- Architecture-Decisions:
openspec/changes/add-redis-session-store/