Migrasi Auth Connect Ionic ke @capgo/capacitor-login-social
Copy prompt pengaturan dengan langkah-langkah instalasi dan panduan markdown lengkap untuk plugin ini.
Ringkasan
Bab berjudul “Ringkasan”Capgo Penggunaan Social Login menggantikan Ionic Auth Connect dengan aliran OAuth2 native penyedia untuk Google, Apple, Facebook, dan penyedia identitas lainnya. Ini mendukung beberapa penyedia dalam satu plugin dan berfungsi di iOS, Android, dan Web.
Mengapa ini berhasil
Bab berjudul “Mengapa ini berhasil”Plugin ini termasuk wrapper kompatibilitas Auth Connect bernama SocialLoginAuthConnectIt menerjemahkan ID penyedia Ionic Auth Connect yang familiar ke mesin OAuth2 bawaan, sehingga Anda dapat terus menggunakan nama-nama seperti auth0, azure, dan okta.
Instalasi
Bab berjudul “Instalasi”npm install @capgo/capacitor-social-loginnpx cap syncGanti import Anda
Bab berjudul “Ganti Import Anda”// Beforeimport { AuthConnect } from '@ionic-enterprise/auth-connect';
// Afterimport { SocialLoginAuthConnect } from '@capgo/capacitor-social-login';Initiasi penyedia
Bab berjudul “Initiasi Penyedia”Pakai 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 Dapat Dibuka
Bab berjudul “ID Penyedia yang Dapat Dibuka”auth0azurecognitooktaonelogin
Login, keluar, dan akses token
Bagian berjudul “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 provider
Bagian berjudul “Contoh preset spesifik provider”Contoh preset Auth0
Bagian berjudul “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
Bab 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
Bab 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 berjudul “Mengganti endpoint”Masing-masing preset membuat konfigurasi OAuth2 default dari domain atau issuerJika 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
Bab yang berjudul “Catatan Migrasi”-
Lapisan Kompatibilitas berbasis OAuth2 Memelihara nama penyedia, bukan detail implementasi asli Ionik.
-
Token refresh masih bergantung pada ruang lingkup Pilih
offline_accessatau setara provider khusus ketika Anda membutuhkan token refresh. -
Endpoint kustom dapat menggantikan preset Jika presetnya sudah hampir tapi tidak tepat, override hanya endpoint yang berbeda.
-
Langsung
oauth2masuk Jika Anda mendefinisikan baikauthConnect.auth0danoauth2.auth0context":"Halaman/area: Situs web pemasaran Capgo. Peran: Label UI singkat atau item navigasi. Dilihat di: halaman trust.astro. Kunci pesan `dan` (Dan)."oauth2endpoint langsung
konfigurasi langsung mengambil prioritas.
Dokumentasi Terkait- Bab berjudul "Dokumentasi Terkait"
- Pembuatan Mulai Login Sosial","OAuth2 dan OIDC penyedia"
- Migrasi dari Ionic Auth Connect
- Pemutakhiran solusi plugin Ionic enterprise
Teruskan dari Migrasi Ionic Auth Connect ke @capgo/capacitor-social-login
Judul bagian “Teruskan dari Migrasi Ionic Auth Connect ke @capgo/capacitor-social-login”Jika Anda menggunakan Migrasi Ionic Auth Connect ke @capgo/capacitor-social-login untuk merencanakan autentikasi dan alur akun, hubungkannya dengan Menggunakan @capgo/capacitor-social-login untuk kemampuan native di Menggunakan @capgo/capacitor-social-login, @capgo/capacitor-social-login untuk detail implementasi di @capgo/capacitor-social-login, @capgo/capacitor-passkey untuk detail implementasi di @capgo/capacitor-passkey, @capgo/capacitor-native-biometric untuk detail implementasi di @capgo/capacitor-native-biometric, dan Dua Faktor Autentikasi untuk detail implementasi di Dua Faktor Autentikasi.