소셜 로그인- 1일회용 CSRF state 생성과 DB·HttpOnly 쿠키 결속
- 2인가 코드를 서버에서 access token으로 교환
- 3공급자 사용자 정보 조회
- 4SocialProfile 공통 계약으로 정규화
필수 환경변수를 설정하면 실제 authorization-code 흐름을 테스트할 수 있습니다.
Normalized output
공통 SocialProfile
{
provider: "GOOGLE",
id: string,
email: string | null,
name: string | null,
picture: string | null,
emailVerified: boolean
}