15 49.0138 8.38624 1 0 4000 1 https://www.alexmedina.net 300 true 0

Cuando utilizar @Html.AntiForgeryToken()

2 Comments

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)
{
//....
}
Previous Post
$.Deferred() de jQuery
Next Post
OracleDependency: controla cambios en la base de datos desde código

2 Comments

  • 25 marzo, 2020 at 11:44 am
    legna

    Se debe poner en todas las acciones que requieran esta validacion?

    creo que hay un error de escritura en [ValidateAntiForgeryToken]
    gracias por el artículo

    Reply
    • 19 septiembre, 2022 at 2:53 pm

      Es vdd, está mal escribido (like)

      Reply

Leave a Reply

SOBRE MÍ

Afortunado de trabajar en lo que me gusta, aprendiendo cada día cosas nuevas y ayudando a crear proyectos.
Conocimientos en diversas tecnologías y experiencia demostrable.
¿Nos ponemos manos a la obra?

Mis Apuntes