-
我的应用程序是使用SPRING MVC构建的,我公开了一些Restful URI(工作良好)例如-http://example.org/alert/alerts//获取已登录用户的警报列表。
-
我已经使用OWASP CSRFGuard配置了跨站点请求伪造(CSRF)的应用程序,方法是按照链接-(工作正常)https://www.owasp.org/index.php/CSRFGuard_3_Configuration#Overview
-
Restful服务目前由同一应用程序的UI使用,没有任何问题(工作良好)例如-同一个WebApp的数据网格通过调用此Restful服务(AJAX请求)来显示警报列表
-
问题:当我试图从不同的域/Chrome Rest Client访问相同的Restful服务时,它不会返回除302之外的任何数据。
-
如果我在csrfguard.properties中为restful URI设置"无保护页面"属性,我就可以从RestClient/不同的域访问restful服务。
请建议我是否需要进行任何其他配置,以便可以从不同的域/Chrome rest客户端访问受CSRF保护的相同Restful服务。
1.如果您在服务器端生成CSRF令牌,那么在该请求验证会话中提供一个get请求,并将创建的CSRF令牌作为隐藏发送给客户端,现在剩下的请求应该是POST、PATCH、PUT或DELETE,它们在每个请求标头中获取CSRF令牌。2.如果你在客户端生成CSRF令牌,那么从第一个请求(即身份验证或授权)中获得令牌的值,并将其与自定义过滤器中的每个请求进行比较。