Migrasi Ionic Auth Connect ke @capgo/capacitor-login-sosial
Salin prompt pengaturan dengan langkah instalasi dan panduan markdown lengkap untuk plugin ini.
Ringkasan
Bab berjudul “Ringkasan”Capgo 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
Bab berjudul “Mengapa ini berfungsi”Plugin ini termasuk wrapper kompatibilitas Auth Connect bernama SocialLoginAuthConnect. Ini menerjemahkan ID penyedia autentikasi Ionic yang familiar menjadi mesin OAuth2 bawaan, sehingga Anda dapat terus menggunakan nama seperti auth0, azure, and okta.
dan
Instalbun add @capgo/capacitor-social-loginbunx cap syncSalin ke clipboard
Ganti import Anda// Beforeimport { AuthConnect } from '@ionic-enterprise/auth-connect';
// Afterimport { SocialLoginAuthConnect } from '@capgo/capacitor-social-login';Salin ke clipboard
Inisialisasi penyediaanGunakan authConnect preset 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
Judul bagian “ID penyedia yang didukung”auth0azurecognitooktaonelogin
Login, keluar, dan akses token
Judul bagian “Login, 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
Bagian berjudul “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
Bagian berjudul “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
Bagian berjudul “Contoh preset 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);Contoh preset OneLogin
Bagian berjudul “Contoh preset 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);Mengganti endpoint
Bab yang berjudul “Mengganti endpoint”Preset setiap 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
Bab yang berjudul “Konfigurasi OAuth2 langsung”Jika Anda tidak ingin menggunakan preset, konfigurasi penyedia yang sama secara langsung di dokumen OAuth2 umum:
Catatan migrasi
Catatan migrasi-
Layer kompatibilitas berbasis OAuth2 Menggunakan nama penyedia, bukan implementasi asli Ionic.
-
Token refresh masih bergantung pada skop Permintaan
offline_accessatau setara penyedia khusus ketika Anda membutuhkan token refresh. -
Endpoint kustom dapat menggantikan preset Jika presetnya hampir tapi tidak tepat, override hanya endpoint yang berbeda.
-
Langsung
oauth2masuk Jika Anda mendefinisikan baikauthConnect.auth0danoauth2.auth0Jika langsungoauth2Konfigurasi mengambil prioritas.
Dokumentasi Terkait
Bab berjudul “Dokumentasi Terkait”- Mulai Membuat Login Sosial
- Penyedia OAuth2 dan OIDC
- Migrasi dari Ionic Auth Connect
- Solusi Migrasi Plugin Enterprise Ionic
Teruskan dari Migrasi Ionic Auth Connect ke @capgo/capacitor-social-login
Bab berjudul “Teruskan dari Migrasi Ionic Auth Connect ke @capgo/capacitor-social-login”Jika Anda menggunakan Migrasi Ionic Auth Connect ke @capgo/capacitor-social-login To 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 dalam @capgo/capacitor-biometrik-asli, dan Autentikasi dua faktor Untuk detail implementasi dalam Autentikasi dua faktor.