Zum Inhalt springen

Konfiguration von Supabase Apple Login auf iOS

GitHub

Diese Anleitung hilft Ihnen, Apple Sign-In mit Supabase Authentication auf iOS zu integrieren. Es wird davon ausgegangen, dass Sie bereits die folgenden Schritte abgeschlossen haben:

Die vollständige Implementierung ist im Beispiel-App’s supabaseAuthUtils.ts Datei verfügbar. Diese Anleitung erklärt die wichtigsten Konzepte und wie man es verwendet.

Die authenticateWithAppleSupabase Funktion handhabt den gesamten Authentifizierungsfluss:

import { authenticateWithAppleSupabase } from './supabaseAuthUtils';
const result = await authenticateWithAppleSupabase();
if (result.success) {
console.log('Signed in:', result.user);
// Navigate to your authenticated area
} else {
console.error('Error:', result.error);
}

Bei iOS verwendet Apple Sign-In die native Implementierung:

  1. Initialisierung: Die Erweiterung verwendet automatisch die Bundle-ID Ihres Apps (keine clientId benötigt)
  2. Native Anmeldung: Verwendet Apples native Sign in with Apple-Button und Authentifizierungsfluss
  3. Identitäts-Token: Apple gibt ein Identitäts-Token (JWT) mit Benutzerinformationen zurück
  4. Supabase-Anmeldung: Das Identitäts-Token wird an Supabase gesendet signInWithIdToken()

Die Hilfsfunktion erkennt das iOS-Plattform automatisch und konfiguriert alles entsprechend.

  • iOS verwendet Ihre App-Bundle-ID automatisch für Apple Sign-In
  • Stellen Sie sicher, dass Ihre Bundle-ID mit der im Apple Developer Portal konfigurierten übereinstimmt
  • Die Bundle-ID sollte die Funktion „Sign in with Apple“ aktiviert haben

In Supabase konfigurieren Sie Ihren Apple-Anbieter wie folgt:

  • Kunden-ID: Ihre iOS App-ID (Bundle-ID) - z.B. app.capgo.plugin.SocialLogin

Wenn Sie auch Android/Web verwenden, müssen Sie sowohl die App-ID als auch die Service-ID in der Client-ID-Eingabe von Supabase (getrennt durch Kommas) bereitstellen.

Wenn die Authentifizierung fehlschlägt:

  • Bundle-ID-Ungleichheit: Überprüfen Sie, ob Ihre Bundle-ID in Xcode und im Apple Developer Portal übereinstimmt
  • Kapazität nicht aktiviert: Stellen Sie sicher, dass die Funktion „Mit Apple anmelden“ in Xcode aktiviert ist
  • Supabase-Konfiguration: Überprüfen Sie, ob Ihre App-ID in den Apple-Einstellungen von Supabase korrekt konfiguriert ist
  • Token-Validierung fehlschlägt: Überprüfen Sie, ob der Identitäts-Token von Apple empfangen wird.
  • Review the Beispiel-App code zur Referenz

Wenn Sie Supabase Apple Login auf iOS Setup zur Planung der Authentifizierung und der Kontoflows verwenden, verbinden Sie es mit Mit @capgo/capacitor-social-login für die native Fähigkeit in Mit @capgo/capacitor-social-login, @capgo/capacitor-social-login für die Implementierungsdetails in @capgo/capacitor-social-login, @capgo/capacitor-passkey für die Implementierungsdetails in @capgo/capacitor-passkey, @capgo/capacitor-native-biometric für die Implementierungsdetails in @capgo/capacitor-native-biometric und Zwei-Faktor-Authentifizierung für die Implementierungsdetails in Zwei-Faktor-Authentifizierung.