Zum Inhalt springen

Social Login __CAPGO_KEEP_0__-Repository

GitHub

Diese Anleitung führt Sie durch die Einrichtung der Supabase-Authentifizierung mit dem Capacitor-Social-Login-Plugin. Diese Integration ermöglicht Ihnen das Ausführen von nativen sozialen Anmeldeanbietern (Google, Apple, Facebook, Twitter) auf mobilen Plattformen, während Sie die Supabase-Authentifizierung für die Backend-Authentifizierung und PostgreSQL für die Datenbanknutzung nutzen.

  • Konfiguration der Supabase-Authentifizierung
  • Wie man den Capacitor Social Login Plugin mit Supabase Auth integriert
  • Plattform-spezifische Einrichtung für Android, iOS und Web
  • Sichere Verarbeitung von Nonces für Supabase

Before you begin, make sure you have:

  1. Ein Supabase-Projekt

    • Erstellen Sie ein Projekt bei Supabase-Dashboard
    • Google OAuth-Anbieter aktivieren
    • Ermitteln Sie Ihre Supabase-Projekt-URL und Anon-Key
  2. Supabase JS SDK

    • Installieren Sie Supabase in Ihrem Projekt:
      Terminal-Fenster
      npm install @supabase/supabase-js
  3. Ein Capacitor-Projekt

    • Ein bestehendes Capacitor-Anwendungsprojekt
    • Capacitor-Social-Login-Plugin installiert:
      Terminal-Fenster
      npm install @capgo/capacitor-social-login
      npx cap sync
  4. Plattform-spezifische Google-Einrichtung

Eine vollständige funktionierende Beispielanwendung ist im Repository verfügbar:

Code-Repository: Sie finden das code-Repository hier

Die Beispielanwendung demonstriert:

  • E-Mail-/Passwort-Authentifizierung mit Supabase
  • Google-Anmeldung (Android, iOS und Web)
  • Ein einfaches Schlüssel-Wert-Speicher mit Supabase PostgreSQL-Tabellen
  • Benutzer-spezifische Daten-Speicherung mit Row Level Security (RLS)

Supabase erfordert eine besondere Nichtwiederholbarkeits-Verwaltung für die Sicherheit. Die Implementierung folgt dem Dokumentation für React Native Google Sign In:

  • Erstellen Sie ein rawNonce Hash es mit SHA-256, um
  • ein Hash-Wert zu erhalten nonceDigest
  • Zugriff nonceDigest Zum Google-Anmelden
  • Zugriff rawNonce Zum Supabase (Supabase hash es es intern für die Vergleichbarkeit)

Die Beispielimplementierung enthält eine JWT-Validierung, um sicherzustellen:

  • Der Token-Zielpublikumsbereich entspricht Ihren konfigurierten Google-Kunden-IDs
  • Der Zufallswert entspricht dem erwarteten Digest
  • Automatische Wiederholung bei Validierungsfehlern (besonders wichtig für iOS)
  • iOSKann Token-Caching zu Nichtwiederherstellbarkeitsproblemen führen - die Implementierung handhabt dies automatisch
  • Web: Must call isLoggedIn() Bei der Montage zur Behandlung von OAuth-Redirects
  • AndroidStandardimplementierung mit SHA-1-Fingerprint-Konfiguration

Supabase Google Login - Allgemeine Einrichtung

Wenn Sie die Verwendung von Supabase-Integration-Einleitung 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 Implementierungsdetail in @capgo/capacitor-passkey @capgo/capacitor-social-login für die Implementierungsdetails in @capgo/capacitor-Passkey, @capgo/capacitor-native-biometrisch für die Implementierungsdetails in @capgo/capacitor-native-biometrisch, und Zweifaktor-Authentifizierung für die Implementierungsdetails in Zweifaktor-Authentifizierung.