Files
aza/AzA march 2026 - Kopie (10)/deploy/SECURITY_CHECKLIST.md
2026-04-16 13:32:32 +02:00

2.1 KiB

AZA Final Security Checklist

Ziel

Finale Sicherheitsprüfung vor produktivem Einsatz von AZA Medical AI Assistant.


1. Auth / Tokens

  • X-API-Token wird für geschützte Endpoints verwendet
  • keine Umstellung auf Authorization: Bearer ohne expliziten Auftrag
  • Tokens nie loggen
  • Tokens nie in JSON-Antworten zurückgeben
  • Dev-Token nur bewusst für lokale/dev Zwecke verwenden

2. License Endpoint

  • /license/status Schema bleibt exakt:
    • { "valid": true, "valid_until": 1774553596 }
    • { "valid": false, "valid_until": null }
  • keine Breaking Changes am Response-Format

3. Logging

  • keine Secrets loggen
  • keine Tokens loggen
  • keine PHI loggen
  • keine Diktatinhalte loggen
  • keine Suchanfragen mit sensiblen Inhalten loggen
  • nur technische Minimal-Logs

4. Telemetry

  • nur freigegebene Events
  • keine PHI
  • keine Freitexte
  • crash_type nur aus Whitelist
  • target_version nur bei update_check
  • Rate-Limit aktiv

5. Request Limits

  • sinnvolle Request-Size-Limits für öffentliche Endpoints
  • Schutz vor sehr großen Payloads
  • Schutz vor Missbrauch durch Flooding

6. Public Endpoint Review

Öffentlich erlaubte Endpoints bewusst prüfen:

  • /health
  • /version
  • /download
  • /telemetry/ping

Nicht öffentlich versehentlich exponieren:

  • interne Admin-Endpunkte
  • Diagnose-/Debug-Endpunkte
  • tokenpflichtige interne APIs

7. Deployment / Ops

  • korrekte ENV-Variablen gesetzt
  • MEDWORK_API_TOKEN gesetzt
  • Reverse Proxy korrekt
  • nur benötigte Ports offen
  • Healthcheck erfolgreich

8. Release / Download

  • release/version.json konsistent
  • download_url zeigt auf aza-medwork.ch
  • Release-Skript erzeugt korrekte URL
  • keine kaputten oder leeren Release-Metadaten

9. Billing / Dokumente

  • keine sensiblen Inhalte unnötig speichern
  • Rechnungsdaten klar getrennt von medizinischen Inhalten
  • Pflichtfelder für Rechnungen dokumentiert

10. Go-Live Entscheidung

Go-Live nur wenn:

  • Healthcheck PASS
  • /version PASS
  • /download PASS
  • /license/status Schema PASS
  • Telemetry validiert
  • keine offensichtlichen offenen Secret-/Logging-Probleme