我正在尝试为oAuth Resource服务器配置应用程序。我已将应用程序配置为指向两个不同的授权提供程序。唯一的变化是下面两个属性。对于一个我要获取主要对象,对于另一个我要获取主要对象。在控制器和审计跟踪事件中也是如此。我不知道正在发生什么。我看到了很多相关的问题,但是没有一个答案。
security.oauth2.resource.id=
security.oauth2.resource.jwk.key-set-uri=
我尝试过交换参数。
@EnableResourceServer
public class ApplicationSecurityConfig extends ResourceServerConfigurerAdapter {
@Override
public void configure(ResourceServerSecurityConfigurer resources) throws Exception {
resources.resourceId(resourceid);
}
@Override
public void configure(HttpSecurity http) throws Exception {
//Disabling the csrf
http.csrf().disable();
//whitelist the swagger end points.
http.authorizeRequests().antMatchers("/swagger-resources",
"/swagger-resources/**","/swagger-ui.html").permitAll().anyRequest().authenticated();
}
@Bean
public FilterRegistrationBean corsFilter() {
UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
CorsConfiguration config = new CorsConfiguration();
config.setAllowCredentials(true);
config.addAllowedOrigin("*");
config.addAllowedHeader("*");
config.addAllowedMethod("*");
source.registerCorsConfiguration("/**", config);
FilterRegistrationBean bean = new FilterRegistrationBean(new CorsFilter(source));
bean.setOrder(Ordered.HIGHEST_PRECEDENCE);
return bean;
}
}
我需要获得两种情况的主要对象。但是不幸的是,在一种情况下,我没有得到主要对象。这与授权服务器的设置有关吗?