2.5 KiB
2.5 KiB
0012 — Pannello admin proprio; superuser creato come da documentazione PocketBase
- Stato: Accettato
- Data: 2026-10-11
- Sostituisce 0011
Contesto
Nuova decisione dell'utente (2026-10-11): niente .env per la password; seguire la documentazione di PocketBase; l'admin gestisce tutto da un pannello (dashboard) intuitivo creato da noi, non dalla dashboard standard di PocketBase.
Decisione
- Superuser: creato come indica la documentazione ufficiale: link dell'installer web scritto nei log al primo avvio, oppure
superuser create EMAIL PASSda terminale. Nessun.envcon la password, nessuno script che la legge. La password vive solo nel DB di PocketBase. - Pannello admin: pagina del frontend (ADR 0007,
pb_public/, senza build step) accessibile solo dopo il login da superuser (pb.collection('_superusers').authWithPassword). Requisito: F-14. - Le operazioni di scrittura restano protette dalle API rules (ADR 0009): il pannello è solo un'interfaccia; nascondere i pulsanti non è sicurezza.
- La dashboard standard di PocketBase resta disponibile come strumento di emergenza dell'admin (schema, ripristino), non come interfaccia d'uso.
Alternative considerate
- Solo dashboard PocketBase (ADR 0011): zero codice, ma poco intuitiva per caricare e vedere lo stato della ricodifica.
- Password in
.env: scartata dall'utente; PocketBase non la legge comunque da solo.
Conseguenze
- ✔ Interfaccia pensata per le operazioni reali: carica, stato, categorie.
- ✘ Più codice frontend da scrivere e testare (fase M3b in 03-roadmap.md), incluso il login da superuser separato da quello utenti.
- Casi limite da coprire: token scaduto durante un upload lungo (la durata del token superuser non è specificata nella documentazione consultata: verificare in M0), upload interrotto, eliminazione con contenuti (bloccata), doppio invio, rifiuto della regola foglie (ADR 0010) con messaggio chiaro.
- Accessibilità di base: tastiera, etichette dei campi, messaggi d'errore in italiano.
Fonti
- https://pocketbase.io/docs/authentication/ (consultata 2026-10-11): il superuser si autentica con
authWithPasswordsulla collection_superusers; le rules sono ignorate per i superuser; durata del token non indicata. - https://pocketbase.io/docs/going-to-production/ (consultata 2026-10-11): primo superuser via
superuser create EMAIL PASSo installer web (link nei log).