Migrazione da Ionic Auth Connect a @capgo/@capacitor-login sociale
Copia un avviso di configurazione con i passaggi di installazione e la guida markdown completa per questo plugin.
Panoramica
Sottosezione intitolata “Panoramica”Capgo La Social Login sostituisce Ionic Auth Connect con un flusso OAuth2 nativo del provider per Google, Apple, Facebook e altri provider di identità. Supporta più provider in un unico plugin e funziona su iOS, Android e Web.
Perché funziona
Sezione intitolata “Perché funziona”Il plugin include un wrapper di compatibilità Auth Connect denominato SocialLoginAuthConnectE' mappato l'ID del provider Ionic Auth Connect noto su l'engine OAuth2 integrato, in modo da poter continuare ad utilizzare nomi come auth0, azure e okta.
Installa
Sezione intitolata “Installa”npm install @capgo/capacitor-social-loginnpx cap syncSostituisci le tue importazioni
Sezione intitolata “Sostituisci le tue importazioni”// Beforeimport { AuthConnect } from '@ionic-enterprise/auth-connect';
// Afterimport { SocialLoginAuthConnect } from '@capgo/capacitor-social-login';Inizializza i provider
Sezione intitolata “Inizializza provider”Usa il authConnect preset quando desideri gli stessi ID provider utilizzati da Ionic Auth Connect:
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', }, },});ID provider supportati
Sezione intitolata “ID provider supportati”auth0azurecognitooktaonelogin
Accesso, disconnessione e accesso al token
Sezione intitolata “Accesso, disconnessione e accesso al token”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',});Esempi di preset specifici del provider
Sezione intitolata “Esempi di preset specifici del provider”Esempio di preset Auth0
Section titled “Auth0 preset example”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);Esempio di preset Azure
Esempio di preset di Azureawait 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);Esempio di preset Cognito
Esempio di preset di Cognitoawait 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);Esempio di preset Okta
Section titled “Okta preset example”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);Esempio di preset OneLogin
Esempio di preset di OneLoginawait 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);Sostituire gli endpoint
Esempio di sostituzione degli endpointCiascun preset crea una configurazione di OAuth2 predefinita da domain o issuerSe il tuo tenant utilizza endpoint personalizzati, sostituiscili direttamente:
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', }, },});Configurazione OAuth2 diretta
Esempio di configurazione OAuth2 direttaSe non desideri utilizzare i preset, configura i provider nello stesso modo nella guida dei provider OAuth2 e OIDC:
Nota di migrazione
Section titled “Migration notes”-
Il layer di compatibilità è basato su OAuth2 Mantiene i nomi dei provider, non i dettagli di implementazione nativi di Ionic.
-
I token di refresh dipendono ancora dai permessi Richiesta
offline_accesso l'equivalente specifico del provider quando hai bisogno di token di refresh. -
I punti di fine possono sovrascrivere i preset Se il preset è vicino ma non esatto, sovrascrivi solo i punti di fine che differiscono.
-
Direct
oauth2vittorie Se definisci siaauthConnect.auth0E e iloauth2.auth0la migrazione direttaoauth2Documentazione correlata
Sezione intitolata “Documentazione correlata”
Section titled “Related Documentation”- Fornitori OAuth2 e OIDC
- Migrare da Ionic Auth Connect
- Soluzione di migrazione per plugin enterprise Ionic
- Soluzione di migrazione per plugin Ionic enterprise
Sezione intitolata “Continua da Migrare da Ionic Auth Connect a @capgo/capacitor-social-login”
Titolo della sezione “Continua da Migrare da Ionic Auth Connect a @capgo/capacitor-social-login”Se stai utilizzando Migrazione di Ionic Auth Connect a @capgo/capacitor-social-login per pianificare l'autenticazione e le flussi di account, connettilo con Utilizzando @capgo/capacitor-social-login per la capacità nativa in Utilizzando @capgo/capacitor-social-login @capgo/capacitor-login sociale per il dettaglio di implementazione in @capgo/capacitor-social-login @capgo/capacitor-chiave di accesso per il dettaglio di implementazione in @capgo/capacitor-passkey @capgo/capacitor-nativo-biometrico per il dettaglio di implementazione in @capgo/capacitor-native-biometric, e Autenticazione a due fattori per il dettaglio di implementazione in Autenticazione a due fattori.