인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

조우현님의 프로필 이미지
조우현

작성한 질문수

스프링 시큐리티 OAuth2

DefaultOAuth2AuthorizedClientManager -필터 기반으로 구현하기

OAuth2Login()과 OAuth2Client()

작성

·

1.2K

1

OAuth2Login()으로 로그인을 구현하는 것과 OAuth2Client()로 로그인을 구현하는 것은 정확히 어떤 차이가 있어서 이렇게 구분되어 있는건가요.?

답변 2

1

정수원님의 프로필 이미지
정수원
지식공유자

여러가지로 생각해 볼 수 있습니다

사용자의 로그인처리까지 필요없는 경우는 oauth2Client 를 사용하면 되겠죠

oauth2Login 은 사용자의 로그인처리가 무조건 되기 때문에 선택사항이 아닙니다

그래서 Login 기능이 필요할 경우는 oauth2Login 를 사용하고 클라이언트의 권한부여가 중심이 되어야 한다면 oauth2Client 를 사용하면 될 것 같습니다

그 외에도 상황에 맞게 선택할 수 있도록 두가지 모드로 제공하고 있다고 보시면 될 것 같습니다

조우현님의 프로필 이미지
조우현
질문자

감사합니다!

0

정수원님의 프로필 이미지
정수원
지식공유자

섹션 8. OAuth 2.0 Client - oauth2Client()

  • OAuth2ClientConfigurer 초기화 이해

 

에 보시면 질문에 대한 답변을 아실 수 있습니다

간단히 요약하면

oauth2Login() 은 클라이언트의 권한부여를 승인하고 나서 최종사용자의 인증처리까지 즉 로그인 프로세스까지 이어지는 개념이라면 oauth2Client() 는 클라이언트의 권한부여승인까지 처리하고 최종사용자의 인증처리는 하지 않는다 보시면 됩니다

그리고 권한부여 방식을 처리하는 필터도 다릅니다

강의를 참고해 주시기 바랍니다

조우현님의 프로필 이미지
조우현
질문자

앗 거기까진 인지하였습니다! 제가 질문을 너무 대충했네요..

제가 궁금한건 oauth2Client()는 최종 사용자 인증처리 로직을 개발자가 OAuth2AuthorizedClientManager를 이용하여 직접 만들어야 하는데 이는 oauth2Login()으로 로그인 기능을 만드는 것에 비해 번거롭게 느껴져서 질문하게 되었습니다.

그렇다면 oauth2Client()는 개발자가 직접 사용자 인증 과정을 커스텀하게 만들 수 있다는 장점때문에 사용한다고 생각해도 될까요?

 

 

조우현님의 프로필 이미지
조우현

작성한 질문수

질문하기