提问人:yukitmp 提问时间:8/5/2020 最后编辑:yukitmp 更新时间:8/6/2020 访问量:716
如何在Symfony应用程序中禁用基于html的表单的CSRF检查?
How to disable CSRF checks for html-based forms in Symfony app?
问:
我有这个开源的 Symfony 应用程序,我需要全局禁用 CSRF 检查,或者至少对某些 .除了下面描述的 2 种方法外,我还尝试删除了提及 CSRF 的各种代码行,但没有任何帮助。<forms>
我试过什么:
- 我尝试全局禁用 CSRF,如此处所述 如何使用 FOSUserBundle 在 Symfony 3 上全局关闭 CSRF 保护,但问题是在我的 Symfony 应用程序中,目录中没有文件 - 它只包含:、、、、、,但没有 / 文件
.yml
root/config
settings.php
default.settings.php
dev.php
prod.php
languages.php
.yml
.xml
- 我试图禁用特定的 CSFR,如此处所述 如何在symfony中禁用csrf?,但prblem是我的是基于HTML的,而不是基于PHP的。我的 Symfony 应用程序不通过 PHP 创建。
<form>
<form>
<form>
我的Symfony应用程序:
- 该应用程序是开源的 - 存储库在这里:https://github.com/agendav/agendav/tree/develop/web
- 在我有这段带有CSRF保护的代码↓↓↓。我试图删除它,但随后甚至没有呈现表单。
root/app/controllers.php
...
// Authentication
$app->get('/login', '\AgenDAV\Controller\Authentication::loginAction')->bind('login');
$app->post('/login', '\AgenDAV\Controller\Authentication::loginAction');
$app->get('/logout', '\AgenDAV\Controller\Authentication::logoutAction')->bind('logout');
// CSRF protection
$app->before(function(Request $request, Application $app) {
return \AgenDAV\Csrf::check($request, $app);
});
...
- 登录表单模板在 中,并在 :
root/templates/login.html
root/src/controller/Authentication.php
...
return $app['twig']->render('login.html', $template_vars);
...
答: 暂无答案
评论