Vous êtes sur la page 1sur 16

K2BTools Fast Start

1 2 3

Objetivo ___________________________________________________________ 3 Estructura de seguridad ______________________________________________ 3 Uso K2BTools Fast Start _____________________________________________ 4
3.1 3.2 3.3 3.4 3.5 3.6 3.7 Login_______________________________________________________________ 5 Asignando roles al usuario: ____________________________________________ 6 Manejo de roles: _____________________________________________________ 7 Manejo de actividades ________________________________________________ 9 Manejo de entidades _________________________________________________ 11 Creacin de usuario _________________________________________________ 13 Informacin de usuario: ______________________________________________ 13

Customizacin: ____________________________________________________ 15
4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 K2BIsAuthorizedActivityList(procedure): _______________________________ 15 K2BLoadUserDefinedActivities(procedure): _____________________________ 15 K2BCreateActivities(procedure): ______________________________________ 15 K2BLogin (webpanel): _______________________________________________ 15 K2BEncryptPassword (procedure): ____________________________________ 15 K2BSecurityStartUp(procedure): ______________________________________ 16 K2BWWMasterPageLogin(webpanel): _________________________________ 16 K2BHeaderFastStart(webpanel) : ______________________________________ 16

1 Objetivo
K2BFastStart tiene como objetivo proveer un inicio rpido de componentes de una aplicacin GeneXus Web en la que se utilizan las k2btools. En esta versin se incluir una implementacin de un mdulo de seguridad dando la posibilidad al desarrollador de a partir de esta solucin adaptarla a la forma de manejo de seguridad que l considere conveniente.

2 Estructura de seguridad
La estructura de datos para el manejo de la seguridad es la que se muestra en el siguiente diagrama.

Un usuario tiene roles, cada rol tiene actividades. Cada actividad tiene asociado una entidad (transaccin). Un usuario est autorizado para realizar una actividad si alguno de los roles que posee est autorizado a realizar la actividad. Una actividad puede tener una entidad asociada. Pueden existir actividades que no estn asociadas a ninguna entidad. Una actividad puede ser una actividad standard (Insert, Update, Delete, Display, List), o una actividad de usuario (Autorizar orden de compra, etc). 3

Las actividades standards estn asociadas a una entidad, por ejemplo dar de Alta un pas, es una actividad de tipo Insert cuya entidad es Pais. El patrn K2BEntityServices al aplicarse maneja el acceso a las actividades standards de los objetos e invoca a un procedimiento para el control de seguridad. Como ejemplo si le aplicamos el pattern k2bentityservices a la transaccon Pais, el pattern k2bentityserivces controlara la seguridad de las siguientes actividades: List Pais = Acceso al trabajar con pases, reportes pdf y Excel. Acceso a todos los subworkwith que tienen como related transaction ese pas. Display Pais = Acceso al tab general del entity manager. Insert, Update, Delete: Acceso a la transaccin en estos modos, control en la transaccin para que el usuario no pueda acceder. Por ms informacin sobre lo que es una actividad se recomienda leer el captulo 10 del manual de k2btools.

3 Uso K2BTools Fast Start


Instalada la versin 6.0, en el men K2BTools aparecer la opcin K2BToolsFastStart con las opciones Create Security y Remove Security.

CreateSecurity consolidar un xpz que contendr toda la estructura de seguridad y programas de manejo (Login, informacin de usuario, etc). Remove Security Elimina las transacciones y los objetos consolidados por la accin create security de forma tal de volver rpidamente al estadio anterior.

3.1 Login
Cada vez que se desea acceder a la aplicacin el usuario debe loguearse. Para esto deber acceder a la pantalla de login invocando al objeto K2BLogin..

La primera vez se podr acceder a la aplicacin con el usuario/password administrator/administrator, dado que K2BToolsFastStart crea un usuario y rol bsico con permisos para manejar objetos de seguridad. Luego del login se acceder a la pgina de inicio.

El usuario administrator creado por defecto tendr un rol administrator y solo tendr permisos para acceder a los objetos de seguridad. En el men se puede seleccionar la opcin Security.

All se acceder a una aplicacin que permitir el manejo de usuarios roles, entidades y actividades. La primera vez que se accede el usuario administrador deber asignar permisos para que tenga acceso a la aplicacin.

3.2 Asignando roles al usuario:


En el main de seguridad (Opcin Security del men o objeto K2BSecurityBackend), seleccionar usuario. Ir al entity manager y seleccionar el tab user roles.

