---
id: howto-dsgvo-delete-photo
title: How-to – DSGVO-Löschung eines Fotos
sidebar_label: DSGVO – Foto löschen
---

Dieses How‑to beschreibt den operativen Ablauf, wenn ein Gast verlangt, dass ein konkretes Foto DSGVO‑konform gelöscht wird.

## 1. Anfrage & Berechtigung prüfen

Bevor du etwas löschst:

- Handelt der Gast über den Veranstalter (Tenant) oder direkt bei Fotospiel?
- Kann das Foto eindeutig identifiziert werden?
  - Am besten via Link zur Galerie / Foto‑Detailseite.
  - Alternativ via Screenshot + Event‑Name + Zeitfenster.
- Ist der Tenant (Veranstalter) einverstanden?
  - In der Regel sollte die Entscheidung, ob ein Foto gelöscht wird, beim Tenant liegen, sofern der Vertrag dies vorsieht.

Alle relevanten Informationen und Entscheidungen sollten im Ticket erfasst werden.

## 2. Foto im System identifizieren

1. Über die Admin‑UI:
   - In der Tenant Admin PWA den betroffenen Event öffnen.
   - Foto über Moderations‑/Galerieansicht suchen.
   - ID des Fotos notieren (sofern sichtbar) oder den direkten Admin‑Link verwenden.
2. Falls nötig, über DB/Logs:
   - Anhand von Dateinamen/URLs aus Logs (`event_media_assets.path`, `photos.thumbnail_path`) das Foto lokalisieren.

## 3. Löschung über Admin-UI (präferiert)

Wenn die Admin‑Oberfläche eine Delete/Hide‑Funktion bietet:

1. Tenant Admin das Foto über das Moderationsinterface löschen lassen.
2. Sicherstellen, dass:
   - Foto nicht mehr in Galerie/Moderationslisten erscheint.
   - Share‑Links oder öffentliche Galerien das Foto nicht mehr anzeigen.
3. Falls es trotzdem noch angezeigt wird:
   - Caches prüfen (Browser, CDN, ggf. Thumbnail‑Caches).

## 4. Technischer Löschpfad (Backend)

Falls eine UI‑Löschung nicht ausreicht oder du nachkontrollieren willst:

1. **Datenbank**
   - `photos`:
     - Prüfen, dass der Eintrag für das Foto gelöscht oder hinreichend anonymisiert wurde.
   - `event_media_assets`:
     - Alle Einträge, die auf dieses Foto (`photo_id`) zeigen, identifizieren.
     - Pfade (`disk`, `path`) notieren.
2. **Storage**
   - Für alle relevanten `EventMediaAsset`‑Einträge:
     - Dateien im Hot‑/Archive‑Storage löschen (Original + Derivate/Thumbnails).
3. **Verknüpfungen**
   - Sicherstellen, dass keine weiteren Verweise existieren:
     - Likes/Statistiken für dieses Foto (z.B. `photo_likes`) – optional mit entfernen, sofern vorhanden.

> Hinweis: Wenn ihr `AccountAnonymizer` auf Tenant‑/User‑Ebene verwendet, löscht dieser im Regelfall großflächig Medien. Für Einzelfälle (ein Foto) ist der oben skizzierte Weg geeigneter.

## 5. Dokumentation & Bestätigung

- Im Ticket festhalten:
  - Welches Foto (Event, ID/URL).
  - Wer die Löschung veranlasst und genehmigt hat.
  - Welche Schritte tatsächlich durchgeführt wurden (UI, DB, Storage).
- Tenant/Gast informieren:
  - Bestätigung, dass das Foto aus Galerie und Speicher entfernt wurde.
  - Hinweis, dass ggf. Browser‑/CDN‑Caches eine kurze Zeit nachlaufen können, aber keine neuen Zugriffe mehr möglich sind.

## 6. Präventive Verbesserungen

Wenn dieser Vorgang häufig vorkommt:

- Prüfen, ob die Admin‑UI einen klareren, selbstbedienbaren Weg zur Foto‑Löschung bietet.
- Sicherstellen, dass die Dokumentation für Tenant Admins (siehe Help‑Center) erklärt, wie sie Fotos eigenständig löschen und wie sich das auf Gäste auswirkt.

Dieses How‑to ergänzt `docs/ops/compliance-dsgvo-ops.md` um einen konkreten Einzelfall. Für komplexere Anonymisierungs‑Szenarien siehe den Abschnitt zum `AccountAnonymizer`.

