Migration Ionic Auth Connect vers @capgo/capacitor-social-login
Copiez une commande de configuration avec les étapes d'installation et la guide markdown complet pour ce plugin.
Capgo Authentification sociale remplace Auth Connect Ionic par un flux OAuth2 natif du fournisseur pour Google, Apple, Facebook et autres fournisseurs d'identité. Il prend en charge plusieurs fournisseurs dans un seul plugin et fonctionne sur iOS, Android et Web.
Pourquoi cela fonctionne
Sous-titre « Pourquoi cela fonctionne »Le plugin comprend un wrapper d'Auth Connect compatible nommé SocialLoginAuthConnect . Il cartographie les ID de fournisseur d'Auth Connect Ionic familiers sur l'engin OAuth2 intégré, afin que vous puissiez continuer à utiliser des noms comme auth0, azure, et okta.
Installation
Sous-titre « Installation »bun add @capgo/capacitor-social-loginbunx cap syncRemplacez vos importations
Sous-titre « Remplacez vos importations »// Beforeimport { AuthConnect } from '@ionic-enterprise/auth-connect';
// Afterimport { SocialLoginAuthConnect } from '@capgo/capacitor-social-login';Initialiser les fournisseurs
Section intitulée “Initialiser les fournisseurs”Utilisez les authConnect préférences lorsque vous voulez les mêmes identifiants de fournisseur que Ionic Auth Connect utilisait :
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', }, },});Identifiants de fournisseur pris en charge
Section intitulée “Identifiants de fournisseur pris en charge”auth0azurecognitooktaonelogin
Connexion, déconnexion et accès au jeton
Section intitulée “Connexion, déconnexion et accès au jeton”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',});Exemples de préférences spécifiques au fournisseur
Section intitulée « Exemples de préséts spécifiques au fournisseur »Exemple de préséts Auth0
Section intitulée « Exemple de préséts 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);Exemple de préséts Azure
Section intitulée « Exemple de préséts 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);Exemple de préséts Cognito
Section intitulée « Exemple de préséts 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);Exemple de préséts Okta
Section intitulée « Exemple de préséts 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);Exemple de configuration OneLogin
Section intitulée “Exemple de configuration 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);Surcharge des points de terminaison
Section intitulée “Surcharge des points de terminaison”Chaque configuration par défaut crée une configuration OAuth2 par défaut à partir de domain ou issuer. Si votre locataire utilise des points de terminaison personnalisés, surchargez-les directement :
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', }, },});Configuration OAuth2 directe
Section intitulée “Configuration OAuth2 directe”If vous ne souhaitez pas de préfixes, configurez les mêmes fournisseurs directement dans les documents OAuth2 génériques :
Notes de migration
Section intitulée “Notes de migration”-
Le layer de compatibilité est basé sur OAuth2 Ce qui garde les noms des fournisseurs, pas les détails d'implémentation natives d'Ionic.
-
Les jetons de rafraîchissement dépendent toujours des scopes Réquisition
offline_accessou l'équivalent spécifique au fournisseur lorsque vous avez besoin de jetons de rafraîchissement. -
Les points de terminaison personnalisés peuvent surcharger les préfixes Si le préfixe est proche mais pas exact, surchargez uniquement les points de terminaison qui diffèrent.
-
Direct
oauth2entries gagnent Si vous définissez les deuxauthConnect.auth0etoauth2.auth0, la configuration prend le dessus.oauth2Documentation connexe
Section intitulée « Documentation connexe »
Demarrage de l'authentification sociale- Fournisseurs OAuth2 et OIDC
- Migrer depuis Ionic Auth Connect
- Solution de migration des plugins Ionic enterprise
- Continuez de l'authentification sociale de migration à @__CAPGO_KEEP_0__/__CAPGO_KEEP_1__-social-login
Keep going from Ionic Auth Connect Migration to @capgo/capacitor-social-login
Section intitulée « Continuez de l'authentification Ionic Auth Connect Migration à @capgo/capacitor-social-login »Si vous utilisez L'authentification Ionic Auth Connect Migration à @capgo/capacitor-social-login pour planifier l'authentification et les flux de compte, connectez-le avec En utilisant @capgo/capacitor-social-login pour la capacité native dans En utilisant @capgo/capacitor-social-login, @capgo/capacitor-social-login pour le détail d'implémentation dans @capgo/capacitor-social-login, @capgo/capacitor-passkey pour le détail d'implémentation dans @capgo/capacitor-passkey, @capgo/capacitor-native-biometric pour le détail d'implémentation dans @capgo/capacitor-native-biometric, et Authentification à deux facteurs pour le détail d'implémentation dans Authentification à deux facteurs.