Browse Source

Require GeneratedOneTimeTokenHandler on constructor

Issue gh-15114
pull/15823/head
Marcus Hert Da Coregio 1 year ago
parent
commit
a88a7744ed
  1. 4
      config/src/main/java/org/springframework/security/config/annotation/web/configurers/ott/OneTimeTokenLoginConfigurer.java
  2. 20
      web/src/main/java/org/springframework/security/web/authentication/ott/GenerateOneTimeTokenFilter.java

4
config/src/main/java/org/springframework/security/config/annotation/web/configurers/ott/OneTimeTokenLoginConfigurer.java

@ -133,8 +133,8 @@ public final class OneTimeTokenLoginConfigurer<H extends HttpSecurityBuilder<H>> @@ -133,8 +133,8 @@ public final class OneTimeTokenLoginConfigurer<H extends HttpSecurityBuilder<H>>
}
private void configureOttGenerateFilter(H http) {
GenerateOneTimeTokenFilter generateFilter = new GenerateOneTimeTokenFilter(getOneTimeTokenService(http));
generateFilter.setGeneratedOneTimeTokenHandler(getGeneratedOneTimeTokenHandler(http));
GenerateOneTimeTokenFilter generateFilter = new GenerateOneTimeTokenFilter(getOneTimeTokenService(http),
getGeneratedOneTimeTokenHandler(http));
generateFilter.setRequestMatcher(antMatcher(HttpMethod.POST, this.generateTokenUrl));
http.addFilter(postProcess(generateFilter));
http.addFilter(DefaultResourcesFilter.css());

20
web/src/main/java/org/springframework/security/web/authentication/ott/GenerateOneTimeTokenFilter.java

@ -45,14 +45,16 @@ public final class GenerateOneTimeTokenFilter extends OncePerRequestFilter { @@ -45,14 +45,16 @@ public final class GenerateOneTimeTokenFilter extends OncePerRequestFilter {
private final OneTimeTokenService oneTimeTokenService;
private RequestMatcher requestMatcher = antMatcher(HttpMethod.POST, "/ott/generate");
private final GeneratedOneTimeTokenHandler generatedOneTimeTokenHandler;
private GeneratedOneTimeTokenHandler generatedOneTimeTokenHandler = new RedirectGeneratedOneTimeTokenHandler(
"/login/ott");
private RequestMatcher requestMatcher = antMatcher(HttpMethod.POST, "/ott/generate");
public GenerateOneTimeTokenFilter(OneTimeTokenService oneTimeTokenService) {
public GenerateOneTimeTokenFilter(OneTimeTokenService oneTimeTokenService,
GeneratedOneTimeTokenHandler generatedOneTimeTokenHandler) {
Assert.notNull(oneTimeTokenService, "oneTimeTokenService cannot be null");
Assert.notNull(generatedOneTimeTokenHandler, "generatedOneTimeTokenHandler cannot be null");
this.oneTimeTokenService = oneTimeTokenService;
this.generatedOneTimeTokenHandler = generatedOneTimeTokenHandler;
}
@Override
@ -81,14 +83,4 @@ public final class GenerateOneTimeTokenFilter extends OncePerRequestFilter { @@ -81,14 +83,4 @@ public final class GenerateOneTimeTokenFilter extends OncePerRequestFilter {
this.requestMatcher = requestMatcher;
}
/**
* Specifies {@link GeneratedOneTimeTokenHandler} to be used to handle generated
* one-time tokens
* @param generatedOneTimeTokenHandler
*/
public void setGeneratedOneTimeTokenHandler(GeneratedOneTimeTokenHandler generatedOneTimeTokenHandler) {
Assert.notNull(generatedOneTimeTokenHandler, "generatedOneTimeTokenHandler cannot be null");
this.generatedOneTimeTokenHandler = generatedOneTimeTokenHandler;
}
}

Loading…
Cancel
Save