개요
“개요” 섹션@capgo/capacitor-social-login Web, iOS, Android를 위한 올인원 소셜 인증 플러그인입니다.
다음 기능을 구현합니다:
- Android Credential Manager를 통한 Google Sign-In
- Android OAuth를 포함한 Sign in with Apple
- 최신 Facebook SDK를 이용한 Facebook Login
- OAuth 2.0을 통한 Twitter/X
- GitHub, Microsoft Entra ID, Auth0, Okta, Keycloak 및 기타 표준 서버를 포함한 범용 OAuth2 및 OIDC 제공업체
Ionic Appflow Social Login 또는 Ionic Auth Connect에서 전환하는 앱을 위한 Capgo 마이그레이션 경로이기도 합니다.
Fork 및 마이그레이션 참고 사항
“Fork 및 마이그레이션 참고 사항” 섹션이 플러그인은 다음의 fork로 시작되었습니다: @codetrix-studio/capacitor-google-auth. 원본 패키지는 사실상 아카이브되어, Capgo이 이 플러그인을 지원되는 대체 플러그인으로 유지 관리합니다.
여전히 다음을 사용 중이라면 @codetrix-studio/capacitor-google-auth, 다음을 따르세요: 기존 Google Auth 마이그레이션 가이드.
Ionic Auth Connect에서 마이그레이션하는 경우, 내장된 SocialLoginAuthConnect wrapper를 사용하세요: auth0, azure, cognito, okta, 그리고 onelogin 프로바이더 이름:
호환성
“호환성” 섹션| 플러그인 버전 | Capacitor 호환성 | 유지 관리 중 |
|---|---|---|
| v8.x | v8.x | 지원 |
| v7.x | v7.x | 요청 시 제공 |
| v6.x | v6.x | 아니요 |
| v5.x | v5.x | 아니요 |
이 플러그인의 메이저 버전은 Capacitor의 메이저 버전을 따릅니다. 예를 들어, Capacitor 8 버전에는 플러그인 v8을 사용하세요. 최신 메이저 버전만 지속적으로 유지보수됩니다.
비디오 가이드
“비디오 가이드” 섹션플러그인 설정 및 실제 로그인 흐름을 데모 영상으로 확인해 보세요.
핵심 기능
“핵심 기능” 섹션initialize- 플러그인을 초기화합니다.login- 선택한 프로바이더로 로그인합니다.logout- 로그아웃합니다.isLoggedInIsLoggedIn 여부
공개 API
“Public API” 섹션| 메서드 | 설명 |
|---|---|
initialize | 플러그인 초기화 |
login | 선택한 프로바이더로 로그인 |
logout | 로그아웃 |
isLoggedIn | 로그인 여부 |
getAuthorizationCode | 현재 code 인증 정보를 가져옵니다. |
refresh | 액세스 토큰을 갱신합니다. |
refreshToken | 내장 OAuth2 프로바이더를 위한 OAuth2 refresh-token 헬퍼입니다. |
handleRedirectCallback | Web 전용: OAuth 리다이렉트 콜백을 처리하고 파싱된 결과를 반환합니다. |
decodeIdToken | JWT(일반적으로 OIDC ID 토큰)를 디코딩하여 클레임을 추출합니다. |
getAccessTokenExpirationDate | 액세스 토큰 만료 타임스탬프(Unix epoch 기준 밀리초)를 ISO 날짜 문자열로 변환합니다. |
isAccessTokenAvailable | 액세스 토큰이 있는지(비어 있지 않은지) 확인합니다. |
isAccessTokenExpired | 액세스 토큰이 만료되었는지 확인합니다. |
isRefreshTokenAvailable | 리프레시 토큰이 있는지(비어 있지 않은지) 확인합니다. |
providerSpecificCall | 프로바이더별 호출을 실행합니다. |
getPluginVersion | 네이티브 Capacitor 플러그인 버전을 가져옵니다. |
openSecureWindow | OAuth2 인증을 위한 보안 창을 엽니다. 웹의 경우, 리다이렉트된 페이지에 code를 포함하여 브로드캐스트 채널을 통해 리다이렉트 URL을 앱으로 전송해야 합니다. 예시는 다음과 같습니다: html <html> <head></head> <body> <script> const searchParams = new URLSearchParams(location.search) if (searchParams.has("code")) { new BroadcastChannel("my-channel-name").postMessage(location.href); window.close(); } </script> </body> </html> 모바일의 경우, 앱을 실행할 수 있는 리다이렉트 URI가 필요합니다. 예시는 다음과 같습니다: myapp://oauth_callback/ 앱의 info.plist에 해당 URI를 반드시 등록하세요: xml <key>CFBundleURLTypes</key> <array> <dict> <key>CFBundleURLSchemes</key> <array> <string>myapp</string> </array> </dict> </array> 그리고 AndroidManifest.xml 파일에도 등록해야 합니다: xml <activity> <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:host="oauth_callback" android:scheme="myapp" /> </intent-filter> </activity> . |
Source of Truth
“Source Of Truth” 섹션이 레퍼런스는 다음에서 동기화됩니다. src/definitions.ts 에서 capacitor-social-login.
@capgo/capacitor-social-login에서 계속하기
“@capgo/capacitor-social-login에서 계속하기” 섹션사용 중이라면 @capgo/capacitor-social-login 인증 및 계정 흐름을 설계할 때, 이를 다음 항목과 연결하세요: @capgo/capacitor-social-login 사용하기 @capgo/capacitor-social-login 사용 시 네이티브 기능을 위해, @capgo/capacitor-passkey @capgo/capacitor-passkey의 구현 세부 사항은 @capgo/capacitor-native-biometric @capgo/capacitor-native-biometric의 구현 세부 사항은, 2단계 인증 2단계 인증(Two-factor authentication)의 구현 세부 사항은, SSO (기업용) SSO (Enterprise)의 구현 세부 사항은.