Desde la nueva versión de vista previa de ADT (versión 21) , tienen una nueva advertencia de pelusa que me dice lo siguiente en el archivo de manifiesto (en la etiqueta de la aplicación):
Debería establecer explícitamente android: allowBackup en verdadero o falso (es cierto de forma predeterminada, y eso puede tener algunas implicaciones de seguridad para los datos de la aplicación)
En el sitio web oficial , han escrito:
Un par de nuevas comprobaciones: debe decidir explícitamente si su aplicación permite copias de seguridad y una comprobación de etiquetas. Hay un nuevo indicador de línea de comando para configurar la ruta de la biblioteca. Muchas mejoras al análisis de pelusa incremental durante la edición.
¿Qué es esta advertencia? ¿Qué es la función de copia de seguridad y cómo la uso?
Además, ¿por qué la advertencia me dice que tiene implicaciones de seguridad? ¿Cuáles son las desventajas y ventajas de deshabilitar esta función?
Hay dos conceptos de copia de seguridad para el manifiesto:
- "android: allowBackup " permite realizar copias de seguridad y restaurar a través de adb, como se muestra aquí :
Ya sea para permitir que la aplicación participe en la infraestructura de respaldo y restauración. Si este atributo se establece en falso, nunca se realizará una copia de seguridad o restauración de la aplicación, incluso mediante una copia de seguridad del sistema completo que de lo contrario haría que todos los datos de la aplicación se guarden a través de adb. El valor predeterminado de este atributo es verdadero.
Esto se considera un problema de seguridad porque las personas podrían hacer una copia de seguridad de su aplicación a través de ADB y luego obtener datos privados de su aplicación en su PC.
Sin embargo, creo que no es un problema, ya que la mayoría de los usuarios no saben qué es adb, y si lo hacen, también sabrán cómo rootear el dispositivo. Las funciones ADB solo funcionarían si el dispositivo tiene la función de depuración habilitada, y esto necesita que el usuario la habilite.
Por lo tanto, solo los usuarios que conectan sus dispositivos a la PC y habilitan la función de depuración se verían afectados. Si tienen una aplicación maliciosa en su PC que usa las herramientas ADB, esto podría ser problemático ya que la aplicación podría leer los datos de almacenamiento privado.
Creo que Google debería agregar una función que está deshabilitada de forma predeterminada, en la categoría de desarrollador, para permitir la copia de seguridad y restauración de aplicaciones a través de ADB.
- "android: backupAgent " permite utilizar la función de copia de seguridad y restauración de la nube, como se muestra aquí y aquí :
El nombre de la clase que implementa es el agente de respaldo de la aplicación, una subclase de BackupAgent. El valor del atributo debe ser un nombre de clase totalmente calificado (como "com.example.project.MyBackupAgent"). Sin embargo, como abreviatura, si el primer carácter del nombre es un punto (por ejemplo, ".MyBackupAgent"), se agrega al nombre del paquete especificado en el elemento. No hay defecto. El nombre debe ser especificado.
Este no es un problema de seguridad.