Ionic Auth Connect Migration zu @capgo/capacitor-social-login
Eine Einrichtungsanleitung mit den Installationsanweisungen und der vollständigen Markdown-Anleitung für diesen Plugin erstellen.
Capgo Social Login replaces Ionic Auth Connect with a provider-native OAuth2 flow for Google, Apple, Facebook, and other identity providers. It supports multiple providers in one plugin and works across iOS, Android, and Web.
__CAPGO_KEEP_0__
Abschnitt mit dem Titel “Warum das funktioniert”Der Plugin enthält einen Auth Connect-Kompatibilitätswrapper namens SocialLoginAuthConnectEs mappiert bekannte Ionic Auth Connect-Anbieter-IDs auf den eingebauten OAuth2-Motor, so dass Sie Namen wie
(keine Änderung an den in Klammern stehenden Namen erforderlich) auth0, azureund okta.
Installieren
Abschnitt mit dem Titel “Installieren”npm install @capgo/capacitor-social-loginnpx cap syncErsetzen Sie Ihre Imports
Abschnitt mit dem Titel “Ersetzen Sie Ihre Imports”// Beforeimport { AuthConnect } from '@ionic-enterprise/auth-connect';
// Afterimport { SocialLoginAuthConnect } from '@capgo/capacitor-social-login';Initialisieren Sie die Anbieter
Abschnitt mit dem Titel “Anbieter initialisieren”Verwenden Sie authConnect Voreinstellungen, wenn Sie die gleichen Anbieter-IDs wie Ionic Auth Connect verwenden möchten:
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', }, },});Unterstützte Anbieter-IDs
Abschnitt mit dem Titel “Unterstützte Anbieter-IDs”auth0azurecognitooktaonelogin
Anmeldung, Abmeldung und Token-Zugriff
Abschnitt mit dem Titel “Anmeldung, Abmeldung und Token-Zugriff”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',});Beispielanpassungen für den jeweiligen Provider
Beispielanpassungen für den jeweiligen AnbieterBeispiel für Auth0-Voreinstellungen
Abschnitt mit dem Titel “Auth0-Voreinstellung-Beispiel”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);Azure-Voreinstellung-Beispiel
Abschnitt mit dem Titel “Azure-Voreinstellung-Beispiel”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);Cognito-Voreinstellung-Beispiel
Abschnitt mit dem Titel “Cognito-Voreinstellung-Beispiel”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);Okta-Voreinstellung-Beispiel
Abschnitt mit dem Titel “Okta-Voreinstellung-Beispiel”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);OneLogin-Voreinstellung-Beispiel
Abschnitt mit dem Titel “Beispiel für OneLogin-Preset”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);Übergeordnete Endpunkte überschreiben
Überschreibung: „Endpunkte überschreiben“Jedes Präset erstellt eine Standardkonfiguration für OAuth2 von domain oder issuerWenn Ihr Tenant spezifische Endpunkte verwendet, überschreiben Sie sie direkt:
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', }, },});Direkte OAuth2-Konfiguration
Abschnitt mit dem Titel “Direkte OAuth2-Konfiguration”Wenn Sie keine Präsete verwenden möchten, konfigurieren Sie die gleichen Anbieter direkt in den allgemeinen OAuth2-Dokumenten:
Migrationshinweise
Section titled “Migration notes”-
Die Kompatibilitätslayer basiert auf OAuth2 Es behält die Anbieternamen bei, nicht die Implementierungsdetails von Ionic.
-
Refresh-Tokens hängen immer noch von Bereichen ab Anfrage
offline_accessoder dem entsprechenden Anbieterwert, wenn Sie Refresh-Tokens benötigen. -
Custom endpoints can override presets Überschreiben Sie nur die Endpunkte, die sich unterscheiden, wenn die Voreinstellung nahe, aber nicht genau ist.
-
Direkte
oauth2Einträge gewinnen Wenn Sie sowohlauthConnect.auth0undoauth2.auth0, die direkteoauth2Konfiguration hat Vorrang.
Zugehörige Dokumentation
Sektion mit dem Titel ‘Zugehörige Dokumentation’- Social-Login-Anleitung
- OAuth2- und OIDC-Anbieter
- Migration von Ionic Auth Connect
- Unternehmens-Plugin-Migrationslösung für Ionic
Fortsetzen von Ionic Auth Connect Migration zu @capgo/capacitor-social-login
Sektion mit dem Titel ‘Fortsetzen von Ionic Auth Connect Migration zu @capgo/capacitor-social-login’Wenn Sie Ionic Auth Connect verwenden Migration von Ionic Auth Connect zu @capgo/capacitor-social-login um die Authentifizierung und die Kontenflüsse zu planen, verbinden Sie es mit Mit @capgo/capacitor-social-login Für die native Fähigkeit in Mit @capgo/capacitor-social-login, @capgo/capacitor-Social-Login Für die Implementierungsdetails in @capgo/capacitor-social-login, @capgo/capacitor-Passkey Für die Implementierungsdetails in @capgo/capacitor-passkey, @capgo/capacitor-native-biometrisch Für die Implementierungsdetails in @capgo/capacitor-native-biometric, und Zwei-Faktor-Authentifizierung Für die Implementierungsdetails in Zwei-Faktor-Authentifizierung.