feat: 구글 로그인/가입 — ID 토큰 검증 후 세션 발급

- AuthService.googleLogin: 구글 tokeninfo 로 ID 토큰 검증(aud==클라이언트 ID)
  후 provider=GOOGLE 회원 조회/자동가입 → 세션 발급(login 과 동일 경로)
- GoogleLoginRequest DTO, /api/auth/google·/google-client-id 엔드포인트
- application.yml: app.google-client-id=${GOOGLE_CLIENT_ID:}

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
ByungCheol
2026-06-27 18:02:19 +09:00
co-authored by Claude Opus 4.8
parent a1697a7a22
commit 09efd65fa9
4 changed files with 99 additions and 4 deletions
@@ -0,0 +1,16 @@
package com.sb.web.auth.dto;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;
/**
* 구글 로그인 요청 — 프론트(Google Identity Services)에서 받은 ID 토큰.
*/
@Data
public class GoogleLoginRequest {
@NotBlank(message = "토큰이 없습니다.")
private String idToken;
private boolean rememberMe;
}