File tree Expand file tree Collapse file tree 3 files changed +23
-0
lines changed
spring-boot-security-oauth2-client/src/main/java/org/springframework/boot/security/oauth2/client/autoconfigure/servlet
spring-boot-security-oauth2-resource-server/src/main/java/org/springframework/boot/security/oauth2/server/resource/autoconfigure/servlet
spring-boot-security/src/main/java/org/springframework/boot/security/autoconfigure/servlet Expand file tree Collapse file tree 3 files changed +23
-0
lines changed Original file line number Diff line number Diff line change 29
29
import org .springframework .context .annotation .Configuration ;
30
30
import org .springframework .security .config .annotation .web .builders .HttpSecurity ;
31
31
import org .springframework .security .config .annotation .web .configuration .EnableWebSecurity ;
32
+ import org .springframework .security .config .web .PathPatternRequestMatcherBuilderFactoryBean ;
32
33
import org .springframework .security .oauth2 .client .OAuth2AuthorizedClientService ;
33
34
import org .springframework .security .oauth2 .client .web .AuthenticatedPrincipalOAuth2AuthorizedClientRepository ;
34
35
import org .springframework .security .oauth2 .client .web .OAuth2AuthorizedClientRepository ;
51
52
@ ConditionalOnWebApplication (type = ConditionalOnWebApplication .Type .SERVLET )
52
53
public class OAuth2ClientWebSecurityAutoConfiguration {
53
54
55
+ @ Bean
56
+ @ ConditionalOnMissingBean (name = "workAroundSecurityDependencyCyclePathPatternRequestMatcherBuilder" )
57
+ PathPatternRequestMatcherBuilderFactoryBean workAroundSecurityDependencyCyclePathPatternRequestMatcherBuilder () {
58
+ return new PathPatternRequestMatcherBuilderFactoryBean ();
59
+ }
60
+
54
61
@ Bean
55
62
@ ConditionalOnMissingBean
56
63
OAuth2AuthorizedClientRepository authorizedClientRepository (OAuth2AuthorizedClientService authorizedClientService ) {
Original file line number Diff line number Diff line change 19
19
import org .springframework .boot .autoconfigure .AutoConfiguration ;
20
20
import org .springframework .boot .autoconfigure .EnableAutoConfiguration ;
21
21
import org .springframework .boot .autoconfigure .condition .ConditionalOnClass ;
22
+ import org .springframework .boot .autoconfigure .condition .ConditionalOnMissingBean ;
22
23
import org .springframework .boot .autoconfigure .condition .ConditionalOnWebApplication ;
23
24
import org .springframework .boot .context .properties .EnableConfigurationProperties ;
24
25
import org .springframework .boot .security .autoconfigure .actuate .servlet .ManagementWebSecurityAutoConfiguration ;
25
26
import org .springframework .boot .security .autoconfigure .servlet .SecurityAutoConfiguration ;
26
27
import org .springframework .boot .security .autoconfigure .servlet .UserDetailsServiceAutoConfiguration ;
27
28
import org .springframework .boot .security .oauth2 .server .resource .autoconfigure .OAuth2ResourceServerProperties ;
29
+ import org .springframework .context .annotation .Bean ;
28
30
import org .springframework .context .annotation .Import ;
31
+ import org .springframework .security .config .web .PathPatternRequestMatcherBuilderFactoryBean ;
29
32
import org .springframework .security .oauth2 .server .resource .authentication .BearerTokenAuthenticationToken ;
30
33
31
34
/**
43
46
Oauth2ResourceServerConfiguration .OpaqueTokenConfiguration .class })
44
47
public class OAuth2ResourceServerAutoConfiguration {
45
48
49
+ @ Bean
50
+ @ ConditionalOnMissingBean (name = "workAroundSecurityDependencyCyclePathPatternRequestMatcherBuilder" )
51
+ PathPatternRequestMatcherBuilderFactoryBean workAroundSecurityDependencyCyclePathPatternRequestMatcherBuilder () {
52
+ return new PathPatternRequestMatcherBuilderFactoryBean ();
53
+ }
54
+
46
55
}
Original file line number Diff line number Diff line change 28
28
import org .springframework .security .config .BeanIds ;
29
29
import org .springframework .security .config .annotation .web .builders .HttpSecurity ;
30
30
import org .springframework .security .config .annotation .web .configuration .EnableWebSecurity ;
31
+ import org .springframework .security .config .web .PathPatternRequestMatcherBuilderFactoryBean ;
31
32
import org .springframework .security .web .SecurityFilterChain ;
32
33
33
34
import static org .springframework .security .config .Customizer .withDefaults ;
41
42
@ ConditionalOnWebApplication (type = Type .SERVLET )
42
43
class SpringBootWebSecurityConfiguration {
43
44
45
+ @ Bean
46
+ @ ConditionalOnMissingBean (name = "workAroundSecurityDependencyCyclePathPatternRequestMatcherBuilder" )
47
+ PathPatternRequestMatcherBuilderFactoryBean workAroundSecurityDependencyCyclePathPatternRequestMatcherBuilder () {
48
+ return new PathPatternRequestMatcherBuilderFactoryBean ();
49
+ }
50
+
44
51
/**
45
52
* The default configuration for web security. It relies on Spring Security's
46
53
* content-negotiation strategy to determine what sort of authentication to use. If
You can’t perform that action at this time.
0 commit comments