Saltar al contenido

Notas de backend

Tu backend sigue teniendo el normal rito de WebAuthn:

  • generar desafíos de registro y autenticación
  • verificar respuestas de atestación y afirmación
  • imponer la validación del ID de la parte que confía y del desafío
  • almacenar credenciales y contrarrestar de la misma manera que lo harías para un flujo de navegador

El plugin está diseñado para preservar la forma de frente de tu WebAuthn code existente.

  • En la web, se envía a la autenticación de navegador real de WebAuthn API.
  • En nativo Capacitor, devuelve objetos de credenciales de navegador similares respaldados por APIs de passkey nativas.
  • Su servidor puede mantener el mismo pipeline de desafío y verificación.

Las claves de acceso nativas de Android no son idénticas al modelo de confianza de un navegador.

  • Los enlaces de activos digitales permiten a Android compartir el mismo partido de confianza y ecosistema de credenciales que su sitio web.
  • El literal clientDataJSON.origin __CAPGO_KEEP_0__
  • El valor puede diferir aún del origen del sitio web. https://your-domainSi su servidor rechaza cualquier cosa excepto
Recomendación de servidor

Sección titulada “Recomendación de servidor”

Eso te da:

  • soporte del navegador para el sitio web
  • soporte de passkey nativo en la aplicación Capacitor
  • un ecosistema de passkey para el mismo dominio de la parte que confía

Si tu backend ya devuelve PublicKeyCredentialCreationOptionsJSON y PublicKeyCredentialRequestOptionsJSONtambién puedes utilizar el plugin directo API en lugar del shim de navegador:

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