Ir al contenido

Datos, copias y seguridad

Todo lo de una instalación está en dos volúmenes de Docker, en el servidor:

Volumen Contenido
<cliente>-pgdata La base de datos completa: puestos, encargos, mensajes, crones, auditoría, usuarios.
<cliente>-archivos Los documentos subidos, los que producen los puestos y los perfiles de navegador.

Los volúmenes sobreviven a reinicios, actualizaciones y reconstrucciones de la imagen. Borrar un volumen es borrar los datos: no hay una copia dentro de la aplicación.

Las copias no las hace la aplicación: las hace el sistema de copias del servidor, cada noche, sobre el contenido de los volúmenes. Por eso un cliente puede restaurar el día anterior sin que la instalación tenga que estar corriendo.

Esto tiene una consecuencia práctica: si el servidor no está copiando, no hay copia. La aplicación no lo puede detectar por ti.

  • Cada instalación está aislada: sus contenedores, su base de datos y sus ficheros son suyos. No hay una base común con varias empresas.
  • Dentro de la instalación, los usuarios son nominativos y la contraseña es personal. La sesión se guarda en una cookie que no se puede leer desde el navegador (HttpOnly) y que solo viaja por HTTPS.
  • Los puestos pueden ver lo que se les ha dado: sus documentos y las carpetas autorizadas. No ven el resto del servidor.
  • En tránsito: todo el tráfico público va por HTTPS con certificado del dominio.
  • En reposo: los datos viven en los volúmenes del servidor, protegidos por el acceso al propio servidor. No hay cifrado por campo dentro de la base de datos.

La aplicación apunta las acciones: quién entra, quién pide, quién aprueba, qué puesto hace qué y cuánto cuesta. El registro se conserva con la instalación y se puede consultar.

  1. Si se ha perdido la contraseña del propietario, se puede fijar una nueva desde la consola de operación de la instalación (acceso al servidor).
  2. Si la aplicación no arranca, el primer sitio donde mirar es el registro del contenedor de la api; el segundo, que la base de datos esté sana.
  3. Si se han perdido datos, se restaura el volumen desde la copia del servidor: se para la instalación, se repone el volumen y se vuelve a arrancar.

Nada de esto se hace desde el navegador: son operaciones de administración del servidor.