- Add docs/README.md as the index of all documentation. - Split the 52 DEC entries of decisioni-e-limiti.md into docs/adr/ADR-NN files (same numbers), add ADR-53 (audit log), TEMPLATE.md and an ADR index with a feature -> ADR table. - Rename decisioni-e-limiti.md to limiti-noti.md (LIM only) and rewrite all DEC-nn references as links to the ADRs. - Document the docs-first / SSOT / ADR rules in processo-di-modifica.md and map the docs in CLAUDE.md and README.md. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
19 lines
958 B
Markdown
19 lines
958 B
Markdown
# ADR-43 — Header di sicurezza nel proxy, con `'unsafe-inline'` accettato
|
|
|
|
- **Stato:** Accettata
|
|
- **Area:** Account, amministrazione e sicurezza
|
|
- **Fonte di verità per:** la scelta di progetto descritta qui sotto; i requisiti (`PREFISSO-NN`) che la attuano stanno nei documenti di dominio, indicati nelle *Conseguenze*.
|
|
|
|
## Decisione
|
|
|
|
**Header di sicurezza nel proxy, con `'unsafe-inline'`
|
|
accettato**: HSTS, `nosniff`, `X-Frame-Options: DENY`, `Referrer-Policy` e una
|
|
CSP `default-src 'self'` più Google Fonts. Script e stili inline restano
|
|
permessi perché entrambe le SPA usano `onclick` e `style=""`; rimuoverli è un
|
|
refactoring a parte. La documentazione automatica dell'API (`/docs`,
|
|
`/redoc`, `/openapi.json`) è spenta per default (`ENABLE_API_DOCS`).
|
|
- *Conseguenze:* [LIM-09].
|
|
|
|
*Codice:* `Caddyfile` · `app/main.py` · `app/config.py:Settings` ·
|
|
*Test:* `tests/unit/test_caddyfile_security_headers.py`, `tests/unit/test_docs_disabled.py`
|