[SOLUCIONADO] duda sobre forma de implementacion de perfiles funcionales

Antes que nada quiero agradecer a la gente de la comunidad Siu Toba por las respuestas y el tiempo dedicado, la verdad la herramienta es EXCELENTE y le veo mucho futuro.

Tengo dudas de como implementar los niveles de usuario en mi aplicacion.
Tengo entendido que a traves del proyecto toba_usuarios tengo acceso a la creacion de perfiles funcionales,usuarios,perfiles de datos,veo log de acceso y sesiones,log de datos y auditoria de operaciones.
La DUDA:
Al momento de llevar mi proyecto a produccion, (segun lo que lei en algunos hilos del foro ) tengo que instalar el ambiente de siu toba en la pc servidor y eliminar los proyectos toba referencia y toba editor y cargar mi proyecto.Es decir que me quede el toba usuario y mi aplicacion.¿Esta la forma de segir creando usuarios a mi aplicacion, de forma externa a traves del toba_usuario? o debo implementar todo desde mi aplicacion ? que es lo recomendable?

Otra duda que tengo es la siguiente, dado el siguiente caso:
Registro una persona en la tabla persona (dni,nombre,etc) y necesito asociar esta persona a un usuario del sistema, es decir a un perfil funcional ¿Como hago esto? si desde el toba_usuarios solamente me permite crear un usuario sin poder establecer una asocion con los demas datos (adjunto una imagen) si tienen alguna idea de de alguna forma de implementar esto bienvenido sea!

Saludos a la comunidad


