validateantiforgerytoken - AntiForgeryToken obsoleto en ASP.Net MVC 4 RC
csrf asp net (1)
Acabo de instalar ASP.Net MVC 4 RC para reemplazar ASP.Net MVC 4 beta. Cuando intento ejecutar una aplicación existente recibo un mensaje de error que AntiForgeryToken
que AntiForgeryToken
ha quedado obsoleto. Aquí está mi código:
using (Html.BeginForm("", "", FormMethod.Post, new { id = "MonthElectionForm" }))
{
@Html.AntiForgeryToken("AddEditMonthElection")
}
---- ACTUALIZACIÓN ---
ASP.Net MVC 4 RC ha hecho que la propiedad Salt sea obsoleta para el atributo ValidateAntiForgeryToken y AntiForgeryToken html helper. Entonces, ahora mi código se ve así:
controlador:
[HttpPost]
[ValidateAntiForgeryToken]
public JsonResult CreateCompany(CompanyDataEntryViewModel modelData)
{...}
formar:
@using (Html.BeginForm("", "", FormMethod.Post, new { id = "CreateCompanyDataEntryForm" }))
{
@Html.AntiForgeryToken()
...
}
Al observar el HTML generado, AntiForgeryToken aún genera un campo oculto y proporciona un valor encriptado. Mi acción aún funciona también. Pero he perdido la capacidad de designar una clave para usar en el proceso de encriptación. No estoy muy seguro de cómo funciona el proceso, pero antes puedo decir que estaba estableciendo el valor de sal en la acción y en el formulario. Los valores tenían que coincidir para que la acción aceptara la publicación. Entonces, ¿cómo se establece el valor de sal ahora? Creo que tiene algo que ver con AntiForgeryConfig AdditionalDataProvider, pero no puedo encontrar nada en Google sobre cómo usar AntiForgeryConfig AdditionalDataProvider. Por favor ayuda.
Gracias
Establecer el parámetro de sal es innecesario y no proporcionó ninguna protección adicional, por lo que eliminamos el soporte para ello.
Consulte mi respuesta en Cómo elegir un valor de sal para ValidateAntiForgeryToken para obtener más información.