在哪个网站可以免费制作简历,网业黑色,wordpress 热门插件,网络规划设计师怎么报名问题场景
在使用 SpringSecurity 时对一些访问权限进行了设置, 在用户请求资源时出现了403错误 , 通过检查代码发现请求权限是开放的, 并且切换成 GET 请求也是可以通过, 换成POST 请求就无法通过。
解决方法
在 SpringSecurity 中关闭 CSRF 因为 前端向后台发送 post 请求…问题场景
在使用 SpringSecurity 时对一些访问权限进行了设置, 在用户请求资源时出现了403错误 , 通过检查代码发现请求权限是开放的, 并且切换成 GET 请求也是可以通过, 换成POST 请求就无法通过。
解决方法
在 SpringSecurity 中关闭 CSRF 因为 前端向后台发送 post 请求时必须验证 csrf否则会报错 403 Forbidden。 Overrideprotected void configure(HttpSecurity httpSecurity) throws Exception {httpSecurity// CSRF禁用因为不使用session.csrf().disable().antMatchers(HttpMethod.GET,/,/*.html,/**/*.html,/**/*.css,/**/*.js,/profile/**).permitAll()// activiti modeler 放行.antMatchers(/modeler/**).anonymous().antMatchers( /activiti/definition/readResource).anonymous()// 除上面外的所有请求全部需要鉴权认证.anyRequest().authenticated().and().headers().frameOptions().disable();}
1234567891011121314151617181920212223这个时候就有新的问题出现 /activiti/definition/readResource已经是允许匿名访问了但是在登录状态下访问还是会出现403不登陆就可以正常获取这个情况比较奇葩大概理解的就是这个方法是匿名访问的你登陆就不是匿名了所以你没有权限访问。 看了下 SpringSecurity 权限设置有 /*** anyRequest | 匹配所有请求路径* access | SpringEl表达式结果为true时可以访问* anonymous | 匿名可以访问* denyAll | 用户不能访问* fullyAuthenticated | 用户完全认证可以访问非remember-me下自动登录* hasAnyAuthority | 如果有参数参数表示权限则其中任何一个权限可以访问* hasAnyRole | 如果有参数参数表示角色则其中任何一个角色可以访问* hasAuthority | 如果有参数参数表示权限则其权限可以访问* hasIpAddress | 如果有参数参数表示IP地址如果用户IP和参数匹配则可以访问* hasRole | 如果有参数参数表示角色则其角色可以访问* permitAll | 用户可以任意访问* rememberMe | 允许通过remember-me登录的用户访问* authenticated | 用户登录后可访问*/
123456789101112131415将anonymous 改为permitAll 或者authenticated 后可以正常访问。