【发布时间】:2016-02-29 20:19:08
【问题描述】:
我的应用程序允许用户通过 2 个不同的渠道进行访问。
- 用树枝正常
- 通过 FOSRestBundle 实现 RESTFull - example.com/api/* 地址
我已启用 CSRF 保护,因为我想在第一种情况下使用它。
framework:
csrf_protection: true
但是...当我向 /api/* 地址发送请求时,我需要禁用 CSRF 保护,因为在这种情况下我使用 OAuth 登录。
我可以禁用特定防火墙的 CSRF 保护吗?
我的防火墙:
firewalls:
oauth_token:
pattern: ^/api/oauth/v2/token
security: false
api:
pattern: ^/api/
fos_oauth: true
stateless: true
anonymous: false
main:
pattern: ^/
form_login:
provider: chain_provider
csrf_provider: form.csrf_provider
logout: true
anonymous: true
当我向 /api/ 发送 POST 请求时,服务器返回错误:
CSRF 令牌无效。请尝试重新提交表单。
我需要为api 防火墙禁用此保护并为main 保留它。有可能吗?
【问题讨论】: