Sto implementando la protezione anti-contraffazione CSRF nella mia applicazione ASP.NET MVC 5. In particolare, sto facendo riferimento all'approccio descritto da Mike Wasson sullo ASP.NET website per proteggere i metodi del controller che rispondono alle richieste AJAX, come nei controller WebAPI. Questo approccio utilizza il metodo AntiForgery.GetTokens per generare token anti-contraffazione crittografici basati sugli utenti e quindi AntiForgery.Validate per verificare che i token inviati appartengano all'utente corrente.I token anti-contraffazione ASP.NET MVC CSRF scadono?
La mia domanda è questa: c'è un time-to-live per questi token? Scadono e, in caso affermativo, per quanto tempo servono? La documentazione è muta sull'argomento.
Non voglio permettere token non in scadenza nel mio sistema. Inoltre, voglio comunicare al client quanto tempo hanno prima di richiedere un nuovo token è necessario. Posso implementare i token in scadenza, se necessario, usando FormsAuthentication.Encrypt; tuttavia, se la scadenza è già incorporata nei metodi della classe AntiForgery
, allora mi piacerebbe risparmiarmi la complessità non necessaria.
vorrei sapere anche questo. Prova a guardare il codice sorgente: https://github.com/ASP-NET-MVC/aspnetwebstack/blob/4e40cdef9c8a8226685f95ef03b746bc8322aa92/src/System.Web.WebPages/Helpers/AntiForgery.cs – nmit026