Saltar al contenido

Configuración de Supabase Apple Login en iOS

Esta guía te ayudará a integrar Sign-In de Apple con la Autenticación de Supabase en iOS. Se asume que ya has completado:

La implementación completa está disponible en el archivo del supabaseAuthUtils.ts aplicación de ejemplo

Este guía explica los conceptos clave y cómo utilizarlo. El helper de autenticación se utiliza para

Sección titulada “Usando el Asistente de Autenticación”

La authenticateWithAppleSupabase función gestiona todo el flujo de autenticación:

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);
}

En iOS, Apple Sign-In utiliza la implementación nativa:

  1. Iniciación: La plugin utiliza automáticamente el ID de paquete de tu aplicación (no clientId necesario)
  2. Iniciar sesión nativa: Utiliza el botón de inicio de sesión nativo de Apple y el flujo de autenticación
  3. Token de Identidad: Apple devuelve un token de identidad (JWT) que contiene información del usuario
  4. Autenticación de Supabase: El token de identidad se envía a Supabase usando signInWithIdToken()

La función de ayuda detecta automáticamente la plataforma iOS y configura todo correctamente.

  • iOS utiliza automáticamente el ID de paquete de tu aplicación para Apple Sign-In
  • Asegúrate de que tu ID de paquete coincida con lo configurado en el Portal de Desarrolladores de Apple
  • El ID de paquete debe tener habilitada la capacidad de "Sign in with Apple"

En Supabase, configura tu proveedor de Apple con:

  • ID del cliente: Tu ID de aplicación de iOS (identificador de paquete) - por ejemplo, app.capgo.plugin.SocialLogin

Si también estás utilizando Android/Web, necesitarás proporcionar tanto el ID de aplicación como el ID de servicio en el campo ID del cliente de Supabase (separados por comas).

Si falla la autenticación:

  • Diferencia en el ID de paquete: Verifica que el ID de paquete coincida en tanto en Xcode como en el Portal de desarrolladores de Apple
  • Capacidad no habilitadaAsegúrese de que la capacidad de inicio de sesión con Apple esté habilitada en Xcode
  • Configuración de SupabaseAsegúrese de que su ID de aplicación esté configurado correctamente en los ajustes de proveedor de Apple de Supabase
  • La validación del token fallaVerifique que el token de identidad se esté recibiendo de Apple
  • Revisar el ejemplo de aplicación code por referencia