mirror of
https://github.com/spring-projects/spring-security.git
synced 2025-07-13 05:43:29 +00:00
Remove AbstractConfiguredSecurityBuilder apply
Closes gh-13441 Signed-off-by: DingHao <dh.hiekn@gmail.com>
This commit is contained in:
parent
0c42b61cc1
commit
5fefdd5bb3
@ -113,24 +113,6 @@ public abstract class AbstractConfiguredSecurityBuilder<O, B extends SecurityBui
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Applies a {@link SecurityConfigurerAdapter} to this {@link SecurityBuilder} and
|
|
||||||
* invokes {@link SecurityConfigurerAdapter#setBuilder(SecurityBuilder)}.
|
|
||||||
* @param configurer
|
|
||||||
* @return the {@link SecurityConfigurerAdapter} for further customizations
|
|
||||||
* @throws Exception
|
|
||||||
* @deprecated For removal in 7.0. Use
|
|
||||||
* {@link #with(SecurityConfigurerAdapter, Customizer)} instead.
|
|
||||||
*/
|
|
||||||
@Deprecated(since = "6.2", forRemoval = true)
|
|
||||||
@SuppressWarnings("unchecked")
|
|
||||||
public <C extends SecurityConfigurerAdapter<O, B>> C apply(C configurer) throws Exception {
|
|
||||||
configurer.addObjectPostProcessor(this.objectPostProcessor);
|
|
||||||
configurer.setBuilder((B) this);
|
|
||||||
add(configurer);
|
|
||||||
return configurer;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Applies a {@link SecurityConfigurer} to this {@link SecurityBuilder} overriding any
|
* Applies a {@link SecurityConfigurer} to this {@link SecurityBuilder} overriding any
|
||||||
* {@link SecurityConfigurer} of the exact same class. Note that object hierarchies
|
* {@link SecurityConfigurer} of the exact same class. Note that object hierarchies
|
||||||
@ -162,7 +144,6 @@ public abstract class AbstractConfiguredSecurityBuilder<O, B extends SecurityBui
|
|||||||
* @throws Exception
|
* @throws Exception
|
||||||
* @since 7.0
|
* @since 7.0
|
||||||
*/
|
*/
|
||||||
@SuppressWarnings("unchecked")
|
|
||||||
public <C extends SecurityConfigurerAdapter<O, B>> B with(C configurer) throws Exception {
|
public <C extends SecurityConfigurerAdapter<O, B>> B with(C configurer) throws Exception {
|
||||||
return with(configurer, Customizer.withDefaults());
|
return with(configurer, Customizer.withDefaults());
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright 2002-2023 the original author or authors.
|
* Copyright 2002-2025 the original author or authors.
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -60,8 +60,8 @@ public class AbstractConfiguredSecurityBuilderTests {
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void applyWhenDuplicateConfigurerAddedThenDuplicateConfigurerRemoved() throws Exception {
|
public void applyWhenDuplicateConfigurerAddedThenDuplicateConfigurerRemoved() throws Exception {
|
||||||
this.builder.apply(new TestSecurityConfigurer());
|
this.builder.with(new TestSecurityConfigurer());
|
||||||
this.builder.apply(new TestSecurityConfigurer());
|
this.builder.with(new TestSecurityConfigurer());
|
||||||
assertThat(this.builder.getConfigurers(TestSecurityConfigurer.class)).hasSize(1);
|
assertThat(this.builder.getConfigurers(TestSecurityConfigurer.class)).hasSize(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -79,7 +79,7 @@ public class AbstractConfiguredSecurityBuilderTests {
|
|||||||
@Test
|
@Test
|
||||||
public void buildWhenConfigurerAppliesAnotherConfigurerThenObjectStillBuilds() throws Exception {
|
public void buildWhenConfigurerAppliesAnotherConfigurerThenObjectStillBuilds() throws Exception {
|
||||||
DelegateSecurityConfigurer.CONFIGURER = mock(SecurityConfigurer.class);
|
DelegateSecurityConfigurer.CONFIGURER = mock(SecurityConfigurer.class);
|
||||||
this.builder.apply(new DelegateSecurityConfigurer());
|
this.builder.with(new DelegateSecurityConfigurer());
|
||||||
this.builder.build();
|
this.builder.build();
|
||||||
verify(DelegateSecurityConfigurer.CONFIGURER).init(this.builder);
|
verify(DelegateSecurityConfigurer.CONFIGURER).init(this.builder);
|
||||||
verify(DelegateSecurityConfigurer.CONFIGURER).configure(this.builder);
|
verify(DelegateSecurityConfigurer.CONFIGURER).configure(this.builder);
|
||||||
@ -88,7 +88,7 @@ public class AbstractConfiguredSecurityBuilderTests {
|
|||||||
@Test
|
@Test
|
||||||
public void buildWhenConfigurerAppliesAndRemoveAnotherConfigurerThenNotConfigured() throws Exception {
|
public void buildWhenConfigurerAppliesAndRemoveAnotherConfigurerThenNotConfigured() throws Exception {
|
||||||
ApplyAndRemoveSecurityConfigurer.CONFIGURER = mock(SecurityConfigurer.class);
|
ApplyAndRemoveSecurityConfigurer.CONFIGURER = mock(SecurityConfigurer.class);
|
||||||
this.builder.apply(new ApplyAndRemoveSecurityConfigurer());
|
this.builder.with(new ApplyAndRemoveSecurityConfigurer());
|
||||||
this.builder.build();
|
this.builder.build();
|
||||||
verify(ApplyAndRemoveSecurityConfigurer.CONFIGURER, never()).init(this.builder);
|
verify(ApplyAndRemoveSecurityConfigurer.CONFIGURER, never()).init(this.builder);
|
||||||
verify(ApplyAndRemoveSecurityConfigurer.CONFIGURER, never()).configure(this.builder);
|
verify(ApplyAndRemoveSecurityConfigurer.CONFIGURER, never()).configure(this.builder);
|
||||||
@ -97,7 +97,7 @@ public class AbstractConfiguredSecurityBuilderTests {
|
|||||||
@Test
|
@Test
|
||||||
public void buildWhenConfigurerAppliesAndRemoveAnotherConfigurersThenNotConfigured() throws Exception {
|
public void buildWhenConfigurerAppliesAndRemoveAnotherConfigurersThenNotConfigured() throws Exception {
|
||||||
ApplyAndRemoveAllSecurityConfigurer.CONFIGURER = mock(SecurityConfigurer.class);
|
ApplyAndRemoveAllSecurityConfigurer.CONFIGURER = mock(SecurityConfigurer.class);
|
||||||
this.builder.apply(new ApplyAndRemoveAllSecurityConfigurer());
|
this.builder.with(new ApplyAndRemoveAllSecurityConfigurer());
|
||||||
this.builder.build();
|
this.builder.build();
|
||||||
verify(ApplyAndRemoveAllSecurityConfigurer.CONFIGURER, never()).init(this.builder);
|
verify(ApplyAndRemoveAllSecurityConfigurer.CONFIGURER, never()).init(this.builder);
|
||||||
verify(ApplyAndRemoveAllSecurityConfigurer.CONFIGURER, never()).configure(this.builder);
|
verify(ApplyAndRemoveAllSecurityConfigurer.CONFIGURER, never()).configure(this.builder);
|
||||||
@ -107,8 +107,8 @@ public class AbstractConfiguredSecurityBuilderTests {
|
|||||||
public void getConfigurerWhenMultipleConfigurersThenThrowIllegalStateException() throws Exception {
|
public void getConfigurerWhenMultipleConfigurersThenThrowIllegalStateException() throws Exception {
|
||||||
TestConfiguredSecurityBuilder builder = new TestConfiguredSecurityBuilder(mock(ObjectPostProcessor.class),
|
TestConfiguredSecurityBuilder builder = new TestConfiguredSecurityBuilder(mock(ObjectPostProcessor.class),
|
||||||
true);
|
true);
|
||||||
builder.apply(new DelegateSecurityConfigurer());
|
builder.with(new DelegateSecurityConfigurer());
|
||||||
builder.apply(new DelegateSecurityConfigurer());
|
builder.with(new DelegateSecurityConfigurer());
|
||||||
assertThatIllegalStateException().isThrownBy(() -> builder.getConfigurer(DelegateSecurityConfigurer.class));
|
assertThatIllegalStateException().isThrownBy(() -> builder.getConfigurer(DelegateSecurityConfigurer.class));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -116,8 +116,8 @@ public class AbstractConfiguredSecurityBuilderTests {
|
|||||||
public void removeConfigurerWhenMultipleConfigurersThenThrowIllegalStateException() throws Exception {
|
public void removeConfigurerWhenMultipleConfigurersThenThrowIllegalStateException() throws Exception {
|
||||||
TestConfiguredSecurityBuilder builder = new TestConfiguredSecurityBuilder(mock(ObjectPostProcessor.class),
|
TestConfiguredSecurityBuilder builder = new TestConfiguredSecurityBuilder(mock(ObjectPostProcessor.class),
|
||||||
true);
|
true);
|
||||||
builder.apply(new DelegateSecurityConfigurer());
|
builder.with(new DelegateSecurityConfigurer());
|
||||||
builder.apply(new DelegateSecurityConfigurer());
|
builder.with(new DelegateSecurityConfigurer());
|
||||||
assertThatIllegalStateException().isThrownBy(() -> builder.removeConfigurer(DelegateSecurityConfigurer.class));
|
assertThatIllegalStateException().isThrownBy(() -> builder.removeConfigurer(DelegateSecurityConfigurer.class));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -127,8 +127,8 @@ public class AbstractConfiguredSecurityBuilderTests {
|
|||||||
DelegateSecurityConfigurer configurer2 = new DelegateSecurityConfigurer();
|
DelegateSecurityConfigurer configurer2 = new DelegateSecurityConfigurer();
|
||||||
TestConfiguredSecurityBuilder builder = new TestConfiguredSecurityBuilder(mock(ObjectPostProcessor.class),
|
TestConfiguredSecurityBuilder builder = new TestConfiguredSecurityBuilder(mock(ObjectPostProcessor.class),
|
||||||
true);
|
true);
|
||||||
builder.apply(configurer1);
|
builder.with(configurer1);
|
||||||
builder.apply(configurer2);
|
builder.with(configurer2);
|
||||||
List<DelegateSecurityConfigurer> removedConfigurers = builder
|
List<DelegateSecurityConfigurer> removedConfigurers = builder
|
||||||
.removeConfigurers(DelegateSecurityConfigurer.class);
|
.removeConfigurers(DelegateSecurityConfigurer.class);
|
||||||
assertThat(removedConfigurers).hasSize(2);
|
assertThat(removedConfigurers).hasSize(2);
|
||||||
@ -142,8 +142,8 @@ public class AbstractConfiguredSecurityBuilderTests {
|
|||||||
DelegateSecurityConfigurer configurer2 = new DelegateSecurityConfigurer();
|
DelegateSecurityConfigurer configurer2 = new DelegateSecurityConfigurer();
|
||||||
TestConfiguredSecurityBuilder builder = new TestConfiguredSecurityBuilder(mock(ObjectPostProcessor.class),
|
TestConfiguredSecurityBuilder builder = new TestConfiguredSecurityBuilder(mock(ObjectPostProcessor.class),
|
||||||
true);
|
true);
|
||||||
builder.apply(configurer1);
|
builder.with(configurer1);
|
||||||
builder.apply(configurer2);
|
builder.with(configurer2);
|
||||||
List<DelegateSecurityConfigurer> configurers = builder.getConfigurers(DelegateSecurityConfigurer.class);
|
List<DelegateSecurityConfigurer> configurers = builder.getConfigurers(DelegateSecurityConfigurer.class);
|
||||||
assertThat(configurers).hasSize(2);
|
assertThat(configurers).hasSize(2);
|
||||||
assertThat(configurers).containsExactly(configurer1, configurer2);
|
assertThat(configurers).containsExactly(configurer1, configurer2);
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright 2002-2024 the original author or authors.
|
* Copyright 2002-2025 the original author or authors.
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -630,7 +630,7 @@ public class HttpSecurityConfigurationTests {
|
|||||||
|
|
||||||
@Bean
|
@Bean
|
||||||
SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
|
SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
|
||||||
http.apply(CustomDsl.customDsl());
|
http.with(CustomDsl.customDsl());
|
||||||
return http.build();
|
return http.build();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright 2002-2022 the original author or authors.
|
* Copyright 2002-2025 the original author or authors.
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -118,10 +118,9 @@ public class CustomHttpSecurityConfigurerTests {
|
|||||||
@Bean
|
@Bean
|
||||||
SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
|
SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
|
||||||
// @formatter:off
|
// @formatter:off
|
||||||
http
|
return http
|
||||||
.apply(CustomConfigurer.customConfigurer())
|
.with(CustomConfigurer.customConfigurer(), (c) -> c.loginPage("/custom"))
|
||||||
.loginPage("/custom");
|
.build();
|
||||||
return http.build();
|
|
||||||
// @formatter:on
|
// @formatter:on
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user