La nostra applicazione web invia un token generato da un uso singolo, sotto forma di URL, ai clienti che dimenticano le loro password. Questo funziona tranne nel caso in cui il client sia seduto dietro un altro server che analizza la loro posta elettronica per URL e fa un GET sull'URL. Suppongo che il server stia controllando un carico utile dannoso.
Il client apre l'email e fa clic sul link, ma ovviamente non succede niente perché il token non è valido in quel punto.
Posso pensare ad alcuni modi per gestirlo:
• Invece di scadere immediatamente, consentire al token di essere valido per un certo periodo di tempo. Svantaggio: aggira l'intero punto di un token monouso poiché il token può essere utilizzato più volte. Inoltre, potrebbe non risolvere il problema se l'utente decide di aprire la sua email PAST la data di scadenza.
• Rendi il token buono per due usi. Svantaggio: simile a quanto sopra. Cosa succede se il controllo spam controlla "nuovamente l'URL ... Sigh.
Comunque, sto cercando un po 'di saggezza qui su come gestirlo. Se ci sono idee migliori di quelle che ho proposto mi piacerebbe sentirle.
EDIT: l'ho cross-postato su programmer.stackexchange . Andare lì per un po 'di discussione, ma la risposta che ho selezionato di seguito è fondamentalmente la stessa risposta.