laravel中关闭csrf方法

laravel 中文官方文档 4.2 飞龙整理 立即下载

CSRF攻击和漏洞的参考文章:
http://www.cnblogs.com/hyddd/archive/2009/04/09/1432744.html

Laravel默认是开启了CSRF功能,关闭此功能的方法:

方法一
打开文件:app\Http\Kernel.php

把这行注释掉:

'App\Http\Middleware\VerifyCsrfToken'

方法二
打开文件:app\Http\Middleware\VerifyCsrfToken.php

<?php namespace App\Http\Middleware;

use Closure;
use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken as BaseVerifier;

class VerifyCsrfToken extends BaseVerifier {

    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        // 使用CSRF
        //return parent::handle($request, $next);
        // 禁用CSRF
        return $next($request);
    }

}

方法三:
在app/http/Middleware/VerifyCsfyToken.php中添加

<?php

namespace App\Http\Middleware;

use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken as BaseVerifier;

class VerifyCsrfToken extends BaseVerifier
{
    /**
     * The URIs that should be excluded from CSRF verification.
     *
     * @var array
     */
    protected $except = [
        //
        'users/login',   //此方法关闭csrf
        'publish/*',      //关闭控制器中的csrf
        'publish/comment',
    ];
}

CSRF的使用有两种,一种是在HTML的代码中加入:

<input type="hidden" name="_token" value="{{ csrf_token() }}" />

另一种是使用cookie方式。

使用cookie方式,需要把app\Http\Middleware\VerifyCsrfToken.php修改为:

<?php namespace App\Http\Middleware;

use Closure;
use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken as BaseVerifier;

class VerifyCsrfToken extends BaseVerifier {

    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        return parent::addCookieToResponse($request, $next($request));
    }

}

使用cookie方式的CSRF,可以不用在每个页面都加入这个input的hidden标签。

当然,也可以对指定的表单提交方式使用CSRF,如:

<?php namespace App\Http\Middleware;

use Closure;
use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken as BaseVerifier;

class VerifyCsrfToken extends BaseVerifier {

    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        // Add this:
        if($request->method() == 'POST')
        {
            return $next($request);
        }

        if ($request->method() == 'GET' || $this->tokensMatch($request))
        {
            return $next($request);
        }
        throw new TokenMismatchException;
    }

}

只对GET的方式提交使用CSRF,对POST方式提交表单禁用CSRF

修改CSRF的cookie名称方法
通常使用CSRF时,会往浏览器写一个cookie,如:
要修改这个名称值,可以到打开这个文件:vendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\VerifyCsrfToken.php
找到”XSRF-TOKEN“,修改它即可。
当然,你也可以在app\Http\Middleware\VerifyCsrfToken.php文件中,重写addCookieToResponse(…)方法做到。

图像去雾新思路:手把手教你复现DEA-Net中的“细节增强卷积”与PyTorch实现 本文详细解析了DEA-Net中的'细节增强卷积'(DEConv)与PyTorch实现,通过多分支差分卷积和重参数化技术,显著提升单图像去雾效果。文章从数学原理到代码实现,手把手指导复现这一创新架构,帮助开发者在保持轻量化的同时实现41dB以上的PSNR指标,适用于自动驾驶、遥感监测等关键领域。 阅读详情

相关推荐

Android11.0系统中适配EC20模块4G及GPS功能

本文主要描述在RK3568Android11中适配EC20模块,启用4G与GPS功能。

yjz_0314的博客 2791

laravel 返回419错误解决(CSRF)

1.关闭VerifyCsrfToken中间件验证 进入项目目录 app/Http/Kernel.php文件,注释下图这行代码 2、在VerifyCsrfToken 中间件,加入白名单

明日晴空的博客 2775

实战指南:在华为防火墙上构建基于自签CA的SSL证书挑战式认证体系

本文详细介绍了在华为防火墙上构建基于自签CA的SSL证书挑战式认证体系的实战指南。通过自签CA证书生成、华为防火墙SSL VPN配置、客户端安装与测试等步骤,帮助企业实现更安全的远程办公接入方案,有效防范密码泄露风险。文章重点讲解了证书挑战登录的实现原理和配置细节,适用于企业网络安全建设。

weixin_32428571的博客 256

Laravel设置某个URL跳过csrf例外的方法

