Migrasi Ionic Auth Connect ke @capgo/capacitor-social-login
Copy sebuah prompt pengaturan dengan langkah instalasi dan panduan markdown lengkap untuk plugin ini.
Prompt untuk mengatur AI dengan AI
RingkasanCapgo Login Sosial menggantikan Ionic Auth Connect dengan aliran OAuth2 native penyedia untuk Google, Apple, Facebook, dan penyedia identitas lainnya. Ini mendukung penyedia multiple dalam satu plugin dan berfungsi di iOS, Android, dan Web.
Mengapa ini berfungsi
Ringkasan berjudul “Mengapa ini berfungsi”Plugin ini termasuk wrapper kompatibilitas Auth Connect bernama SocialLoginAuthConnect Ini menerjemahkan ID penyedia Ionic Auth Connect yang familiar ke mesin OAuth2 bawaan, sehingga Anda dapat terus menggunakan nama seperti auth0, azure, dan okta.
npm install @capgo/capacitor-social-loginnpx cap syncGanti import Anda
Bagian berjudul “Ganti import Anda”// Beforeimport { AuthConnect } from '@ionic-enterprise/auth-connect';
// Afterimport { SocialLoginAuthConnect } from '@capgo/capacitor-social-login';Inisialisasi penyedia
Bagian berjudul “Inisialisasi penyedia”Gunakan authConnect pilihan pengaturan ketika Anda ingin ID penyedia yang sama yang digunakan oleh 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 penyedia yang didukung
Bagian berjudul “ID penyedia yang didukung”auth0azurecognitooktaonelogin
Masuk, keluar, dan akses token
Bagian berjudul “Masuk, keluar, dan akses 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',});Contoh preset spesifik penyedia
Judul bagian “Contoh preset spesifik penyedia”Contoh preset Auth0
Judul bagian “Contoh preset 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);Contoh preset Azure
Judul bagian “Contoh preset 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);Contoh preset Cognito
Judul bagian “Contoh preset 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);Contoh preset Okta
Contoh preset Oktaawait 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);Contoh preset OneLogin
Judul bagian: Contoh preset 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);Mengganti endpoint
Judul bagian: Mengganti endpointSetiap preset membuat konfigurasi OAuth2 default dari domain atau issuer. Jika penyewa Anda menggunakan endpoint kustom, ubah langsung:
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', }, },});Konfigurasi OAuth2 langsung
Bagian berjudul “Konfigurasi OAuth2 Langsung”Jika Anda tidak ingin menggunakan preset, konfigurasi penyedia yang sama secara langsung di dokumen OAuth2 umum:
Catatan Migrasi
Bagian berjudul “Catatan Migrasi”-
Layer Kompatibilitas berbasis OAuth2 Menggunakan nama penyedia, bukan detail implementasi asli Ionik.
-
Token refresh masih bergantung pada ruang lingkup Request
offline_accessatau setara penyedia khusus ketika Anda memerlukan token refresh. -
Endpoint kustom dapat mengatasi preset Jika presetnya hampir tapi tidak tepat, atasi hanya endpoint yang berbeda.
-
Direktur
oauth2masuk memenangkan Jika Anda mendefinisikan baikauthConnect.auth0danoauth2.auth0, maka direkturoauth2konfigurasi mengambil prioritas.
Dokumentasi Terkait
Judul bagian “Dokumentasi Terkait”- Mulai Membuat Login Sosial
- Penyedia OAuth2 dan OIDC
- Migrasi dari Ionic Auth Connect
- Solusi Migrasi Plugin Enterprise Ionic
Maju terus dari Migrasi Autentikasi Ionic Connect ke @capgo/capacitor-login-sosial
Judul bagian ini adalah “Maju terus dari Migrasi Autentikasi Ionic Connect ke @capgo/capacitor-login-sosial”Jika Anda menggunakan Migrasi Autentikasi Ionic Connect ke @capgo/capacitor-login-sosial untuk merencanakan autentikasi dan alur akun, hubungkannya dengan Menggunakan @capgo/capacitor-login-sosial untuk kemampuan asli dalam Menggunakan @capgo/capacitor-login-sosial, @capgo/capacitor-login-sosial untuk detail implementasi dalam @capgo/capacitor-login-sosial, @capgo/capacitor-passkey untuk detail implementasi dalam @capgo/capacitor-passkey, @capgo/capacitor-biometrik-asli untuk detail implementasi di @capgo/capacitor-native-biometric, dan Autentikasi Dua Faktor untuk detail implementasi di Autentikasi Dua Faktor.