Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ plugins {
}

group = 'com.flexcodelabs'
version = '0.0.39'
version = '0.0.40'
description = 'Flextuma App'

java {
Expand Down
Original file line number Diff line number Diff line change
@@ -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();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand Down Expand Up @@ -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();
Expand All @@ -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()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -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;

Expand All @@ -31,15 +33,15 @@ class SecurityConfigTest {

@Test
void passwordEncoder_shouldReturnBCryptPasswordEncoder() {
PasswordEncoder encoder = securityConfig.passwordEncoder();
PasswordEncoder encoder = new PasswordEncoderConfig().passwordEncoder();

assertNotNull(encoder);
assertInstanceOf(BCryptPasswordEncoder.class, encoder);
}

@Test
void passwordEncoder_shouldEncodePasswords() {
PasswordEncoder encoder = securityConfig.passwordEncoder();
PasswordEncoder encoder = new PasswordEncoderConfig().passwordEncoder();
String rawPassword = "testPassword123";

String encoded = encoder.encode(rawPassword);
Expand Down