Passer à la navigation

Démarrage

GitHub

Vous pouvez utiliser notre configuration assistée par l'IA pour installer le plugin. Ajoutez les Capgo compétences à votre outil IA à l'aide de la commande suivante :

Fenêtre de terminal
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins

Ensuite, utilisez la prompt suivante :

Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-app-attest` plugin in my project.

Si vous préférez la configuration manuelle, installez le plugin en exécutant les commandes suivantes et suivez les instructions spécifiques à la plateforme ci-dessous :

  1. Installer le package

    Fenêtre de terminal
    bun add @capgo/capacitor-app-attest
  2. Synchroniser les projets natifs

    Fenêtre de terminal
    bunx cap sync
  3. Configure les exigences de la plateforme

    • Completez Configuration iOS pour la capacité d'attestation d'applications et le flux de vérification backend.
    • Completez Configuration Android pour le standard d'intégrité de Play et le flux de vérification backend.

Ce plugin fournit une solution cross-plateforme unique API tout en conservant la sécurité native de la plateforme :

  • iOS : Attestation d'applications Apple (DeviceCheck)
  • Android : Standard d'intégrité de Play Google API
  • No schéma de cryptographie côté client personnalisé
  • Sorties normalisées pour les vérifications côté serveur
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);

createAttestation() et createAssertion() retourner les mêmes champs de clé sur iOS et Android :

ChampTypeDescription
platform'ios' | 'android' | 'web'Plateforme native qui a produit le jeton
formatAttestationFormatapple-app-attest ou google-play-integrity-standard
keyIdstringou
tokenstringIdentifiant ou fournisseur utilisé pour l'attestation

Jeton à vérifier sur votre serveur

Exigence du serveur

Section intitulée « Exigence du serveur »

  • L'attestation n'est utile que lorsqu'elle est vérifiée côté serveur.
  • Ne faites jamais confiance à un succès uniquement côté client.
  • Exigez des valeurs de défi/payload uniques d'un seul coup de votre serveur. tokenVérifiez

, identité d'application, et protections contre la reprise dans la logique du serveur.

Si vous utilisez Démarrage pour planifier la sécurité et la conformité, connectez-l’avec Utilisation de @capgo/capacitor-app-attest pour la capacité native dans Utilisation de @capgo/capacitor-app-attest Chiffrement pour le détail d'implémentation dans Chiffrement Conformité pour les détails d'implémentation dans Compliance, Capgo Scanner de sécurité pour le flux de travail du produit dans Capgo Scanner de sécurité, et Capgo Sécurité pour le flux de travail du produit dans Capgo Sécurité.