Pengaturan Android & Verifikasi Backend
Salin prompt pengaturan dengan langkah instalasi dan panduan markdown lengkap untuk plugin ini.
Bab berjudul “Menggunakan sistem native Android”
Pada Android, plugin ini menggunakanStandar Keamanan Google Play Integrity __CAPGO_KEEP_0__ Google Play Integrity Standard API:
prepareIntegrityTokenduringprepare()requestStandardIntegrityTokenuntukcreateAttestation()dancreateAssertion()
Persyaratan
Section titled “Requirements”- Aplikasi Android yang didistribusikan melalui ekosistem Google Play
- Jasa Google Play tersedia di perangkat
- Integritas Permainan API diaktifkan untuk aplikasi Anda
- Nomor Projek Google Cloud yang dikonfigurasi
Pengaturan Google
Section titled “Google setup”- Mengaktifkan Play Integrity API di proyek Google Cloud Anda.
- Terbuka Play Console dan atur akses Play Integrity untuk aplikasi Anda.
- Berikan
cloudProjectNumberke plugin.
Capacitor konfigurasi
Judul bagian “Capacitor konfigurasi”plugins: { AppAttest: { cloudProjectNumber: '123456789012', },}Salin ke clipboard cloudProjectNumber per panggilan dalam opsi metode.
Alur Klien
per panggilan dalam opsi metode.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 adalah token integritas Play dan harus di-dekode di sisi server.
Alur Backend (Android)
Section titled “Backend workflow (Android)”Pendaftaran (createAttestation)
Bab Pendaftaran (createAttestation)- Backend membuat kode satu kali
challenge. - App calls
createAttestation({ keyId, challenge }). - Backend memanggil Google
decodeIntegrityTokenAPI. - Backend memverifikasi setidaknya:
requestDetails.requestHash === base64url(SHA256(challenge))appIntegrity.packageNamesama dengan ID aplikasi Android AndaappIntegrity.certificateSha256Digestmengandung tanda tangan sertifikat rilis Anda (digest)- verifikasi integritas sesuai dengan kebijakan keamanan Anda
Request perlindungan (createAssertion)
Bab berjudul “Request perlindungan (createAssertion)”- Backend membuat token satu kali
payload. - App calls
createAssertion({ keyId, payload }). - Backend memecahkan token dan memeriksa
requestHash === base64url(SHA256(payload)). - Menggunakan kebijakan verifikasi integritas dan mencegah ulang penggunaan (single-use + TTL).
Schemas Android
Bab berjudul “Schemas 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 policyKontrak minimal payload backend
Judul bagian: Kontrak Payload Backend MinimalRegistrasi:
{ "platform": "android", "format": "google-play-integrity-standard", "keyId": "string", "challenge": "string", "token": "string"}Klaim:
{ "platform": "android", "format": "google-play-integrity-standard", "keyId": "string", "payload": "string", "token": "string"}Lanjutkan dari Pengaturan Android & Verifikasi Backend
Bab: Lanjutkan dari Pengaturan Android & Verifikasi BackendJika Anda menggunakan Pengaturan Android & Verifikasi Backend untuk merencanakan keamanan dan keterbatasan, hubungkannya dengan Menggunakan @capgo/capacitor-app-attest untuk kemampuan asli dalam Menggunakan @capgo/capacitor-app-attest, Kriptografi untuk detail implementasi di Kriptografi, Kemutakhiran untuk detail implementasi di Kemutakhiran, Capgo Scanner Keamanan untuk alur kerja produk di Capgo Scanner Keamanan, dan Capgo Keamanan untuk alur kerja produk di Capgo Keamanan.