docs(security): slug cliente ruotati in produzione

I 4 slug esistenti avevano suffissi da 4 caratteri generati con Math.random();
ora 12 caratteri CSPRNG. Lo slug risolve prima del token, quindi era il vero
anello debole dell'accesso alla dashboard cliente (C-2).

Lo script SQL NON e' committato di proposito: contiene gli slug in chiaro, che
sono credenziali bearer verso /client/<slug> — committarlo ripeterebbe la fuga
di credenziali trovata al punto 1 dell'audit.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-07-28 10:55:38 +02:00
parent e2bd1d95ed
commit bcff4aad48
+1 -1
View File
@@ -19,7 +19,7 @@ Restano aperti solo i punti che richiedono accesso a Coolify o una tua decisione
| 1.3 | Eliminare `src/lib/quote-actions.ts` | ✅ fatto | | 1.3 | Eliminare `src/lib/quote-actions.ts` | ✅ fatto |
| 1.4 | Rate limit su `/client/` | ✅ fatto | | 1.4 | Rate limit su `/client/` | ✅ fatto |
| 2.1 | Slug a 12 caratteri + CSPRNG | ✅ fatto (solo nuovi clienti) | | 2.1 | Slug a 12 caratteri + CSPRNG | ✅ fatto (solo nuovi clienti) |
| 2.2 | Rigenerare gli slug esistenti | **richiede tua decisione (a) o (b)** | | 2.2 | Rigenerare gli slug esistenti | ✅ fatto — 4 clienti ruotati in prod il 2026-07-28 |
| 3.1 | HSTS | ✅ fatto | | 3.1 | HSTS | ✅ fatto |
| 3.2 | CSP | ✅ fatto (enforcing; `script-src` con `unsafe-inline`, motivato nel file) | | 3.2 | CSP | ✅ fatto (enforcing; `script-src` con `unsafe-inline`, motivato nel file) |
| 3.3 | Rimuovere i 4 sink `dangerouslySetInnerHTML` | ✅ fatto | | 3.3 | Rimuovere i 4 sink `dangerouslySetInnerHTML` | ✅ fatto |