La Vista previa para desarrolladores de Android 11 ya está disponible. Pruébala y comparte tus comentarios.

Prácticas recomendadas de seguridad

A medida que diseñes tu implementación de la Facturación Google Play, asegúrate de seguir las prácticas recomendadas de seguridad que se incluyen en este documento. Se les recomienda a todos los usuarios de la Facturación Google Play cumplir con estos lineamientos.

Cómo validar detalles de compras

Usa combinaciones de la biblioteca de Facturación Google Play, la API de Google Play Developer y las notificaciones para desarrolladores en tiempo real a fin de validar los detalles de compras de forma segura. Recomendamos encarecidamente validar los detalles de compra en un servidor de confianza. Sin embargo, si no usas un servidor, puedes validar esta información dentro de tu app en un dispositivo.

Cómo validar en un servidor

Cuando implementas tu lógica de verificación de firma en un servidor, haces que a los atacantes les resulte difícil aplicar ingeniería inversa en tu archivo APK. Esto preserva la integridad de las firmas que tu lógica verifica.

Para validar los detalles de la compra en un servidor de confianza, completa siguientes los pasos:

  1. Asegúrate de que el protocolo de enlace entre el dispositivo y el servidor sea seguro.
  2. Verifica la firma de datos que se muestra y el orderId, y comprueba que el orderId sea un valor único que no hayas procesado antes.
  3. Verifica que la clave de tu app haya firmado los INAPP_PURCHASE_DATA que procesas.
  4. Valida las respuestas de compra mediante el recurso ProductPurchase (para productos integrados en la aplicación) o el recurso SubscriptionPurchase (para suscripciones) desde la API de Google Play Developer. Este paso es muy útil porque los atacantes no pueden crear respuestas ficticias a las solicitudes de compra de Play Store.

Cómo proteger tu contenido desbloqueado

Para evitar que usuarios malintencionados redistribuyan tu contenido desbloqueado, no lo integres a tu archivo de APK. Como alternativa, toma una de estas medidas:

  • Usa un servicio en tiempo real para entregar tu contenido, como el canal de contenido. Entrega contenido mediante un servicio en tiempo real que te permita mantener tu contenido actualizado.
  • Usa un servidor remoto para entregar tu contenido.

Cuando entregas contenido desde un servidor remoto o un servicio en tiempo real, puedes almacenar el contenido desbloqueado en la memoria o en la tarjeta SD del dispositivo. Si almacenas contenido en una tarjeta SD, asegúrate de encriptarlo y usar una clave de encriptación específica del dispositivo.

Cómo tomar medidas contra incumplimientos de marca y derechos de autor

Si usas un servidor remoto para entregar contenido o administrarlo, haz que tu app verifique el estado de compra del contenido desbloqueado cada vez que un usuario acceda a él. Esto te permite revocar el uso cuando sea necesario y minimizar la piratería.

Si ves que tu contenido se redistribuye en Google Play, actúa rápidamente y con determinación. Para obtener más información, consulta la página de Preguntas frecuentes sobre los derechos de autor en el Centro de ayuda sobre derechos de autor.