Ionic Auth Connect Migration zu @capgo/capacitor-social-login
Kopieren Sie einen Einrichtungsprompt mit den Installationsanweisungen und der vollständigen Markdown-Guide für diesen Plugin.
Übersicht
Abschnitt mit dem Titel „Übersicht“Capgo Social Login ersetzt Ionic Auth Connect durch einen provider-übergreifenden OAuth2-Flow für Google, Apple, Facebook und andere Identitätsanbieter. Es unterstützt mehrere Anbieter in einer Plugin-Instanz und funktioniert auf iOS, Android und Web.
Warum das funktioniert
Abschnitt mit dem Titel “Warum das funktioniert”Das Plugin enthält einen Auth Connect-Kompatibilitätswrapper namens SocialLoginAuthConnect. Es mappiert bekannte Ionic Auth Connect-Anbieter-IDs auf den integrierten OAuth2-Motor, sodass Sie weiterhin Namen wie auth0, azure, und okta.
Installieren
Abschnitt mit dem Titel “Installieren”bun add @capgo/capacitor-social-loginbunx cap syncErsatz Ihrer Imports
Abschnitt mit dem Titel “Ersatz Ihrer Imports”// Beforeimport { AuthConnect } from '@ionic-enterprise/auth-connect';
// Afterimport { SocialLoginAuthConnect } from '@capgo/capacitor-social-login';Dienstanbieter initialisieren
Abschnitt mit dem Titel „Dienstanbieter initialisieren“Verwenden Sie die authConnect Voreinstellungen, wenn Sie die gleichen Anbieter-IDs wie Ionic Auth Connect haben 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 „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',});Beispielvoreinstellungen für Anbieter
Abschnitt mit dem Titel „Beispiel für Provider-spezifische Voreinstellungen“Auth0-Beispiel für Voreinstellungen
Abschnitt mit dem Titel „Auth0-Beispiel für Voreinstellungen“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-Beispiel für Voreinstellungen
Abschnitt mit dem Titel „Azure-Beispiel für Voreinstellungen“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-Beispiel für Voreinstellungen
Abschnitt mit dem Titel „Cognito-Beispiel für Voreinstellungen“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-Beispiel für Voreinstellungen
Abschnitt mit dem Titel „Okta-Beispiel für Voreinstellungen“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);Beispiel für OneLogin-Voreinstellung
Abschnitt mit dem Titel „Beispiel für OneLogin-Voreinstellung“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);Übernehmen von Endpunkten
Abschnitt mit dem Titel „Übernehmen von Endpunkten“Jedes Voreinstellung erstellt eine Standardkonfiguration für OAuth2 von domain oder issuer. Wenn Ihr Tenant benutzerdefinierte 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“If Sie keine Voreinstellungen wünschen, konfigurieren Sie die gleichen Anbieter direkt in den allgemeinen OAuth2-Dokumenten:
Migrationshinweise
Sektion mit dem Titel „Migrationshinweise“-
Die Kompatibilitätslayer basiert auf OAuth2 Sie behält die Anbieternamen bei, nicht die Implementierungsdetails von Ionics
-
Die Wiederherstellungs-Token hängen immer noch von den Berechtigungen ab Anfrage
offline_accessoder den provider-spezifischen Äquivalent, wenn Sie Wiederherstellungs-Token benötigen -
Benutzerdefinierte Endpunkte können Voreinstellungen überschreiben Wenn das Voreinstellung nahe, aber nicht genau ist, überschreiben Sie nur die Endpunkte, die sich unterscheiden
-
Direct
oauth2Einträge gewinnen Wenn Sie beide definierenauthConnect.auth0undoauth2.auth0, hat die direkteoauth2Konfiguration Vorrang.
Zugehörige Dokumentation
Abschnitt mit dem Titel „Zugehörige Dokumentation“- Social Login - Anleitung
- OAuth2- und OIDC-Anbieter
- Migrieren von Ionic Auth Connect
- Ionic-Unternehmens-Plugins-Migrationslösung
Migrieren Sie weiter von Ionic Auth Connect Migration zu @capgo/capacitor-social-login
Bleiben Sie bei der Migration von Ionic Auth Connect zu @capgo/capacitor-social-loginWenn Sie " Ionic Auth Connect Migration zu @capgo/capacitor-social-login für die Planung der Authentifizierung und der Kontoflows verwenden, verbinden Sie es mit Verwenden Sie @capgo/capacitor-social-login für die native Fähigkeit in Verwendung von @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-biometric für die Implementierungsdetails in @capgo/capacitor-native-biometric Zwei-Faktor-Authentifizierung für die Implementierungsdetails in Zwei-Faktor-Authentifizierung.