mvc forgery foreign anti asp.net-mvc web-config antiforgerytoken

asp.net-mvc - forgery - csrf token c#



Desplegando el error AntiforgeryToken (5)

Estoy trabajando en una aplicación MVC de ASP.NET en mi máquina local utilizando Visual Studio 2012 integrado en IISExpress. Después de un progreso significativo, decidí ponerlo a disposición en la red local, creé un directorio virtual desde Visual Studio. Puedo iniciar sesión pero cuando intento registrar un nuevo usuario. Me sale el error de abajo.

El token anti-falsificación no pudo ser descifrado. Si esta aplicación está alojada en una granja de servidores web o un clúster, asegúrese de que todas las máquinas estén ejecutando la misma versión de las páginas web ASP.NET y que la configuración especifique claves de validación y cifrado explícitas. AutoGenerate no se puede utilizar en un clúster.

Generé una nueva clave de máquina desde ( recursos ASPNET ) y la coloqué en mi archivo de configuración, pero aún no funciona. ¿Puede alguien sugerir una solución?



Debe agregar una clave de máquina que sea exclusiva de la combinación de sitio web y máquina. Es esta clave de máquina que utiliza el generador de fichas. Esto significa que debe generar una clave de máquina (lo que puede hacer aquí) y agregarla a su archivo Web.config en su máquina. Puede encontrar más información aquí: http://msdn.microsoft.com/en-us/library/ff649308.aspx

También puede hacer esto directamente desde IIS: http://blogs.msdn.com/b/amb/archive/2012/07/31/easiest-way-to-generate-machinekey.aspx


En mi caso, esto fue un problema con el equilibrador de carga que no tiene activada la persistencia de sesión para el sitio.


Estaba teniendo una página que usaba la vista parcial. Ambos contenían @ Html.AntiForgeryToken () y al eliminar @ Html.AntiForgeryToken () de la página parcial, funcionó.


Una cosa que noté es que este error podría ser causado por tener varias piezas de código @Html.AntiForgeryToken() en la página. Tenía 2 en mi página y una vez que eliminé el segundo, este error desapareció.