背景
今天开发一个新的会员管理系统,继承了SpringSecurity的,用以控制权限。结果无论怎么配置,都会报错:An Authentication object was not found in the SecurityContext
这句话的意思很明确:指的就是在SecurityContext中找不到身份验证对象
分析解决问题
1、查看是否给了对应用户该有的权限,是否将调用的接口遗漏了?经过比对没有发现任何的异常情况。
2、是否是权限校验的字母或单词写错了?经过比对完全一致,没有任何问题。
3、是否在配置文件中的配置有问题?
查看配置类中的代码,代码如下:
// 不进行认证的路径,可以直接访问
@Override
public void configure(WebSecurity web) throws Exception {
web.ignoring().antMatchers(
"/api/**",
"/swagger-ui.html"
,"/webjars/springfox-swagger-ui/**"
,"/swagger-resources/**"
,"/api-docs/**"
,"/manage/permission/range",
"favicon.ico",
"/doc.html",
"/webjars/**",
"/swagger-resources/**",
"/api-docs/**");
}
发了先端倪,此处配置了过滤以“api开头的请求路径,但是我们的控制层却也要求有api。
将此处的过滤信息通过调整为配置文件传入,将过滤的”/api/**”去掉!
这样便解决了
关于SpringSecurity过滤请求导致的系统bug的问题就iu到这里,欢迎大家关注我的公众号《coder练习生》
以下文字就是为了打破它的文字段而造成的质量低!
相信和我一样遇到这个问题的的小伙伴们,心里也已经暗自问候了这个产品经理的祖总十八代了吧!
算法实在是不敢苟同,文字的长短和文章的质量有毛线的关系吗?
这篇文章因为文字段被标记为质量低,以下文字就是为了打破它的文字段而造成的质量低!
相信和我一样遇到这个问题的的小伙伴们,心里也已经暗自问候了这个产品经理的祖总十八代了吧!
算法实在是不敢苟同,文字的长短和文章的质量有毛线的关系吗?