Versión preliminar — pendiente de revisión legal

Cada documento indica su propia versión y fecha de vigencia. Estos textos son un borrador y no constituyen un concepto jurídico.

Medidas de seguridad

Este resumen describe medidas comprobadas en el código y protegidas por pruebas automáticas. No certifica la configuración del servidor de producción ni garantiza ausencia de incidentes.

Protección de cuentas y credenciales

  • Las contraseñas se guardan como hash bcrypt con coste 12.
  • Los secretos de Wompi y los tokens OAuth de Mercado Pago de las clínicas se cifran con AES-256-GCM antes de guardarlos, con una clave de pagos configurada en el servidor.
  • El refresh de la app y los tokens de activación del personal se guardan como hash SHA-256. Esta medida no cubre los enlaces de activación y recuperación del portal.
  • Las cookies de sesión son HttpOnly, llevan Secure en producción y SameSite: Lax para personal y portal, Strict para plataforma.
  • Las sesiones tienen vencimiento y comprobación de revocación. El acceso de la app usa tokens de 15 minutos y refresh de 30 días.
  • El protocolo de credenciales de la app usa ECDH y AES-GCM, con validación de firma de la clave y de la antigüedad de las solicitudes.

Controles de la aplicación

El acceso a funciones se comprueba mediante permisos. La aplicación configura cabeceras de seguridad, entre ellas HSTS, protección frente a tipos de contenido incorrectos y una política de contenido con nonce.

La reserva pública guarda un hash de la IP, no la IP en claro en ese registro. El hash no garantiza anonimato.

Turnstile valida el desafío antiabuso y rechaza verificaciones fallidas o una configuración de prueba en producción.

Medidas que dependen del servidor

Las historias clínicas, los datos de dueños y los archivos no se cifran a nivel de aplicación: están protegidos por control de acceso y aislamiento por clínica; el cifrado del disco depende del servidor. También deben verificarse el cifrado de las copias de seguridad, la custodia de claves, el TLS del proxy y la redirección de HTTP a HTTPS.

El aislamiento exige mantener activo el control de ámbito por clínica. La auditoría registra escrituras y eventos seleccionados, como consultas de historias y exportaciones; su cobertura y persistencia son parciales.

Consulta los proveedores que pueden tratar datos. El inventario técnico y sus pruebas se conservan en docs/legal/MEDIDAS-SEGURIDAD.md del repositorio.