Django 启用和禁用CSRF功能
短信预约 -IT技能 免费直播动态提醒
1.Django CSRF的原理
CSRF(Cross Site Request Forgery)也就是跨站请求伪造,实现的原理是CSRF攻击者在用户已经登录目标网站之后,诱使用户访问一个攻击页面,利用目标网站对用户的信任,以用户身份在攻击页面对目标网站发起伪造用户操作的请求,达到攻击目的;
2.CSRF认证
- 在项目的settings文件中有一个配置项MIDDLEWARE,表示默认Django启用csrf认证;
'django.middleware.csrf.CsrfViewMiddleware'
- 当页面为form表单提交时,一般都需要在form标签中加上
{% csrf_token %}
,如果第一次表单提交的时候带上了csrf_token
,服务器端就会认为这个是可信任的用户,所以如果第二次提交时form表单去掉csrf_token
,但是浏览器请求时会带上之前表单第一次提交时中的csrf_token
,服务器端默认信任这个csrf_token
;
<form action="{% url 'users:image' %}" method="post" enctype="multipart/form-data">{# <input type="file" name="upload" accept="image/gif, image/jpeg, image/png, image/jpg">#} <input type="file" name="upload"> <input type="submit" value="提交"> {% csrf_token %}</form>
- 如果在settings文件中将csrf的中间件注释,那么form表单提交,将不再需要csrf token认证;
3.CSRF局部禁用
- 为了避免没有csrf token而产生的403的forbidden错误问题,通常使用
django.views.decorators.csrf.csrf_exempt
装饰器来修饰这个处理POST请求的View, 这种方式是CSRF局部禁用;
from django.views.generic import Viewfrom django.utils.decorators import method_decoratorfrom django.views.decorators.csrf import csrf_exemptclass CSRFTestView(View): @method_decorator(csrf_exempt) def dispatch(self, request, *args, **kwargs): return super().dispatch(request, *args, **kwargs) def post(self, request): pass
- 局部启用可以使用
csrf_protect
,需要先在settings文件注释CsrfViewMiddleware
;
from django.views.generic import Viewfrom django.utils.decorators import method_decoratorfrom django.views.decorators.csrf import csrf_protectclass CSRFTestView(View): @method_decorator(csrf_protect) def dispatch(self, request, *args, **kwargs): return super().dispatch(request, *args, **kwargs) def post(self, request): pass
- 如果需要禁用Django CSRF功能项目都是启用全局的CSRF中间件,针对局部的View进行禁用;
4.Postman
Postman是一种网页调试与发送网页http请求的chrome插件,可以用来很方便的模拟get、post、put、patch、delete、copy等多种方式的请求来调试接口;
postman可用作macOS,Windows和Linux操作系统的本机应用程序。Windows系统下安装postman只需要下载安装文件,然后运行安装程序就可以了;
Postman的下载地址:https://www.getpostman.com/downloads/
参考:https://www.9xkd.com/user/plan-view.html?id=1091380484
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
Django 启用和禁用CSRF功能
下载Word文档到电脑,方便收藏和打印~
下载Word文档
猜你喜欢
Django 启用和禁用CSRF功能
1.Django CSRF的原理CSRF(Cross Site Request Forgery)也就是跨站请求伪造,实现的原理是CSRF攻击者在用户已经登录目标网站之后,诱使用户访问一个攻击页面,利用目标网站对用户的信任,以用户身份在攻击页
2023-06-02
在WindowsVista中启用和禁用自动激活功能
在Windows Vista中,可以通过以下步骤启用或禁用自动激活功能:1. 点击“开始”按钮,然后选择“计算机”。2. 右键单击“计算机”图标,然后选择“属性”。3. 在系统属性窗口中,向下滚动到“Windows 激活”部分。4. 点击“
2023-09-13
Dreamweaver CS5启用和禁用样式表的功能介绍
本篇内容介绍了“Dreamweaver CS5启用和禁用样式表的功能介绍”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!在使用Dreamwea
2023-06-08
2023-09-06
CentOS6.6如何禁用Ctrl+Alt+Del重启功能
这篇文章给大家分享的是有关CentOS6.6如何禁用Ctrl+Alt+Del重启功能的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。#CentOS6.6禁用Ctrl+Alt+Del重启功能#方法一: vi /etc
2023-06-10
Django—常用功能
索引 一、静态文件 二、中间件 三、Admin站点 3.1 列表页选项 3.2 编辑页选项 3.3 重写模板 四、上传图片
2023-01-31
vbscript如何禁用和启用fso
小编给大家分享一下vbscript如何禁用和启用fso,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!scrrun.dll scrrun - scrrun.dll
2023-06-08
如何启用和禁用Microsoft Update
要启用或禁用Microsoft Update,可以按照以下步骤操作:1. 打开控制面板。在Windows操作系统中,可以通过在开始菜单中搜索“控制面板”来找到它。2. 在控制面板中,选择“Windows Update”或“Windows安全
2023-09-14
ORACLE 禁用和启用外键约束
# 禁用alter table table_name disable constraint constraint_name; # 批量禁用select "alter table "||table_name||" disable constraint "||co
2016-07-23
2023-09-11
Linux中怎么启用和禁用网卡
这篇文章主要讲解了“Linux中怎么启用和禁用网卡”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linux中怎么启用和禁用网卡”吧!你可能会根据你的需要执行以下命令。我会在这里列举一些你会用
2023-06-16
将Windows 7中的AeroSnap功能禁用
和超级任务栏一样,Windows 7中的AeropythonSnap功能也是一直饱受争议。很多人抱怨有时候一不留心窗口就最大化了,尤其是像QQ这种须要拖到屏幕边缘自动潜藏的,很容易往上一js拖,刷,就最大化了。那么,如果实在须php要者功能
2023-05-24
2024-04-02
2024-04-02
Windows如何禁用和重新启用休眠
要禁用或重新启用Windows的休眠功能,您可以按照以下步骤进行操作:禁用休眠功能:1. 打开控制面板:点击开始菜单,然后选择“控制面板”。2. 在控制面板中,选择“硬件和声音”。3. 在“硬件和声音”页面中,选择“电源选项”。4. 在“电
2023-09-14
2024-04-02
win8系统(讲述人)功能的启动、关闭与禁用方法
“讲述人”(Narrator)是微软操作系统为视力欠佳用户提供的人性化服务,能够将文字转换为语音,帮助用户读取显示在屏幕上的内容,比如活动窗口、菜单选项或文本等等。WinXP、Win7和最新Win8系统都提供了这项功
2022-06-04
2024-04-02
Win8如何开启文件夹复选框功能默认是禁用的
Win8系统中,默认文件夹复选框功能是禁用的。因此喜欢复选框功能的朋友就要自己开启这项功能了,不过很多刚接触编程客栈WIn8的朋友并不知道从哪儿开启,下面就详细为大家介绍Win8开启复选框功能的方法,一起来看看吧。1、首先打开“
2023-06-07