Prise en main
Copiez un prompt de configuration incluant les étapes d'installation et le guide markdown complet pour ce 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.
Installation
Section intitulée « Installation »Vous pouvez utiliser notre configuration assistée par IA pour installer le plugin. Ajoutez les skills Capgo à votre outil d'IA avec la commande suivante :
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsUtilisez ensuite le prompt suivant :
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 une installation manuelle, installez le plugin en exécutant les commandes suivantes et suivez les instructions spécifiques à chaque plateforme ci-dessous :
-
Installer le package
Fenêtre de terminal bun add @capgo/capacitor-app-attest -
Synchroniser les projets natifs
Fenêtre de terminal bunx cap sync -
Configurer les prérequis de la plateforme
- Complète Configuration iOS pour la capacité App Attest et le flux de vérification backend.
- Complète Configuration Android pour Play Integrity Standard et le flux de vérification côté backend.
Démarrage rapide
Section intitulée « Démarrage rapide »import { AppAttest } from '@capgo/capacitor-app-attest';
const support = await AppAttest.isSupported();if (!support.isSupported) throw new Error('Attestation unavailable');
const prepared = await AppAttest.prepare();const attestation = await AppAttest.createAttestation({ keyId: prepared.keyId, challenge: serverNonce,});await sendAttestationToBackend(attestation);Exemple : vérifier une requête authentifiée
Section intitulée « Exemple : vérifier une requête authentifiée »const assertion = await AppAttest.createAssertion({ keyId: storedKeyId, payload: requestHash,});Erreurs courantes
Section intitulée « Erreurs courantes »- Vérification côté serveur requise: ne vous fiez jamais uniquement aux blobs d’attestation sur l’appareil, validez-les sur votre serveur.
- Numéro de projet Play Integrity: Android Standard API nécessite le numéro de projet Google Cloud indiqué dans le README.
- Stockage des clés: utiliser
storeKeyId()et effacées à la déconnexion pour éviter les clés obsolètes.
Pourquoi utiliser ce plugin
Section intitulée « Pourquoi utiliser ce plugin »Ce plugin fournit une implémentation API multiplateforme tout en conservant la sécurité native :
- iOS : Apple App Attest (
DeviceCheck) - Android : Google Play Integrity Standard API
- Aucun schéma de chiffrement côté client personnalisé
- Sorties normalisées pour les vérifications backend
Utilisation
Section intitulée « Usage »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);Structure de réponse unifiée
Section intitulée « Format de réponse unifié »createAttestation() et createAssertion() renvoient les mêmes champs clés sur iOS et Android :
| Champ | Type | Description |
|---|---|---|
platform | 'ios' | 'android' | 'web' | Plateforme native ayant produit le token |
format | AttestationFormat | apple-app-attest ou google-play-integrity-standard |
keyId | string | Identifiant de clé/fournisseur utilisé pour l’attestation |
token | string | Token à vérifier sur votre backend |
Prérequis backend
Section intitulée « Prérequis backend »L'attestation n'est utile que si elle est vérifiée côté serveur.
- Ne faites jamais confiance à un succès uniquement côté client.
- Exigez des valeurs de challenge/payload à usage unique de votre backend.
- Vérifier
token, l’identité de l’app et les protections anti-rejeu dans la logique du backend.
Utilisez les guides backend spécifiques à la plateforme :
Continuer depuis Getting Started
Section intitulée « Continuer après Prise en main »Si vous utilisez Prise en main pour planifier la sécurité et la conformité, connectez-l’à Utiliser @capgo/capacitor-app-attest pour la capacité native dans la page « Utiliser @capgo/capacitor-app-attest », Chiffrement pour les détails d'implémentation du chiffrement, Conformité pour les détails d'implémentation de la conformité, Scanner de sécurité Capgo pour le workflow produit dans Capgo Security Scanner, et Capgo et la sécurité pour le workflow produit dans Capgo Security.