Configuration Android & vérification du backend
Copiez un prompt de configuration avec les étapes d'installation et le 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 Play disponibles sur le dispositif
- Intégrité de Play activée API pour votre application
- Numéro de projet Cloud Google configuré
Configuration Google
Section intitulée “Configuration Google”- Activer Intégrité de Play API dans votre projet Cloud Google.
- Ouvrez le console de Play et configurez l'accès à l'intégrité de Play 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 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) »- Backend crée une assertion unique
challenge. - L'application appelle
createAttestation({ keyId, challenge }). - Le backend appelle Google
decodeIntegrityTokenAPI. - Le backend vérifie au minimum :
requestDetails.requestHash === base64url(SHA256(challenge))appIntegrity.packageNameest égal à votre identifiant d'application AndroidappIntegrity.certificateSha256Digestcontient le digest de votre certificat de signature de version de sortie- les verdicts d'intégrité correspondent à votre politique de sécurité
Protection de la demande (createAssertion)
Section intitulée « Protection de la demande (createAssertion) »- Backend crée une assertion unique
payload. - L'application appelle
createAssertion({ keyId, payload }). - Backend décode le jeton et vérifie
requestHash === base64url(SHA256(payload)). - Exigez la prévention de replay (utilisation unique + TTL) et la politique de verdict 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"}Affirmation :
{ "platform": "android", "format": "google-play-integrity-standard", "keyId": "string", "payload": "string", "token": "string"}Continuez de la configuration Android & vérification backend
Section intitulée « Continuez de la configuration Android Setup & Vérification de l'arrière-plan »Si vous utilisez la configuration Android Setup & Vérification de l'arrière-plan pour planifier la sécurité et la conformité, connectez-la avec Utilisez @capgo/capacitor-app-attest pour la capacité native dans Utilisez @capgo/capacitor-app-attest, Chiffrement pour le détail d'implémentation dans Chiffrement, Conformité pour le détail d'implémentation dans Conformité, 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é.