@capgo/capacitor-social-login
Panoramica
Sezione intitolata “Panoramica”@capgo/capacitor-social-login è il plugin di autenticazione social all-in-one per Web, iOS e Android.
Implementa:
- Google Sign-In con Android Credential Manager
- Sign in with Apple, incluso OAuth su Android
- Facebook Login con l'attuale SDK di Facebook
- Twitter/X tramite OAuth 2.0
- Provider OAuth2 e OIDC generici, tra cui GitHub, Microsoft Entra ID, Auth0, Okta, Keycloak e altri server conformi
È inoltre il percorso di migrazione Capgo per le app che passano da Ionic Appflow Social Login o Ionic Auth Connect.
Note su fork e migrazione
Sezione intitolata “Note su fork e migrazione”Questo plugin è nato come un fork di @codetrix-studio/capacitor-google-auth. Il pacchetto originale è di fatto archiviato, quindi Capgo mantiene questo plugin come sostituto supportato.
Se stai ancora usando @codetrix-studio/capacitor-google-auth, segui la guida alla migrazione di Google Auth legacy.
Se stai migrando da Ionic Auth Connect, usa il SocialLoginAuthConnect wrapper integrato per i auth0, azure, cognito, okta, e onelogin nomi dei provider:
Compatibilità
Sezione intitolata “Compatibilità”| Versione del plugin | Compatibilità con Capacitor | Mantenuto |
|---|---|---|
| v8.x | v8.x | Sì |
| v7.x | v7.x | Su richiesta |
| v6.x | v6.x | No |
| v5.x | v5.x | No |
La versione major di questo plugin segue quella di Capacitor. Ad esempio, usa il plugin v8 con Capacitor 8. Solo l'ultima versione major è supportata attivamente.
Video Tutorial
Sezione intitolata “Video Tutorial”Guarda una breve demo della configurazione del plugin e del flusso di login in azione.
Funzionalità principali
Sezione intitolata “Funzionalità principali”initialize- Inizializza il plugin.login- Effettua il login con il provider selezionato.logout- Logout.isLoggedInIsLoggedIn.
Pubblico API
Sezione intitolata “API pubblica”| Metodo | Descrizione |
|---|---|
initialize | Inizializza il plugin. |
login | Effettua il login con il provider selezionato. |
logout | Logout. |
isLoggedIn | IsLoggedIn. |
getAuthorizationCode | Ottieni l'attuale code di autorizzazione. |
refresh | Aggiorna l'access token. |
refreshToken | Helper per il refresh-token OAuth2 del provider OAuth2 integrato. |
handleRedirectCallback | Solo Web: gestisce il callback di redirect OAuth e restituisce il risultato parsato. |
decodeIdToken | Decodifica un JWT (solitamente un OIDC ID token) nei suoi claim. |
getAccessTokenExpirationDate | Converte un timestamp di scadenza dell'access token (millisecondi dall'epoch) in una stringa data ISO. |
isAccessTokenAvailable | Verifica se un access token è disponibile (non vuoto). |
isAccessTokenExpired | Verifica se un access token è scaduto. |
isRefreshTokenAvailable | Verifica se un refresh token è disponibile (non vuoto). |
providerSpecificCall | Esegue chiamate specifiche del provider. |
getPluginVersion | Ottieni la versione nativa del plugin Capacitor. |
openSecureWindow | Apre una finestra sicura per l'autenticazione OAuth2. Per il web, dovresti avere code nella pagina di redirect per usare un broadcast channel e inviare l'URL di redirect all'app. Qualcosa del tipo: html <html> <head></head> <body> <script> const searchParams = new URLSearchParams(location.search) if (searchParams.has("code")) { new BroadcastChannel("my-channel-name").postMessage(location.href); window.close(); } </script> </body> </html> Per il mobile, serve una redirect URI che apra l'app, come ad esempio: myapp://oauth_callback/ E assicurati di registrarla nel file info.plist dell'app: xml <key>CFBundleURLTypes</key> <array> <dict> <key>CFBundleURLSchemes</key> <array> <string>myapp</string> </array> </dict> </array> E nel file AndroidManifest.xml: xml <activity> <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:host="oauth_callback" android:scheme="myapp" /> </intent-filter> </activity> . |
Fonte di verità
Sezione intitolata “Fonte di verità”Questo riferimento è sincronizzato da src/definitions.ts nella capacitor-social-login.
Continua da @capgo/capacitor-social-login
Sezione intitolata “Continua da @capgo/capacitor-social-login”Se stai usando @capgo/capacitor-social-login per pianificare i flussi di autenticazione e account, collegandolo a Utilizzo di @capgo/capacitor-social-login per la funzionalità nativa in Utilizzo di @capgo/capacitor-social-login, @capgo/capacitor-passkey per i dettagli di implementazione in @capgo/capacitor-passkey, @capgo/capacitor-native-biometric per i dettagli di implementazione in @capgo/capacitor-native-biometric, Autenticazione a due fattori per i dettagli di implementazione in Two-factor authentication, e SSO (Enterprise) per i dettagli di implementazione in SSO (Enterprise).