在登录表单使用CSRF保护

编辑该页面

警告:你浏览的文档欧宝官网下载appob娱乐下载Symfony 3.2,不再维护。

这个页面的更新版本Symfob娱乐下载ony 6.2(当前的稳定版本)。

跨站点请求伪造)。安全组件已经对CSRF的内置支持。在本文中,您将学习如何使用它在您的登录表单。

请注意

登录CSRF攻击有点不知名的。看到锻造登录请求如果你好奇更多细节。

然后,安全组件需要一个CSRF牌提供者。您可以将这个参数设置为使用默认提供者可用的安全组件:

  • YAML
  • XML
  • PHP
1 2 3 4 5 6 7 8 9 10
# app / config / security.yml安全:#……防火墙:secured_area:#……form_login:#……csrf_token_generator:security.csrf.token_manager

进一步可配置的安全组件,但这是所有信息需要能够使用CSRF登录表单。

_csrf_token。隐藏字段必须包含CSRF令牌,这可以通过使用生成csrf_token ()函数。该函数需要一个令牌标识,必须设置进行身份验证当使用登录表单:

  • 嫩枝
  • PHP
1 2 3 4 5 6 7 8 9 10 11 12
{# src / AppBundle /资源/视图/安全/ login.html。树枝#}{#……#}<形式行动={{路径(“登录”)}}方法=“职位”>{#……登录字段#}<输入类型=“隐藏”的名字=“_csrf_token”价值={{csrf_token(验证)}}><按钮类型=“提交”>登录< /按钮>< /形式>

在这之后,你有保护你的登录表单CSRF攻击。

提示

你可以改变通过设置的名称字段csrf_parameter通过设置和改变令牌IDcsrf_token_id在你的配置:

  • YAML
  • XML
  • PHP
1 2 3 4 5 6 7 8 9 10 11
# app / config / security.yml安全:#……防火墙:secured_area:#……form_login:#……csrf_parameter:_csrf_security_tokencsrf_token_id:a_private_string