스프링 시큐리티 + Oauth2.0을 통해 소셜 로그인을 구현할수 있습니다.
➡ Oauth2.0 이란 ?
Flow 흐름
오늘 프로젝트 예시로는 네이버 소셜 로그인으로 예시를 들어 진행합니다.
(접근 토큰을 통해 해당 소셜 로그인의 사용정보를 조회합니다.)
'implementation 'org.springframework.boot:spring-boot-starter-oauth2-client''implementation 'org.springframework.boot:spring-boot-starter-security'
네이버를 통해 소셜로그인을 진행하기 때문에
1. 해당 URL에 접속하여 애플리케이션을 등록합니다.
Spring :구문에 들여쓰기하여security :구문으로 시작합니다.
- 네모친 부분은 해당 소셜 로그인의 공식문서에서 설정 URL를 찾아서 작성해야 합니다.
provider: 서비스 제공자에 대한 정보를 기재registration: 서비스 제공자를 사용하기 위한 정보를 기재
( 클라이언트 식별 )
➡ client - id, client - secret 은 로컬에 해당하는 값을 적어줘야 합니다.
oAuth2.0 에서 제공되는 구현체 중 DefaultOAuth2UserService 를 상속받아 메소드를 재 정의 해줍니다.➡ DefaultOAuth2UserService 란?
OAuth 2.0 프로토콜을 사용하여 사용자 인증 및 권한 부여를 처리를 해줍니다.
( access 토큰을 통해 사용자 정보를 가져오게 됩니다.)