Saltar a contenido

F19 — Niveles de acceso graduados por resolución del dato

Categoría: Carbono y Estimaciones

Objetivo

Que usuarios acreditados accedan a mayor resolución temporal y espacial que un usuario general, distinto del RBAC por pantalla/permiso (F57).

Contexto

No es "quién puede ver esta pantalla", sino "qué tan detallado es el dato que se le sirve a cada quien" — p. ej. series diarias para un investigador acreditado vs. agregados mensuales para un ciudadano.

Qué hay

Existe un sistema de niveles (Usuario.NIVEL_CHOICES: ciudadano/investigador/ reportador/admin, backend/app/models/datos.py:33-38) con jerarquía en cascada documentada explícitamente como permisos por acción ("investigador = además puede descargar datos; reportador = además puede subir datos"), aplicado vía requiere_nivel/EscrituraRequiereNivel (backend/app/api/permisos.py). El frontend tiene SolicitarNivelModal.tsx y SolicitudesNivelAdmin.tsx para solicitar/aprobar subir de nivel.

Qué hace falta

Este es exactamente el RBAC por pantalla/permiso que el catálogo pide distinguir de F19: no hay ninguna lógica que gradúe la resolución del dato servido (p. ej. truncar precisión temporal/espacial, degradar a centroides o agregados mensuales para "ciudadano" vs. series diarias/puntuales para "investigador acreditado"). Todos los endpoints de series/geo devuelven la misma resolución a cualquier usuario; solo cambia si puede o no descargar/escribir.