스프링 시큐리티 절차

김지윤·2023년 3월 14일
0

Spring

목록 보기
10/10

인증 절차

  1. User가 로그인을 통해 인증을 요청한다.

  2. 시큐리티 필터가 중간에 인터셉트하여 유효성 검사를 한다.

필터 종류
BasicAuthenticationFilter : HTTP 기본 인증
DigestAuthenticationFilter : HTTP Digest 인증
UserPasswordAuthenticationFilter : 로그인 폼으로 요청
X509AuthenticationFilter : x509 인증 요청

유효성 검사란?
입력된 데이터가 올바른 형식인지 검사하는 과정
클라이언트와 서버 두 군데서 모두 이루어진다.

  1. 마찬가지로 필터 과정에 인증 객체 (AuthenticationToken)을 생성한다.

  2. 토큰은 AuthenticationManager에게 위임된다.
    (AuthenticationManager는 인터페이스이고, 구현은 ProviderManager에서 한다.)

  3. ProviderManager는 AuthenticationProvider에게 인증 목록을 제공하고, 이 AuthenticationProvider에서 실제 인증 과정이 이루어지게 된다.

  4. 인증할 객체는 UserDetailsService에 담기고, DB에 있는 정보는 UserDetails에 담긴다.

  5. 두 객체를 비교한다.

  6. 인증을 성공하면 객체를 반환하고, 실패하면 AuthenticationException이 생긴다.

profile
꾸준하게 공부하고 기록하는 개발자

0개의 댓글