This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
# Development
|
||||
|
||||
## Voraussetzungen
|
||||
|
||||
- Python 3.12+
|
||||
- Node.js 20+
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
python3 -m venv .venv
|
||||
source .venv/bin/activate
|
||||
pip install -r requirements.txt djlint pytest pre-commit
|
||||
npm ci
|
||||
pre-commit install
|
||||
```
|
||||
|
||||
## Wichtige ENV-Variablen
|
||||
|
||||
- `SESSION_SECRET`: starkes Secret für Sessions
|
||||
- `DATA_ENCRYPTION_KEY`: separates Secret für verschlüsselte Betriebsgeheimnisse
|
||||
- `BOOTSTRAP_ADMIN_EMAIL`: optionaler Initial-Admin
|
||||
- `FORWARDED_ALLOW_IPS`: vertrauenswürdige Proxy-Adressen
|
||||
|
||||
Beispielwerte stehen in `.env.example`.
|
||||
|
||||
## Befehle
|
||||
|
||||
```bash
|
||||
make policy
|
||||
make lint
|
||||
make test
|
||||
make ci
|
||||
```
|
||||
@@ -0,0 +1,22 @@
|
||||
# Security Notes
|
||||
|
||||
## Umgesetzte Maßnahmen
|
||||
|
||||
- Passwörter werden mit Argon2 gehasht.
|
||||
- Zustandsändernde Requests sind CSRF-geschützt.
|
||||
- Benutzerzugriffe werden serverseitig an die eigene Identität gebunden.
|
||||
- Admin-Endpunkte sind rollenbasiert abgesichert.
|
||||
- Passwort-Reset-Tokens werden nur gehasht gespeichert.
|
||||
- MFA unterstützt TOTP und E-Mail-Codes.
|
||||
- Besonders sensible Betriebsgeheimnisse können verschlüsselt gespeichert werden.
|
||||
|
||||
## Betriebsrichtlinien
|
||||
|
||||
- `SESSION_SECRET` und `DATA_ENCRYPTION_KEY` getrennt und stark setzen.
|
||||
- Reverse-Proxy und TLS aktuell halten.
|
||||
- Logins und Admin-Aktionen überwachen.
|
||||
- Backups schützen und regelmäßig testen.
|
||||
|
||||
## Meldung von Sicherheitsproblemen
|
||||
|
||||
Bitte veröffentliche Sicherheitsprobleme nicht direkt als öffentliches Issue. Nutze einen privaten Kontaktkanal des Betreibers oder maintainerspezifische Security-Kontaktdaten.
|
||||
Reference in New Issue
Block a user