Cuando utilizar @Html.AntiForgeryToken()

Cuando hacemos formularios webs nos podemos encontrar con que nos hagan el temido ataque CSRF (Cross-Site Request Forgery) o lo que es lo mismo falsificación de peticiones entre sitios. Basicamente se trata de atacar un url que pueda estar parametrizada directamente sin pasar por una autentificación o por un formulario de validación. Así imagínate si alguien tiene acceso a la url de eliminar los items de tu aplicación y pueda lanzar peticiones a ella sin control. ¿Peligroso no?

MVC utiliza un filtro que se llama AntiForgeryToken el cual irá en el formulario a modo de incluir un token que se validará en el controlador cuando se haga el submit.

Ejemplo en la vista:

<form method="post" action="/controlX/accionA">
...
@Html.AntiForgeryToken()
...
</form>

Acción que recibe los datos y lo valida con ValidateAntiForengyToken:

[ValidateAntiForengyToken]
public AntionResult accionA(controlX c)
{
//....
}

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *