호비시의 끄적끄적

Spring Security 본문

Back/Spring

Spring Security

호비시 2022. 7. 10. 22:29

Spring Security 인증과 인가

인증 : 사용자가 본인이 맞는지 확인하는 절차
인가 : 인증된 사용자가 요청한 자원에 접근권한 여부를 판단하는 절차

Security 인증 방식

  • credential : 아이디 + 비밀번호를 이용
  • principal : 아이디

Security 의 주요 모듈

출처 : https://pulpul8282.tistory.com/167

  • SecurityContext : Authentication를 가지고 있고 SecurityContextHolder에 담아 보관한다.

Security 인증 과정

  1. 클라이언트가 아이디 비밀번호로 로그인 요청
  2. AuthenticationFilter에서 UsernamePasswordAuthenticationToken을 생성하여 AuthenticationManager에 전달
  3. AuthenticationManager는 AuthenticationProvider을 조회하여 인증 요구
  4. AuthenticationProvider는 UserDetailsService를 통해 사용자 정보를 db에서 조회
  5. 입력받은 비밀번호를 암호화하여 DB의 비밀번호와 매칭되는 경우 인증이 성공된 UsernameAuthenticationToken을 생성하여, AuthenticaionManager로 반환
  6. AuthenticaionManager 는 UsernameAuthenticaionToken 을 AuthenticaionFilter로 전달
  7. AuthenticationFilter 는 전달받은 UsernameAuthenticationToken 을 LoginSuccessHandler로 전송
  8. Token 을 response 헤더에 추가하여 반환

'Back > Spring' 카테고리의 다른 글

Singleton Pattern  (0) 2022.07.17
Java Static, Final  (0) 2022.07.14
Stream  (0) 2022.07.03
Lombok ?  (0) 2022.06.28
POJO 란?  (0) 2022.06.23
Comments