Zum Inhalt springen

Hintergrundnotizen

GitHub

Ihr Backend besitzt den normalen WebAuthn-Zeremoniell noch immer:

  • Registrierungs- und Authentifizierungs-Challenges generieren
  • Überprüfen Sie die Attestations- und Anmeldeantworten
  • Überprüfen Sie die Relying-Party-ID und die Herausforderungsvalidierung.
  • Speichern Sie die Anmeldeinformationen und die Zähler auf die gleiche Weise wie für einen Browser-Flow

Das Plugin ist so konzipiert, dass es die Vorderseite Ihres bestehenden WebAuthn code beibehält.

  • Im Web wird es an den echten Browser-WebAuthn API weitergeleitet.
  • Bei nativen Capacitor gibt es browserähnliche Anmeldeinformationen, die durch native Passkey-APIs unterstützt werden.
  • Ihr Backend kann den gleichen Challenge- und Verifizierungs-Pipeline beibehalten.

Android native Passkeys entsprechen nicht dem Browser-Vertrauensmodell.

  • Digital Asset Links lassen Android denselben Relying-Party und das Kredit-Ökosystem wie Ihre Website teilen.
  • Der wörtliche clientDataJSON.origin Wert kann sich trotzdem von der Website-Origins unterscheiden.
  • Wenn Ihr Server nur etwas außer https://your-domainAndroid-native Behauptungen können auch dann fehlschlagen, wenn der Passkey ansonsten gültig ist.

Erwarten Sie die erwartete Browser-Origins und die erwartete Android-App-Origins für denselben Relying-Party, wenn Sie native Android-Passkeys unterstützen.

Das gibt Ihnen:

  • Browserunterstützung für die Website
  • native Passkey-Unterstützung in der Capacitor App
  • eine Passkey-Ökosystem für denselben Relying-Party-Domain

Wenn Ihr Backend bereits JSON-sichere Aufrufe zurückgibt PublicKeyCredentialCreationOptionsJSON und PublicKeyCredentialRequestOptionsJSONSie können auch den direkten Plugin API anstelle des Browser-Style-Shims verwenden

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,
});

Wenn Sie Backend Notes verwenden Hintergrundinformationen um die Authentifizierung und die Kontenflüsse zu planen, verbinden Sie es mit Mit @capgo/capacitor-passkey für die native Fähigkeit in @capgo/capacitor-Passkey, @capgo/capacitor-Social-Login für die Implementierungsdetails in @capgo/capacitor-Social-Login, @capgo/capacitor-Passkey für die Implementierungsdetails in @capgo/capacitor-Passkey, @capgo/capacitor-Native-Biometrik für die Implementierungsdetails in @capgo/capacitor-Native-Biometrik und Zwei-Faktor-Authentifizierung für die Implementierungsdetails in Zwei-Faktor-Authentifizierung.