Supabase Apple Login - 一般設定
このガイドでは、Supabase認証にAppleサインインを統合する方法を説明します。Appleサインインは、iOS、Android、Webプラットフォーム全体で機能する、安全でプライバシー重視の認証方法を提供します。
開始する前に、以下を確認してください:
-
Apple Login一般設定ガイドを読み、Apple OAuth認証情報を設定済み
-
ターゲットプラットフォーム向けのApple OAuth認証情報を設定するため、それぞれのプラットフォーム固有のガイドに従った:
SupabaseでApple OAuthプロバイダーを有効化
Section titled “SupabaseでApple OAuthプロバイダーを有効化”-
プロジェクトをクリック

-
Authenticationメニューに移動
-
Providersタブをクリック
-
Appleプロバイダーを見つける
-
Appleプロバイダーを有効化
-
クライアントID設定を入力:

-
Saveボタンをクリック
これで、Supabase認証でAppleサインインが有効になりました 🎉
認証ヘルパーの使用
Section titled “認証ヘルパーの使用”完全な実装には、Supabaseを使用したAppleサインインフロー全体を処理するヘルパー関数authenticateWithAppleSupabase()が含まれています。この関数は以下を行います:
- プラットフォーム固有の設定でAppleサインインを初期化
- 認証フローを処理(iOSではネイティブ、Android/WebではOAuthリダイレクト)
- AppleからIDトークンを抽出
- IDトークンでSupabaseにサインイン
基本的な使用方法
Section titled “基本的な使用方法”import { authenticateWithAppleSupabase } from './supabaseAuthUtils';
const result = await authenticateWithAppleSupabase();if (result.success) { console.log('サインイン:', result.user); // 認証されたエリアに移動} else { console.error('エラー:', result.error);}ヘルパー関数は、プラットフォーム固有の違いを自動的に処理します:
- iOS: ネイティブなAppleサインインを使用(リダイレクトURL不要、自動的にバンドルIDを使用)
- Android: バックエンドEdge Functionを使用したOAuthリダイレクトフロー(Service IDが必要)
- Web: OAuthポップアップフロー(Service IDと現在のページURLをリダイレクトとして必要)
この関数はAppleからIDトークンを返し、それを使用してsupabase.auth.signInWithIdToken()でSupabaseに認証します。