Spring

Spring ) Spring Security 구현 순서

Albosa2lol 2023. 7. 19. 22:36

0. security 추가

1. Config > WebSecurityConfig 생성, 설정

  • 우리가 직접 Filter를 구현해서 URL 요청에 따른 인가를 설정한다면 코드가 매우 복잡해지고 유지보수 비용이 많이 들 수 있습니다.
  • Spring Security를 사용하면 이러한 인가 처리가 굉장히 편해집니다.

2. UserDetailsServiceImpl 구현

3. UserDetails 구현

  • UserDetailsService와 UserDetails를 직접 구현해서 사용하게 되면 Security의 default 로그인 기능을 사용하지 않겠다는 설정이 되어 Security의 password를 더 이상 제공하지 않는 것을 확인할 수 있습니다.
  • POST "/api/user/login" 을 로그인 인증 URL로 설정했기 때문에 이제 해당 요청이 들어오면 우리가 직접 구현한 UserDetailsService를 통해 인증 확인 작업이 이뤄지고 인증 객체에 직접 구현한 UserDetails가 담기게 됩니다.

--- 여기서 부터 JWT 로그인 구현 ---

4. Security Filter 순서 확인하기 (다른 필터 추가 할 시 참조해야 하는 부분)

5. JwtAuthenticationFilter 구현 : 로그인 진행 및 JWT 생성         -> 프로젝트 시 구현 X, API 로 로그인 진행했기 때문

6. JwtAuthorizationFilter 구현 : API에 전달되는 JWT 유효성 검증 및 인가처리 , JwtUtil 구현

7. WebSecurityConfig 에 필터 등록하기