Buen dia,
Luego de migrar de la version 3.15.0 a .3.16.2 intentamos acceder a Guarani y nos encontramos con el siguiente error “El usuario no posee permisos para acceder al item solicitado.”
En el log de Guaraní, nos encontramos con el siguiente error:
[INFO][guarani] PUNTO MONTAJE: se carg� la clase extension_toba/guarani_sesion.php del punto de montaje proyecto. El path del mismo es /usr/local/proyectos/guarani/php
[INFO][guarani] PUNTO MONTAJE: se carg� la clase extension_toba/autentificacion/guarani_pers_usuario.php del punto de montaje personalizacion. El path del mismo es /usr/local/proyectos/guarani/personalizacion/php
[DEBUG][guarani] PUNTO DE MONTAJE: se carg� exitosamente el autoload del punto de montaje proyecto
[DEBUG][guarani] PUNTO DE MONTAJE: se carg� exitosamente el autoload del punto de montaje personalizacion
[INFO][guarani] PUNTO MONTAJE: se carg� la clase extension_toba/guarani_fuente_datos.php del punto de montaje proyecto. El path del mismo es /usr/local/proyectos/guarani/php
[DEBUG][guarani] Se intenta hacer un post donde no coinciden parametros anti CSRF
[DEBUG][guarani] Form: ‘Sqgtd/sp8DRMiNgsmTGYkX0Ter6P8vrPdRkr+pZ9FI8=’
[CRITICAL][toba] toba_error_seguridad: Error Interno Request Invalido
[TRAZA]exception ‘toba_error_seguridad’ with message ‘Error Interno’ in /usr/local/proyectos/guarani/vendor/siu-toba/framework/php/nucleo/toba_nucleo.php:574
Stack trace: #0 /usr/local/proyectos/guarani/vendor/siu-toba/framework/php/nucleo/toba_nucleo.php(92): toba_nucleo->verificar_pedido_post() #1 /usr/local/proyectos/guarani/www/aplicacion.php(33): toba_nucleo->acceso_web() #2 {main}
Van unas consultas:
Están en entorno de desarrollo o de producción?
Tienen personalizaciones?
Revisaron y chequearon todos los requisitos técnicos para la 3.16.2 (veo que están en PHP 5.6, cuando el requerido es 7.1)?
Este es el resultado de la consulta:
toba_2_7=# SELECT *
toba_2_7-# FROM mdp_personas_grupo_acc
toba_2_7-# WHERE persona = 1;
persona | tipo_usuario | usuario_grupo_acc | grupo_acceso_default
---------±-------------±------------------±---------------------
1 | Gestion | admin | N
1 | Gestion | compl | S
(2 filas)
El uso de perfiles propios debe hacerse en entornos de producción (y testing), mientras que en desarrollo se debe trabajar con los perfiles que entrega el SIU: alumno, admin y admin_oficina. Esto se documenta acá, como lo describe el primer párrafo.
Ahora bien, en el resultado que enviaste se puede ver que la persona = 1 tiene otro grupo de acceso llamado “compl”.
Como no se utilizan perfiles propios en entornos de desarrollo, estos se pierden cuando se actualiza de versión. Sin embargo, en el esquema negocio de la base de datos sigue estando esa información, mientras que en el esquema desarrollo no.
No se cuál fue la motivación de generar este perfil en desarrollo, pero a los efectos de solucionar esta situación, deberías setear grupo_acceso_default = S en la fila en la que usuario_grupo_acc es admin, y además borrar la otra fila. Del mismo modo, tendrás que ver qué hacer con el resto de los usuarios que tengan ese perfil. Otra posibilidad es volver a configurar correctamente ese perfil en la base, prestando especial cuidado con los ids.