Configuración de Android y verificación del backend
Copiar una solicitud de configuración con los pasos de instalación y la guía de markdown completa para este plugin.
Sistema nativo de Android utilizado
Sección titulada “Sistema nativo de Android utilizado”En Android, este plugin utiliza Estandar de integridad de Google Play API durante:
prepareIntegrityTokenduranteprepare()requestStandardIntegrityTokenparacreateAttestation()ycreateAssertion()
Requisitos
Sección titulada “Requisitos”- Aplicación Android distribuida a través del ecosistema de Google Play
- Servicios de Google Play disponibles en el dispositivo
- Play Integrity API habilitado para tu aplicación
- Número de proyecto de Google Cloud configurado
Configuración de Google
Configuración de Google- Enable Play Integrity API en tu proyecto de Google Cloud.
- Abre la Consola de Play y configura el acceso a la integridad de Play para tu aplicación.
- Proporciona
cloudProjectNumbera la extensión.
Capacitor configuración
Sección titulada “Capacitor config”plugins: { AppAttest: { cloudProjectNumber: '123456789012', },}Copia al portapapeles cloudProjectNumber por llamada en opciones del método.
flujo del cliente
Section titled “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 es un token de integridad de Play y debe ser descodificado en el lado del servidor.
Flujo de trabajo de backend (Android)
Sección titulada “Flujo de trabajo de backend (Android)”Registro (createAttestation)
Sección titulada “Registro (createAttestation)”- Backend crea uno de uso único
challenge. - App llamadas
createAttestation({ keyId, challenge }). - El backend llama a Google
decodeIntegrityTokenAPI. - El backend verifica al menos:
requestDetails.requestHash === base64url(SHA256(challenge))appIntegrity.packageNameIguala su identificador de aplicación AndroidappIntegrity.certificateSha256Digestcontiene su certificado de firma de lanzamiento de digest- veredictos de integridad coinciden con tu política de seguridad
protección de solicitud (createAssertion)createAssertion)
Sección titulada “Protección de solicitud (createAssertion)”- Crea una credencial única
payload. - App llamadas
createAssertion({ keyId, payload }). - El backend descifra el token y verifica
requestHash === base64url(SHA256(payload)). - Aplicar política de veredicto de integridad y prevención de retransmisión (útil + TTL).
esquema de Android
Sección titulada “Esquema de 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 policyContrato de pago de backend mínimo
Sección titulada “Contrato de pago de backend mínimo”Registration:
{ "platform": "android", "format": "google-play-integrity-standard", "keyId": "string", "challenge": "string", "token": "string"}Declaración:
{ "platform": "android", "format": "google-play-integrity-standard", "keyId": "string", "payload": "string", "token": "string"}Continuar desde Configuración de Android y Verificación de Backend
Sección titulada “Continuar desde Configuración de Android y Verificación de Backend”Si está utilizando Configuración de Android y Verificación de Backend para planificar la seguridad y la conformidad, conecte con Usando @capgo/capacitor-app-attest para la capacidad nativa en Usando @capgo/capacitor-app-attest, Encriptación para el detalle de implementación en Encriptación, Cumplimiento para el detalle de implementación en Cumplimiento, Capgo Escáner de Seguridad para el flujo de trabajo del producto en Capgo Escáner de Seguridad, y Capgo Seguridad para el flujo de trabajo del producto en Capgo Seguridad.