# Sicherheitshinweise

## Legacy-Projekt

Das historische PHP-Projekt enthielt fest eingetragene Datenbank-Zugangsdaten. Diese Werte wurden nicht in das neue Projekt übernommen. Bestehende Zugangsdaten des Altprojekts sollten rotiert und anschließend aus der Repository-Historie entfernt beziehungsweise als kompromittiert behandelt werden.

## Stand dieses Skeletts

Die Schreibendpunkte besitzen absichtlich noch keine Authentifizierung und dürfen so nicht öffentlich erreichbar gemacht werden. Vor einem Produktivbetrieb sind mindestens erforderlich:

- Login und Rollen für Lehrkräfte, Redakteure und Administration,
- CSRF-Schutz beziehungsweise tokenbasierte API-Authentifizierung,
- serverseitige Prüfung tatsächlicher Datei-Inhalte statt nur MIME-Typ und Endung,
- Begrenzung von Request-Rate, Speicherverbrauch und Medienabmessungen,
- Protokollierung sämtlicher Änderungen und Wiederherstellungen,
- HTTPS, sichere Header und ein restriktiver Reverse-Proxy,
- Datenschutzkonzept für Standortdaten und von Schülerinnen und Schülern erstellte Medien.
