AuthenticationManager가 적절한 AuthenticationProvider를 선택.
AuthenticationProvider는 다양한 전략으로 구현되어 있음
그중에 쓰게 되는 것은 역시 데이터베이스 기반의 DaoAuthenticationProvider 이다.
UserDetailsService는 AuthenticationProvider가 내부적으로 이용하는 객체이다.(has-a관계)
해당 서비스를 바로 @Service어노테이션만 붙여서 빈 등록 가능.
결론적으로 - 해당 UserDetailsService를 구현하는 것으로 - DB인증이 가능해지게 된다!!
아니면 - SecurityConfig클래스에서 configure 메소드의 AuthenticaitonManagerBuilder에게 던져줘도 된다. 굳이 안써도 @Service어노테이션으로 간편하게 등록하자~~!!
댓글 없음:
댓글 쓰기