diff --git a/build.gradle b/build.gradle index 881f51f..1904f2d 100644 --- a/build.gradle +++ b/build.gradle @@ -8,7 +8,7 @@ plugins { } group = 'com.flexcodelabs' -version = '0.0.39' +version = '0.0.40' description = 'Flextuma App' java { diff --git a/src/main/java/com/flexcodelabs/flextuma/core/config/PasswordEncoderConfig.java b/src/main/java/com/flexcodelabs/flextuma/core/config/PasswordEncoderConfig.java new file mode 100644 index 0000000..0009ff2 --- /dev/null +++ b/src/main/java/com/flexcodelabs/flextuma/core/config/PasswordEncoderConfig.java @@ -0,0 +1,15 @@ +package com.flexcodelabs.flextuma.core.config; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; +import org.springframework.security.crypto.password.PasswordEncoder; + +@Configuration +public class PasswordEncoderConfig { + + @Bean + public PasswordEncoder passwordEncoder() { + return new BCryptPasswordEncoder(); + } +} diff --git a/src/main/java/com/flexcodelabs/flextuma/core/security/SecurityConfig.java b/src/main/java/com/flexcodelabs/flextuma/core/security/SecurityConfig.java index c90d42b..6d966b4 100644 --- a/src/main/java/com/flexcodelabs/flextuma/core/security/SecurityConfig.java +++ b/src/main/java/com/flexcodelabs/flextuma/core/security/SecurityConfig.java @@ -7,8 +7,6 @@ import org.springframework.security.config.annotation.web.builders.HttpSecurity; import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; import org.springframework.security.config.http.SessionCreationPolicy; -import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; -import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.security.web.SecurityFilterChain; import org.springframework.security.web.util.matcher.RegexRequestMatcher; import org.springframework.session.data.redis.config.annotation.web.http.EnableRedisHttpSession; @@ -38,11 +36,6 @@ public SecurityConfig(CustomSecurityExceptionHandler securityExceptionHandler, this.authenticatedUserCaptureFilter = authenticatedUserCaptureFilter; } - @Bean - public PasswordEncoder passwordEncoder() { - return new BCryptPasswordEncoder(); - } - @Bean public CookieSerializer cookieSerializer() { DefaultCookieSerializer serializer = new DefaultCookieSerializer(); @@ -59,7 +52,7 @@ public SecurityFilterChain securityFilterChain(HttpSecurity http) { .authorizeHttpRequests(auth -> auth .requestMatchers("/api/login").permitAll() .requestMatchers("/api/register").permitAll() - .requestMatchers(org.springframework.http.HttpMethod.POST, "/api/webhooks/*").permitAll() + .requestMatchers(org.springframework.http.HttpMethod.POST, "/api/webhooks/*").permitAll() .requestMatchers("/").permitAll() .requestMatchers("/assets/**").permitAll() .requestMatchers(new RegexRequestMatcher("^/(?!api(?:/|$)).*", null)).permitAll() diff --git a/src/test/java/com/flexcodelabs/flextuma/core/security/SecurityConfigTest.java b/src/test/java/com/flexcodelabs/flextuma/core/security/SecurityConfigTest.java index 2d655fa..698bdac 100644 --- a/src/test/java/com/flexcodelabs/flextuma/core/security/SecurityConfigTest.java +++ b/src/test/java/com/flexcodelabs/flextuma/core/security/SecurityConfigTest.java @@ -17,6 +17,8 @@ import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.session.web.http.CookieSerializer; + +import com.flexcodelabs.flextuma.core.config.PasswordEncoderConfig; import org.springframework.session.web.http.DefaultCookieSerializer; import org.springframework.test.util.ReflectionTestUtils; @@ -31,7 +33,7 @@ class SecurityConfigTest { @Test void passwordEncoder_shouldReturnBCryptPasswordEncoder() { - PasswordEncoder encoder = securityConfig.passwordEncoder(); + PasswordEncoder encoder = new PasswordEncoderConfig().passwordEncoder(); assertNotNull(encoder); assertInstanceOf(BCryptPasswordEncoder.class, encoder); @@ -39,7 +41,7 @@ void passwordEncoder_shouldReturnBCryptPasswordEncoder() { @Test void passwordEncoder_shouldEncodePasswords() { - PasswordEncoder encoder = securityConfig.passwordEncoder(); + PasswordEncoder encoder = new PasswordEncoderConfig().passwordEncoder(); String rawPassword = "testPassword123"; String encoded = encoder.encode(rawPassword);