feat(auth): Native SDK 소셜 로그인 서비스 구현#101
Merged
Conversation
application-*.yml에 android-client-id 설정 추가, GitHub Actions 스크립트에 GOOGLE_ANDROID_CLIENT_ID 환경변수 주입, GoogleProperties에 androidClientId 필드 추가
GoogleOAuth2Client에 ID Token 검증 메서드 구현, tokeninfo API 응답 DTO로 GoogleIdTokenInfoResponse 추가
사용자 조회/생성/복구, 신규 사용자 생성, 탈퇴 계정 자동 복구와 관련된 공통 로직을 SocialAccountService로 모두 분리, 기존 웹 소셜 로그인 서비스 클래스인 SocialAuthService도 이제 SocialAccountService 사용하도록 리팩토링
NativeAuthService로 구글은 Google ID Token 검증 후 로그인/회원가입하고, 네이버는 Naver Access Token으로 사용자 조회 후 로그인/회원가입하도록 구현, POST /api/v1/auth/google/native-login, POST /api/v1/auth/naver/native-login 엔드포인트 구현
Docker 29.x 호환성 문제 해결을 위해 testcontainers-bom 2.0.3 적용
1Seob
pushed a commit
that referenced
this pull request
Feb 14, 2026
* ci(global): Google Android Client ID 설정 추가 application-*.yml에 android-client-id 설정 추가, GitHub Actions 스크립트에 GOOGLE_ANDROID_CLIENT_ID 환경변수 주입, GoogleProperties에 androidClientId 필드 추가 * feat(auth): Google ID Token 검증 기능 추가 GoogleOAuth2Client에 ID Token 검증 메서드 구현, tokeninfo API 응답 DTO로 GoogleIdTokenInfoResponse 추가 * refactor(auth): 소셜 계정 공통 로직 분리 사용자 조회/생성/복구, 신규 사용자 생성, 탈퇴 계정 자동 복구와 관련된 공통 로직을 SocialAccountService로 모두 분리, 기존 웹 소셜 로그인 서비스 클래스인 SocialAuthService도 이제 SocialAccountService 사용하도록 리팩토링 * feat(auth): Native SDK 소셜 로그인 서비스 구현 NativeAuthService로 구글은 Google ID Token 검증 후 로그인/회원가입하고, 네이버는 Naver Access Token으로 사용자 조회 후 로그인/회원가입하도록 구현, POST /api/v1/auth/google/native-login, POST /api/v1/auth/naver/native-login 엔드포인트 구현 * fix(infra): Testcontainers 2.0.3으로 업그레이드 Docker 29.x 호환성 문제 해결을 위해 testcontainers-bom 2.0.3 적용 # Conflicts: # build.gradle
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
📝 요약(Summary)
Android/iOS Capacitor 기반 하이브리드 앱을 위한 Native SDK 소셜 로그인 기능을 구현했습니다.
하는 김에 소셜 로그인 관련 로직 중에 사용자 조회/생성, 탈퇴 계정 자동 복구 관련 코드가 중복되어서 리팩토링도 진행하였습니다.
두가지 엔드포인트 추가했습니다.
🔗 Related Issue
💬 공유사항
GitHub Actions에 환경변수 주입 완료했습니다.
추후 애플 로그인 역시 비슷한 방식으로 구현하면 될 것 같습니다.
Docker 29.x 호환성 문제 해결을 위해 Testcontainers 2.0.3으로 업그레이드하였습니다. 1.21.3 버전은 무조건 API 1.32 사용하는데 Docker 29.x는 최소 1.44 요구하여 문제가 발생하였고 Testcontainers 2.0.3 버전은 이를 방지하기 위해 먼저 1.44 시도하고 실패하면 1.32로 자동 fallback하도록 개선하였기 때문에 버전업을 하였습니다.
참고 링크
✅ PR Checklist
PR이 다음 요구 사항을 충족하는지 확인하세요.