Migración de Ionic Auth Connect a @capgo/capacitor-social-login
Copia un prompt de configuración con los pasos de instalación y la guía markdown completa para este plugin.
Resumen
ResumenCapgo El inicio de sesión social reemplaza Ionic Auth Connect con un flujo de OAuth2 nativo del proveedor para Google, Apple, Facebook y otros proveedores de identidad. Soporta múltiples proveedores en un solo plugin y funciona en iOS, Android y Web.
¿Por qué funciona?
ResumenEl plugin incluye un wrapper de compatibilidad de Auth Connect con el nombre de SocialLoginAuthConnectSe mapean los IDs de proveedor de Ionic Auth Connect conocidos a la motor de OAuth2 integrada, por lo que puede seguir utilizando nombres como auth0, azure, y okta.
Instalar
Pantalla de terminalnpm install @capgo/capacitor-social-loginnpx cap syncSection titled “Overview” is translated to
Sección titulada “Reemplaza tus importaciones”// Beforeimport { AuthConnect } from '@ionic-enterprise/auth-connect';
// Afterimport { SocialLoginAuthConnect } from '@capgo/capacitor-social-login';Inicializar proveedores
Sección titulada “Inicializar proveedores”Usa los authConnect presets cuando quieras los mismos IDs de proveedor que Ionic Auth Connect utilizó:
await SocialLoginAuthConnect.initialize({ authConnect: { auth0: { domain: 'https://your-tenant.auth0.com', clientId: 'your-auth0-client-id', redirectUrl: 'myapp://oauth/auth0', audience: 'https://your-api.example.com', }, azure: { tenantId: 'common', clientId: 'your-azure-client-id', redirectUrl: 'myapp://oauth/azure', }, cognito: { domain: 'https://your-domain.auth.region.amazoncognito.com', clientId: 'your-cognito-client-id', redirectUrl: 'myapp://oauth/cognito', }, okta: { issuer: 'https://dev-12345.okta.com/oauth2/default', clientId: 'your-okta-client-id', redirectUrl: 'myapp://oauth/okta', }, onelogin: { issuer: 'https://your-tenant.onelogin.com/oidc/2', clientId: 'your-onelogin-client-id', redirectUrl: 'myapp://oauth/onelogin', }, },});IDs de proveedor admitidos
Sección titulada “IDs de proveedor admitidos”auth0azurecognitooktaonelogin
Iniciar sesión, cerrar sesión y acceso a tokens
Sección titulada “Iniciar sesión, cerrar sesión y acceso a tokens”const result = await SocialLoginAuthConnect.login({ provider: 'auth0',});
const status = await SocialLoginAuthConnect.isLoggedIn({ provider: 'auth0',});
const code = await SocialLoginAuthConnect.getAuthorizationCode({ provider: 'auth0',});
await SocialLoginAuthConnect.logout({ provider: 'auth0',});Ejemplos de presets específicos del proveedor
Sección titulada “Ejemplos de presets específicos del proveedor”Ejemplo de preset de Auth0
Sección titulada “Ejemplo de preset de Auth0”await SocialLoginAuthConnect.initialize({ authConnect: { auth0: { domain: 'https://your-tenant.auth0.com', clientId: 'your-auth0-client-id', redirectUrl: 'myapp://oauth/auth0', audience: 'https://your-api.example.com', }, },});
const auth0Result = await SocialLoginAuthConnect.login({ provider: 'auth0',});
console.log(auth0Result.result.idToken);Ejemplo de preset de Azure
Sección titulada “Ejemplo de preset de Azure”await SocialLoginAuthConnect.initialize({ authConnect: { azure: { tenantId: 'common', clientId: 'your-azure-client-id', redirectUrl: 'myapp://oauth/azure', }, },});
const azureResult = await SocialLoginAuthConnect.login({ provider: 'azure',});
console.log(azureResult.result.resourceData);Ejemplo de preset de Cognito
Sección titulada “Ejemplo de preset de Cognito”await SocialLoginAuthConnect.initialize({ authConnect: { cognito: { domain: 'https://your-domain.auth.region.amazoncognito.com', clientId: 'your-cognito-client-id', redirectUrl: 'myapp://oauth/cognito', }, },});
const cognitoResult = await SocialLoginAuthConnect.login({ provider: 'cognito',});
console.log(cognitoResult.result.idToken);Ejemplo de preset de Okta
Sección titulada “Ejemplo de preset de Okta”await SocialLoginAuthConnect.initialize({ authConnect: { okta: { issuer: 'https://dev-12345.okta.com/oauth2/default', clientId: 'your-okta-client-id', redirectUrl: 'myapp://oauth/okta', }, },});
const oktaResult = await SocialLoginAuthConnect.login({ provider: 'okta',});
console.log(oktaResult.result.resourceData);Ejemplo de preset de OneLogin
Sección titulada “Ejemplo de preset de OneLogin”await SocialLoginAuthConnect.initialize({ authConnect: { onelogin: { issuer: 'https://your-tenant.onelogin.com/oidc/2', clientId: 'your-onelogin-client-id', redirectUrl: 'myapp://oauth/onelogin', }, },});
const oneloginResult = await SocialLoginAuthConnect.login({ provider: 'onelogin',});
console.log(oneloginResult.result.idToken);Sobreescribiendo puntos finales
Sección titulada “Sobreescribiendo puntos finales”Cada preset crea una configuración de OAuth2 predeterminada desde domain o issuerSi su inquilino utiliza puntos finales personalizados, sobreescribirlas directamente:
await SocialLoginAuthConnect.initialize({ authConnect: { onelogin: { issuer: 'https://your-tenant.onelogin.com/oidc/2', clientId: 'your-onelogin-client-id', redirectUrl: 'myapp://oauth/onelogin', authorizationBaseUrl: 'https://your-tenant.onelogin.com/oidc/2/auth', accessTokenEndpoint: 'https://your-tenant.onelogin.com/oidc/2/token', resourceUrl: 'https://your-tenant.onelogin.com/oidc/2/me', logoutUrl: 'https://your-tenant.onelogin.com/oidc/2/logout', }, },});Configuración de OAuth2 directa
Sección titulada “Configuración de OAuth2 directa”Si no deseas utilizar presets, configura los mismos proveedores directamente en los documentos de OAuth2 generales:
Notas de migración
Sección titulada “Notas de migración”-
La capa de compatibilidad se basa en OAuth2 Mantiene los nombres de los proveedores, no los detalles de implementación nativos de Ionic.
-
Los tokens de refresco siguen dependiendo de los ámbitos Solicita
offline_accesso el equivalente específico del proveedor cuando necesites tokens de refresco. -
Los puntos finales personalizados pueden sobreescribir los presets Si el preset es cercano pero no exacto, sobreescribe solo los puntos finales que difieren.
-
Directo
oauth2los registros ganan Si define tantoauthConnect.auth0yoauth2.auth0, el directooauth2configura la prioridad.
Documentación relacionada
Sección titulada “Documentación relacionada”- Iniciación de inicio de sesión de inicio de sesión
- proveedores de OAuth2 y OIDC
- Migrar desde Ionic Auth Connect
- solución de migración de plugins de Ionic enterprise
Sigue adelante desde la migración de Ionic Auth Connect a @capgo/capacitor-social-login
Sección titulada “Sigue adelante desde la migración de Ionic Auth Connect a @capgo/capacitor-social-login”Si estás utilizando La migración de Ionic Auth Connect a @capgo/capacitor-social-login para planificar la autenticación y los flujos de cuenta, conecta con Usando @capgo/capacitor-social-login para la capacidad nativa en Usando @capgo/capacitor-social-login, @capgo/capacitor-social-login para el detalle de implementación en @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-biometría nativa, y Autenticación de dos factores para el detalle de implementación en Autenticación de dos factores.