That BaseConfiguration thing didn't work out after all
It seems like a base class that defines `@Beans` just doesn't define any beans. Oh well, time to copy-paste.
This commit is contained in:
parent
1babdd5c2e
commit
905451f92e
|
|
@ -1,39 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2012-2016 the original author or authors.
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.springframework.boot.autoconfigure.security.oauth2.client;
|
|
||||||
|
|
||||||
import org.springframework.boot.context.properties.ConfigurationProperties;
|
|
||||||
import org.springframework.context.annotation.Bean;
|
|
||||||
import org.springframework.context.annotation.Primary;
|
|
||||||
import org.springframework.security.oauth2.client.token.grant.code.AuthorizationCodeResourceDetails;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Common base class providing beans for authorization code clients. Does not work if
|
|
||||||
* nested inside a <code>@Configuration</code> class because it is considered as
|
|
||||||
* configuration.
|
|
||||||
*/
|
|
||||||
abstract class BaseConfiguration {
|
|
||||||
|
|
||||||
@Bean
|
|
||||||
@ConfigurationProperties("security.oauth2.client")
|
|
||||||
@Primary
|
|
||||||
public AuthorizationCodeResourceDetails oauth2RemoteResource() {
|
|
||||||
AuthorizationCodeResourceDetails details = new AuthorizationCodeResourceDetails();
|
|
||||||
return details;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
@ -50,6 +50,7 @@ import org.springframework.security.oauth2.client.resource.OAuth2ProtectedResour
|
||||||
import org.springframework.security.oauth2.client.token.AccessTokenRequest;
|
import org.springframework.security.oauth2.client.token.AccessTokenRequest;
|
||||||
import org.springframework.security.oauth2.client.token.DefaultAccessTokenRequest;
|
import org.springframework.security.oauth2.client.token.DefaultAccessTokenRequest;
|
||||||
import org.springframework.security.oauth2.client.token.grant.client.ClientCredentialsResourceDetails;
|
import org.springframework.security.oauth2.client.token.grant.client.ClientCredentialsResourceDetails;
|
||||||
|
import org.springframework.security.oauth2.client.token.grant.code.AuthorizationCodeResourceDetails;
|
||||||
import org.springframework.security.oauth2.common.DefaultOAuth2AccessToken;
|
import org.springframework.security.oauth2.common.DefaultOAuth2AccessToken;
|
||||||
import org.springframework.security.oauth2.config.annotation.web.configuration.EnableOAuth2Client;
|
import org.springframework.security.oauth2.config.annotation.web.configuration.EnableOAuth2Client;
|
||||||
import org.springframework.security.oauth2.config.annotation.web.configuration.OAuth2ClientConfiguration;
|
import org.springframework.security.oauth2.config.annotation.web.configuration.OAuth2ClientConfiguration;
|
||||||
|
|
@ -99,7 +100,15 @@ public class OAuth2RestOperationsConfiguration {
|
||||||
@Configuration
|
@Configuration
|
||||||
@ConditionalOnBean(OAuth2ClientConfiguration.class)
|
@ConditionalOnBean(OAuth2ClientConfiguration.class)
|
||||||
@ConditionalOnWebApplication
|
@ConditionalOnWebApplication
|
||||||
protected static class SessionScopedConfiguration extends BaseConfiguration {
|
protected static class SessionScopedConfiguration {
|
||||||
|
|
||||||
|
@Bean
|
||||||
|
@ConfigurationProperties("security.oauth2.client")
|
||||||
|
@Primary
|
||||||
|
public AuthorizationCodeResourceDetails oauth2RemoteResource() {
|
||||||
|
AuthorizationCodeResourceDetails details = new AuthorizationCodeResourceDetails();
|
||||||
|
return details;
|
||||||
|
}
|
||||||
|
|
||||||
@Bean
|
@Bean
|
||||||
public FilterRegistrationBean oauth2ClientFilterRegistration(
|
public FilterRegistrationBean oauth2ClientFilterRegistration(
|
||||||
|
|
@ -136,7 +145,15 @@ public class OAuth2RestOperationsConfiguration {
|
||||||
@Configuration
|
@Configuration
|
||||||
@ConditionalOnMissingBean(OAuth2ClientConfiguration.class)
|
@ConditionalOnMissingBean(OAuth2ClientConfiguration.class)
|
||||||
@ConditionalOnWebApplication
|
@ConditionalOnWebApplication
|
||||||
protected static class RequestScopedConfiguration extends BaseConfiguration {
|
protected static class RequestScopedConfiguration {
|
||||||
|
|
||||||
|
@Bean
|
||||||
|
@ConfigurationProperties("security.oauth2.client")
|
||||||
|
@Primary
|
||||||
|
public AuthorizationCodeResourceDetails oauth2RemoteResource() {
|
||||||
|
AuthorizationCodeResourceDetails details = new AuthorizationCodeResourceDetails();
|
||||||
|
return details;
|
||||||
|
}
|
||||||
|
|
||||||
@Bean
|
@Bean
|
||||||
@Scope(value = "request", proxyMode = ScopedProxyMode.INTERFACES)
|
@Scope(value = "request", proxyMode = ScopedProxyMode.INTERFACES)
|
||||||
|
|
|
||||||
|
|
@ -49,10 +49,10 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.
|
||||||
@RunWith(SpringJUnit4ClassRunner.class)
|
@RunWith(SpringJUnit4ClassRunner.class)
|
||||||
@SpringApplicationConfiguration(TestConfiguration.class)
|
@SpringApplicationConfiguration(TestConfiguration.class)
|
||||||
@WebAppConfiguration
|
@WebAppConfiguration
|
||||||
@TestPropertySource(properties = { "security.oauth2.client.clientId=client",
|
@TestPropertySource(properties = { "debug=true", "security.oauth2.client.clientId=client",
|
||||||
"security.oauth2.client.clientSecret=secret",
|
"security.oauth2.client.clientSecret=secret",
|
||||||
"security.oauth2.client.authorizationUri=http://example.com/oauth/authorize",
|
"security.oauth2.client.userAuthorizationUri=http://example.com/oauth/authorize",
|
||||||
"security.oauth2.client.tokenUri=http://example.com/oauth/token",
|
"security.oauth2.client.accessTokenUri=http://example.com/oauth/token",
|
||||||
"security.oauth2.resource.jwt.keyValue=SSSSHHH" })
|
"security.oauth2.resource.jwt.keyValue=SSSSHHH" })
|
||||||
public class BasicOAuth2SsoConfigurationTests {
|
public class BasicOAuth2SsoConfigurationTests {
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue