Java 如何设置自定义OAuth2RestTemplate或自定义OAuth2ProtectedResourceDetails?
我的前端应用程序已启用@enableAuth2sso。此外,我还想使用定制的OAuth2ProtectedResourceDetails注入所有OAuth2RestTemplate bean(特别是在OAuth2RestorationsConfiguration中重新定义OAuth2RestTemplate的行为)。 我刚刚为OAuth2ProtectedResourceDetails定义了自己的bean,但OAuth2RestTemplate仍然使用AuthorizationCodeResourceDetails)Java 如何设置自定义OAuth2RestTemplate或自定义OAuth2ProtectedResourceDetails?,java,spring,spring-security-oauth2,Java,Spring,Spring Security Oauth2,我的前端应用程序已启用@enableAuth2sso。此外,我还想使用定制的OAuth2ProtectedResourceDetails注入所有OAuth2RestTemplate bean(特别是在OAuth2RestorationsConfiguration中重新定义OAuth2RestTemplate的行为)。 我刚刚为OAuth2ProtectedResourceDetails定义了自己的bean,但OAuth2RestTemplate仍然使用AuthorizationCodeResou
我应该以某种方式重新定义整个OAuth2RestTemplatebean,还是只重新定义这个OAuth2ProtectedResourceDetails?您应该能够用自己的配置重载在OAuth2RestOperations配置中设置的bean
@Bean
@ConfigurationProperties("security.oauth2.client")
public ClientCredentialsResourceDetails oauth2RemoteResource() {
ClientCredentialsResourceDetails details = new ClientCredentialsResourceDetails();
return details;
}
如果没有,就创建自己的bean
@Bean
@ConfigurationProperties("security.oauth2.client")
public ClientCredentialsResourceDetails customOauth2RemoteResource() {
ClientCredentialsResourceDetails details = new ClientCredentialsResourceDetails();
return details;
}
@Bean
public OAuth2RestTemplate customOauth2RestTemplate() {
OAuth2RestTemplate template = new OAuth2RestTemplate(customOauth2RemoteResource(),
new DefaultOAuth2ClientContext());
return template;
}
然后使用@Qualifier引用它们
@Autowired
@Qualifier("customOauth2RestTemplate")
private RestTemplate restTemplate;
@Autowired
@Qualifier("customOauth2RestTemplate")
private RestTemplate restTemplate;