Android Setup & Backend-Verifizierung
Kopieren Sie einen Einstellungsvorschlag mit den Installationsanweisungen und der vollständigen Markdown-Guideline für diesen Plugin.
Das native Android-System wird verwendet
Abschnitt mit dem Titel „Android native System verwendet“Auf Android verwendet dieses Plugin Google Play Integrity Standard API:
prepareIntegrityTokenwährendprepare()requestStandardIntegrityTokenfürcreateAttestation()undcreateAssertion()
Anforderungen
Abschnitt mit dem Titel „Anforderungen“- Android-Anwendung, die über das Google Play-Ökosystem verteilt wird
- Google Play-Dienste stehen auf dem Gerät zur Verfügung
- Play Integrity API aktiviert für Ihre App
- Google-Cloud-Projekt-ID konfiguriert
Google-Einrichtung
Abschnitt mit dem Titel „Google-Einrichtung“- Aktivieren Play Integrity API in Ihrem Google-Cloud-Projekt.
- Öffnen Sie das Play-Konsolenfenster und konfigurieren Sie den Zugriff auf Play Integrity für Ihre App.
- Bereitstellen
cloudProjectNumberfür das Plugin.
Capacitor-Konfiguration
Abschnitt mit dem Titel “Capacitor-Konfiguration”plugins: { AppAttest: { cloudProjectNumber: '123456789012', },}Sie können auch cloudProjectNumber pro Aufruf in den Optionen der Methode.
Client-Flow
Abschnitt mit dem Titel “Client-Flow”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 ist ein Play-Integritätstoken und muss serverseitig entschlüsselt werden.
Hintergrundworkflow (Android)
Abschnitt: Hintergrundworkflow (Android)Registrierung (createAttestation)
Abschnitt: Registrierung (createAttestation)- Hintergrund erstellt einen einmaligen
challenge. - Die App ruft
createAttestation({ keyId, challenge }). - Hintergrund ruft Google
decodeIntegrityTokenAPI. - Hintergrund überprüft mindestens:
requestDetails.requestHash === base64url(SHA256(challenge))appIntegrity.packageNameentspricht Ihrem Android-Anwendungs-IDappIntegrity.certificateSha256Digestenthält Ihren Release-Signierungszertifikats-Digest- Integritätsurteile stimmen Ihrer Sicherheitspolitik
Anfrage schützen (createAssertion)
Sektion: Anfrage schützen (createAssertion)- Hintergrund erstellt eine einmalige
payload. - App ruft
createAssertion({ keyId, payload }). - Hintergrund entschlüsselt Token und überprüft
requestHash === base64url(SHA256(payload)). - Zwingen Sie die Wiederholungsverhinderung (einezeitig + TTL) und die Integritätsurteilsrichtlinie.
Android-Schema
Sektion: Android-SchemasequenceDiagram 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 policyMinimaler Hintergrundlastvertrag
Sektion: Minimaler HintergrundlastvertragRegistrierung:
{ "platform": "android", "format": "google-play-integrity-standard", "keyId": "string", "challenge": "string", "token": "string"}Behauptung:
{ "platform": "android", "format": "google-play-integrity-standard", "keyId": "string", "payload": "string", "token": "string"}Weitermachen von Android-Einrichtung und Backend-Verifizierung
Abschnitt mit dem Titel „Weitermachen von Android-Einrichtung und Backend-Verifizierung”Wenn Sie Android-Einrichtung und Backend-Verifizierung zur Planung von Sicherheit und Compliance verwenden, verbinden Sie es mit Mit @capgo/capacitor-app-attest für die native Fähigkeit in Mit @capgo/capacitor-app-attest, Verschlüsselung für die Implementierungsdetails in Verschlüsselung, Kongruenz für die Implementierungsdetails in Kongruenz, Capgo Sicherheits-Scanner für den Produktworkflow in Capgo Sicherheits-Scanner, und Capgo Sicherheit für den Produktworkflow in Capgo Sicherheit.