feat: Phase 3 — registry 82 services, mandatory checker, SDK flow step
- website_scanner.py: imports from master service_registry.py (82 services) - agent_scan_routes.py: mandatory content checks (documents + DSE sections) - steps-betrieb.ts: Compliance Agent step added to SDK Flow (seq 5000) - PLAN: Phase 9 (Authenticated Testing) added to product roadmap Mandatory checks know what MUST be there: - Documents: Impressum, DSE, AGB, Widerrufsbelehrung - DSE content: 9 Art. 13 DSGVO fields (DSB, Speicherdauer, etc.) - Impressum content: 5 §5 TMG fields (GF, HRB, USt-ID, etc.) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -466,6 +466,48 @@ Risiko-Score | 15/100 | 45/100 | 20/100 | 55/100 |
|
||||
| 4 | Phase 6 | PDF-Export | Druckbare Reports fuer Management |
|
||||
| 4 | Phase 7 | Recurring Scans | Automatische Ueberwachung |
|
||||
| 5 | Phase 8 | Multi-Website Vergleich | Wettbewerber-Benchmark |
|
||||
| 6 | Phase 9 | Authenticated Testing | Login-Bereich pruefen (§312k, Art. 17, 20) |
|
||||
|
||||
---
|
||||
|
||||
## Phase 9: Authenticated Website Testing (P3, 2 Tage)
|
||||
|
||||
### Konzept
|
||||
|
||||
Ein DSB gibt seine eigenen Credentials im SDK ein. Playwright loggt sich ein
|
||||
und prueft den Kundenbereich auf Pflichtfunktionen:
|
||||
|
||||
### Pruefbare Rechte nach Login
|
||||
|
||||
| Pruefung | Rechtsgrundlage | Methode |
|
||||
|----------|----------------|---------|
|
||||
| Kuendigungsbutton (2 Klicks) | §312k BGB | Navigation suchen, Klicks zaehlen |
|
||||
| Konto loeschen | Art. 17 DSGVO | "Konto loeschen" Button suchen |
|
||||
| Daten exportieren | Art. 20 DSGVO | "Daten herunterladen" suchen |
|
||||
| Einwilligungen widerrufen | Art. 7(3) DSGVO | Consent-Einstellungen suchen |
|
||||
| Profildaten einsehen | Art. 15 DSGVO | Profil-/Kontobereich pruefen |
|
||||
|
||||
### Sicherheit
|
||||
|
||||
- Credentials werden NUR fuer die Dauer des Tests im Browser-Kontext gehalten
|
||||
- Kein Speichern in DB, kein Logging, kein Senden an Dritte
|
||||
- Nach Test: Browser-Kontext wird zerstoert, Credentials verworfen
|
||||
- HTTPS-only (kein HTTP-Login)
|
||||
|
||||
### Implementierung
|
||||
|
||||
- Erweiterung des `consent-tester` Service um Login-Flow
|
||||
- Neuer Tab im Frontend: "Authentifizierter Test"
|
||||
- Credential-Eingabe als einmalige Formularfelder (nicht gespeichert)
|
||||
- Screenshots als Belege fuer den Report
|
||||
|
||||
### Dateien
|
||||
|
||||
| Datei | LOC | Zweck |
|
||||
|-------|-----|-------|
|
||||
| `consent-tester/services/authenticated_scanner.py` | ~200 | Login + Kundenbereich-Checks |
|
||||
| `consent-tester/main.py` | +30 | Neuer /authenticated-scan Endpoint |
|
||||
| Frontend: AuthenticatedTestTab | ~150 | Credential-Eingabe + Ergebnis |
|
||||
|
||||
## Investoren-Demo Szenario
|
||||
|
||||
|
||||
Reference in New Issue
Block a user