Backend-Hinweise
Kopiere einen Setup-Prompt mit den Installationsschritten und dem vollständigen Markdown-Guide für dieses Plugin.
Dein Backend steuert weiterhin den normalen WebAuthn-Prozess:
- Generierung von Registration- und Authentication-Challenges
- Verifizierung von Attestation- und Assertion-Responses
- Validierung der Relying-Party-ID und der Challenges
- Speichere Credentials und Counter genau wie bei einem Browser-Flow
Was unverändert bleibt
Abschnitt: „Was gleich bleibt“Das Plugin ist so konzipiert, dass die Frontend-Struktur deiner bestehenden WebAuthn code erhalten bleibt.
- Im Web leitet es an die echte WebAuthn API des Browsers weiter.
- Bei nativem Capacitor liefert es browserähnliche Credential-Objekte zurück, die auf nativen Passkey-APIs basieren.
- Dein Backend kann die gleiche Challenge- und Verification-Pipeline beibehalten.
Was sich unter Android ändert
Abschnitt: „Was sich unter Android ändert“Native Android Passkeys entsprechen nicht exakt dem Trust-Modell eines Browsers.
- Digital Asset Links ermöglichen es Android, dasselbe Relying-Party- und Credential-Ökosystem wie deine Website nutzt.
- Der tatsächliche
clientDataJSON.originWert kann sich weiterhin von der Website-Origin unterscheiden. - Falls dein Server alles außer
https://your-domain, Android-native Assertions können fehlschlagen, selbst wenn der Passkey ansonsten gültig ist.
Empfohlene Backend-Regel
Abschnitt mit dem Titel „Empfohlene Backend-Regel“Wenn du native Android Passkeys unterstützt, musst du sowohl die erwartete Browser-Origin als auch die erwartete Android-App-Origin für dieselbe Relying Party zulassen.
Das bietet dir:
- Browser-Support für die Website
- Native Passkey-Unterstützung in der Capacitor App
- Ein Passkey-Ökosystem für dieselbe Relying-Party-Domain
Falls du direkte JSON-safe Calls benötigst
Abschnitt mit dem Titel „Falls du direkte JSON-safe Calls benötigst“Wenn dein Backend bereits zurückgibt PublicKeyCredentialCreationOptionsJSON und PublicKeyCredentialRequestOptionsJSON, kannst du auch das direkte API Plugin anstelle des Browser-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,});Weiterlesen in Backend Notes
Abschnitt mit dem Titel „Weiterlesen in Backend Notes“Wenn du es nutzt Backend-Hinweise Um Authentifizierungs- und Account-Flows zu planen, verbinde es mit @capgo/capacitor-passkey verwenden für die native Funktion in „@capgo/capacitor-passkey verwenden“, @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-biometric für die Implementierungsdetails in @capgo/capacitor-native-biometric, und Zwei-Faktor-Authentifizierung für die Implementierungsdetails zur Zwei-Faktor-Authentifizierung.