# Datenschutz: Web-Push-Benachrichtigungen > Ergänzt [web-push-architecture.md](web-push-architecture.md) um die Datenschutz-Detailsicht. > Betrifft ausschließlich die optionale Push-Funktion — die übrige PWA/Monitoring-Nutzung bleibt > unverändert anmeldungsfrei und ohne Tracking (siehe `docs/mobile-api.md`). ## Welche Daten werden gespeichert, und wozu | Datum | Zweck | Pflicht? | |---|---|---| | `deviceId` (zufällige, anonyme Installations-ID) | Eindeutige Zuordnung der Subscription/Einstellungen zu genau dieser App-Installation | Ja, für Push erforderlich | | gehashtes `deviceSecret` | Verhindert, dass Dritte ohne Kenntnis des Secrets fremde Push-Einstellungen ändern/löschen (siehe „Authentifizierung" in `web-push-architecture.md`) | Ja, für Push erforderlich | | Push-Subscription (`endpoint`, `p256dh`, `auth`) | Technisch zwingend für den Versand über den Push-Dienst des Browser-Anbieters (Google/Mozilla/Apple) | Ja, für Push erforderlich | | `platform`/`userAgentClass` (grobe Klasse, z. B. „ios-pwa") | Fehlerdiagnose (welche Plattform hat Zustellprobleme) | Nein, nur zur Diagnose, keine vollständige Geräteanalyse | | Push-Einstellungen (welche Ereignistypen gewünscht sind) | Steuerung, welche Nachrichten dieses Gerät erhält | Ja, für sinnvolle Nutzung | | Zeitstempel (`createdAt`, `lastSeenAt`, `lastSuccessfulPushAt`, `lastFailedPushAt`) | Betriebsdiagnose, Bereinigung ungültiger Subscriptions | Nein, nur zur Diagnose | ## Was **nicht** gespeichert wird - **Keine E-Mail-Adresse** ist erforderlich oder wird erhoben. - **Keine dauerhafte GPS-/Standortermittlung** — die Wetterdaten beziehen sich fest auf den konfigurierten Ort (38165 Lehre Wendhausen), nicht auf den tatsächlichen Gerätestandort. - **Keine Werbeprofile**, kein Tracking über mehrere Websites hinweg. - **Keine Weitergabe an Werbekunden oder sonstige Dritte** — Subscription-Daten werden ausschließlich verwendet, um über den vom Nutzer selbst gewählten Browser-Push-Dienst Benachrichtigungen an genau dieses Gerät zu senden. - **Kein vollständiger User-Agent-String**, keine IP-Adresse, keine Hardware-Kennung wird dauerhaft gespeichert. - **Kein Fingerprinting** — die `deviceId` wird von der App selbst zufällig erzeugt, nicht aus Geräteeigenschaften abgeleitet. ## Rolle des Browser-Anbieters (Push-Dienst) Der Push-**Endpoint** (Teil der Subscription) wird technisch vom Push-Dienst des jeweiligen Browser-/Betriebssystemanbieters verarbeitet (z. B. Google FCM für Chrome/Android, Mozilla Autopush für Firefox, Apple Web Push für Safari/iOS). Dieser Dienst leitet die (verschlüsselte) Nachricht an das Gerät weiter, kann aber den **Inhalt** der Nachricht nicht lesen (Ende-zu-Ende- Verschlüsselung nach RFC 8291, siehe `web-push-architecture.md`). Diese Weiterleitung ist ein Web-Standard-Mechanismus, kein zusätzlicher Datenaustausch, den dieses Projekt einführt. ## Abmeldung und Löschung - Jederzeit über „Benachrichtigungen deaktivieren" in der PWA (unter „Mehr" → „Benachrichtigungen") möglich. - Dabei werden: die Browser-Subscription lokal gelöscht, die serverseitige Registrierung (`DELETE /api/v1/mobile/push/subscriptions/{deviceId}`) vollständig entfernt, die lokalen Push-Einstellungen (`wm_push_settings_v1`) bereinigt. - **Wetterstand und lokaler Lernstand (`wm_learning_v1`) werden dabei nicht gelöscht** — die Abmeldung von Push betrifft ausschließlich die Push-Funktion. - Ein Zurücksetzen des Lernstands (bestehende Funktion) löscht umgekehrt **nicht** die Push-Registrierung oder das Theme — alle vier Storage-Bereiche (`wm_learning_v1`, `wm_theme_v1`, `wm_device_id_v1`, `wm_push_settings_v1`) sind bewusst unabhängig voneinander. ## Aufbewahrungsdauer - Subscriptions: bleiben gespeichert, solange sie aktiv sind oder der Nutzer sie nicht löscht. Automatisch deaktivierte Subscriptions (Push-Dienst meldet `404`/`410` — Gerät/Browser hat die Subscription clientseitig bereits verworfen, z. B. nach Löschen der Browserdaten) werden nach `WEB_PUSH_RETENTION_DAYS` (Standard 90 Tage) endgültig entfernt. - Ereignisse (`events.json`) und Zustellprotokoll (`deliveries.json`): ebenfalls `WEB_PUSH_RETENTION_DAYS`, danach automatisch bereinigt (analog zu den bestehenden Aufbewahrungsfristen für Snapshots/Beobachtungen, siehe `docs/configuration.md`). ## Kurzfassung für die PWA In der Benachrichtigungs-Ansicht (siehe `docs/web-push-architecture.md` Abschnitt 16) wird folgender kurzer Hinweistext angezeigt: > Benachrichtigungen sind freiwillig und jederzeit widerrufbar. Es wird nur eine anonyme > Geräte-ID gespeichert — kein Benutzerkonto, keine E-Mail-Adresse, keine Standortverfolgung. > Die Nachrichten werden über den Push-Dienst deines Browsers/Betriebssystems zugestellt und sind > für niemanden außer dir lesbar.