All se mostrarn los roles que posee el usuario. Para asignar roles al usuario se tiene que presionar la accin de add y se acceder a una pantalla de mltiple seleccin donde se permitirn asignarle roles al usuario.

A la izquierda aparecern todos los roles que se pueden seleccionar a la derecha los roles seleccionados.

3.3 Manejo de roles:


Accediendo en el backend de seguridad a los roles, es posible dar de alta nuevos roles. Yendo al entity manager de un rol seleccionando el tab activities, es posible visualizar las actividades a las que tiene acceso ese rol.

Para asignarle actividades a ese rol se deber presionar la imagen de add. All se navegar hacia una pantalla de mltiple seleccin.

En la grilla de la izquierda se mostrarn todas las actividades disponibles para agregar. En la grilla de la derecha todas las actividades asignadas.

3.4 Manejo de actividades


En la parte de actividades aparecer un listado con todas las actividades. No es necesario dar de alta manualmente todas las actividades. Seleccionado el botn Create Activities, las actividades sern automticamente dadas de alta. En caso de que la actividad no pueda ser dada de alta automticamente se puede usar la accin de add. Cada vez que se aplica alguna nueva instancia del patrn k2bentityservices,automticamente se actualiza el programa para cargar las nuevas actividades en el sistema.

Como una forma adicional de dar permisos, seleccionada una actividad, se pueden visualizar los roles que tienen acceso a esa actividad.

10

Con la accin de add es posible asignarle roles a la actividad.

3.5 Manejo de entidades


Las entidades son las transacciones que tienen seguridad en l sistema.

11

Las entidades son dadas de alta automticamente cuando se cargan las actividades. En caso de tener una entidad especfica, es posible darla de alta en la siguiente pantalla. Adems se pueden visualizar qu actividades tienen asociadas las entidades.

12

3.6 Creacin de usuario


En la pantalla de login es posible registrar usuarios en el sistema. Este usuario no tendr ningn permiso, hasta tanto el usuario administrador le asigne algn rol.

3.7 Informacin de usuario:


Seleccionando la opcin edit profile ubicada en la esquina superior derecha de la pantalla es posible que un usuario modifique su informacin.

13

En dicha pantalla podr modificar su password y su informacin personal.

14

4 Customizacin:
Es posible realizar customizaciones. Aqu se nombraran los objetos que intervienen en la seguridad.

4.1 K2BIsAuthorizedActivityList(procedure):
Procedimiento principal de seguridad. Es el que determina si una actividad est autorizada o no. Este procedimiento es invocado por todos los objetos cuando chequean si estn autorizados o no.

4.2 K2BLoadUserDefinedActivities(procedure):
Es un procedimiento cuyo objetivo es crear un listado de las actividades que no son generadas automticamente por las k2btools. En este caso agrega actividades bsicas de usuario, para modificacin de password y modificacin de informacin de usuario.

4.3 K2BCreateActivities(procedure):
A partir de la lista de actividades generadas por las k2btools (k2bloadactivitylist) y las actividades de usuario (k2bloaduserdefinedactivities), almacena esas actividades en la tabla Activity.

4.4 K2BLogin (webpanel):


Es la pgina que se encarga de loguear al usuario. En dicha pgina es posible registrar un nuevo usuario. Es deseable que en produccin la pgina sea accedida a travs de https.

4.5 K2BEncryptPassword (procedure):


Es el que se encarga de encriptar la contrasea. Para que la contrasea no quede almacenada plana en la base de datos se est aplicado un encrypt64 al atributo UserPassword con una clave fija. Este procedimiento puede ser modificado, por ejemplo 15

para que segn el lenguaje que se este generando (java, c#) se puedan usar otros algoritmos (md5, sha, etc).

4.6 K2BSecurityStartUp(procedure):
Procedimiento que se encarga de inicializar la seguridad del sistema (crea usuario administrador y le asigna permisos). Este procedimiento es invocado desde K2BLogin cuando no existen usuarios en el sistema. Puede ser modificado para personalizar la inicializacin.

4.7 K2BWWMasterPageLogin(webpanel):
Es la master page que es utilizada nicamente por el objeto k2blogin. Dado que no se est logueado, no cuenta con las acciones de edit profile, que aparecern cuando el usuario este logueado.

4.8 K2BHeaderFastStart(webpanel) :
Header que es utilizado para todos los web panels menos K2BLogin. Contiene las acciones de edit profile, logout, y el mensaje de bienvenida.

16

Vous aimerez peut-être aussi