내용으로 건너뛰기

__CAPGO_KEEP_0__

GitHub

백엔드에서는 일반 WebAuthn 절차를 유지합니다:

  • 등록 및 인증 챌린지 생성
  • 증명 및 진술 응답 확인
  • 존재하는 파티 ID 및 챌린지 검증 강제
  • 브라우저 흐름과 동일한 방식으로 자격증명 및 카운터를 저장

이 플러그인은 기존의 WebAuthn code의 프론트 엔드 형태를 보존하기 위해 설계되었습니다.

  • 웹에서, 실제 브라우저 WebAuthn API로 전달합니다.
  • 네이티브 Capacitor에서, 브라우저와 유사한 자격 증명 객체를 반환합니다. 이는 네이티브 패스 키 API에 의해 지원됩니다.
  • 백엔드에서는 동일한 challenge와 verification pipeline을 유지할 수 있습니다.

Android에서 변경되는 사항

Android에서 변경되는 사항

Android 네이티브 패스 키는 브라우저 신뢰 모델과 동일하지 않습니다.

  • 디지털 자산 링크를 통해 Android는 동일한 의존 파티와 자격 증명 생태계를 웹사이트와 공유할 수 있습니다.
  • literal clientDataJSON.origin 값은 여전히 웹사이트의 원본과 다를 수 있습니다.
  • 서버가 anything except https://your-domain를 거부하면, Android 네이티브 어설션은 패스 키가 유효하더라도 실패할 수 있습니다.
권장 백엔드 규칙 섹션

자신의 네이티브 안드로이드 패스키를 지원할 때, 동일한 의존 파티가 소유한 예상 브라우저 원본과 예상 안드로이드 앱 원본을 허용하세요.

그것은 다음과 같이 제공됩니다.

  • 웹사이트의 브라우저 지원
  • Capacitor 앱 내의 네이티브 패스키 지원
  • 동일한 의존 파티 도메인에 대한 하나의 패스키 생태계

직접 JSON-안전한 호출이 필요하면

직접 JSON-안전한 호출이 필요할 때 섹션

백엔드가 이미 반환하는 경우 PublicKeyCredentialCreationOptionsJSON 그리고 PublicKeyCredentialRequestOptionsJSON, 백엔드가 이미 반환하는 경우 API 직접 플러그인 대신 브라우저 스타일의 shim을 사용할 수 있습니다.

import { CapacitorPasskey } from '@capgo/capacitor-passkey';
const registration = await CapacitorPasskey.createCredential({
origin: 'https://signin.example.com',
publicKey: registrationOptionsFromBackend,
});
const authentication = await CapacitorPasskey.getCredential({
origin: 'https://signin.example.com',
publicKey: requestOptionsFromBackend,
});

백엔드 노트에서 계속

백엔드 노트에서 계속하기

백엔드 노트를 사용 중이라면 백엔드 노트 인증 및 계정 흐름을 계획하기 위해 사용하는 경우 @capgo/capacitor-passkey @capgo/capacitor-passkey @capgo/capacitor-social-login @capgo/capacitor-social-login @capgo/capacitor-passkey @capgo/capacitor-passkey @capgo/capacitor-native-생체인식 for the implementation detail in @capgo/capacitor-native-생체인식, and 두 단계 인증 for the implementation detail in 두 단계 인증.