Empezar
Copie una línea de comando con los pasos de instalación y la guía de markdown completa para este plugin.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-app-attest`
Run the required Capacitor sync/update step after installation.
Read this markdown guide for the full setup steps: https://raw.githubusercontent.com/Cap-go/website/refs/heads/main/apps/docs/src/content/docs/docs/plugins/app-attest/getting-started.mdx
Use that guide for platform-specific steps, native file edits, permissions, config changes, imports, and usage setup.
If that guide references other docs pages, read them too.
-
Instale el paquete
ventana de terminal bun add @capgo/capacitor-app-attest -
Sincronizar proyectos nativos
ventana de terminal bunx cap sync -
Configurar requisitos de plataforma
- Completo Configuración de iOS para la capacidad de Attest de App y flujo de verificación de backend.
- Completo Configuración de Android para el estándar de integridad de Play y flujo de verificación de backend.
¿Por qué utilizar este plugin
Sección titulada “¿Por qué utilizar este plugin”Este plugin proporciona una API de una sola plataforma cruzada mientras mantiene la seguridad de la plataforma nativa:
- iOS: Attest de Aplicación de Apple (
DeviceCheck) - Android: estándar de integridad de Google Play API
- Sin esquema de criptografía cliente personalizado
- Salidas normalizadas para comprobaciones de backend
import { AppAttest } from '@capgo/capacitor-app-attest';
const support = await AppAttest.isSupported();if (!support.isSupported) { throw new Error(`Attestation not supported on ${support.platform}`);}
const prepared = await AppAttest.prepare();
const registration = await AppAttest.createAttestation({ keyId: prepared.keyId, challenge: 'backend-one-time-registration-challenge',});
const assertion = await AppAttest.createAssertion({ keyId: prepared.keyId, payload: 'backend-one-time-request-payload',});
console.log(registration.platform, registration.format, registration.token);console.log(assertion.platform, assertion.format, assertion.token);Forma de respuesta unificada
Sección titulada “Forma de respuesta unificada”createAttestation() y createAssertion() devuelve los mismos campos clave en iOS y Android:
| Campo | Tipo | Descripción |
|---|---|---|
platform | 'ios' | 'android' | 'web' | Plataforma nativa que produjo el token |
format | AttestationFormat | apple-app-attest o google-play-integrity-standard |
keyId | string | Identificador de proveedor clave utilizado para la autenticación |
token | string | Token para verificar en su backend |
Requisito del backend
Sección titulada “Requisito del backend”La atestación solo es útil cuando se verifica en el lado del servidor.
- Nunca confíes en el éxito solo en el lado del cliente.
- Requiere valores de desafío/payload de una sola vez desde tu backend.
- Verificar
tokenProtege la identidad de la aplicación y la protección contra retransmisiones en la lógica del backend.
Utiliza las guías de backend específicas de la plataforma: