From 8794364850f95d29d0ee8260945e13ebbc696c9b Mon Sep 17 00:00:00 2001 From: svlada Date: Tue, 27 Dec 2016 19:37:26 +0100 Subject: [PATCH] Multiple authentication filter invocation fix: https://github.com/svlada/springboot-security-jwt/issues/5 --- .../config/PasswordEncoderConfig.java | 20 +++++++++++++++++++ .../security/config/WebSecurityConfig.java | 8 +------- 2 files changed, 21 insertions(+), 7 deletions(-) create mode 100644 src/main/java/com/svlada/security/config/PasswordEncoderConfig.java diff --git a/src/main/java/com/svlada/security/config/PasswordEncoderConfig.java b/src/main/java/com/svlada/security/config/PasswordEncoderConfig.java new file mode 100644 index 0000000..ad46a6d --- /dev/null +++ b/src/main/java/com/svlada/security/config/PasswordEncoderConfig.java @@ -0,0 +1,20 @@ +package com.svlada.security.config; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; + +/** + * PasswordEncoderConfig + * + * @author vladimir.stankovic + * + * Dec 27, 2016 + */ +@Configuration +public class PasswordEncoderConfig { + @Bean + protected BCryptPasswordEncoder passwordEncoder() { + return new BCryptPasswordEncoder(); + } +} diff --git a/src/main/java/com/svlada/security/config/WebSecurityConfig.java b/src/main/java/com/svlada/security/config/WebSecurityConfig.java index f63c048..c995282 100644 --- a/src/main/java/com/svlada/security/config/WebSecurityConfig.java +++ b/src/main/java/com/svlada/security/config/WebSecurityConfig.java @@ -53,14 +53,12 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter { @Autowired private ObjectMapper objectMapper; - @Bean protected AjaxLoginProcessingFilter buildAjaxLoginProcessingFilter() throws Exception { AjaxLoginProcessingFilter filter = new AjaxLoginProcessingFilter(FORM_BASED_LOGIN_ENTRY_POINT, successHandler, failureHandler, objectMapper); filter.setAuthenticationManager(this.authenticationManager); return filter; } - @Bean protected JwtTokenAuthenticationProcessingFilter buildJwtTokenAuthenticationProcessingFilter() throws Exception { List pathsToSkip = Arrays.asList(TOKEN_REFRESH_ENTRY_POINT, FORM_BASED_LOGIN_ENTRY_POINT); SkipPathRequestMatcher matcher = new SkipPathRequestMatcher(pathsToSkip, TOKEN_BASED_AUTH_ENTRY_POINT); @@ -76,15 +74,11 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter { return super.authenticationManagerBean(); } + @Override protected void configure(AuthenticationManagerBuilder auth) { auth.authenticationProvider(ajaxAuthenticationProvider); auth.authenticationProvider(jwtAuthenticationProvider); } - - @Bean - protected BCryptPasswordEncoder passwordEncoder() { - return new BCryptPasswordEncoder(); - } @Override protected void configure(HttpSecurity http) throws Exception {