Devo implementare un numero di pagine Web per reimpostare una chiave di accesso API:
- l'utente deve essere registrato per primo
- l'utente accede alla pagina di "conferma" che ha un link di "conferma" con un token temporale inserito
- l'utente segue un link "conferma"
- server ottiene il token dal link seguito e decide se è abbastanza recente (diciamo che al massimo cinque minuti è considerato buono)
- se il token è abbastanza recente il server reimposta la chiave di accesso API, altrimenti rifiuta di farlo e chiede all'utente di tornare indietro e ottenere un collegamento con un nuovo token
Questo ha lo scopo di impedire agli utenti di riutilizzare accidentalmente il link e reimpostare le chiavi dell'API involontariamente.
Quindi il problema è il token temporale. Il modo più semplice per ottenere l'ora locale del server e inserirla nel collegamento ipertestuale. Il tempo rappresentato come numero di "tick" (simile al tempo Unix) va bene. Questo rivela all'utente il tempo locale del server perché l'utente deve avere un collegamento ipertestuale prima di poterlo seguire.
Forse non va bene rivelare l'ora locale all'utente - forse facilita alcuni attacchi intelligenti contro il server.
La divulgazione del tempo del server introduce ulteriori rischi per la sicurezza?