콘텐츠로 건너뛰기

Supabase Apple 로그인 - 일반 설정

이 가이드는 Supabase Authentication과 Apple Sign-In을 통합하는 데 도움이 됩니다. Apple Sign-In은 iOS, Android 및 Web 플랫폼에서 작동하는 안전하고 개인 정보 중심의 인증 방법을 제공합니다.

시작하기 전에 다음이 있는지 확인하세요:

  1. Supabase 프로젝트 생성

  2. Apple 로그인 일반 설정 가이드를 읽어 Apple OAuth 자격증명 설정

  3. 대상 플랫폼에 따라 플랫폼별 가이드를 따릅니다:

Supabase에서 Apple OAuth 제공자 활성화

Section titled “Supabase에서 Apple OAuth 제공자 활성화”
  1. Supabase 대시보드로 이동하세요

  2. 프로젝트를 클릭합니다

    Supabase 프로젝트 선택기
  3. Authentication 메뉴로 이동합니다

    Supabase 인증 메뉴
  4. Providers 탭을 클릭합니다

    Supabase 제공자 탭
  5. Apple 제공자를 찾습니다

    Supabase Apple 제공자
  6. Apple 제공자를 활성화합니다

    Supabase Apple 제공자 활성화
  7. 클라이언트 ID 구성을 작성합니다:

    Supabase Apple 제공자 클라이언트 ID
  8. Save 버튼을 클릭합니다

    Supabase Apple 제공자 저장

완료되었습니다. Supabase Authentication으로 Apple Sign-In을 활성화했습니다! 🎉

완전한 구현에는 전체 Apple Sign-In 흐름을 Supabase와 처리하는 authenticateWithAppleSupabase() 도우미 함수가 포함됩니다. 이 함수는:

  • 플랫폼별 구성으로 Apple Sign-In을 초기화합니다
  • 인증 흐름을 처리합니다(iOS에서는 기본, Android/Web에서는 OAuth 리다이렉트)
  • Apple에서 신원 토큰을 추출합니다
  • 신원 토큰으로 Supabase에 로그인합니다
import { authenticateWithAppleSupabase } from './supabaseAuthUtils';
const result = await authenticateWithAppleSupabase();
if (result.success) {
console.log('Signed in:', result.user);
// 인증된 영역으로 이동합니다
} else {
console.error('Error:', result.error);
}

도우미 함수는 플랫폼별 차이를 자동으로 처리합니다:

  • iOS: 기본 Apple Sign-In 사용(리다이렉트 URL 필요 없음, 번들 ID 자동 사용)
  • Android: 백엔드 에지 함수와의 OAuth 리다이렉트 흐름 사용(서비스 ID 필요)
  • Web: OAuth 팝업 흐름 사용(서비스 ID 및 현재 페이지 URL 리다이렉트 필요)

이 함수는 Apple에서 신원 토큰을 반환하며, 이를 통해 supabase.auth.signInWithIdToken()을 사용하여 Supabase로 인증됩니다.