Ayuda con la seguridad

04/11/2005 - 13:03 por Silviall | Informe spam
Hola a todos,

Estoy creando un sistema de seguridad de usuarios basado en una tabla de la
base de datos, y en funcion de un campo el usuario puede ver el punto de
menu, puede hacer altas con el formulario, o bien solo puede ver los valores
del formulario. Me gustaria que cuando hago la busqueda inicial y inicializo
los menus como visibles o invisibles tambien pudiera indicar los privilegios
del usuario frente al formulario que se abrirà con el punto de menu. Yo
pensava de hacer un control heredado de mainmenu y ponerle una propiedad
mas, pero un control heredado de mainmenu no funciona en tiempo de
ejecución. Cómo puedo hacerlo? O bien hay otra forma para hacer la seguridad
de usuarios?

Saludos,

Silvia.

Preguntas similare

Leer las respuestas

#1 Carlos Gómez
04/11/2005 - 19:16 | Informe spam
Silviall wrote:

Hola a todos,

Estoy creando un sistema de seguridad de usuarios basado en una tabla de
la base de datos, y en funcion de un campo el usuario puede ver el punto
de menu, puede hacer altas con el formulario, o bien solo puede ver los
valores del formulario. Me gustaria que cuando hago la busqueda inicial y
inicializo los menus como visibles o invisibles tambien pudiera indicar
los privilegios del usuario frente al formulario que se abrirà con el
punto de menu. Yo pensava de hacer un control heredado de mainmenu y
ponerle una propiedad mas, pero un control heredado de mainmenu no
funciona en tiempo de ejecución. Cómo puedo hacerlo? O bien hay otra
forma para hacer la seguridad de usuarios?

Saludos,

Silvia.



Yo he hecho lo siguiente:
He aà±adido 4 propiedades nuevas: NivelDeSeguridad, y NivelDeUsuario, Tabla y
Campo

NivelDeSeguridad es el nivel que posee el control:
0 Bajo: Todos pueden
1 Medio: Solo pueden los usuarios que tengan nivel 1 en adelante
2 Alto: Solo pueden los usuarios que tengan nivel 2 en adelante
3 Administrador: Solo los administradores pueden


Es para una tienda:
Bajo corresponde con los dependientes
Medio corresponde a los jefes de sección
Alto corresponde a los jefes de departamento
Administrador: Esta claro

El nivel de usuario corresponde al que tiene un usuario concreto ya
autenticado

La tabla es el nombre de la tabla donde se guardan estos valores, y el
campo, el nombre del campo donde se guarda el valor concreto de un control
concreto

Estas dos propiedades se las aà±ado a los textBoxes, botones, combos..

Ahora las funciones dependen del control:

TextBox: si el nivel de usuario >= nivel de seguridad permite ver, editar...
Boton: si el nivel de usuario >= nivel de seguridad permite click

Estos niveles los leo de una pequeà±a base de datos que contiene tantas
tablas como formularios, y en cada tabla contiene tantos campos como
controles "seguros" (como yo les llamo) al cargar el formulario una pequeà±a
rutina se encarga de esto.

Por ejemplo: un textbox que contiene el precio de coste de un artà­culo
tendrà¡ en un principio un nivel 2, y por tanto esta informacion solo estarà¡
disponible para los jefes de departamento. Solo ellos la veran y podran
modificarla

Funcionamiento:
En todos los controles:
Si hacemos click con el boton derecho:
Si el nivel de usuario<nivel de seguridad (esto es no puede acceder) lo que
hago es pedir login y password, y si este login y password da un nivel de
seguridad suficiente, permitira al control la funcionalidad habitual. Esto
permite a un jefe entrar como usuario "pelado", pero en un momento concreto
ver cierta informacion.
Si el nivel de usuario>=nivel de seguridad nos mostrara un nuevo formulario
que nos permitira modificar el nivel de seguridad del control desde 0 hasta
el nivel que tengamos.

Si tienen permiso:
Textbox: Muestra y permite modificar informacion
Button: Permite click (aqui soluciono el problema de grabar, actualizar,
altas...)

Si no tienen permiso:
Textbox: propiedad readonly=true, propiedad passwordChar="*"
button: No responde al evento click ni tampoco a presionar Enter

Para otro tipo de controles he realizado la misma idea.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida