springsecurity安全源,配置表达式安全源和数据库动态安全源不能同时共存的问题?实际项目中采用数据库动态源很常见,但有时候少量的权限配置要求也会放在httpsecurity中。我自己自定义了securitymeatadatasource,发现自定义的securitymeatadatasource起作用了,但httpsecurity配置中的拦截没起作用。好像只能使用一种来源。交代下我的springsecurity版本5.4.1,比较新。
网络里的大神有支持两种来源都校验权限的方法吗?看网上的他们好像没有这样的困惑,难道只有我碰到这个问题?请不惜笔墨指点下,卡了好几天了,饭菜都不香了。用了自定义就用不了securityconfig里httpsecurity配置的。怎么破
http.authorizeRequests().antMatchers("/user/testAdmin").hasRole("okokrole").and()
.addFilterBefore(verifyCodeFilter, UsernamePasswordAuthenticationFilter.class)
.addFilterAt(myAuthenticationFilter(), UsernamePasswordAuthenticationFilter.class)
.exceptionHandling().authenticationEntryPoint(new CustomAuthenticationEntryPoint())
.accessDeniedHandler(new CustomAccessDeineHandler());
.addObjectPostProcessor(new ObjectPostProcessor<FilterSecurityInterceptor>() {
@Override
public <O extends FilterSecurityInterceptor> O postProcess(O object) {
object.setAccessDecisionManager(MyAccessDecisionManager);
object.setSecurityMetadataSource(mySecurityMetadataSource);
return object;
}
});