Saltar al contenido

@capgo/capacitor-social-login

Todos los logins sociales en un solo plugin.

@capgo/capacitor-social-login es el plugin de autenticación social todo en uno para Web, iOS y Android.

Implementa:

  • Google Sign-In con Android Credential Manager
  • Sign in with Apple, incluido OAuth en Android
  • Facebook Login con el actual Facebook SDK
  • Twitter/X a través de OAuth 2.0
  • Proveedores genéricos de OAuth2 y OIDC, incluidos GitHub, Microsoft Entra ID, Auth0, Okta, Keycloak y otros servidores compatibles

También es la ruta de migración de Capgo para apps que migran desde Ionic Appflow Social Login o Ionic Auth Connect.

Este plugin comenzó como un fork de @codetrix-studio/capacitor-google-auth. El paquete original está efectivamente archivado, por lo que Capgo mantiene este plugin como la alternativa soportada.

Si aún estás usando @codetrix-studio/capacitor-google-auth, sigue la guía de migración de Google Auth legacy.

Si estás migrando desde Ionic Auth Connect, usa el SocialLoginAuthConnect wrapper para el auth0, azure, cognito, okta, y onelogin nombres de proveedor:

Versión del pluginCompatibilidad con CapacitorMantenido
v8.xv8.xSí
v7.xv7.xBajo demanda
v6.xv6.xNo
v5.xv5.xNo

La versión principal de este plugin sigue la versión principal de Capacitor. Por ejemplo, usa el plugin v8 con Capacitor 8. Solo la versión principal más reciente se mantiene activamente.

Mira una demo rápida de la configuración del plugin y el flujo de login en acción.

  • initialize - Inicializa el plugin.
  • login - Inicia sesión con el proveedor seleccionado.
  • logout - Cerrar sesión.
  • isLoggedIn - IsLoggedIn.
MétodoDescripción
initializeInicializa el plugin.
loginInicia sesión con el proveedor seleccionado.
logoutCerrar sesión.
isLoggedInIsLoggedIn.
getAuthorizationCodeObtén el code de autorización actual.
refreshRefresca el access token.
refreshTokenHelper de refresh token OAuth2 para el proveedor OAuth2 integrado.
handleRedirectCallbackSolo web: gestiona el callback de redirección OAuth y devuelve el resultado parseado.
decodeIdTokenDecodifica un JWT (normalmente un ID token de OIDC) en sus claims.
getAccessTokenExpirationDateConvierte un timestamp de expiración del access token (ms desde epoch) a un string de fecha ISO.
isAccessTokenAvailableComprueba si hay un access token disponible (no vacío).
isAccessTokenExpiredComprueba si un access token ha expirado.
isRefreshTokenAvailableComprueba si hay un refresh token disponible (no vacío).
providerSpecificCallEjecuta llamadas específicas del proveedor.
getPluginVersionObtén la versión del plugin nativo Capacitor.
openSecureWindowAbre una ventana segura para la autenticación OAuth2. En web, debes tener code en la página redirigida para usar un broadcast channel y enviar la URL redirigida a la app. Algo como: 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> En móvil, debes tener una URI de redirección que abra la app, algo como: myapp://oauth_callback/ Y asegúrate de registrarla en el info.plist de la app: xml <key>CFBundleURLTypes</key> <array> <dict> <key>CFBundleURLSchemes</key> <array> <string>myapp</string> </array> </dict> </array> Y en el archivo 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> .

Esta referencia se sincroniza desde src/definitions.ts en capacitor-social-login.

Si estás usando @capgo/capacitor-social-login para planificar los flujos de autenticación y de cuenta, conéctalo con Uso de @capgo/capacitor-social-login para la capacidad nativa en el uso de @capgo/capacitor-social-login, @capgo/capacitor-passkey para el detalle de implementación en @capgo/capacitor-passkey, @capgo/capacitor-native-biometric para el detalle de implementación en @capgo/capacitor-native-biometric, Autenticación de dos factores para el detalle de implementación en la autenticación de dos factores, y SSO (Empresa) para el detalle de implementación en SSO (Enterprise).