Encriptar datos de una tabla y guardarla

¿Cómo podría encriptar los datos de una tabla "Usuarios" y guardarlos en un archivo independiente de la base de datos mdb y que al abrir la bd los desencripte de nuevo, y que si el archivo no se encuentra disponible la aplicación muestre un mensaje de error "El archivo Usuarios.txt no se encuentra disponible" y se cierre la sesión?
También necesito que al entrar en la aplicación y una vez autenticado el usuario, se almacene sus Nombre en una variable Global con el fin de que todos los nuevos registros que se creen contengan en un campo su valor, así como la fecha y hora actuales. He intentado hacerlo creando en un módulo independiente:
Option Explicit
Public UsuarioActual
Global UsuarioActual As Variant
Pero no funciona, así que necesito tu ayuda.

1 respuesta

Respuesta
1
Bueno no se si es necesario exactamente como tu pides
a ver si esto te va
Access puede encriptar la base de datos, y nadie vería password abriéndola con un editor
si lo quieres en un archivo independiente, (pudiera ser mdb y no texto) y ya
Si aun así continuas con tu idea
Coloca los datos en el txt (¿sabes hacerlo?) Y con un for lee letra por letra toma el asc de cada letra y xor con un numero del 1-255 así lo encriptas y al hacerlo otra vez lo desencriptas a la vez le puedes por ejemplo sumar un numero y restarlo al dedencriptar
lo abres con open tanto para leerlo y desencriptarlo como para encriptarlo y escribirlo
lo de la variable global es peligrosa, access borra muy fácilmente lo global por cualquier error, y tu aplicacción fallaría, lo he experimentado, mejor leela cada vez que lo necesites
par ahacer una variable global la puedes colocar antes de cualquier procedimiento
y pones dim xx as string, ¿esto lo comparte para el modulo
o en un modulo aparte (no en un modulo de un form) esto lo comparte para todos los módulos
es esto lo que buscas? Avisame o enviame lo que tengas por [email protected] y continuamos
Sigo necesitando que la tabla de Usuarios esté en un archivo independiente de la BD, aunque me da lo mismo que sea mdb. Para poder hacer necesito que me indique los pasos para que mediante código la tabla Usuario.mdb se abra y se desencripte y una vez leídos sus datos y cuando ya no los necesite se encripten de nuevo y se guarden. También te agradezco que me digas como leer y guardar (desde la aplicación BD access) ese archivo situado en la carpeta C:\Windows\System32 de mi ordenador y que si ese archivo no existe, se muestre un mensaje de error diciendo que ese archivo no se encuentra disponible y a continuación se cierre la aplicación.-
Respecto a lo de la variable, si sigo tu consejo y leeo los datos cada vez que los necesite de la tabla Usuarios, como haría para saber cual de todos los usuarios es el que está utilizando la aplicación, a mí se me ocurre la idea de crear un campo llamado UsuarioActual con valor TRUE o FALSE, pero si la aplicación está siendo compartida y otro usuario también accede a ella al mismo tiempo, se plantearía el problema de como diferenciar quien es el que graba un registro.
No se... ¿tu qué piensas al respecto?
Gracias
Si es para guardar las claves de los usuarios es suficiente la misma base de datos encriptada
si es para protección del sistema solo graba donde quieras lo que quieras y nadie sabrá
usa open
Ve a ver si te gusta SaveSetting
Que guarda datos de la aplicación en el user.ini los puedes emcriptar con el xor por programa
si vas a utilizar un mdb encriptado solo usa tablas atachadas (vincular tablas) menu de archivo-obtener datos externos-vincular tablas con la tabla usuarios en otro mdb encriptado y en otro directorio
access lo desencripta solo
usa herramientas-seguridad-codificar base
y vinculala

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas