码迷,mamicode.com
首页 > 编程语言 > 详细

Python-django 跨站请求伪造保护

时间:2020-12-02 12:37:56      阅读:8      评论:0      收藏:0      [点我收藏+]

标签:自动生成   浏览器   保护   表单提交   伪造   原因   djang   orm   django   

csrf_token

csrf_token 用于form表单中,作用是跨站请求伪造保护。

如果不用{% csrf_token %}标签,在用 form 表单时,要再次跳转页面会报403权限错误。

用了{% csrf_token %}标签,在 form 表单提交数据时,才会成功。

解析:

首先,向浏览器发送请求,获取登录页面,此时中间件 csrf 会自动生成一个隐藏input标签,该标签里的 value 属性的值是一个随机的字符串,用户获取到登录页面的同时也获取到了这个隐藏的input标签。

然后,等用户需要用到form表单提交数据的时候,会携带这个 input 标签一起提交给中间件 csrf,原因是 form 表单提交数据时,会包括所有的 input 标签,中间件 csrf 接收到数据时,会判断,这个随机字符串是不是第一次它发给用户的那个,如果是,则数据提交成功,如果不是,则返回403权限错误。

Python-django 跨站请求伪造保护

标签:自动生成   浏览器   保护   表单提交   伪造   原因   djang   orm   django   

原文地址:https://www.cnblogs.com/zhutongtong/p/14051551.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!