# Changelog Alle Einträge verwenden ISO-8601-Timestamps in UTC. Mehrere Änderungen desselben Tages werden in einem gemeinsamen Eintrag zusammengefasst. ## 2026-09-20T13:48:02+00:00 – Initial Release ### Anwendung - PnPaaS-Webanwendung als PHP-/MariaDB-Anwendung bereitgestellt. - Benutzerregistrierung mit E-Mail-Aktivierung implementiert. - Anmeldung, Session-Verwaltung und Logout implementiert. - Passwort-Reset mit gehashten, zeitlich begrenzten Einmal-Tokens implementiert. - Passwort- und Benutzerdaten werden mit sicheren Hash-Verfahren verarbeitet. - Benutzer- und Admin-Dashboard für Instanzanforderungen bereitgestellt. - Tarif- und Instanzstatusverwaltung integriert. - Portainer-Anbindung über serverseitigen API-Key integriert. - Audit-Log und Datenbankbeziehungen für Benutzer und Instanzen vorgesehen. - Rechtstext-Zustimmungen mit Dokument-URLs und Versionsangaben gespeichert. ### Sicherheit - CSRF-Schutz für zustandsändernde Formulare implementiert. - Prepared PDO Statements und native PDO-Prepares aktiviert. - Sichere Session-Cookies, HttpOnly, SameSite und Secure-Cookie-Unterstützung aktiviert. - Sicherheitsheader einschließlich CSP, HSTS bei HTTPS, Frame-Schutz und MIME-Schutz ergänzt. - Technische Fehlerdetails werden nicht an Benutzer ausgegeben. - `.htaccess` schützt `includes/`, `database/`, Laufzeitkonfigurationen und sensible Dateien. - Portainer-TLS-Zertifikatsprüfung bleibt aktiviert. - Produktive Zugangsdaten, `.env`-Dateien, API-Keys und Datenbankinhalte sind nicht Bestandteil des Repositories. ### Datenbank - Idempotentes Basisschema für Benutzer, Aktivierungstokens, Passwort-Reset-Tokens, Zustimmungen, Instanzen, Portainer-Tokens und Audit-Logs hinzugefügt. - Migration für Kontoaktivierung hinzugefügt. - Migration für zusätzliche Registrierungsdaten hinzugefügt. - Fremdschlüssel, eindeutige Schlüssel und Statuswerte definiert. ### Installation und Betrieb - Browserinstaller als `installer.php` bereitgestellt. - Installation ohne Shellzugriff ermöglicht, sofern Datenbank und Datenbankbenutzer bereits über das Hosting-Panel angelegt wurden. - Installer funktioniert direkt im Webroot sowie in einem Unterverzeichnis. - Runtime-Konfiguration wird als geschützte PHP-Datei geschrieben. - Installer löscht sich nach erfolgreicher Installation selbst und verwendet zusätzlich einen Completion-Marker. - Root-Layout des Git-Repositories hergestellt; die Anwendung liegt direkt im Repository-Root. - Beispielkonfiguration und Sicherheitsdokumentation bereitgestellt. - Browserinstaller korrigiert: Der initiale Administrator wird jetzt mit allen im `users`-Schema erforderlichen Pflichtfeldern angelegt. - Realm-Dashboard korrigiert: Es fragt nur noch die konfigurierte Portainer-Umgebung ab, benötigt keine globale Endpoint-Liste oder Endpoint-Metadaten mehr und verwendet direkt den Docker-Proxy. - Fehlgeschlagene, bereits bezahlte Provisionierungen können durch Administratoren erneut gestartet werden. - Administratoren erhalten bei fehlgeschlagenen Instanzaktionen einen bereinigten technischen Diagnosehinweis inklusive cURL-Fehlerdetails bei Verbindungsproblemen.