Ri-autenticazione
Quando una sessione autenticata scade, l'utente deve poter continuare senza perdere i dati già inseriti. La sessione termina, ma il lavoro in corso no.
Cosa richiede
Se una sessione autenticata scade nel mezzo di un’attività, l’utente deve poter ri-autenticarsi e riprendere l’attività senza perdere i dati già inseriti. I campi del modulo rimangono compilati, il carrello della spesa rimane pieno, il commento scritto a metà rimane in bozza.
Come soddisfarlo
- Salvare lo stato del modulo sul server (o in local storage con un prompt di recupero) ad ogni modifica significativa, non solo all’invio.
- Quando una sessione scade, restituire un 401 alla chiamata API ma mantenere l’utente sulla stessa pagina; visualizzare un prompt di accesso all’interno della pagina anziché un reindirizzamento completo.
- Dopo una ri-autenticazione riuscita, ripetere l’azione originale con il payload originale. L’utente deve percepire l’esperienza come se non ci fosse stata alcuna interruzione.
- Per i flussi multipagina, tenere traccia dell’avanzamento lato server legato all’account utente, non al token di sessione.
Errori comuni
- Flussi di bonifico bancario in cui la scadenza della sessione riporta l’utente alla schermata di accesso e il modulo di bonifico parzialmente compilato è andato perso.
- Sistemi di commento in cui una lunga risposta viene persa dopo un reindirizzamento di ri-autenticazione — comune su Reddit, siti di notizie e forum.
- Moduli governativi multipagina che perdono tutti i dati inseriti alla scadenza della sessione, costringendo a ricominciare dalla pagina uno.
- Flussi di checkout in cui il carrello sopravvive ma i dati di spedizione e pagamento devono essere reinseriti.
Perché è importante
Questo criterio riguarda il rispetto del lavoro dell’utente. Riscrivere un modulo lungo è fastidioso per qualsiasi utente; per chi utilizza uno screen reader, il controllo vocale o un dispositivo a scansione, può significare altri venti o quaranta minuti di lavoro — ed è spesso il motivo per cui abbandonano. La maggior parte dei siti commerciali non è ancora conforme, ma le applicazioni di produttività cloud (Google Docs, Office 365, i moderni sistemi bancari) hanno in gran parte risolto il problema attraverso il salvataggio automatico abbinato alla ri-autenticazione in background.