Manejo de Usuarios en Aplicacion

Obsydian, Cool:Plex, Advantage Plex, AllFusion Plex...

Moderadores: Jorge Ubeda, pacopicon

Manejo de Usuarios en Aplicacion

Notapor cjaramillo » Mar Feb 03, 2009 4:40 pm

Saludos Colegas. Felicitaciones por el foro.

Tengo poco tiempo trabajando con plex y quiesiera saber qué patrones me podrian ser utiles para una aplicación creada por plex añadir control y permisos a usuarios.

Cualquier ayuda sobre la implemetacion y personalizacion al respecto de este tema me será de mucha utilidad.

Saludos
cjaramillo
 
Mensajes: 22
Registrado: Mar Feb 03, 2009 4:33 pm
Ubicación: Ecuador GYE

Notapor pacopicon » Mié Feb 04, 2009 7:59 am

Hola,
los patrones estándar no los traen y me temo que vas a tener que creártelos. Bueno, no sé si alguien los tendrá por ahí
Saludos
Paco Picón
www.metadata.es
pacopicon
 
Mensajes: 121
Registrado: Lun Oct 03, 2005 12:28 pm
Ubicación: Málaga - España

OBSEC

Notapor Jorge Ubeda » Mié Feb 04, 2009 9:05 am

En las "viejas" clases de Plex hay un modelo dedicado a seguridad, OBSec, que es facil de implementar ya que su única interfase explícita consiste en la llamada a una función que se debe agregar en inicialización de todo lo que se desee controlar. Se puede en todo caso desarrollar un patrón para eso. El resto funciona con independencia, y se basa en el control cruzado de usuarios y funciones. Es extensible por herencia, de modo que se le pueden agregar atributos y lógica para ampliar su comportamiento.
Para localizarla, si no tienes cargadas las clases, deben bajarse las clases de Plex desde el CD de instalación.
Jorge Ubeda
Site Admin
 
Mensajes: 229
Registrado: Mié Oct 26, 2005 6:00 pm
Ubicación: Valencia

Re: OBSEC

Notapor Dario, Fabini » Jue Mar 05, 2009 2:24 pm

Si implementas OBSEC, de esta forma podes armar cualquier esquema de seguridad, dado que contas con grupos de funciones, y grupos de usuarios, luego podes armar todas las asociaciones. Simplemente tenes que agregar en la inicialización de las funciones este metacodigo que puede estar en tu FunctionShell, dado que en las clases de Pattern no esta:

Primero recuperar el nombre de la función
Segundo llamas a la función de seguridad con el usuario y el nombre de la función. La función se encarga de verificar si el usuario tiene permiso a usarla.

+++Define Field: OBASE/Function name /* Define a storage pointer
+++Define Field: OBASE/Function id /* Define a storage pointer
+++Set Value To Current Field: OBASE/Function name /*Store a reference to the calling function
+For Defined Value Field: OBASE/Function name /*Interogate triples for the calling function
+For Each Property Target FNC impl name NME
+++Set Value To Current Field: OBASE/Function id
+If FNC secured SYS, System: Yes
+++Define Field: OBASE/+Secured function
++Name Defined Field: OBASE/Function id, Base<Function id>

Call Security check /* pasa por parametro el Function id y usuario

If Output<Security check> == <Security check.Fail>
Set Base<Exit function> = <Exit function.*Yes>
Edit Point A Usuario no autorizado
If Base<Exit function> == <Exit function.*Yes>
++Name Defined Field: OBASE/Function name, Base<Function name>, .Language
Dialog Message Message: OBASE/Not authorised to [function]
Set Environment<*Returning status> = <*Returning status.*Error>
Terminate

Podes ver una implementación de esto en las clases de OBASE, por ejemplo en Business entity.Standard functions.Process user interface
Usa un mecanimos de call de template basado en la interfaz.
Saludos cordiales.
Darío Fabini
Dario, Fabini
 
Mensajes: 22
Registrado: Jue Dic 07, 2006 5:37 pm
Ubicación: Argentina, La Plata


Volver a Plex

¿Quién está conectado?

Usuarios navegando por este Foro: Bing [Bot] y 1 invitado

cron