본문으로 건너뛰기

ADR-001: 소셜 로그인

상황 (Context)

사주 기반 소개팅 서비스에서 사용자 인증이 필수적이다. 카카오톡이 국내 20-35세 타겟층에서 높은 보유율을 가지고 있으며, OAuth2를 통한 소셜 로그인이 온보딩 마찰을 줄이는 효과적인 방법이다.

의사결정 (Decision)

카카오 OAuth2 기반 소셜 로그인 구현

  • 카카오 Developers API (REST API) 사용
  • BFF(/api/auth/kakao/callback)에서 토큰 교환
  • HttpOnly Cookie + Secure + SameSite 속성으로 토큰 저장
  • Refresh Token Rotation 구현

근거 (Rationale)

  1. 높은 국내 보유율: 국내 20-35세 약 90% 이상이 카카오 계정 보유
  2. 낮은 구현 비용: 기존 REST API 문서가 충실하고 SDK 지원
  3. 보안: OAuth2 표준을 따르며 사용자 비밀번호 노출 없음
  4. 확장성: 향후 네이버, 구글 추가 시 스키마 변경 최소화 가능

결과 (Consequences)

✅ 긍정

  • 사용자 온보딩 마찰 최소화
  • 서드파티 인증으로 보안 책임 분산
  • 카카오 프로필 정보 수집 가능 (프로필 이미지 등)

⚠️ 위험

  • 카카오 OAuth 정책 변경에 의존
  • Kakao API 장애 시 서비스 로그인 불가
  • 제3자 데이터 처리에 대한 법적 책임

출시 전 확인사항

  • 카카오 앱 등록 및 개발 권한 확인 (W1)
  • HttpOnly Cookie 보안 설정 검증
  • 개인정보 처리방침 업데이트
  • 로그아웃 시 카카오 토큰 revoke 처리

상태: ✅ 승인됨 | 최종 수정: 2026-06-25