50 lines
2.9 KiB
Markdown
50 lines
2.9 KiB
Markdown
# 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.
|