Non uso la sessione, quindi l'ho rimosso insieme a tutti i moduli HTTP di cui non ho bisogno.AntiForgeryToken richiede lo stato della sessione?
volte ottengo questo errore: System.Web.Mvc.HttpAntiForgeryException: The anti-forgery token could not be decrypted. If this application is hosted by a Web Farm or cluster, ensure that all machines are running the same version of ASP.NET Web Pages and that the <machineKey> configuration specifies explicit encryption and validation keys. AutoGenerate cannot be used in a cluster.
o questa: System.Web.Mvc.HttpAntiForgeryException: The provided anti-forgery token was meant for a different claims-based user than the current user.
Quando abilito sessione, funziona.
Quindi la domanda è: la roba csrf dipende dallo stato della sessione?
Sei sicuro che il tuo fornitore di hosting condiviso ospiti l'applicazione su un solo server web? – lowleveldesign
@lowleveldesign Non ne sono sicuro. Ma abbastanza convinto, come il nome host è sempre lo stesso nei miei registri, come è l'IP. –
e che dire del dominio su cui sono impostati i cookie csrf? Stai usando il tuo sottodominio unico? In caso contrario, l'applicazione potrebbe ricevere cookie da altre applicazioni .NET in esecuzione sullo stesso dominio principale. – lowleveldesign