Al momento de llevar mi proyecto a produccion, (segun lo que lei en algunos hilos del foro ) tengo que instalar el ambiente de siu toba en la pc servidor y eliminar los proyectos toba referencia y toba editor y cargar mi proyecto.Es decir que me quede el toba usuario y mi aplicacion.¿Esta la forma de segir creando usuarios a mi aplicacion, de forma externa a traves del toba_usuario? o debo implementar todo desde mi aplicacion ? que es lo recomendable
Particularmente, como no tengo el tiempo necesario para aprender de seguridad, y la herramienta presenta un sistema de usuarios muy potente, simplemente aprovecho el mismo. Es decir, en mi caso, hago lo que vos describís, pero tengo una operación de mi proyecto que llama al proyecto usuario, de forma tal de no depender de enlace al mismo, sino que quede encapsulado. De la misma forma, podrías editar el proyecto usuarios, y cambiarle el skin y los logos (www/img), para que te quede "igual" que la interfaz de tu proyecto (esto no lo he hecho, por 2 motivos. Si algo cambian en las propiedades del proyecto usuarios, van a volarte la modificación, y además, el único con acceso a esto soy yo como administrador... así que queda como esta!). En el manual que descargaste (http://comunidad.siu.edu.ar/index.php?topic=3324), en el apartado General, tenés como incluir el proyecto usuarios en el tuyo propio. Saludos y espero te sirva!

Gracias por la sugerencia martin, voy a tenerlo en cuenta, mi duda va un poco apuntada a lo siguiente:

Toba guarda la informacion de todo lo que tenga que ver con seguridad ( niveles de usuario, operaciones permitidas, restringidas ,auditoria etc) en las constantes apex_pa_xxx que forman parte de los metadatos que se utilizan en el runtimes

Relacionadas a la Seguridad

* apex_pa_nivel_acceso_item: Se refiere al nivel mínimo de permisos necesarios para ejecutar el item por parte de un usuario. Actualmente aún no se esta usando.
* apex_pa_nivel_acceso_usuario: Se refiere al nivel mínimo de permisos necesarios para que el usuario pueda ejecutar un item particular. Actúa en tandem con la constante anterior, aunque actualmente no está utilizándose.
* apex_pa_encriptar_qs: Especifica si el Query String debe ser encriptado o no, el seteo afecta a todo el proyecto.
* apex_pa_validacion_debug: Especifica si se debe presentar un login con combos para el acceso rápido(desarrollo) o si se debe presentar un login con campos editables.
* apex_pa_requiere_validacion: Especifica si el proyecto requiere de un proceso de autenticación de usuarios o no para su operacion. 

Es decir eso no se implementa a nivel base de datos cuando lo llevo a produccion? queda todo en los metadatos? la pregunta apunta a lo siguiente:

Suponte la siguiente situacion:
Registras una persona en la base de datos y queres asignarle un perfil.
Desde luego puedo crear un usuario desde el toba usuario pero el problema es las cuentas de usuario son como “independientes” de todo, es decir no puedo asociar a datos de la base de datos,nose si me explico.

El problema con esto es que si registrar una persona y queres saber que usuario es, tendrias que poner un campo en la tabla persona que diga usuario y contraseña, y despues desde toba usuario crear el usuario con ese usuario y contraseña que definiste en la tabla persona, para “mapear” los datos de las personas y datos de usuario.

Como recomiendan manejar este escenario con el framewok?

Otra duda:
Tengo creado un perfil de usuarios con el toba_usuarios, mi perfil funcional se llama “administrativo”(posee permisos y restricciones sobre mi proyecto), para mi proyecto, posteriormente, cree un usuario y le vincule al perfil funcional “administrativo” de mi proyecto, cuando intento iniciar sesion a mi proyecto con el usuario creado me aparece el siguiente error:

No es posible cargar el usuario “user1”. El mismo no posee un perfil funcional definido para el proyecto “toba_editor”.

Si ejecuto dentro de mi proyecto la en Conf -->previasualizacion me aparece el nuevo perfil “administrativo” pero cuando tildo el check para que se previsualicen segun ese perfil, el el sistema se ve normamente no mas sin obedecer a las restricciones funcionales.

alguna sugerencia?

En realidad varias de las constantes que vos mencionas hoy no tienen uso, son el residuo de las primeras versiones de toba donde el control de acceso era muy simple (anteriores a la 1.0).
Las ultimas 2 constantes si se usan, sin embargo estan pensadas para lo que es un entorno de desarrollo y de hecho a partir de la version 2.0 se envian desactivadas para promover ese uso.

Suponte la siguiente situacion: Registras una persona en la base de datos y queres asignarle un perfil. Desde luego puedo crear un usuario desde el toba usuario pero el problema es las cuentas de usuario son como "independientes" de todo, es decir no puedo asociar a datos de la base de datos,nose si me explico.

El problema con esto es que si registrar una persona y queres saber que usuario es, tendrias que poner un campo en la tabla persona que diga usuario y contraseña, y despues desde toba usuario crear el usuario con ese usuario y contraseña que definiste en la tabla persona, para “mapear” los datos de las personas y datos de usuario.

Como recomiendan manejar este escenario con el framewok?


Vos decis, crear un usuario desde tu aplicacion en lugar de usar toba_usuarios?.
Para ese caso existen varias alternativas, la mas simple creo que es que el ABM de usuarios de tu sistema impacte ademas en las tablas de usuarios de Toba, basicamente harias lo mismo que hace hoy toba_usuarios, teniendo ademas tu propia tabla de usuarios.

La otra alternativa es utilizar directamente tu tabla de usuarios para efectuar la autenticacion, con lo cual deberias extender varias clases del nucleo para adaptarlas a tu comportamiento y ademas de alguna manera simular la parte de perfiles funcionales.

Otra duda: Tengo creado un perfil de usuarios con el toba_usuarios, mi perfil funcional se llama "administrativo"(posee permisos y restricciones sobre mi proyecto), para mi proyecto, posteriormente, cree un usuario y le vincule al perfil funcional "administrativo" de mi proyecto, cuando intento iniciar sesion a mi proyecto con el usuario creado me aparece el siguiente error:

No es posible cargar el usuario “user1”. El mismo no posee un perfil funcional definido para el proyecto “toba_editor”.

Si ejecuto dentro de mi proyecto la en Conf -->previasualizacion me aparece el nuevo perfil “administrativo” pero cuando tildo el check para que se previsualicen segun ese perfil, el el sistema se ve normamente no mas sin obedecer a las restricciones funcionales.


Dos cosas:

  • Podes seleccionar para distintos proyectos distintos perfiles e inclusive mas de uno.
    Por lo que veo en tu primer renglon pareciera que estas intentando loguearte a toba_editor con el usuario de tu proyecto.

  • Me interesa el tema de la previsualizacion, vos el check lo estableces para que usuario?

Saludos

Si, cuento como tengo configurado el perfil,las restricciones y el usuario que usa ese perfil:
Tengo un perfil funcional que se llama “administrativo” este perfil tiene permisos sobre algunas operaciones del proyecto (imagen adjunta perfil1)
tambien este perfil tiene restricciones sobre algunas operaciones (imagen adjunta perfil2) , estas restricciones funcionales estan asociadas al perfil funcional (imagen adjunta perfil3) en la parte de mantenimiento de usuarios, cree un usuario que tiene los siguientes datos: usuario: usuario1, nombre: nombre1, clave: clave1 y le asocie el perfil funcional con las restricciones.Despues en este proyecto, en la parte de conf >>previzualizar, me aparecen el perfil administrador y este nuevo perfil que cree, entonces tildo el check para visualizar con el perfil “administrativo” y se sigue visualizando como siempre no mas , todas las operaciones con todas las pantallas.
Otra cosa que hice fue, intentar logearme a mi proyecto con este usuario y clave que cree con el perfil administrativo
Proyecto : turnos
usuario: user1
clave: clave1
y me aparecio el siguiente error:

No es posible cargar el usuario “user1”. El mismo no posee un perfil funcional definido para el proyecto “toba_editor”.
Nose si me estoy olvidando de configurar algo mas,estoy atento a cualquier sugerencia, saludos


Hola Marcos,

Barbaro, lo agarraste de una.

Despues en este proyecto, en la parte de conf >>previzualizar, me aparecen el perfil administrador y este nuevo perfil que cree, entonces tildo el check para visualizar con el perfil "administrativo" y se sigue visualizando como siempre no mas , todas las operaciones con todas las pantallas.
Algo que por ahi no esta demasiado explicito, es que luego de cambiar el check del perfil para la previsualizacion, es necesario reloguearse al editor.
Otra cosa que hice fue, intentar logearme a mi proyecto con este usuario y clave que cree con el perfil administrativo Proyecto : turnos usuario: user1 clave: clave1 y me aparecio el siguiente error:

No es posible cargar el usuario “user1”. El mismo no posee un perfil funcional definido para el proyecto “toba_editor”.
Nose si me estoy olvidando de configurar algo mas,estoy atento a cualquier sugerencia, saludos


Te hago una consulta, vos te deslogueas del editor antes de intentar ingresar al sistema directamente?.. el tema es que los browser comparten la cookie entre las pestañas, entonces si tratas de loguearte en una nueva pestaña va a pensar que estas intentando entrar al editor con ese usuario y ahi es donde revienta.

Mi recomendacion es que uses la previsualizacion o sino para probar el sistema stand alone digamos… uses otro browser distinto al que tenes el editor.
Saludos

Algo que por ahi no esta demasiado explicito, es que luego de cambiar el check del perfil para la previsualizacion, es necesario reloguearse al editor.

Despues de hacer el check, cerre sesion y volvi a iniciar sesion con el usuario: toba, clave: toba estaba tildado en previsualizacion el perfil funcional “administrativo” pero igualmente se ven las operaciones como “administrador”

Mi recomendacion es que uses la previsualizacion o sino para probar el sistema stand alone digamos... uses otro browser distinto al que tenes el editor.

Tambien borre todo el historial de exploracion, cookies,cache,sesiones activas del firefox pero sigue apareciendo el problema,
intente con el navegador google chrome , pero con el mismo resultado.
Yo segi los pasos que te comente en el hilo anterior, nose si me falta agregar algo en mi proyecto, pareciera ser que no esta enlazada la validacion al proyecto

Ya le “cale la onda” al tema de los perfiles, el tema es el siguiente :
El error me aparecia porque intentaba logearme desde el toba editor, para previsualizar los perfiles se tiene que configurar el conf del proyecto y tildar los perfiles que quiero previsualizar, y una ves en ejecucion voy probando en la parte de abajo de la ventana, no desde el toba editor !
algunas cosas a tener en cuenta, despues de modificar algun perfil funcional, para ver los efectos en nuestro proyecto es necesario logearse nuevamente, en el caso de eliminar algun perfil, conviene hacer un toba proyecto exportar, para trabajar con los ultimas modificaciones en los metadatos, a mi me funciono, saludos
PD: Ah me olvidaba, otra cosa tambien importante, (es un detalle minimo pero a mi me llevo un tiempito darme cuenta) a todos los perfiles darle “permiso a la operacion de inicio” y despues, si tenes organizadas las operaciones por carpeta (operacion padre—operacion1,operacion2,operacionN) si queres darle acceso a la operacion N solamente y no a las otras tenes que darle permisos sobre la operacion padre y luego sobre la operacion N si le das solamente a la operacion N no funciona (y si, es logico, pero no obvio ja+ )

saludos !