Es justo decir que cualquier secreto almacenado en una aplicación cliente es vulnerable. Los secretos almacenados en manifiestos o incrustados en código son bastante fáciles de extraer. La ofuscación y el endurecimiento de la aplicación pueden hacer esto más difícil. Almacenar secretos en archivos seguros o almacenes de claves es mejor, pero nunca es completamente seguro. Si el secreto es lo suficientemente valioso, puede ser robado.
Un resumen de la seguridad de la API móvil que comienza con las claves de la API y funciona a través de OAuth2 se encuentra en enlace .
OAuth2 tiene múltiples flujos dependiendo de sus requisitos. El flujo más común, la concesión de código de autorización, utiliza tanto la autenticación de cliente (piense la clave de API) como la autenticación de usuario. Si solo desea la autenticación del cliente, puede usar un flujo de credenciales de cliente más simple. AppAuth es un marco de trabajo de OAuth disponible para iOS y Android. Publiqué un tutorial para Android de AppAuth en enlace .
Para obtener una guía sobre cómo se pueden comprometer los secretos en una aplicación de Android, eche un vistazo a enlace . Y si desea ver cómo eliminar los secretos de su aplicación (requiere una biblioteca de demostración de terceros), puede trabajar en enlace .