ResourceServerConfigurerAdapter与WebSecurityConfigurerAdapter同时使用只有ResourceServerConfigurerAdapter生效

1.此处使用的ResourceServerConfigurerAdapter是spring-security-oauth2中的,WebSecurityConfigurerAdapter是spring-security-config中的;

2.同时使用上面的两种配置的时候,如果两者配种存在重写相同的方法时,后者的会出现配置不生效的问题,比如重写了configure这个方法(参数final不影响)

3.造成这个问题的主要原因其实就是因为两者的默认自动注册的@Order的优先级不同(具体情况请自行参考源码),前者的order默认值是比后者的order默认值小,@Order(数字),数字值越小,优先级越高,然后相同的方法只使用优先级高的,也就是order的值低的按个,然后order高的就会不生效,这也就是为啥同时使用资源服务配置与安全配置的时候,且不手动指定@Order注解的值的时候,后者的配置不生效。

4.解决的方式其实也不难,我们只需要手动设置下Order的值的大小,也就是加上@Order的注解,参见

这样,WebSecurityConfig中的configure就会执行,而ResourceServerConfig中的configure不生效。当然,其他的一些重写方法也是可以在两者中都会生效,具体的请自行尝试即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值