- realip: IP klienta z X-Real-IP ustawianego przez nginx hosta, zaufanie tylko
z sieci prywatnych; limitowany jest wylacznie ruch przez nginx hosta.
- Limity na IP: logowanie/hasla 10/min, akcje wysylajace mail/SMS 3/min,
tlumaczenia 120/min, cale API 30/s; 429 jako JSON z komunikatem.
- Wspolne ustawienia proxy w nginx/api-proxy.conf.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
- security-headers.conf: nosniff, X-Frame-Options, Referrer-Policy, HSTS,
Permissions-Policy i minimalny CSP; dolaczany w kazdym location z add_header,
bez dublowania naglowkow Spring Security na /api/.
- docker-compose.prod.yml: APP_JWT_SECRET bez wartosci domyslnej - brak zmiennej
zatrzymuje wdrozenie zamiast startu z jawnym sekretem.
- Obraz frontendu budowany przez npm ci z package-lock.json.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>