阅读目录 1、 首先打开项目下的/app/Http/Middleware目录中的VerifyCsrfToken.php文件 2、 编辑添加我们不需要验证csrf的URL地址 <?php namespace App\Http\Middleware; use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken as Middleware; class VerifyCsrfToken extends Middleware { /*

wgchen 691

告别城市峡谷定位漂移:手把手教你用PSINS仿真INS/NHC/ODO组合导航(附代码获取)

本文详细解析了INS/NHC/ODO组合导航系统在城市峡谷环境中的应用,通过PSINS平台实现精准定位。文章涵盖核心原理、环境搭建、算法实现及性能优化,帮助开发者解决GNSS信号中断时的定位漂移问题,提升自动驾驶系统在复杂环境中的可靠性。

weixin_30329623的博客 429

草莓成熟度与叶片病虫害智能检测数据集应用全解析

本文深入解析草莓成熟度与叶片病虫害智能检测数据集的应用价值,涵盖从绿草莓到红果转色的完整成熟周期及白粉病、炭疽病等7种病害的精准识别。通过实战案例展示如何提升病害识别率至94%,并介绍数据集的科研价值,包括跨品种迁移学习和多模态数据融合技术。

weixin_28366353的博客 274

Laravel的csrf四种方式

Laravel的csrf四种方式 1:{{csrf_field()}} 2:{!! csrf_field() !!} 3:@csrf 4:<input type="hidden" name="_token" value="{{csrf_token()}}"> 以上任何一种方式都会生成下面的html代码: <input type="hidden" name="_token" value="YOhMWMegKfoLWCs5fTgeSH37IstlFDOpzaSwOKhQ"> csrf

u012114437的博客 1524

小白学电路之cadance搭建buffer电路

Buffer(缓冲器)是一种放大器或驱动电路,主要用于隔离输入和输出,以防止负载对前级电路造成干扰或影响。本文作者在电路方面是小白水平,目前正在学习,有不足之处欢迎指正。3.创建新的cellview,对此buffer进行仿真验证。2.创建buffer的symbol。电路中的V2的详细参数。

weixin_58051657的博客 1984

Laravel: 关于使用laravel11时因结构修改遇到的csrf问题

但是laravel11更新后移除了kernel等一系列中间件控制,目前转移到了bootstrap/app.php中。在->withMiddleware中加入validateCsrfTokens方法设置免csrf验证即可。错误发生原因是csrf验证没有设置免验证,以前的laravel是在kernel.php里调整,然后在。今天在使用最新版本laravel时遇到测试接口post请求一直419问题。VerifyCsrfToken.php文件中添加。

qq_53533891的博客 484

强化学习-马尔可夫模型

前文提到了强化学习源自马尔可夫决策过程,本文从马尔可夫概念入手,讲解和马尔可夫有关的模型和概念。在马尔科夫决策过程中,我们有一个智能体,它在一个马尔科夫过程中进行决策,每次决策都会导致状态的转移和获得即时奖励。智能体的目标是通过选择动作来最大化未来奖励的期望值。通常马尔科夫决策过程是个五元组:SAPRγSAPRγS 表示状态集合,代表智能体可能处于的所有状态。A 表示动作集合,代表智能体可以采取的所有动作。

君子之学必日新,日新者日进也。不日新者必日退,未有不进而不退者 8060

STM32 stack_size和heap_size大小设置的意义

在使用STM32编程时,一般情况下我们不会关注堆栈空间的大小,因为在STM32的启动文件中,已经帮我们预先设置好了堆栈空间的大小。如下图所示的启动代码中,Stack栈的大小为:0x400(1024Byte),Heap堆的大小为:0x200(512Byte)。 1、若工程中使用的局部变量较多,定义的数据长度较大时,若不调整栈的空间大小,则会导致程序出现栈溢出,程序运行结果与预期的不符或程序跑飞。这时我们就需要手动的调整栈的大小。 2、当工程中使用了malloc动态分配内存空间时,这时分配.......

zxm8513优快云博客 3万+

Laravel - CSRF - 学习/实践

了解Laravel csrf的使用以及工作原理,以及更多的web攻击方式以及相应的防护措施。

"代码"的日常搬运 3119

uniapp [全端兼容] - 实现接入集成高德地图搜索地址及选择位置功能,搜索框检索选择地点并返回经纬度及详细省市区县街道地址,用户搜索历史及清空历史记录,选择地址自动获取周边位置列表/地图移动选点

uni-app,高德地图,h5移动端网页,微信小程序,支付宝小程序,Android安卓,苹果ios,app,nvue,Uniapp高德地图,在地图上选择或搜索指定地点,打开地图选择位置,关联地址搜索,输入地址返回附近地址列表,uniApp高德地图地址搜索,搜索框历史记录,关键字搜索,周边查询,搜索位置,uniapp对接高德实现搜索出现地址以及保存搜索记录,集成高德地图,实现精准位置选点功能,获取当前定位城市,如何实现搜索功能,获取省份城市区街道详细地址经纬度,移动选点标记位置,在地图上进行选择位置选点、搜索

🏆 前端领域优质创作者 1万+

laravel中关闭CSRF的方法

在框架中一般情况下报这种错误的都是csrf防攻击未关闭 那么我们可以关闭这种csrf有以下两种方法: 第一种 打开文件路径:app\Http\Kernel.PHP 找到这行代码并注释掉: 'App\Http\Middleware\VerifyCsrfToken'    第二种 打开文件路径:app\Http\Middl

小白、零下 8531

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Laravel5 开启关闭 CSRF token 方法

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34249678的博客 208

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

Laravel - CSRF token禁用方法

关闭Laravel默认是开启了CSRF功能,需要关闭此功能有两种方法:方法一打开文件:app\Http\Kernel.php把这行注释掉: protected $middleware = [ \Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class, \App\Http\Middleware\EncryptCookie

鑫的专栏 6874

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

[PHP] - Laravel - CSRF token禁用方法

前文 CSRF攻击和漏洞的参考文章: http://www.cnblogs.com/hyddd/archive/2009/04/09/1432744.html Laravel默认是开启了CSRF功能,需要关闭此功能有两种方法: 方法一 打开文件:app\Http\Kernel.php 把这行注释掉: 'App\Http\Middleware\Ver...

weixin_30278311的博客 85

Laravel 5.8 :基础组件 —— CSRF 保护

1、什么是CSRF攻击 可以理解为两个域名之间不能跨过域名来发送请求或者请求数据,否则就是不安全的,这种不安全也就是CSRF(Cross-site request forgery),中文名称:跨站请求伪造。 laravel 框架中为避免CSRF攻击,为每个 用户session生成一个CSRF token,该token用于验证登录用户和发起请求用户是否为同一个人。 laravel提供了一个...

欢迎交流PHP和前端知识QQ:634487911 1136

浅谈Laravel框架的CSRF

前文 CSRF攻击和漏洞的参考文章: http://www.cnblogs.com/hyddd/archive/2009/04/09/1432744.html Laravel默认是开启了CSRF功能,需要关闭此功能有两种方法: 方法一 打开文件:app\Http\Kernel.php 把这行注释掉: 'App\Http\Middleware\Ver...

dbul13262的博客 1445

laravel csrf

在框架中一般情况下报这种错误的都是csrf防攻击未关闭 那么我们可以关闭这种csrf有以下两种方法: 第一种打开文件路径:app\Http\Kernel.PHP找到这行代码并注释掉:'App\Http\Middleware\VerifyCsrfToken' 第二种打开文件路径:app\Http\Middleware\VerifyCsrfToken.php修改为:可开启和关闭代码如下:<?phpnam

Cpath的博客 607

laravel关闭csrf验证

Laravel默认是开启了CSRF功能,有时可能不能传递验证token,就需要关闭。本教程操作环境:windows11系统、Laravel5.1版,打开文件:app\\Http\\Kernel.php。laravel怎么关闭csrf验证?

L_s_c_h的博客 1065

laravel CSRF token使用方法

Laravel默认是开启了CSRF功能,需要关闭此功能有两种方法: 方法一 打开文件:app\Http\Kernel.php 把这行注释掉: 'App\Http\Middleware\VerifyCsrfToken'   方法二 打开文件:app\Http\Middleware\VerifyCsrfToken.php 修改为:   &lt;?php namesp...

xiaoluyouyue的博客 1058

Laravel表单提交419页面过期

问题:最直接的看手册! post表单提交数据报419错误,如下图(原因是表单提交必须带上_token值,防止csrf攻击) 方法一:关闭框架的csrf验证 这个其实是在设置(关闭csrf验证的白名单) class VerifyCsrfToken extends Middleware { protected $except = [ // ]; } 改成!...

思维小刀 3110

el-form表单请求数据不刷新_laravel的表单伪造与CSRF保护

php中文网课程每日17点准时技术干货分享本文为php中文网认证作者:“齐天大圣”投稿。我们知道,目前最流行的API设计规范就是restFul API设计了。restful有五种常见的HTTP方法,即:get、post、put、patch及delete。使用html表单非常容易构造get或post方法,但是另外三种方法却不支持。但是在laravel中,你可以通过表单伪造技术来使用上述的其...

weixin_42361133的博客 565

【laravel】postman测试遇到csrf校验怎么办?

因为laravel有csrf校验,使用postman测试,,访问一直报错,419 | Page Expired,如下 解决方法有下: 一、CSRF 白名单 在这个文件下增加请求地址。 二、测试时,一次解决的方法 注:仅测试时开启 如图,kernal.php文件注释这一行,关掉csrf中间件。 以上操作后,再次进行测试,成功了~ ...

echo的PHP开发 1898
上一篇: phpstudy安装mongodb扩展
下一篇: 安装phpstudy中碰见的问题
rabbitlabor
博客等级 码龄9年 1粉丝 16原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值