개발/spring-security
UsernamePasswordAuthenticationFilter 에 대한 간단한 관찰
나태쿤
2024. 5. 3. 23:03
728x90
필터에 대해서 완전히 깊게 아는것 보단 숲을 먼저 보자
http 요청에 대하여 아이디 / 패스워드 인증이 필요하다면 (세션기반이면 더 좋고)
UsernamePasswordAuthenticationFilter 필터가 적임자 이다
생김새 부터 보자
실제 소스를 보면 몇줄 없다
그 이유는 이 필터는 AbstractAuthenticationProcessingFilter 를 상속하는데
여기에 로직이 많다
해당 메서드만 다시 캡처 했다.
그리고 "인증시도" 부분의 메서드가 Override 인데
재정의 한 코드를 보면 HttpServletRequest을 이용해서 아이디, 패스워드 추출...
UsernamePasswordAuthenticationToken (토큰) 을 생성
인증관리자가 토큰을 가지고 인증 수행 이정도 된다.
이를 사용하는 메서드는 AbstractAuthenticationProcessingFilter 의 doFilter 인것을 알 수 있다
설명 보단 코드를 보는게 더 낫다
728x90