Cuarto parámetro AllowBypassKey |
Responder |
Autor | |||
Parche
Habitual Unido: 03/Julio/2018 Localización: Alicante Estado: Sin conexión Puntos: 170 |
Tema: Cuarto parámetro AllowBypassKey Enviado: 24/Junio/2020 a las 13:49 |
||
Buenas tardes: Tengo la duda de cómo se puede interceptar el parametro DDL de la propiedad: AllowBypassKey, cuando se está abriendo la bbdd (A2007) pulsando la tecla shift... Más que nada, por seguridad claro, y saber como se haría para evitar que otros me lo hagan Javier.Mil me lo indicó hace unos posts: http://www.mvp-access.com/foro/seguridad-bbdd_topic85359.html Su web: https://www.accessdemo.info/docs_seguridad/proteccion-cuarto-parametro-access.html Gracias y saludos.
|
|||
mounir
Colaborador Unido: 09/Febrero/2009 Localización: Asturias-España Estado: Sin conexión Puntos: 6479 |
Enviado: 24/Junio/2020 a las 14:20 | ||
Hola!
Tengo este código:-
Lo que hace es si se abre el Cuadro de Entrada (InputBox) y no se introdcue la contraseña la proxima vez que abras la BD se desactiva la Tecla Shift y se se introduce la contraseña la proxima apertura de la BD activa la Tecla Shift. Espero que te sirva.! |
|||
Un Saludo.
|
|||
javier.mil
Ver perfil usuario
Enviar mensaje privado
Ver los mensajes del usuario
Visite la página de los usuarios
Añadir a la lista de amigos
Colaborador Unido: 10/Agosto/2005 Localización: España Estado: Sin conexión Puntos: 4812 |
Enviado: 24/Junio/2020 a las 15:49 | ||
Para asegurar correctamente la techa SHIFT hay que hacer uso del cuarto parámetro, porque un usuario malicioso podría cambiar esa propiedad desde fuera.
PRIMERO La forma de resolverlo es añadiendo a CreateProperty el cuarto parámetro (DLL) y ponerlo a True , ya que por defecto si No se especifica estará a False CreateProperty(propiedad, tipo, valor, DDL ) Normalmente omitimos el 4º cuarto parámetro (DDL quedará = False), de este modo estamos permitiendo que a través de código se pueda acceder a la propiedad y cambiarla, sin importar que usuario está accediendo a esta propiedad. Donde pones: Set prop = db.CreateProperty("AllowByPassKey", dbBoolean, False) Deberia poner: Set prop = db.CreateProperty("AllowByPassKey", dbBoolean, True, True) SEGUNDO Para que 4 parámetro funcione adecuadamente, antes hemos tenido que crear un GRUPO DE TRABAJO -MDW- y un USUARIO distinto del ADMINISTRADOR que es el que viene por defecto .......... Repito y muy importante para evitar que externamente alguien de forma maliciosa se salte la tecla SHIFT es creando un Usuario distinto a Administrador pero con todos los permisos de Administrador , es decir seria los permisos que pudiera tener un Super Usuario, pero sin ser Administrador Para crear un Usuario con permisos de Administrador pero sin ser Administrador eso ya es otra tema de discusión……….. Para realizar tal cambio habría que hacerlo con una versión inferior a Access 2007 y modificar el fichero MDW , ya que con versiones superiores los Grupos de Trabajo de Access No se pueden modificar desde la plataforma de Access ...... Actualmente todos los Access (incluido Access 2019 y Access 365) hasta la fecha siguen haciendo uso del MDW Si pones esto en la ventana de inmediato de tu Access aparecera el Grupo de Trabajo al que tu Access está vinculado ?SysCmd(acSysCmdGetWorkgroupFile) Editado por javier.mil - 24/Junio/2020 a las 15:57 |
|||
Parche
Habitual Unido: 03/Julio/2018 Localización: Alicante Estado: Sin conexión Puntos: 170 |
Enviado: 24/Junio/2020 a las 19:01 | ||
Buenas tardes: Ahora la pregunta obvia del siguiente paso a seguir... si uso A2007, no tengo ningún mdw creado en versión anterior... ¿Cómo se puede asegurar la protección del cuarto parámetro con A2007? Habrá que crear el usuario desde A2007, no se puede usar .mdw... ¿tengo que buscarme un access 2003 y crear un archivo mdw? Gracias y saludos.
|
|||
javier.mil
Ver perfil usuario
Enviar mensaje privado
Ver los mensajes del usuario
Visite la página de los usuarios
Añadir a la lista de amigos
Colaborador Unido: 10/Agosto/2005 Localización: España Estado: Sin conexión Puntos: 4812 |
Enviado: 24/Junio/2020 a las 20:09 | ||
A ver vamos analizar un poco la situación: Si un atacante entra en tu aplicación pulsando la tecla SHIFT , que podria hacer ??????? Piénsalo.... y ahora imagina que Tu aplicación esta en formato ACCDE con los datos de tus Tablas encriptados, has borrado el Menu de los Ribbons y No tienes visible el Panel de navegación ????? ¿ Que podría hacer ? Fíjate que No hace falta proteger la tecla SHIFT, si el resto de la aplicación la tienes bien protegida Sinceramente la solución expuesta por Mounir es la solución "normal" para el 99% de los usuarios ,.......... Yo No me complicaría la vida ,....... Ahora bien,.......... si eres de los que sigues pensando que necesitas
la protección de la tecla SHIFT entonces es que tu aplicación es
buenísima en ese caso necesitas el uso de cuarto parámetro junto con la creación de un Super Usuario con permisos de Administrador esta aqui explicado Y si ! ,...... Para poder manipular el fichero MDW necesitas una versión de Access inferior a Access 2007 perooooo creo que un usuario normal hubiese abandonado antes ........... |
|||
Parche
Habitual Unido: 03/Julio/2018 Localización: Alicante Estado: Sin conexión Puntos: 170 |
Enviado: 25/Junio/2020 a las 08:38 | ||
Buenos días: La idea era saber, desde mi desconcimiento, la única forma de que un atacante no entrara en la bbdd. Lo comenté en otro post. Si nadie podía acceder por shift ¿no será esta única forma la más eficaz? Para no hacer otros métodos (encriptar, contraseña vba, etc.). Ahora lo veo más claro. Con la curiosidad de hacer un mdw en un access inferior, pero es otro tema Gracias a los dos por vuestro tiempo y saludos.
|
|||
Responder | |
Tweet
|
Ir al foro | Permisos de foro Usted No puede publicar nuevos temas en este foro Usted No puede responder a temas en este foro Usted No puede borrar sus mensajes en este foro Usted No puede editar sus mensajes en este foro Usted No puede crear encuestas en este foro Usted No puede votar en encuestas en este foro |