Simplify security config and permit auth endpoints
All checks were successful
build-and-deploy / build-deploy (push) Successful in 27s

This commit is contained in:
androidlover5842
2026-01-26 21:20:20 +05:30
parent 6f961cb599
commit 05b8fd409c

View File

@@ -2,11 +2,9 @@ package com.android.trisolarisserver.security
import org.springframework.context.annotation.Bean import org.springframework.context.annotation.Bean
import org.springframework.context.annotation.Configuration import org.springframework.context.annotation.Configuration
import org.springframework.core.annotation.Order
import org.springframework.security.config.annotation.method.configuration.EnableMethodSecurity import org.springframework.security.config.annotation.method.configuration.EnableMethodSecurity
import org.springframework.security.config.annotation.web.builders.HttpSecurity import org.springframework.security.config.annotation.web.builders.HttpSecurity
import org.springframework.security.config.http.SessionCreationPolicy import org.springframework.security.config.http.SessionCreationPolicy
import org.springframework.security.config.annotation.web.configuration.WebSecurityCustomizer
import org.springframework.security.web.SecurityFilterChain import org.springframework.security.web.SecurityFilterChain
import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter
@@ -16,31 +14,12 @@ class SecurityConfig(
private val firebaseAuthFilter: FirebaseAuthFilter private val firebaseAuthFilter: FirebaseAuthFilter
) { ) {
@Bean @Bean
fun webSecurityCustomizer(): WebSecurityCustomizer { fun filterChain(http: HttpSecurity): SecurityFilterChain {
return WebSecurityCustomizer {
it.ignoring().requestMatchers("/", "/health", "/auth/**")
}
}
@Bean
@Order(1)
fun publicChain(http: HttpSecurity): SecurityFilterChain {
http
.securityMatcher("/", "/health", "/auth/**")
.csrf { it.disable() }
.authorizeHttpRequests { it.anyRequest().permitAll() }
.httpBasic { it.disable() }
.formLogin { it.disable() }
return http.build()
}
@Bean
@Order(2)
fun apiChain(http: HttpSecurity): SecurityFilterChain {
http http
.csrf { it.disable() } .csrf { it.disable() }
.sessionManagement { it.sessionCreationPolicy(SessionCreationPolicy.STATELESS) } .sessionManagement { it.sessionCreationPolicy(SessionCreationPolicy.STATELESS) }
.authorizeHttpRequests { .authorizeHttpRequests {
it.requestMatchers("/", "/health", "/auth/**").permitAll()
it.anyRequest().authenticated() it.anyRequest().authenticated()
} }
.httpBasic { it.disable() } .httpBasic { it.disable() }