SecurityContextRepository->SecurityContextServerRepository

Issue gh-4615
This commit is contained in:
Rob Winch 2017-10-10 14:31:50 -05:00
parent 57d26ffa10
commit bfcc2a602d
12 changed files with 60 additions and 62 deletions

View File

@ -44,10 +44,10 @@ import org.springframework.security.web.server.authorization.AuthorizationWebFil
import org.springframework.security.web.server.authorization.DelegatingReactiveAuthorizationManager; import org.springframework.security.web.server.authorization.DelegatingReactiveAuthorizationManager;
import org.springframework.security.web.server.authorization.ExceptionTranslationWebFilter; import org.springframework.security.web.server.authorization.ExceptionTranslationWebFilter;
import org.springframework.security.web.server.context.AuthenticationReactorContextFilter; import org.springframework.security.web.server.context.AuthenticationReactorContextFilter;
import org.springframework.security.web.server.context.SecurityContextRepository; import org.springframework.security.web.server.context.SecurityContextServerRepository;
import org.springframework.security.web.server.context.SecurityContextRepositoryWebFilter; import org.springframework.security.web.server.context.SecurityContextRepositoryWebFilter;
import org.springframework.security.web.server.context.ServerWebExchangeAttributeSecurityContextRepository; import org.springframework.security.web.server.context.ServerWebExchangeAttributeSecurityContextServerRepository;
import org.springframework.security.web.server.context.WebSessionSecurityContextRepository; import org.springframework.security.web.server.context.WebSessionSecurityContextServerRepository;
import org.springframework.security.web.server.header.CacheControlHttpHeadersWriter; import org.springframework.security.web.server.header.CacheControlHttpHeadersWriter;
import org.springframework.security.web.server.header.CompositeHttpHeadersWriter; import org.springframework.security.web.server.header.CompositeHttpHeadersWriter;
import org.springframework.security.web.server.header.ContentTypeOptionsHttpHeadersWriter; import org.springframework.security.web.server.header.ContentTypeOptionsHttpHeadersWriter;
@ -94,7 +94,7 @@ public class HttpSecurity {
private ReactiveAuthenticationManager authenticationManager; private ReactiveAuthenticationManager authenticationManager;
private SecurityContextRepository securityContextRepository; private SecurityContextServerRepository securityContextServerRepository;
private ServerAuthenticationEntryPoint serverAuthenticationEntryPoint; private ServerAuthenticationEntryPoint serverAuthenticationEntryPoint;
@ -127,9 +127,9 @@ public class HttpSecurity {
return this.securityMatcher; return this.securityMatcher;
} }
public HttpSecurity securityContextRepository(SecurityContextRepository securityContextRepository) { public HttpSecurity securityContextRepository(SecurityContextServerRepository securityContextServerRepository) {
Assert.notNull(securityContextRepository, "securityContextRepository cannot be null"); Assert.notNull(securityContextServerRepository, "securityContextRepository cannot be null");
this.securityContextRepository = securityContextRepository; this.securityContextServerRepository = securityContextServerRepository;
return this; return this;
} }
@ -183,15 +183,15 @@ public class HttpSecurity {
} }
if(this.httpBasic != null) { if(this.httpBasic != null) {
this.httpBasic.authenticationManager(this.authenticationManager); this.httpBasic.authenticationManager(this.authenticationManager);
if(this.securityContextRepository != null) { if(this.securityContextServerRepository != null) {
this.httpBasic.securityContextRepository(this.securityContextRepository); this.httpBasic.securityContextRepository(this.securityContextServerRepository);
} }
this.httpBasic.configure(this); this.httpBasic.configure(this);
} }
if(this.formLogin != null) { if(this.formLogin != null) {
this.formLogin.authenticationManager(this.authenticationManager); this.formLogin.authenticationManager(this.authenticationManager);
if(this.securityContextRepository != null) { if(this.securityContextServerRepository != null) {
this.formLogin.securityContextRepository(this.securityContextRepository); this.formLogin.securityContextRepository(this.securityContextServerRepository);
} }
if(this.formLogin.serverAuthenticationEntryPoint == null) { if(this.formLogin.serverAuthenticationEntryPoint == null) {
this.webFilters.add(new OrderedWebFilter(new LoginPageGeneratingWebFilter(), SecurityWebFiltersOrder.LOGIN_PAGE_GENERATING.getOrder())); this.webFilters.add(new OrderedWebFilter(new LoginPageGeneratingWebFilter(), SecurityWebFiltersOrder.LOGIN_PAGE_GENERATING.getOrder()));
@ -233,7 +233,7 @@ public class HttpSecurity {
} }
private WebFilter securityContextRepositoryWebFilter() { private WebFilter securityContextRepositoryWebFilter() {
SecurityContextRepository repository = this.securityContextRepository; SecurityContextServerRepository repository = this.securityContextServerRepository;
if(repository == null) { if(repository == null) {
return null; return null;
} }
@ -322,7 +322,7 @@ public class HttpSecurity {
public class HttpBasicBuilder { public class HttpBasicBuilder {
private ReactiveAuthenticationManager authenticationManager; private ReactiveAuthenticationManager authenticationManager;
private SecurityContextRepository securityContextRepository = new ServerWebExchangeAttributeSecurityContextRepository(); private SecurityContextServerRepository securityContextServerRepository = new ServerWebExchangeAttributeSecurityContextServerRepository();
private ServerAuthenticationEntryPoint entryPoint = new HttpBasicServerAuthenticationEntryPoint(); private ServerAuthenticationEntryPoint entryPoint = new HttpBasicServerAuthenticationEntryPoint();
@ -331,8 +331,8 @@ public class HttpSecurity {
return this; return this;
} }
public HttpBasicBuilder securityContextRepository(SecurityContextRepository securityContextRepository) { public HttpBasicBuilder securityContextRepository(SecurityContextServerRepository securityContextServerRepository) {
this.securityContextRepository = securityContextRepository; this.securityContextServerRepository = securityContextServerRepository;
return this; return this;
} }
@ -357,8 +357,8 @@ public class HttpSecurity {
this.authenticationManager); this.authenticationManager);
authenticationFilter.setAuthenticationFailureHandler(new AuthenticationEntryPointFailureHandler(this.entryPoint)); authenticationFilter.setAuthenticationFailureHandler(new AuthenticationEntryPointFailureHandler(this.entryPoint));
authenticationFilter.setAuthenticationConverter(new ServerHttpBasicAuthenticationConverter()); authenticationFilter.setAuthenticationConverter(new ServerHttpBasicAuthenticationConverter());
if(this.securityContextRepository != null) { if(this.securityContextServerRepository != null) {
authenticationFilter.setSecurityContextRepository(this.securityContextRepository); authenticationFilter.setSecurityContextServerRepository(this.securityContextServerRepository);
} }
http.addFilterAt(authenticationFilter, SecurityWebFiltersOrder.HTTP_BASIC); http.addFilterAt(authenticationFilter, SecurityWebFiltersOrder.HTTP_BASIC);
} }
@ -373,7 +373,7 @@ public class HttpSecurity {
public class FormLoginBuilder { public class FormLoginBuilder {
private ReactiveAuthenticationManager authenticationManager; private ReactiveAuthenticationManager authenticationManager;
private SecurityContextRepository securityContextRepository = new WebSessionSecurityContextRepository(); private SecurityContextServerRepository securityContextServerRepository = new WebSessionSecurityContextServerRepository();
private ServerAuthenticationEntryPoint serverAuthenticationEntryPoint; private ServerAuthenticationEntryPoint serverAuthenticationEntryPoint;
@ -408,8 +408,8 @@ public class HttpSecurity {
return this; return this;
} }
public FormLoginBuilder securityContextRepository(SecurityContextRepository securityContextRepository) { public FormLoginBuilder securityContextRepository(SecurityContextServerRepository securityContextServerRepository) {
this.securityContextRepository = securityContextRepository; this.securityContextServerRepository = securityContextServerRepository;
return this; return this;
} }
@ -436,7 +436,7 @@ public class HttpSecurity {
authenticationFilter.setAuthenticationFailureHandler(this.authenticationFailureHandler); authenticationFilter.setAuthenticationFailureHandler(this.authenticationFailureHandler);
authenticationFilter.setAuthenticationConverter(new ServerFormLoginAuthenticationConverter()); authenticationFilter.setAuthenticationConverter(new ServerFormLoginAuthenticationConverter());
authenticationFilter.setAuthenticationSuccessHandler(new RedirectAuthenticationSuccessHandler("/")); authenticationFilter.setAuthenticationSuccessHandler(new RedirectAuthenticationSuccessHandler("/"));
authenticationFilter.setSecurityContextRepository(this.securityContextRepository); authenticationFilter.setSecurityContextServerRepository(this.securityContextServerRepository);
http.addFilterAt(authenticationFilter, SecurityWebFiltersOrder.FORM_LOGIN); http.addFilterAt(authenticationFilter, SecurityWebFiltersOrder.FORM_LOGIN);
} }

View File

@ -26,8 +26,8 @@ import org.springframework.security.authentication.ReactiveAuthenticationManager
import org.springframework.security.authentication.TestingAuthenticationToken; import org.springframework.security.authentication.TestingAuthenticationToken;
import org.springframework.security.test.web.reactive.server.WebTestClientBuilder; import org.springframework.security.test.web.reactive.server.WebTestClientBuilder;
import org.springframework.security.web.server.WebFilterChainProxy; import org.springframework.security.web.server.WebFilterChainProxy;
import org.springframework.security.web.server.context.SecurityContextRepository; import org.springframework.security.web.server.context.SecurityContextServerRepository;
import org.springframework.security.web.server.context.WebSessionSecurityContextRepository; import org.springframework.security.web.server.context.WebSessionSecurityContextServerRepository;
import org.springframework.test.web.reactive.server.EntityExchangeResult; import org.springframework.test.web.reactive.server.EntityExchangeResult;
import org.springframework.test.web.reactive.server.FluxExchangeResult; import org.springframework.test.web.reactive.server.FluxExchangeResult;
import org.springframework.test.web.reactive.server.WebTestClient; import org.springframework.test.web.reactive.server.WebTestClient;
@ -45,8 +45,7 @@ import static org.springframework.web.reactive.function.client.ExchangeFilterFun
*/ */
@RunWith(MockitoJUnitRunner.class) @RunWith(MockitoJUnitRunner.class)
public class HttpSecurityTests { public class HttpSecurityTests {
@Mock @Mock SecurityContextServerRepository contextRepository;
SecurityContextRepository contextRepository;
@Mock @Mock
ReactiveAuthenticationManager authenticationManager; ReactiveAuthenticationManager authenticationManager;
@ -78,7 +77,7 @@ public class HttpSecurityTests {
public void basic() { public void basic() {
given(this.authenticationManager.authenticate(any())).willReturn(Mono.just(new TestingAuthenticationToken("rob", "rob", "ROLE_USER", "ROLE_ADMIN"))); given(this.authenticationManager.authenticate(any())).willReturn(Mono.just(new TestingAuthenticationToken("rob", "rob", "ROLE_USER", "ROLE_ADMIN")));
this.http.securityContextRepository(new WebSessionSecurityContextRepository()); this.http.securityContextRepository(new WebSessionSecurityContextServerRepository());
this.http.httpBasic(); this.http.httpBasic();
this.http.authenticationManager(this.authenticationManager); this.http.authenticationManager(this.authenticationManager);
HttpSecurity.AuthorizeExchangeBuilder authorize = this.http.authorizeExchange(); HttpSecurity.AuthorizeExchangeBuilder authorize = this.http.authorizeExchange();

View File

@ -26,9 +26,9 @@ import org.springframework.security.core.context.SecurityContextImpl;
import org.springframework.security.web.server.ServerHttpBasicAuthenticationConverter; import org.springframework.security.web.server.ServerHttpBasicAuthenticationConverter;
import org.springframework.security.web.server.WebFilterExchange; import org.springframework.security.web.server.WebFilterExchange;
import org.springframework.security.web.server.authentication.www.HttpBasicServerAuthenticationEntryPoint; import org.springframework.security.web.server.authentication.www.HttpBasicServerAuthenticationEntryPoint;
import org.springframework.security.web.server.context.SecurityContextRepository; import org.springframework.security.web.server.context.SecurityContextServerRepository;
import org.springframework.security.web.server.context.SecurityContextRepositoryServerWebExchange; import org.springframework.security.web.server.context.SecurityContextRepositoryServerWebExchange;
import org.springframework.security.web.server.context.ServerWebExchangeAttributeSecurityContextRepository; import org.springframework.security.web.server.context.ServerWebExchangeAttributeSecurityContextServerRepository;
import org.springframework.security.web.server.util.matcher.ServerWebExchangeMatcher; import org.springframework.security.web.server.util.matcher.ServerWebExchangeMatcher;
import org.springframework.security.web.server.util.matcher.ServerWebExchangeMatchers; import org.springframework.security.web.server.util.matcher.ServerWebExchangeMatchers;
import org.springframework.util.Assert; import org.springframework.util.Assert;
@ -51,7 +51,7 @@ public class AuthenticationWebFilter implements WebFilter {
private AuthenticationFailureHandler authenticationFailureHandler = new AuthenticationEntryPointFailureHandler(new HttpBasicServerAuthenticationEntryPoint()); private AuthenticationFailureHandler authenticationFailureHandler = new AuthenticationEntryPointFailureHandler(new HttpBasicServerAuthenticationEntryPoint());
private SecurityContextRepository securityContextRepository = new ServerWebExchangeAttributeSecurityContextRepository(); private SecurityContextServerRepository securityContextServerRepository = new ServerWebExchangeAttributeSecurityContextServerRepository();
private ServerWebExchangeMatcher requiresAuthenticationMatcher = ServerWebExchangeMatchers.anyExchange(); private ServerWebExchangeMatcher requiresAuthenticationMatcher = ServerWebExchangeMatchers.anyExchange();
@ -62,7 +62,7 @@ public class AuthenticationWebFilter implements WebFilter {
@Override @Override
public Mono<Void> filter(ServerWebExchange exchange, WebFilterChain chain) { public Mono<Void> filter(ServerWebExchange exchange, WebFilterChain chain) {
ServerWebExchange wrappedExchange = new SecurityContextRepositoryServerWebExchange(exchange, this.securityContextRepository); ServerWebExchange wrappedExchange = new SecurityContextRepositoryServerWebExchange(exchange, this.securityContextServerRepository);
return filterInternal(wrappedExchange, chain); return filterInternal(wrappedExchange, chain);
} }
@ -86,14 +86,14 @@ public class AuthenticationWebFilter implements WebFilter {
ServerWebExchange exchange = webFilterExchange.getExchange(); ServerWebExchange exchange = webFilterExchange.getExchange();
SecurityContextImpl securityContext = new SecurityContextImpl(); SecurityContextImpl securityContext = new SecurityContextImpl();
securityContext.setAuthentication(authentication); securityContext.setAuthentication(authentication);
return this.securityContextRepository.save(exchange, securityContext) return this.securityContextServerRepository.save(exchange, securityContext)
.then(this.authenticationSuccessHandler.success(authentication, webFilterExchange)); .then(this.authenticationSuccessHandler.success(authentication, webFilterExchange));
} }
public void setSecurityContextRepository( public void setSecurityContextServerRepository(
SecurityContextRepository securityContextRepository) { SecurityContextServerRepository securityContextServerRepository) {
Assert.notNull(securityContextRepository, "securityContextRepository cannot be null"); Assert.notNull(securityContextServerRepository, "securityContextRepository cannot be null");
this.securityContextRepository = securityContextRepository; this.securityContextServerRepository = securityContextServerRepository;
} }
public void setAuthenticationSuccessHandler(AuthenticationSuccessHandler authenticationSuccessHandler) { public void setAuthenticationSuccessHandler(AuthenticationSuccessHandler authenticationSuccessHandler) {

View File

@ -19,9 +19,9 @@ package org.springframework.security.web.server.authentication.logout;
import org.springframework.security.core.Authentication; import org.springframework.security.core.Authentication;
import org.springframework.security.web.server.DefaultServerRedirectStrategy; import org.springframework.security.web.server.DefaultServerRedirectStrategy;
import org.springframework.security.web.server.ServerRedirectStrategy; import org.springframework.security.web.server.ServerRedirectStrategy;
import org.springframework.security.web.server.context.SecurityContextRepository; import org.springframework.security.web.server.context.SecurityContextServerRepository;
import org.springframework.security.web.server.WebFilterExchange; import org.springframework.security.web.server.WebFilterExchange;
import org.springframework.security.web.server.context.WebSessionSecurityContextRepository; import org.springframework.security.web.server.context.WebSessionSecurityContextServerRepository;
import reactor.core.publisher.Mono; import reactor.core.publisher.Mono;
import java.net.URI; import java.net.URI;
@ -31,7 +31,7 @@ import java.net.URI;
* @since 5.0 * @since 5.0
*/ */
public class SecurityContextRepositoryLogoutHandler implements LogoutHandler { public class SecurityContextRepositoryLogoutHandler implements LogoutHandler {
private SecurityContextRepository repository = new WebSessionSecurityContextRepository(); private SecurityContextServerRepository repository = new WebSessionSecurityContextServerRepository();
private URI logoutSuccessUrl = URI.create("/login?logout"); private URI logoutSuccessUrl = URI.create("/login?logout");

View File

@ -27,9 +27,9 @@ import reactor.core.publisher.Mono;
* @since 5.0 * @since 5.0
*/ */
public class SecurityContextRepositoryServerWebExchange extends ServerWebExchangeDecorator { public class SecurityContextRepositoryServerWebExchange extends ServerWebExchangeDecorator {
private final SecurityContextRepository repository; private final SecurityContextServerRepository repository;
public SecurityContextRepositoryServerWebExchange(ServerWebExchange delegate, SecurityContextRepository repository) { public SecurityContextRepositoryServerWebExchange(ServerWebExchange delegate, SecurityContextServerRepository repository) {
super(delegate); super(delegate);
this.repository = repository; this.repository = repository;
} }

View File

@ -15,8 +15,6 @@
*/ */
package org.springframework.security.web.server.context; package org.springframework.security.web.server.context;
import org.springframework.security.web.server.context.SecurityContextRepository;
import org.springframework.security.web.server.context.SecurityContextRepositoryServerWebExchange;
import org.springframework.util.Assert; import org.springframework.util.Assert;
import org.springframework.web.server.ServerWebExchange; import org.springframework.web.server.ServerWebExchange;
import org.springframework.web.server.WebFilter; import org.springframework.web.server.WebFilter;
@ -28,9 +26,9 @@ import reactor.core.publisher.Mono;
* @since 5.0 * @since 5.0
*/ */
public class SecurityContextRepositoryWebFilter implements WebFilter { public class SecurityContextRepositoryWebFilter implements WebFilter {
private final SecurityContextRepository repository; private final SecurityContextServerRepository repository;
public SecurityContextRepositoryWebFilter(SecurityContextRepository repository) { public SecurityContextRepositoryWebFilter(SecurityContextServerRepository repository) {
Assert.notNull(repository, "repository cannot be null"); Assert.notNull(repository, "repository cannot be null");
this.repository = repository; this.repository = repository;
} }

View File

@ -20,7 +20,7 @@ import org.springframework.web.server.ServerWebExchange;
import reactor.core.publisher.Mono; import reactor.core.publisher.Mono;
public interface SecurityContextRepository { public interface SecurityContextServerRepository {
Mono<Void> save(ServerWebExchange exchange, SecurityContext context); Mono<Void> save(ServerWebExchange exchange, SecurityContext context);

View File

@ -25,7 +25,8 @@ import reactor.core.publisher.Mono;
* @author Rob Winch * @author Rob Winch
* @since 5.0 * @since 5.0
*/ */
public class ServerWebExchangeAttributeSecurityContextRepository implements SecurityContextRepository { public class ServerWebExchangeAttributeSecurityContextServerRepository
implements SecurityContextServerRepository {
final String ATTR = "USER"; final String ATTR = "USER";
public Mono<Void> save(ServerWebExchange exchange, SecurityContext context) { public Mono<Void> save(ServerWebExchange exchange, SecurityContext context) {

View File

@ -25,7 +25,8 @@ import reactor.core.publisher.Mono;
* @author Rob Winch * @author Rob Winch
* @since 5.0 * @since 5.0
*/ */
public class WebSessionSecurityContextRepository implements SecurityContextRepository { public class WebSessionSecurityContextServerRepository
implements SecurityContextServerRepository {
final String SESSION_ATTR = "USER"; final String SESSION_ATTR = "USER";
public Mono<Void> save(ServerWebExchange exchange, SecurityContext context) { public Mono<Void> save(ServerWebExchange exchange, SecurityContext context) {

View File

@ -30,7 +30,7 @@ import org.springframework.security.authentication.ReactiveAuthenticationManager
import org.springframework.security.authentication.TestingAuthenticationToken; import org.springframework.security.authentication.TestingAuthenticationToken;
import org.springframework.security.core.Authentication; import org.springframework.security.core.Authentication;
import org.springframework.security.test.web.reactive.server.WebTestClientBuilder; import org.springframework.security.test.web.reactive.server.WebTestClientBuilder;
import org.springframework.security.web.server.context.SecurityContextRepository; import org.springframework.security.web.server.context.SecurityContextServerRepository;
import org.springframework.security.web.server.util.matcher.ServerWebExchangeMatcher; import org.springframework.security.web.server.util.matcher.ServerWebExchangeMatcher;
import org.springframework.test.web.reactive.server.EntityExchangeResult; import org.springframework.test.web.reactive.server.EntityExchangeResult;
import org.springframework.test.web.reactive.server.WebTestClient; import org.springframework.test.web.reactive.server.WebTestClient;
@ -62,7 +62,7 @@ public class AuthenticationWebFilterTests {
@Mock @Mock
private AuthenticationFailureHandler failureHandler; private AuthenticationFailureHandler failureHandler;
@Mock @Mock
private SecurityContextRepository securityContextRepository; private SecurityContextServerRepository securityContextServerRepository;
private AuthenticationWebFilter filter; private AuthenticationWebFilter filter;
@ -71,7 +71,7 @@ public class AuthenticationWebFilterTests {
this.filter = new AuthenticationWebFilter(this.authenticationManager); this.filter = new AuthenticationWebFilter(this.authenticationManager);
this.filter.setAuthenticationSuccessHandler(this.successHandler); this.filter.setAuthenticationSuccessHandler(this.successHandler);
this.filter.setAuthenticationConverter(this.authenticationConverter); this.filter.setAuthenticationConverter(this.authenticationConverter);
this.filter.setSecurityContextRepository(this.securityContextRepository); this.filter.setSecurityContextServerRepository(this.securityContextServerRepository);
this.filter.setAuthenticationFailureHandler(this.failureHandler); this.filter.setAuthenticationFailureHandler(this.failureHandler);
} }
@ -154,7 +154,7 @@ public class AuthenticationWebFilterTests {
.expectBody(String.class).consumeWith(b -> assertThat(b.getResponseBody()).isEqualTo("ok")) .expectBody(String.class).consumeWith(b -> assertThat(b.getResponseBody()).isEqualTo("ok"))
.returnResult(); .returnResult();
verify(this.securityContextRepository, never()).save(any(), any()); verify(this.securityContextServerRepository, never()).save(any(), any());
verifyZeroInteractions(this.authenticationManager, this.successHandler, verifyZeroInteractions(this.authenticationManager, this.successHandler,
this.failureHandler); this.failureHandler);
} }
@ -174,7 +174,7 @@ public class AuthenticationWebFilterTests {
.expectStatus().is5xxServerError() .expectStatus().is5xxServerError()
.expectBody().isEmpty(); .expectBody().isEmpty();
verify(this.securityContextRepository, never()).save(any(), any()); verify(this.securityContextServerRepository, never()).save(any(), any());
verifyZeroInteractions(this.authenticationManager, this.successHandler, verifyZeroInteractions(this.authenticationManager, this.successHandler,
this.failureHandler); this.failureHandler);
} }
@ -185,7 +185,7 @@ public class AuthenticationWebFilterTests {
when(this.authenticationConverter.apply(any())).thenReturn(authentication); when(this.authenticationConverter.apply(any())).thenReturn(authentication);
when(this.authenticationManager.authenticate(any())).thenReturn(authentication); when(this.authenticationManager.authenticate(any())).thenReturn(authentication);
when(this.successHandler.success(any(),any())).thenReturn(Mono.empty()); when(this.successHandler.success(any(),any())).thenReturn(Mono.empty());
when(this.securityContextRepository.save(any(),any())).thenAnswer( a -> Mono.just(a.getArguments()[0])); when(this.securityContextServerRepository.save(any(),any())).thenAnswer( a -> Mono.just(a.getArguments()[0]));
WebTestClient client = WebTestClientBuilder WebTestClient client = WebTestClientBuilder
.bindToWebFilters(this.filter) .bindToWebFilters(this.filter)
@ -199,7 +199,7 @@ public class AuthenticationWebFilterTests {
.expectBody().isEmpty(); .expectBody().isEmpty();
verify(this.successHandler).success(eq(authentication.block()), any()); verify(this.successHandler).success(eq(authentication.block()), any());
verify(this.securityContextRepository).save(any(), any()); verify(this.securityContextServerRepository).save(any(), any());
verifyZeroInteractions(this.failureHandler); verifyZeroInteractions(this.failureHandler);
} }
@ -244,7 +244,7 @@ public class AuthenticationWebFilterTests {
.expectBody().isEmpty(); .expectBody().isEmpty();
verify(this.failureHandler).onAuthenticationFailure(any(),any()); verify(this.failureHandler).onAuthenticationFailure(any(),any());
verify(this.securityContextRepository, never()).save(any(), any()); verify(this.securityContextServerRepository, never()).save(any(), any());
verifyZeroInteractions(this.successHandler); verifyZeroInteractions(this.successHandler);
} }
@ -265,7 +265,7 @@ public class AuthenticationWebFilterTests {
.expectStatus().is5xxServerError() .expectStatus().is5xxServerError()
.expectBody().isEmpty(); .expectBody().isEmpty();
verify(this.securityContextRepository, never()).save(any(), any()); verify(this.securityContextServerRepository, never()).save(any(), any());
verifyZeroInteractions(this.successHandler, this.failureHandler); verifyZeroInteractions(this.successHandler, this.failureHandler);
} }

View File

@ -40,12 +40,11 @@ import static org.mockito.Mockito.*;
* @since 5.0 * @since 5.0
*/ */
@RunWith(MockitoJUnitRunner.class) @RunWith(MockitoJUnitRunner.class)
public class SecurityContextRepositoryWebFilterTests { public class SecurityContextServerRepositoryWebFilterTests {
@Mock @Mock
Authentication principal; Authentication principal;
@Mock @Mock SecurityContextServerRepository repository;
SecurityContextRepository repository;
MockServerHttpRequest.BaseBuilder<?> exchange = MockServerHttpRequest.get("/"); MockServerHttpRequest.BaseBuilder<?> exchange = MockServerHttpRequest.get("/");
@ -62,7 +61,7 @@ public class SecurityContextRepositoryWebFilterTests {
@Test(expected = IllegalArgumentException.class) @Test(expected = IllegalArgumentException.class)
public void constructorNullSecurityContextRepository() { public void constructorNullSecurityContextRepository() {
SecurityContextRepository repository = null; SecurityContextServerRepository repository = null;
new SecurityContextRepositoryWebFilter(repository); new SecurityContextRepositoryWebFilter(repository);
} }

View File

@ -29,8 +29,8 @@ import static org.assertj.core.api.Assertions.assertThat;
* @author Rob Winch * @author Rob Winch
* @since 5.0 * @since 5.0
*/ */
public class ServerWebExchangeAttributeSecurityContextRepositoryTests { public class ServerWebExchangeAttributeSecurityContextServerRepositoryTests {
ServerWebExchangeAttributeSecurityContextRepository repository = new ServerWebExchangeAttributeSecurityContextRepository(); ServerWebExchangeAttributeSecurityContextServerRepository repository = new ServerWebExchangeAttributeSecurityContextServerRepository();
ServerWebExchange exchange = MockServerHttpRequest.get("/").toExchange(); ServerWebExchange exchange = MockServerHttpRequest.get("/").toExchange();
@Test @Test