Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

소셜 로그아웃 로직 추가 및 기존 OAuthWebClientService 계층화 #238

Merged

Conversation

kmw2378
Copy link
Contributor

@kmw2378 kmw2378 commented May 26, 2024

#️⃣연관된 이슈

close #236

📝작업 내용

기존 로그아웃 시 서버에서 발급한 토큰만 만료가되고 소셜 토큰은 만료되지 않아 악용될 가능성이 있다고 판단했습니다. 따라서, 사용자가 로그아웃 시 소셜 토큰도 만료하는 로직을 추가하였습니다.

이 API는 사용자가 로그아웃을 요청할 때 기존 로그아웃 API(api/v1/oauth/logout)와 함께 호출됩니다. 사용자 로그아웃 과정은 아래와 같습니다.

  1. 소셜 토큰 만료
  2. 서버 토큰 만료
  • OAuthWebClientService 계층화
    • OAuthWebClientService를 인터페이스로 수정
    • KakaoOAuthService 구현체 추가
  • OAuthWebClientService.expireToken() 메서드 추가
  • KakaoOAuthRequestProvider 클래스 추가
    • 로그아웃 시 필요한 요청값을 만드는 클래스
  • application-dev.yml 에 카카오 토큰 만료 URL 속성 추가
  • OAuthService, OAuthControllersocialLogout() 메서드 추가

✅테스트 결과

Controller

포스트맨 참고

Service

image

@kmw2378 kmw2378 added 🖤back 백엔드 업무입니다. refactor 코드가 내부적으로 작동하는 방식을 변경하되, 변경 전과 동일하게 작동합니다. feat 새 기능을 구현합니다. test 테스트 코드만 변경됩니다. labels May 26, 2024
@kmw2378 kmw2378 requested review from YeaChan05 and hwan2-99 May 26, 2024 13:52
@kmw2378 kmw2378 self-assigned this May 26, 2024
@kmw2378 kmw2378 enabled auto-merge May 29, 2024 14:04
@kmw2378 kmw2378 merged commit 2261167 into KakaoFunding:develop May 29, 2024
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🖤back 백엔드 업무입니다. feat 새 기능을 구현합니다. refactor 코드가 내부적으로 작동하는 방식을 변경하되, 변경 전과 동일하게 작동합니다. test 테스트 코드만 변경됩니다.
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

3 participants