Team-HST / triptale

여행 관리 웹 서비스
https://triptale.netlify.app
0 stars 0 forks source link

[공통] 카카오 로그인 연동 #3

Closed HyunGyu-Lee closed 3 years ago

HyunGyu-Lee commented 4 years ago

인증 플로우

  1. 로그인 페이지에서 카카오 로그인 버튼 클릭
  2. 백엔드의 OAuth2 Start Endpoint 을 호출
  3. Spring Security OAuth2 Client 프레임워크 통해 OAuth2 인증 흐름 진행됨 3-1. OAuth2 Start Endpoint 진입 시 카카오 로그인 페이지로 redirect 3-2. 사용자가 카카오 계정 인증 진행 3-3. 인증 코드 발급 ~ 액세스 토큰 교환 3-4. 인증 완료 후 백엔드 인증 결과 콜백으로 redirect
  4. 인증 결과에 따라 이후 단계 진행 혹은 FailureHandler 실행 4-1. 3단계 진행 중 실패한 경우 FailureHandler 실행되고 실패 원인을 담아 OAuth2 Callback Endpoint 로 redirect
  5. 백엔드에서 이메일로 사용자 조회해 saveOrUpdate 처리 진행 (이름, 프로필 사진)
  6. SuccessHandler 실행 6-1. 백엔드 요청 시 사용할 JWT 토큰 발급 6-2. 토큰을 담아 OAuth2 Callback Endpoint 로 redirect

작업사항

HyunGyu-Lee commented 4 years ago

@dudgns0612 요청 / 콜백 endpoint 정보 공유 (local 기준)

OAuth2 Start Endpoint : http://localhost:8000/api/oauth2/authorize/kakao

OAuth2 Callback Endpoint : http://localhost:3000/login-callback