Ho un'app MVC 4 e ho problemi quando la sessione dei moduli scade e quindi l'utente prova a disconnettersi.Durante il tentativo di disconnessione, il token anti-contraffazione fornito era destinato all'utente "XXXX", ma l'utente corrente è ""
Es. Il timeout è impostato su 5 min. L'utente esegue il login. L'utente non esegue nulla per 10 minuti. L'utente fa clic sul collegamento LogOff. L'utente riceve errore: "Il token anti-contraffazione fornito era destinato all'utente" XXXX ", ma l'utente corrente è" "."
L'utente ha quindi dovuto sottoporsi a qualche ginnastica per aggirare il problema in modo da poter effettuare nuovamente il login, quindi effettuare nuovamente il logout (il logout viene utilizzato per chiudere il relativo cartellino del giorno).
Penso di capire perché questo accada ... ma non sono sicuro di come sistemarlo.
MODIFICA: Perché penso che questo stia accadendo è perché originariamente quando la pagina è caricata, il token AntiForgery viene generato per l'utente attualmente loggato. Ma poi quando la sessione scade e tentano di navigare verso la pagina di disconnessione, l'utente corrente è "" invece dell'utente reale. In quanto tale c'è una mancata corrispondenza e l'errore è reso.
Puoi condividere la tua ipotesi per cui si verifica l'errore? – J0e3gan
Un [post correlati] (http://stackoverflow.com/questions/14970102/anti-forgery-token-is-meant-for-user-but-the-current-user-is-username) sembra degno di essere preso in considerazione. – J0e3gan
Aggiunta la mia ipotesi. Ho visto quel post a cui ti sei riferito e, sebbene possa essere correlato, non sono in grado di collegare i punti ... Non ho molta familiarità con questo aspetto di ASP.NET. –