java_spring (2024.05 ~ 2024.10)
spring security 코드 작성
qordpsem
2024. 9. 29. 21:38
#security debug 활성화해서 콘솔에서 Filter 확인 시도
1. 먼저 yml 파일에 security: debug 를 넣어봄
logging:
level:
org:
hibernate: debug
security: debug
코드 추가했으니 안됨
2. security > SecurityConfig 만들어서 그 안에 EnableWebSecurity 어노테이션 옆에 (debug=true) 라고 써봄
다른 블로그들과 같이 민감한 정보가 있으니 실제 develop 시스템에서 사용하지 말라는 문구는 뜨는데 Filter 목록은 여전히 안뜸
3. 스프링부트 버전을 3.3.x 에서 3.1.x 로 바꿔봄
여전히 안됨
4. yml 파일 잘못 적은것 같아서 수정
logging:
level:
org:
hibernate: debug
springframework:
security: debug
여전히 안됨,,,
일단 프로젝트 실행 시 spring security 적용되면 뜨는 로그인 창은 잘 뜨기때문에... debug 못해도 15개가량의 Filter 가 잘 되어있다고... 추정하고... 더이상 시간을 지체할 수 없어서 SecurityConfig 에 코드 추가해줌
#SecurityConfig
@Configuration
@EnableWebSecurity
public class SecurityConfig {
@Bean
public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
return http
.httpBasic(httpSecurity -> httpSecurity.disable())
.formLogin(formLogin -> formLogin.disable())
.csrf(csrf -> csrf.disable())
.build();
}
}
spring security 로그인 페이지 꺼줌
그 후 간단하게 회원가입 코드 작성
#패스워드 암호화
지난 2차 프로젝트때는 Argon을 썼는데 이번에는 더 흔히 쓰이는 bcrypt를 쓰려고 한다
보안성 측면에서는 Argon 보다 낮을 수 있지만 실행속도가 빠르고 구현이 단순하다고 하여 빠르게 프로젝트를 진행해야하는 지금과 더 잘 맞을 것 같다
@Bean
public PasswordEncoder passwordEncoder(){
return new BCryptPasswordEncoder();
}
관련 코드 추가해줌