Inxpector
Seguridad y límites

Quién autoriza qué, y dónde queda cada dato.

Inxpector está pensado para registrar trabajo en campo, no para vigilar personas. Este es el modelo completo, dicho sin adornos: lo que sí controla y lo que todavía no.

La sesión

  • El token se guarda en el almacenamiento seguro del sistema (el llavero de Android), no en un archivo plano ni en la base local.
  • Los datos locales se separan por servidor, organización y usuario: dos cuentas en el mismo teléfono no comparten casos ni borradores.
  • El servidor concede un acceso local de hasta 72 horas. Al vencer, la información se conserva pero deja de ser modificable hasta volver a iniciar sesión.
  • Cerrar sesión no borra pendientes. Al entrar de nuevo con la misma cuenta y el mismo servidor, la app los recupera.
  • La app no se conecta a la base de datos: toda lectura y escritura pasa por el API sobre HTTPS.

Quién decide los permisos

El servidor, en cada llamada. Ocultar un botón en la app es comodidad, no control.

  • Alta de casos, subida de evidencias, seguimiento y actas requieren un permiso vigente asignado a la cuenta.
  • Si la organización retira el perfil, el servidor rechaza los envíos nuevos; los borradores locales no se borran por decreto.
  • Un formulario descargado a medias se muestra como no válido en lugar de abrir una captura rota.
  • El tipo de caso, el formulario y su versión quedan fijados al crear la captura: publicar otra versión no reescribe lo ya registrado.

El desbloqueo del teléfono

Cada cuenta puede exigir la huella, el rostro o el PIN del dispositivo antes de abrirse. Sin aprobarlo, la app no abre la base de datos: no se ven casos, borradores ni envíos. Se vuelve a pedir al regresar de fondo.

Lo que hace

  • Abrir, en este teléfono, la sesión que ya estaba guardada.
  • Quedarse atada a la cuenta: es una preferencia por sesión, no un interruptor general de la app.
  • Aceptar también el PIN del dispositivo, para que borrar una huella no deje fuera a quien tiene la sesión vigente.

Lo que no hace

  • No cambia tus permisos: eso lo sigue decidiendo el servidor.
  • No cifra el almacenamiento: los archivos siguen donde están y este bloqueo no sustituye el cifrado del disco.
  • No autentica contra el API: si pierdes el teléfono, la cuenta se revoca desde el sistema de la organización.

Las evidencias

  • Fotos y notas de voz se guardan como archivos privados de la app; no se copian a la galería pública.
  • La ubicación se pide al capturar la evidencia, de forma explícita, y también pueden escribirse coordenadas a mano. No hay rastreo en segundo plano.
  • Un original compartido por dos capturas no se borra cuando se descarta una de ellas.
  • Los PDF de consulta y las actas se sirven de forma privada, con sesión; no hay enlaces abiertos ni códigos QR públicos que revelen datos personales.

Sincronizar sin destruir

  • El envío es solo manual y congela el lote al empezarlo: nada cambia por detrás a media subida.
  • Recuperar red, volver a la app o autoguardar un borrador no dispara envíos.
  • Cada captura y cada evidencia reciben su acuse; un rechazo de validación permite corregir el caso desde su detalle.
  • Si el servidor tiene una versión más nueva, la app marca el conflicto y espera: no sobrescribe en silencio el trabajo de otra persona.

Lo que sigue pendiente

  • Cifrado local adicional de los archivos, política de retención y limpieza de huérfanos: sin definir.
  • Revocación administrativa de dispositivos (más allá de retirar la asignación de la cuenta): pendiente.
  • Simulacro de restauración de respaldos del servidor: no documentado todavía.
  • Recorrido visual completo en un dispositivo físico con esta build: falta.

El servidor corre detrás de HTTPS con certificado válido, la base no está expuesta públicamente y los secretos viven en variables de entorno del servidor. Ninguna de esas cosas depende de la app.