3. Gestión de usuarios y control de acceso¶
La plataforma está diseñada para ser utilizada por perfiles diversos, desde usuarios de consulta hasta administradores del sistema. Para garantizar un uso seguro, trazable y coherente, el sistema incorpora un modelo estructurado de gestión de usuarios y control de accesos.
La gestión de usuarios no es un aspecto meramente administrativo:
define quién puede acceder a la información, qué acciones puede realizar y qué responsabilidades asume cada perfil dentro del sistema.
Este módulo explica cómo se organiza el acceso a la plataforma mediante un modelo basado en roles, permitiendo:
- Proteger información sensible.
- Evitar modificaciones no autorizadas.
- Separar funciones técnicas, operativas y de supervisión.
- Adaptar el sistema a la estructura real de un organismo gestor.
3 Modelo de control de acceso (RBAC)¶
Implementa un modelo de control de acceso basado en roles
(RBAC – Role Based Access Control).
Este modelo se basa en tres niveles jerárquicos:
-
Permisos
- Definen el acceso a una funcionalidad concreta del sistema.
- Ejemplo: importar datos, gestionar alertas, crear variables.
-
Roles
- Agrupan varios permisos.
- Representan perfiles funcionales (Administrador, Técnico, Gestor, etc.).
-
Usuarios
- Se les asigna uno o varios roles.
- Heredan automáticamente todos los permisos de esos roles.
👉 Los permisos nunca se asignan directamente a usuarios, siempre a través de roles.
3.1 Roles de usuario¶
Los roles definen qué puede ver y qué puede hacer cada usuario dentro de la plataforma.
El sistema se incorpora una estructura de roles pensada para el ámbito de la gestión de la calidad del agua.
Perfiles principales¶
Administrador¶
- Acceso completo a todos los módulos del sistema.
- Configuración global de la plataforma.
- Gestión de:
- usuarios,
- roles,
- permisos,
- variables de análisis,
- embalses,
- alertas,
- procesos internos y colas de trabajos.
- Responsable de la coherencia técnica y operativa del sistema.
Manager (Gestor)¶
- Perfil orientado a la supervisión y toma de decisiones.
- Acceso a:
- visor básico y visor avanzado,
- gestión de alertas y suscripciones,
- importación de datos,
- gestión de embalses y muestreos,
- generación de informes.
- No accede a configuraciones internas críticas (Geoserver, permisos, roles).
Técnico¶
- Perfil orientado al análisis y explotación técnica de los datos.
- Acceso a:
- visor básico y avanzado,
- análisis de series temporales,
- interpretación de productos satelitales,
- configuración operativa de alertas,
- importación y revisión de muestreos,
- generación de informes.
- No gestiona roles, permisos ni configuraciones internas del sistema.
Usuario estándar¶
- Perfil de consulta.
- Acceso a:
- visor básico y avanzado,
- visualización de productos,
- suscripción a alertas.
- No puede modificar configuraciones ni datos.
3.2 Gestión de Roles¶
El módulo Gestión de Roles permite definir y mantener los perfiles de acceso del sistema.
Funciones principales:
- Crear nuevos roles.
- Editar roles existentes.
- Asignar o retirar permisos a cada rol.
El acceso a este módulo requiere el permiso:
Role management
Solo usuarios administradores o personal autorizado deben gestionar roles, ya que estos controlan el acceso a funciones críticas.

3.3 Gestión de Permisos¶
El módulo Permisos define todas las acciones posibles dentro del sistema.
Cada permiso controla el acceso a:
- un módulo completo,
- o una acción específica dentro de un módulo.
Ejemplos de permisos clave:
Application userImport dataAnalysis parameter managementAlert settings editQueue managementUser management
Los permisos:
- se asignan a roles,
- los roles se asignan a usuarios.
Este diseño permite un control fino y escalable del sistema.
3.4 Gestión de Usuarios¶
El módulo Gestión de Usuarios permite administrar las cuentas de acceso a la plataforma.
Desde este módulo se puede:
- Crear nuevos usuarios.
- Editar datos personales (nombre, email).
- Asignar uno o varios roles.
- Activar o desactivar cuentas.
- Eliminar usuarios (de forma controlada).
El acceso a este módulo requiere el permiso:
User management
Una correcta gestión de usuarios garantiza:
- seguridad,
- trazabilidad de acciones,
- y responsabilidad en el uso de los datos.

3.5 Tabla comparativa de roles recomendados¶
| Permiso / Rol | Usuario | Técnico | Manager | Administrador |
|---|---|---|---|---|
| Application user | ✔️ | ✔️ | ✔️ | ✔️ |
| Viewer (básico y avanzado) | ✔️ | ✔️ | ✔️ | ✔️ |
| Import data | ❌ | ✔️ | ✔️ | ✔️ |
| Sampling management | ❌ | ✔️ | ✔️ | ✔️ |
| Alert management | ❌ | ✔️ | ✔️ | ✔️ |
| Alert settings edit | ❌ | ❌ | ✔️ | ✔️ |
| Alert subscriptions edit | ❌ | ✔️ | ✔️ | ✔️ |
| Analysis parameter management | ❌ | ❌ | ✔️ | ✔️ |
| Waterbody management | ❌ | ❌ | ✔️ | ✔️ |
| Formula management | ❌ | ❌ | ✔️ | ✔️ |
| Queue management | ❌ | ❌ | ✔️ | ✔️ |
| File manager | ❌ | ❌ | ✔️ | ✔️ |
| User management | ❌ | ❌ | ✔️ | ✔️ |
| Role management | ❌ | ❌ | ❌ | ✔️ |
| Permission management | ❌ | ❌ | ❌ | ✔️ |
3.6 Importancia del control de accesos¶
Una correcta configuración de roles y permisos permite:
- Proteger información sensible.
- Evitar modificaciones no autorizadas.
- Separar responsabilidades técnicas y operativas.
- Garantizar la coherencia del sistema.
- Facilitar el uso por perfiles no técnicos.
Idea clave para la formación¶
En el sistema, lo que un usuario puede ver y hacer no depende de la herramienta, sino de su rol.
Un buen diseño de roles es tan importante como un buen algoritmo.