Aller directement au contenu

Notes de backend

GitHub

Votre backend conserve toujours la cérémonie WebAuthn normale :

  • Générer des défis d'enregistrement et d'authentification
  • Vérifier les réponses d'attestation et d'assertion
  • Valider l'ID de la partie dépendante et la validation du défi
  • stockez les informations de connexion et les compteurs de la même manière que vous le feriez pour un flux de navigateur

Le plugin est conçu pour préserver la forme frontale de votre WebAuthn existant code.

  • Sur le web, il redirige vers le vrai navigateur WebAuthn API.
  • Sur native Capacitor, il retourne des objets de connexion de type navigateur similaires, basés sur les API de passkey natives.
  • Votre backend peut conserver la même pipeline de défi et de vérification.

Les passkeys natives d'Android ne sont pas identiques au modèle de confiance d'un navigateur.

  • Les liens d'actif numérique permettent à Android de partager le même partenaire de confiance et écosystème de jetons que votre site web.
  • La littérale clientDataJSON.origin La valeur peut toujours différer de l'origine du site web.
  • Si votre serveur rejette uniquement https://your-domainLes assertions natives Android peuvent échouer même lorsque la clé de passe est valide dans d'autres cas.

Autorisez l'origine du navigateur attendue et l'origine de l'application Android attendue pour le même partenaire de confiance lorsque vous supportez les clés de passe natives Android.

Cela vous donne :

  • Support du navigateur pour le site web
  • Support de la clé de passe native dans l'Capacitor application
  • Une seule écosystème de clés de passe pour le même domaine partenaire de confiance

Si votre backend renvoie déjà PublicKeyCredentialCreationOptionsJSON et PublicKeyCredentialRequestOptionsJSON, vous pouvez également utiliser le plugin direct API au lieu du shim de style navigateur :

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

Si vous utilisez Backend Notes pour planifier les flux d'authentification et de comptes, connectez-le avec En utilisant @capgo/capacitor-passkey pour la capacité native en En utilisant @capgo/capacitor-passkey, @capgo/capacitor-social-login pour les détails d'implémentation dans @capgo/capacitor-login-social, @capgo/capacitor-passkey pour les détails d'implémentation dans @capgo/capacitor-passkey, @capgo/capacitor-biométrique-natif pour les détails d'implémentation dans @capgo/capacitor-biométrique-natif, et L'authentification à deux facteurs pour les détails d'implémentation dans L'authentification à deux facteurs.