gpt4 book ai didi

php - 如何检查 Controller 上的 token (CSRF)?

转载 作者:行者123 更新时间:2023-12-03 23:15:43 25 4
gpt4 key购买 nike

Laravel 上有一些选项,我们允许 Laravel 创建一个 token 并在服务器端测试它以拉起 CSRF 攻击。

我找到了 this在 Laravel 网站上,但没有说明如何从 Controller 中检查是攻击还是从 native 和真实页面。

如何检查 Controller 上的 token (CSRF)?

最佳答案

Laravel 5 的答案
在 Laravel 5 中,中间件取代了过滤器。对于 CSRF 也是如此。中间件默认启用,在 App\Http\Middleware\VerifyCsrfToken 中处理.
可以通过删除 App\Http\Middleware\VerifyCsrfToken 来禁用它在 App\Http\Kernel .如果移至 $routeMiddleware ...

protected $routeMiddleware = [
'auth' => 'App\Http\Middleware\Authenticate',
'auth.basic' => 'Illuminate\Auth\Middleware\AuthenticateWithBasicAuth',
'guest' => 'App\Http\Middleware\RedirectIfAuthenticated',
'csrf' => 'App\Http\Middleware\VerifyCsrfToken',
];
...它可以通过将其添加到路由来有条件地使用:
Route::post('foo', ['middleware' => 'csrf', 'uses' => 'BarController@foo']);
或者在 Controller 构造函数中:
public function __construct(){
$this->middleware('csrf');
}

关于php - 如何检查 Controller 上的 token (CSRF)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28557408/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com