
UsernamePasswordAuthenticationFilter와 같은 필터는 HTTP 요청에서 username과 password를 추출해 Authentication 타입 객체를 준비한다.POST 방식으로 넘어 왔는지, username과 password가 null인지 등등을 체크한다.SecurityContextHolder 가 관리하는 스레드 로컬 SecurityContext 에 저장된다.✅
UsernamePasswordAuthenticationFilter필터는 기본적으로/loginURL에 응답한다.

AuthenticationManager는 요청 받은 사용자의 세부 정보를 유효성 검사하기 위해서 요청을 Authentication provider들에게 위임한다.
CRUD를 메서드를 갖고 있는 인터페이스UserDetailsManager를 상속받아서 사용한다.UserDetails 객체를 받는다.
UserDetails 객체를 반환한다.DAO(Data Access Object) 객체로서의 역할을 한다.loadUserByUsername()PasswordEncoder가 처리한다.
UserDetailsService와 UserDetailsManager 인터페이스에서 사용되는 객체
[Spring Security] UserDetailsService와 UserDetails 및 Authentication의 차이점
Spring Security 전체 흐름 살펴보기
[Spring Security] 스프링 시큐리티란?