Passer au contenu

Continuez de Supabase Apple Login sur iOS

GitHub

Ce guide vous aidera à intégrer Apple Sign-In avec l'authentification Supabase sur iOS. Il est supposé que vous avez déjà réalisé :

La mise en œuvre complète est disponible dans le fichier de l'application d'exemple. supabaseAuthUtils.ts Cette guide explique les concepts clés et comment l'utiliser.

Utilisation de l'assistant d'authentification

Sous-titre « Utilisation de l'assistant d'authentification »

La authenticateWithAppleSupabase fonction gère l'ensemble 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);
}

Sur iOS, Sign-In Apple utilise l'implémentation native :

  1. Initialisation: Le plugin utilise automatiquement l'ID de votre application (aucun clientId nécessaire)
  2. Signe d'Identité Native: Utilise le bouton Sign in with Apple natif d'Apple et le flux d'authentification
  3. Jeton d'Identité: Apple retourne un jeton d'identité (JWT) contenant les informations de l'utilisateur
  4. Authentification Supabase: Le jeton d'identité est envoyé à Supabase en utilisant signInWithIdToken()

La fonction d'aide détecte automatiquement la plateforme iOS et configure tout en conséquence.

  • L'iOS utilise automatiquement l'ID de la boutique de votre application pour la connexion Apple
  • Assurez-vous que votre ID de la boutique correspond à ce qui est configuré dans le Portail du développeur Apple
  • L'ID de la boutique doit avoir la capacité « Sign in with Apple » activée

Dans Supabase, configurez votre fournisseur Apple avec :

  • ID du client: Votre ID 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).

Si l'authentification échoue :

  • Erreur de correspondance de l'ID de bundle: Vérifiez que votre ID de bundle correspond dans Xcode et dans le Portail des développeurs Apple
  • Capacité non activée: Assurez-vous que la capacité « Sign in with Apple » est activée dans Xcode
  • Configuration de Supabase: Vérifiez que votre ID d'application est correctement configuré dans les paramètres de fournisseur Apple de Supabase
  • Échec de la validation du jetonVérifiez que le jeton d'identité est bien reçu d'Apple.
  • Examinez le l'application d'exemple code en référence

Continuez de la section « Configuration de l'authentification Apple avec Supabase sur iOS ».

Titre de la section « Configuration de l'authentification Apple avec Supabase sur iOS ».

Si vous utilisez la configuration de l'authentification Apple avec Supabase sur iOS pour planifier l'authentification et les flux de compte, connectez-l’avec Utilisez @capgo/capacitor-social-login pour la capacité native dans Utilisez @capgo/capacitor-social-login, @capgo/capacitor-social-login pour les détails d'implémentation dans @capgo/capacitor-login-social @capgo/capacitor-passkey pour les détails d'implémentation dans @capgo/capacitor-passkey @capgo/capacitor-authiométrique-natif pour les détails d'implémentation dans @capgo/capacitor-authiométrique-natif, et Authentification à deux facteurs pour les détails d'implémentation dans Authentification à deux facteurs.