Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: diego_lp en 26 Agosto 2010, 22:37 pm



Título: Ayuda con proyecto final
Publicado por: diego_lp en 26 Agosto 2010, 22:37 pm
Buenas para todos, estoy terminando mi proyecto final para el curso, ya esta casi todo hecho, mer, estudio de roles, scripts de creación de la db , métricas, dfd, etc. todo lo necesario para el análisis y diseño de la aplicación, tengo los formularios en vb.net para el programa, y ahora se viene la parte divertida:
mi programa se conecta a un servidor remoto Informix en una pc con Suse, a través del login del programa donde ingreso el user y el pass (obvio xD), lo que no tengo mucha idea es de como hago para recibir los permisos del usuario sobre la base de datos y sobre cada tabla, para, a partir de estos datos, habilitarle / deshabilitarle en la interfaz gráfica del programa las opciones correspondientes.
Espero haberme explicado bien, y alguien pueda al menos darme una idea de cómo hacer ésto  ;-)
Bueno muchas gracias de antemano.
Saludos!


Título: Re: Ayuda con proyecto final
Publicado por: [D4N93R] en 27 Agosto 2010, 04:23 am
Podrías tener una tabla de roles, en donde verificas que rol tiene acceso a cada formulario..

También podrías implementar varios usuarios en la base de datos y así evitar que usen un usuario para sacar data de donde no debe.

Saludos!


Título: Re: Ayuda con proyecto final
Publicado por: diego_lp en 27 Agosto 2010, 18:49 pm
Gracias por contestar [D4N93R] pero seguimos en la misma: como hago para saber a que rol pertenece el usuario con que me conecto?  :-\


Título: Re: Ayuda con proyecto final
Publicado por: [D4N93R] en 27 Agosto 2010, 19:13 pm
Cuando creas el usuario de la aplicación, se le tiene que dar un rol. O puedes tener un rol por defecto, y que luego le vayas dando más permisos. O sea, tienes 3 opcones básicas:

1.- Asignar Roles a los usuarios, cada rol de la aplicación tiene acceso a un formulario en específico. De forma tal que usuarios con rol Ventas, no pueden entrar en el formulario de Compras, y viceversa. En este ejemplo serían una tabla Rol, User, y un registro conector UserRol

2.- Asignar Los formularios a los cuales pueden acceder manualmente a cada usuario. Tablas: Form, User, registro conector: FormUser

3.- Combinación de las dos anteriores.

Solo necesitas crear las tablas correspondientes en la base de datos.

Con respecto a los usuarios de la base de datos, estos son simplemente para la autenticación al momento de realizar una consulta. Por ejemplo, una consulta en la tabla Customer la haces desde un formulario de listado de Clientes, y esa conexión que haces ahí nada más tiene acceso a la tabla Customer, esto te salva un poco en caso de SqlInjections y ese tipo de cosas.

Saludos!