• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    해결됨

CustomAuthenticationProvider관련해서 질문드립니다.

21.11.03 21:17 작성 조회수 137

0

안녕하세요 강사님. 강의 잘 듣고있습니다.

 

CustomAuthenticationProvider 클래스에서 

이렇게 하셨는데

이렇게 하지 않은 이유는

인증객체가 User보다 Account객체가 더 의미 있어서 그런가요?

그리고 Account객체의  변수가 username, password 뿐만아니라 email, phonNumber등 다양할 때 ContextHolder에서 나중에 꺼내올때 사용하기 편하기 위해서 그런건가요?

 

답변 1

답변을 작성해보세요.

2

User 는 스프링 시큐리티에서 UserDetails 타입을 구현한 기본 구현체로서 제공하는 것입니다.

즉 우리가 UserDetails 타입으로 구현하지 않고 사용할 수 있도록 제공하는 클래스입니다.

그래서 User 를 사용하셔도 무방합니다.

다만 위에서 언급하신 것처럼 User 클래스에 없는 필드들을 추가해서 사용해야 할 경우  Account 와 같은 별도의 클래스를 만들어서 사용하는 경우가 일반적입니다.

잘 이해하고 계신 것 같습니다.