Puedes usar la API de Play Integrity para proteger tus apps y juegos de interacciones riesgosas. Mediante la identificación de estas interacciones, tu app puede responder de manera adecuada para reducir el riesgo de ataques y abuso.
Cómo funciona
La API de Play Integrity te ayuda a proteger tus apps y juegos contra el abuso, ya que verifica si las interacciones del usuario y las solicitudes del servidor provienen del objeto binario sin modificar de tu app, instalado por Google Play, que se ejecuta en un dispositivo Android original (o en una instancia original de Google Play Juegos para PC). Si detectas una amplia variedad de amenazas, como versiones modificadas de tu app, dispositivos no confiables o algún otro entorno poco confiable, puedes responder de forma adecuada para reducir los ataques, como fraudes, trampas y accesos no autorizados.
Cuando un usuario realiza una acción, tu app solicita una evaluación de la API de Play Integrity. El servidor de Google Play devuelve una respuesta encriptada con un veredicto de integridad que tu app reenvía a tu servidor para su verificación. Tu servidor de backend usa este veredicto para decidir qué debe hacer tu app o juego a continuación.
La API devuelve veredictos que te ayudan a detectar posibles amenazas, incluidas las siguientes:
- Acceso no autorizado: El veredicto
accountDetailste ayuda a determinar si el usuario instaló o pagó por tu app o juego en Google Play. - Manipulación del código: El veredicto
appIntegrityte ayuda a determinar si interactúas con el objeto binario sin modificar que Google Play reconoce. - Dispositivos riesgosos y entornos emulados: El veredicto
deviceIntegrityte ayuda a determinar si tu app se ejecuta en un dispositivo Android certificado original o en una instancia original de Google Play Juegos para PC.
Punto clave: Cuando la API de Play Integrity evalúa un entorno, usa indicadores de seguridad respaldados por hardware que son muy resistentes a los ataques y la elusión. La API de Play Integrity simplifica el trabajo de integración y la administración continua de los desarrolladores, ya que abstrae la complejidad de los indicadores y la mitigación de problemas en las versiones del SDK de Android, las claves aprovisionadas por el fabricante del dispositivo y los modelos de dispositivos.
Los desarrolladores de Google Play también pueden habilitar la opción para recibir veredictos adicionales y detectar una mayor variedad de amenazas potenciales, incluidas las siguientes:
- Dispositivos sin parches: La respuesta
MEETS_STRONG_INTEGRITYen el veredictodeviceIntegrityte ayuda a determinar si un dispositivo aplicó actualizaciones de seguridad recientes (para dispositivos que ejecutan Android 13 y versiones posteriores). - Acceso riesgoso por parte de otras apps: El objeto
appAccessRiskVerdictte ayuda a determinar si se están ejecutando apps que podrían usarse para capturar la pantalla, mostrar superposiciones o controlar el dispositivo (por ejemplo, si se usa de forma inadecuada el permiso de accesibilidad). - Malware conocido: El objeto
playProtectVerdictte ayuda a determinar si Google Play Protect está activado y si encontró apps peligrosas o riesgosas instaladas en el dispositivo. - Hiperactividad: El nivel
recentDeviceActivityte ayuda a determinar si un dispositivo realizó una cantidad anormalmente alta de solicitudes recientemente, lo que podría indicar tráfico automatizado y ser una señal de ataque. - Abuso reiterado y dispositivos reutilizados:
deviceRecall(beta) te ayuda a determinar si estás interactuando con un dispositivo que ya marcaste, incluso si se reinstaló tu app o se restableció el dispositivo.
La API se puede usar en todos los factores de forma de Android, incluidos teléfonos, tablets, plegables, Android Auto, Android TV, Android XR, ChromeOS, Wear OS y en Google Play Juegos para PC.
Sugerencias:
- Puedes supervisar el estado de la API de Play Integrity y otros servicios de Play en el panel de estado de Google Play.
- Para que la API de Integrity le proporcione el máximo valor a tu app, debes seguir cada una de las prácticas recomendadas de la documentación del sitio Android Developers.
Configura y administra la API de Play Integrity
Habilita la API de Integrity para tu app
- Abre Play Console y ve a Protegido con Play en el menú de la izquierda.
- Desplázate hasta la sección "API de Play Integrity".
- Haz clic en Comenzar.
- Elige "Vincular un proyecto existente" y el proyecto que quieras vincular.
- Haz clic en Vincular proyecto de la nube.
Para comenzar a integrar la API de Integrity en la app, debes hacer lo siguiente:
- En el caso de las apps que usan Java/Kotlin, instala la biblioteca de Android más reciente que se encuentre disponible para la API de Play Integrity desde el repositorio Maven de Google.
- En el caso de los juegos que usan Unity, instala la versión más reciente de Complementos de Google Play para Unity. Se admiten todas las versiones de 2019.x, 2020.x y posteriores. Si usas Unity 2018.x, instala la versión 2018.4 o una posterior. Si usas Unity 2017.x, instala la versión 2017.4.40 o una posterior. No se admiten Unity 5.x ni versiones anteriores.
- En el caso de las apps y los juegos nativos, instala la versión más reciente del SDK nativo de Play Core.
Ahora puedes seguir estos pasos en el sitio para desarrolladores de Android y comenzar a usar la API de Play Integrity en tu app o juego.
Personaliza las respuestas de la API de Integrity (opcional)
Para obtener información sobre cómo configurar las respuestas de integridad de la API, visita el sitio de Android Developers.
Para editar las respuestas de la API, sigue estos pasos:
- Abre Play Console y ve a Protegido con Play en el menú de la izquierda.
- Desplázate hasta la sección "API de Play Integrity".
- Haz clic en Administrar.
- Desplázate hasta la sección "Respuestas".
- Haz clic en Editar.
- Selecciona o anula la selección de las casillas de verificación junto a las respuestas de la API que quieres cambiar.
- Haz clic en Guardar cambios.
Importante: Los cambios en las respuestas de la API se aplican inmediatamente después de que los guardas, incluso cuando la app se encuentra en producción. Antes de cambiar el conjunto de respuestas de la API en Play Console, asegúrate de que tu servidor esté preparado para aceptar esas respuestas.
Establece la configuración de solicitudes clásicas (opcional)
De forma predeterminada, Google administra la encriptación de respuestas para las solicitudes clásicas. Sin embargo, puedes optar por administrar la encriptación de respuestas por tu cuenta si lo prefieres.
Para administrar la encriptación de respuestas por tu cuenta, sigue estos pasos:
- Abre Play Console y ve a Protegido con Play en el menú de la izquierda.
- Desplázate hasta la sección "API de Play Integrity".
- Haz clic en Administrar.
- Desplázate hasta la sección "Solicitudes clásicas". Según la configuración predeterminada, junto a "Encriptación de respuestas", el estado será "Administradas por Google". Haz clic en Cambiar.
- Elige "Administrar y descargar mis claves de encriptación de respuestas". Google generará claves de encriptación de respuestas para que las descargues y administres. Si quieres utilizar las claves para desencriptar respuestas, debes actualizar la lógica de tu servidor de backend.
- Sigue las instrucciones en pantalla para generar un archivo .pem y subirlo. Luego, podrás descargar las claves de API.
- Haz clic en Guardar cambios.
- Un mensaje en pantalla confirmará que se actualizó la administración de encriptación de respuestas.
- Tus nuevas claves de encriptación de respuestas se descargarán automáticamente. Si quieres descargarlas en un momento específico, haz clic en Descargar claves.
Si quieres revertir de "administradas por cuenta propia" a "administradas por Google", sigue estos pasos:
- Abre Play Console y ve a Protegido con Play en el menú de la izquierda.
- Desplázate hasta la sección "API de Play Integrity".
- Haz clic en Administrar.
- Desplázate hasta la sección "Solicitudes clásicas". Junto a "Encriptación de respuestas", el estado será "Administradas por cuenta propia", ya que lo cambiaste anteriormente. Haz clic en Editar.
- Elige "Permitir que Google administre mi encriptación de respuestas (opción recomendada)" y haz clic en Guardar cambios. Google generará y administrará tus claves de encriptación de respuestas. Tu servidor de backend tiene que llamar al servidor de Google Play para desencriptar las respuestas.
Prueba la integración de la API de Play Integrity
Para probar la integración de la API de Integrity, puedes configurar una lista de cuentas de Gmail. Primero, asegúrate de que los verificadores tengan acceso a la versión. Publica la app en el segmento de pruebas internas o en el que quieras probarla. Luego, sigue las instrucciones para administrar verificadores por dirección de correo electrónico o usar Grupos de Google para que los verificadores puedan acceder a tu versión.
Para configurar una prueba, haz lo siguiente:
- Abre Play Console y ve a Protegido con Play en el menú de la izquierda.
- Desplázate hasta la sección "API de Play Integrity".
- Haz clic en Administrar.
- Desplázate hasta la sección "Pruebas".
- Haz clic en Crear una prueba nueva.
- Selecciona una lista de direcciones de correo electrónico o crea una.
- Haz clic en Crear prueba.
Personaliza la ficha de Play Store para cuando los usuarios la visiten desde el diálogo de la API de Integrity
Puedes usar un diálogo de corrección de la API de Integrity para solicitar a los usuarios que obtuvieron la app de manera no oficial que la descarguen desde Google Play. Cuando los usuarios presionan el diálogo, se los redirecciona a la ficha de Play Store, donde pueden presionar el botón de instalación (o de compra o actualización) para que la app se agregue a su biblioteca de Play.
Puedes personalizar los recursos de la ficha de Play Store para los visitantes que presionen el diálogo de corrección de la API de Integrity (por ejemplo, el nombre, el ícono, las descripciones y los recursos gráficos). Para personalizar la ficha de Play Store cuando los usuarios la visiten desde un diálogo de la API de Integrity, haz lo siguiente:
- Abre Play Console y ve a Protegido con Play en el menú de la izquierda.
- Desplázate hasta la sección "API de Play Integrity".
- Haz clic en Administrar.
- Desplázate hasta la sección "Personaliza las fichas de Play Store".
- Haz clic en Crear ficha.
- Sigue las instrucciones de la página Crea una ficha de Play Store personalizada y haz clic en Guardar.
Como alternativa, puedes crear fichas de Play Store personalizadas para los diálogos de la API de Integrity directamente desde la página Fichas de Play Store personalizadas:
- Abre Play Console y ve a la página Fichas de Play Store personalizadas (Aumenta la cantidad de usuarios > Fichas de Play Store personalizadas).
- Haz clic en Crear ficha, elige si deseas crear una ficha nueva o duplicar una existente, y haz clic en Siguiente.
- En "Detalles de la ficha", busca la sección "Público objetivo".
- Selecciona Por URL y escribe "playintegrity" en el cuadro de texto.
- Ingresa el resto de los detalles y haz clic en Guardar.
Nota: El parámetro de URL "playintegrity" es una palabra clave especial que se reserva para los vínculos directos de integridad, por lo que debe ingresarse de manera exacta cuando se configura la ficha de Play Store personalizada.
Aumenta las solicitudes máximas diarias a la API de Play Integrity
De forma predeterminada, las apps pueden realizar hasta 10,000 solicitudes por día a la API de Integrity.
Para ver el volumen de solicitudes que realiza la app a diario, haz lo siguiente:
- Abre Play Console y ve a Protegido con Play en el menú de la izquierda.
- Desplázate hasta la sección "Supervisa el estado de la API de Play Integrity".
- Haz clic en la tarjeta de supervisión para abrir el informe de la API de Integrity y ver la cantidad diaria de solicitudes.
Para ver las solicitudes máximas diarias de tu app, haz lo siguiente:
- Abre Play Console y ve a Protegido con Play en el menú de la izquierda.
- Desplázate hasta la sección "API de Play Integrity".
- Haz clic en Administrar.
- Consulta tu cuota diaria.
Puedes enviar más de 10,000 solicitudes por día. Para ser apto, debes cumplir con los siguientes requisitos:
- Confirma la implementación correcta de la lógica de API, incluidos los reintentos.
- Publica la app en Google Play, además de cualquier otro canal de distribución.
Para aumentar la cantidad máxima de solicitudes diarias, completa este formulario.
Contenido relacionado
- Consulta la documentación para desarrolladores sobre la API de Play Integrity
- Mira este video de descripción general de la API de Play Integrity
- Más información sobre Protegido con Play en Play Console
- Más información sobre Protegido con Play en el sitio Android Developers