Configuration Android & vérification backend
Copiez un prompt de configuration avec les étapes d'installation et la guide Markdown complet pour ce plugin.
Système natif Android utilisé
Section intitulée “Système natif Android utilisé”Sur Android, ce plugin utilise Standard de l'intégrité Google Play API:
prepareIntegrityTokenpendantprepare()requestStandardIntegrityTokenpourcreateAttestation()etcreateAssertion()
Exigences
Section intitulée « Exigences »- Application Android distribuée à travers l'écosystème Google Play
- Services Google disponibles sur le dispositif
- Intégrité Play API activée pour votre application
- Numéro de projet Google Cloud configuré
Configuration Google
Section intitulée « Configuration Google »- Activer Intégrité de jeu API dans votre projet Cloud Google.
- Ouvrez le console de jeu et configurez l'accès à l'intégrité de jeu pour votre application.
- Fournir
cloudProjectNumberau plugin.
Capacitor config
Section intitulée “Capacitor config”plugins: { AppAttest: { cloudProjectNumber: '123456789012', },}Vous pouvez également passer cloudProjectNumber par appel dans les options de méthode.
Flux client
Section intitulée « Flux du client »import { AppAttest } from '@capgo/capacitor-app-attest';
const { keyId } = await AppAttest.prepare({ cloudProjectNumber: '123456789012',});
const attestation = await AppAttest.createAttestation({ keyId, challenge: 'backend-registration-challenge',});
const assertion = await AppAttest.createAssertion({ keyId, payload: 'backend-request-payload',});token s'agit d'un jeton d'intégrité Play et doit être décodé côté serveur.
Flux de travail de l'arrière-plan (Android)
Section intitulée « Flux de travail de l'arrière-plan (Android) »Inscription (createAttestation)
Section intitulée « Inscription (createAttestation) »- L'arrière-plan crée un code d'accès unique
challenge. - L'application appelle
createAttestation({ keyId, challenge }). - L'arrière-plan appelle Google
decodeIntegrityTokenAPI. - L'arrière-plan vérifie au minimum :
requestDetails.requestHash === base64url(SHA256(challenge))appIntegrity.packageNameéquivaut à votre identifiant d'application AndroidappIntegrity.certificateSha256Digestcontient votre digest de certificat de signature de version- les verdicts d'intégrité correspondent à votre politique de sécurité
Protection des requêtes (createAssertion)
Section intitulée “Protection des requêtes (createAssertion)”- Le serveur crée un jeton à usage unique
payload. - L'application appelle
createAssertion({ keyId, payload }). - Le serveur décode le jeton et vérifie
requestHash === base64url(SHA256(payload)). - Appliquer la prévention de replay (utilisation unique + TTL) et la politique de verdicts d'intégrité.
Schéma Android
Section intitulée “Schéma Android”sequenceDiagram participant App as Android App participant Plugin as AppAttest plugin participant PlaySDK as Play Integrity SDK participant BE as Backend participant Google as decodeIntegrityToken API
App->>Plugin: prepare(cloudProjectNumber) Plugin->>PlaySDK: prepareIntegrityToken() PlaySDK-->>Plugin: provider handle (keyId)
BE->>App: one-time challenge App->>Plugin: createAttestation(keyId, challenge) Plugin->>PlaySDK: requestStandardIntegrityToken(requestHash) PlaySDK-->>Plugin: integrity token Plugin-->>App: token + platform + format + keyId App->>BE: token + challenge + keyId BE->>Google: decodeIntegrityToken(token) Google-->>BE: decoded payload BE->>BE: verify requestHash + app identity + verdicts
BE->>App: one-time payload App->>Plugin: createAssertion(keyId, payload) Plugin->>PlaySDK: requestStandardIntegrityToken(requestHash) PlaySDK-->>Plugin: integrity token App->>BE: token + payload + keyId BE->>Google: decodeIntegrityToken(token) Google-->>BE: decoded payload BE->>BE: verify requestHash + replay policyContrat de payload backend minimal
Section intitulée “Contrat de payload backend minimal”Inscription :
{ "platform": "android", "format": "google-play-integrity-standard", "keyId": "string", "challenge": "string", "token": "string"}Énoncé :
{ "platform": "android", "format": "google-play-integrity-standard", "keyId": "string", "payload": "string", "token": "string"}Continuer depuis la configuration Android et la vérification du backend
Section intitulée “Continuer depuis la configuration Android et la vérification du backend”Si vous utilisez Configuration Android et vérification du backend pour planifier la sécurité et la conformité, connectez-le avec En utilisant @capgo/capacitor-app-attest pour la capacité native en utilisant @capgo/capacitor-app-attest, Chiffrement pour le détail d'implémentation en Chiffrement, Conformité pour le détail d'implémentation en Conformité, Capgo Scanner de Sécurité pour le flux de travail du produit en Capgo Scanner de Sécurité, et Capgo Sécurité pour le flux de travail du produit en Capgo Sécurité.