Supabase Apple Connexion lors de la configuration de iOS
Prérequis
Section titled “Prérequis”Ce guide vous aidera à intégrer la connexion Apple avec l’authentification Supabase sur iOS. On suppose que vous avez déjà complété :
Implémentation
Section titled “Implémentation”L’implémentation complète est disponible dans le fichier supabaseAuthUtils.ts de l’application exemple. Ce guide explique les concepts clés et comment l’utiliser.
Utilisation de l’assistant d’authentification
Section titled “Utilisation de l’assistant d’authentification”La fonction authenticateWithAppleSupabase gère l’intégralité du flux d’authentification :
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);}Comment ça marche
Section titled “Comment ça marche”Le iOS, Apple Sign-In utilise l’implémentation native :
- Initialisation : le plugin utilise automatiquement l’ID de bundle de votre application (aucun
clientIdnécessaire) - Connexion native : utilise la connexion native de Apple avec le bouton Apple et le flux d’authentification
- Jeton d’identité : Apple renvoie un jeton d’identité (JWT) contenant les informations utilisateur
- Supabase Authentification : le jeton d’identité est envoyé à Supabase à l’aide de
signInWithIdToken()
La fonction d’assistance détecte automatiquement la plate-forme iOS et configure tout de manière appropriée.
Remarques importantes
Section titled “Remarques importantes”Configuration de l’ID de lot
Section titled “Configuration de l’ID de lot”- iOS utilise automatiquement l’ID de bundle de votre application pour la connexion Apple
- Assurez-vous que l’ID de votre bundle correspond à ce qui est configuré dans le portail des développeurs Apple.
- L’ID du bundle doit avoir la fonctionnalité “Connectez-vous avec Apple” activée.
Supabase ID client
Section titled “Supabase ID client”Dans Supabase, configurez votre fournisseur Apple avec :
- ID client : votre identifiant d’application iOS (ID de bundle) - par exemple,
app.capgo.plugin.SocialLogin
Si vous utilisez également Android/Web, vous devrez fournir à la fois l’ID d’application et l’ID de service dans le champ ID client de Supabase (séparés par des virgules).
Dépannage
Section titled “Dépannage”Si l’authentification échoue :
- Incompatibilité d’ID de bundle : vérifiez que l’ID de votre bundle correspond à la fois dans le portail des développeurs Xcode et Apple.
- Fonctionnalité non activée : assurez-vous que la fonctionnalité « Connexion avec Apple » est activée dans Xcode.
- Configuration Supabase : vérifiez que votre ID d’application est correctement configuré dans les paramètres du fournisseur Supabase Apple
- La validation du jeton échoue : vérifiez que le jeton d’identité est reçu de Apple
- Consultez l’exemple de code d’application pour référence.