X-CSRF-Token
时间 2021-01-04
标签
ODATA
CSRF
ISSUE
Odata服务HTTP测试总是出现烦人的 CSRF token validation failed
(for all modifying requests)忽略下图中的报文错误
怀疑是服务器参数的设置问题,临时应急的话可以先针对这个服务把CSRF校验关掉
SICF找到这个服务
增加一个参数
- Modifying request的CSRF这样的工作的:
- 用一个非修改(non-modifying)的请求(GET)返回CSRF。首先发送GET请求时X-CSRF-Token参数值 指定为'Fetch',在成功返回的header里有参数 X-CSRF-Token
- 然后才是modifying 请求(POST),这里要带上第一步返回的X-CSRF-Token,这里如果validation不通过一样会返回403forbidden错误,失败的请求中是不会有有效的X-CSRF-Token的
- 如果X-CSRF-Token检验通过,正常的POST
- 如果要禁用HTTP的话可以把login/ticket_only_by_https这个参数设为1,这个HTTP的任何请求都会返回403forbidden ‘CSRF token validation failed’下面这个服务器就是这么搞的,别问我为什么知道的
-
参考 :https://help.sap.com/saphelp_gateway20sp12/helpdata/en/e6/cae27d5e8d4996add4067280c8714e/frameset.htm