Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 15-05-2003
hromero hromero is offline
Registrado
 
Registrado: may 2003
Posts: 1
Poder: 0
hromero Va por buen camino
Como Puedo Crear un Sistema de Seguridad de Usuarios basado en los Roles de Interbase

Me Gustaria saber como puedo aprobechar los roles de interbase a nivel de los menu de Delphi.

Es decir quisiera que los usuario solo puedan tener acceso a las opciones del menu que yo les delimite, y que no aparezcan las opciones a las cuales no tiene Acceso.

Gracias!
Responder Con Cita
  #2  
Antiguo 15-05-2003
lbuelvas lbuelvas is offline
Miembro
 
Registrado: may 2003
Ubicación: Colombia
Posts: 377
Poder: 21
lbuelvas Va por buen camino
Hola club,

Lo primero que debes hacer es cuando hagas la conexion a la aplicacion que el usuario digite el nombre de usuario, el password y el nombre del rol. Debes tener en cuenta que debes haber creado los roles previamente en la BD y asociado la membresia, es decir, que usuario pertenece a que rol /roles.

El componente TIBDatabase no tiene (o no he visto) forma de colocar el rol, solo aparece el usuario y password. EN mic caso particular me toco hacer un formulario para poder poner a disposicion y capturar el nombre del rol.

Ese nombre de rol luego lo puedes colocar en una variable global al programa y cuando alguien vaya a entrar a un menu por codigo determinas que roles si pueden entrar al menu.

Espero haber colaborado, exitos.
__________________
Luis Fernando Buelvas T.
Responder Con Cita
  #3  
Antiguo 16-05-2003
ALMERA ALMERA is offline
Miembro
 
Registrado: may 2003
Posts: 42
Poder: 0
ALMERA Va por buen camino
Hola amigo, yo lo que hago es que me creo una tabla de usuarios con estos campos codigo,nombre,clave y rol, tambien suelo poner nuevos campos para permisos especiales de partes especiales del programa, tambien me creo una tabla de roles con los campos rol, titulo,nivel_de_permiso, obviamente enlazo estas dos tablas através del campo rol, seguidamente uno el campo tag en los items del menu donde identifica el permiso, entonces lo que hace la aplicación al empezar es pedir el usuario y password, y al aceptar compruebo su contraseña , etc y guardo en una variable global el nivel de permiso y otros datos, para permisos especiales, ahora recorro todos los elementos del menu comparando el nivel de permiso que guardo en la variable global con el tag de cada elemento, si el tag es mayor que el nivel de permiso pues desactivo y pongo invisible este elemento.

En conclusion, estoy usando de usuario siempre al SYSDBA con contraseña distinta a masterkey obviamente, es decir en la base de datos siempre es el mismo usuario, el control de usuario lo hago en la aplicación y no en la base de datos, es una opción, me parece genial llevar el control de usuario en la base de datos, pero se tarda muchisimo más en controlar esto y administrar todos los permisos de cada usuario sobre cada objeto de la base de datos, etc, eso sis los permisos sobre los roles y los usuarios se le asignan roles, pero me resulta igual de coñazo, ya que én la aplicación vas ha tener que controlar el usuario igualmente ya que según quien entre al usar partes de la aplicación que usen objetos de la base de datos que tenga acotado, empezará a petardearse la aplicación dando cada dos por tres errores, por lo tanto a mi modo de ver el control de usuario en la base de datos es triple trabajo.

Espero que te haya servido de ayuda.

Resumen: me parece mas formal llevar el control en la propia base de datos, pero tiene el coste de que tardarás el triple en programar todo esto, teniendo el mismo resultado.

A veces hay que valorar estas cosas, que es lo que más merece la pena.
Responder Con Cita
  #4  
Antiguo 16-05-2003
IVAND IVAND is offline
Miembro
 
Registrado: may 2003
Ubicación: ECUADOR
Posts: 523
Poder: 21
IVAND Va por buen camino
Utiliza los componentes Jfactivesoft y listo se acabaron los problemas de accesos
__________________
IVAND
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 22:13:36.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi