Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Temas relacionados > Debates
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 12-07-2012
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Poder: 18
anubis Va por buen camino
seguridad en bases de datos

Hola amigos,

Estaba buscando información a cerca de la seguridad en las bases de datos y su encriptación, pero veo algunas diferencias.

Sqlite: En sí misma no tiene seguridad ni encriptación, salvo que cambies la sqlite3.dll por otra del sistema net.
Firebird: La base de datos no está encriptada pero sí se guardan las contraseñas en el archivo securty.gbd (creo que era este).
Postgrestql: ALgo vi al respecto de esta base de datos, pero sí puede encriptar la base de datos con unos script o dll.
Mysql: No encontré la forma en que codifica.

El por qué saco esta cuestión viene porque para bases de datos locales decís en otros post que es un tanto absurdo salvo que estes protegiendo datos de la NASA .

Bueno os comento un detalle que he visto.

Algunas aplicaciones locales como programas de pacientes de medicina en la que los datos son bastante sensibles de proteger y a la que se accede a través del programa con un usuario y contraseña, que chiste tiene que no puedas acceder sino estás autorizado pero sí puedas acceder a la base de datos por fuera y ver los datos o incluso te la puedas llevar a otro sitio.

Quizá los datos no sean de extrema importancia para muchos, pero para las empresas que no quieran que sus empleados con conocimientos puedan alterar directamente esos datos desde la propia base de datos en beneficio propio.

Es por estos casos, que os causan gracia (a algunos) que se necesitan proteger en un sistema local dichas bases de datos y que por desgracia, para mis pocos conocimientos, no hay por eso se ha preguntado en el foro la manera de encriptar dichas bases de datos.

Está claro que, al encriptar la base de datos, requiere de más esfuerzo por la CPU (pienso yo), pero por lo menos, si se copian la base de datos, les lleve trabajo averiguar la forma de "romper" la encriptación.

como añadidura, hay un programa que se llama Lita (usa sqlite), programado con adobe air, que si permite encriptación(te da la cadena de la password), pero parece que no se puede implementar en delphi, con lo que estamos en las mismas.

Y si he visto que si quiero abrir una base de datos(no me acuerdo cual era) con un manager, me pide una contraseña, que eso seria lo ideal.

Ustedes perdonen por abrir este post.

Un saludo.

Última edición por anubis fecha: 12-07-2012 a las 17:35:35.
Responder Con Cita
  #2  
Antiguo 12-07-2012
Avatar de mightydragonlor
[mightydragonlor] mightydragonlor is offline
Miembro Premium
 
Registrado: feb 2007
Ubicación: Medellín-Colombia
Posts: 587
Poder: 18
mightydragonlor Va por buen camino
Cuando el caso es tan puntual sobre un único cliente, la mejor opción para mi, es usar Firebird embebido, lo único que debes hacer es cifrar el archivo como tal y al abrir el programa lo descifras, al cerrarlo, lo vuelves a cifrar y ya, es mas efectivo que cifrar los datos, ya que si cada registro de las tablas es cifrado, las consultas pierden su eficiencia.

Saludos.
__________________
mas confundido que Garavito el día del Niño.
Responder Con Cita
  #3  
Antiguo 12-07-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.052
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Es algo que hemos hablado muchas veces

Veamos, lo que no es "normal" es que llegue alguien, copie la base de datos y se la lleve. Eso sí que no es normal.
Si hay alguien con "conocimientos" para usar programas externos y conseguir los datos de la BD... entonces ¿están robando?, porque si es la enfermera quien hace eso... ¿qué hay que hacer entonces?, ¿ponerle un guardián a cada trabajador?. Aquí llegaríamos al mismo problema que al de la protección anticopia del software, que por mucha protección que se ponga... se termina copiando.

Entonces, ¿qué puedes hacer?, algo intermedio, por ejemplo, puedes cifrar el nombre del paciente y sus datos personales y si roban la BD entonces verán que "alguien" se rompió la nariz haciendo el salto del tigre, pero no podrán leer de quién se trata porque está cifrado.

Para hacer eso sólamente es necesario cifra el dato al guardar y descifrar al leer, algo muy simple que prácticamente no consume recurso y no afecta en nada más.
Todo lo demás, la verdad, no sirve para nada, salvo poner varios vigilantes junto al servidor, pero incluso así pueden sobornar a los vigilantes.
Responder Con Cita
  #4  
Antiguo 12-07-2012
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Poder: 18
anubis Va por buen camino
Gracias a los dos por contestar,

Efectivamente, sí está complicado como decís. No se puede poner un vigilante para controlar que hace el usuario con el sistema .
También tenéis razón, no se puede encriptar los datos por los problemas posteriores en las consultas, pero quizá sí se pueda encriptar el archivo y desencriptarlo al usarlo que, si es una aplicación de un doctor, se la pase desencriptada todo el tiempo y hay un archivo temporal abierto desencriptado por alguna parte.

Y sí, no es normal que alguien llegue y se copie la base de datos, pero si pasa, como pasan otras muchas cosas.

Principalmente no es que uno sea paranoico con esto, simplemente, son los comentarios de algunos clientes, puesto que la base de datos está en la misma máquina que el programa, todo sería más fácil si fuera por red, pero en este caso, por fuerza, tiene que ser de forma local.

Creo recordar que sql server encriptaba toda la base de datos, pero evidentemente, es un sistema que no es open source como firebird por ejemplo, aunque creo que la versión alpha de firebird 3 tiene en consideración la encriptación de la base de datos.

Como ya sabeis, hay bastante clientes paranoicos y sólo le ponen "peros" pero no dejan más opciones.
Responder Con Cita
  #5  
Antiguo 12-07-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.052
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Para esos casos de clientes demasiado paranóicos, les cuento lo que le pasó a otro cliente que quería todo cifrado, claves por todos lados, tenía el servidor en una habitación bajo llave, le había quitado cdrom, disquetera, etc. a todos los equipos para que no copiaran los datos y se lo llevaran.
Cada trabajador tenía su login, clave, clave especial para según qué cosas, permisos, privilegios, etc. Además quedaba registrado todo lo que hacía todo el mundo, en qué opción entraba, qué había hecho, a qué hora, qué datos había cambiado, qué había copiado, borrado, creado, etc.

Un fin de semana entraron al almacen por el tejado, se llevaron todos los ordenadores, impresoras, etc. y el servidor también.
Compró nuevos equipos y un nuevo servidor (luego se lo pagó el seguro) y fuimos a recuperar un backup que tenía de hacía unos meses, ¡¡¡pero no recordaba la clave que le puso!!!, ya que cada vez que hacía un backup, él mismo se encargaba de poner una clave, para que nadie la supiera.
Y no hace falta que cuente nada más.
Responder Con Cita
  #6  
Antiguo 12-07-2012
Avatar de mightydragonlor
[mightydragonlor] mightydragonlor is offline
Miembro Premium
 
Registrado: feb 2007
Ubicación: Medellín-Colombia
Posts: 587
Poder: 18
mightydragonlor Va por buen camino
JAJAJAJAJAJAJAJA
Realmente hay personas demasiado paranoicas. xD
__________________
mas confundido que Garavito el día del Niño.
Responder Con Cita
  #7  
Antiguo 12-07-2012
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 30
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Cita:
Empezado por anubis Ver Mensaje
[...] hay bastante clientes paranoicos [...]
Si son tan "paranoicos", seguramente pueden invertir en una buena cerradura para la habitación donde sea más seguro colocar un servidor económico de medianas características (en la oficina del gerente o director por ejemplo). Con eso y un buen asesor jurídico tienen más que suficiente para hacer frente a cualquier contingencia de robo de datos personales.

El informático suele pensar que todo es responsabilidad de él y que la tecnología debe ser capaz de cubrir cualquier necesidad. Ni una cosa, ni la otra.
Responder Con Cita
  #8  
Antiguo 12-07-2012
luisgutierrezb luisgutierrezb is offline
Miembro
 
Registrado: oct 2005
Ubicación: México
Posts: 925
Poder: 19
luisgutierrezb Va por buen camino
Entiendo tu problema y a tus clientes, sin embargo tiene que haber un punto intermedio, simplemente quisiera saber que medico me daría total privacidad para cuando vaya a verlo no me vea nadie mas, ni otro paciente, seria posible? tal vez si, practico y barato? no lo creo simplemente, cuantos doctores ofrecen esto yo no conozco a alguno que lo haga..., yo creo que la solución es, password para inicio de sesión a la computadora (claro alguien puede llegar y arrancar con un cd, pero si el doctor deja la puerta sin llave, no es culpa del sistema) y utilizar el cifrado de windows, que si alguien copia el archivo en otra computadora no se podrá ver, volvemos al punto anterior de que si alguien copia el archivo, quien lo dejo entrar? el doctor por no poner la llave? la enfermera porque le dio dinero? esos ya no son problemas del sistema, ahora que pasa si se daña el windows, simplemente la base de datos ya no podrá ser leída porque requiere la cuenta en especifico para desencriptar, entonces requerimos los respaldos, pero los respaldos tienen que estar en un lugar físico, una caja fuerte que alguien puede abrir en el mejor de los casos, entonces caemos creo yo, en el factor humano, porque lo mas probable es que si un doctor deja la puerta abierta, se expone a que le roben el equipo, aunque no le puedan sacar la información, o se expone a que le abran la caja fuerte, muy probablemente no por obtener los respaldos, si no por dinero u otras cosas que pudiera guardar, que ellos primero asuman su responsabilidad y con base en eso se puede trabajar pero no puedes hacer todo desde un sistema...
Responder Con Cita
  #9  
Antiguo 12-07-2012
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Código Delphi [-]
for i := 1 to Infinito do
  writeln('Nunca más voy a decir (des)encriptar. Debo aprender a golpes que es (des)cifrar');
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #10  
Antiguo 13-07-2012
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 3.473
Poder: 21
newtron Va camino a la fama
El tema del acceso a los datos es un asunto bastante sensible y en España está regulado por la ley de protección de datos. En particular los datos médicos son especialmente sensibles y hay ciertas obligaciones que hay que cumplir como el que haya claves de acceso por usuario, que se queden grabados los accesos, etc. así que no es capricho de los usuarios, simplemente hay que cumplir la ley para prevenir sanciones.

Otra cosa es llevar esto a los extremos que se están comentando, lo que tampoco tiene mucho sentido porque, como se ha dicho, en caso de querer al final acabarán sacando la información.

Saludos
__________________
Be water my friend.
Responder Con Cita
  #11  
Antiguo 28-08-2012
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Poder: 18
anubis Va por buen camino
Mira en eso tienes razon, hay qu ecumplir ciertas obligaciones, pero tampoco creo que hay aque ser paranoico.
Solo preguntaba en el caso de que quieran abrir la base de datos fuera del programa general nada mas.
De hecho, como digo, hay varias bases de datos que si encriptan la propia base de datos en forma local por ejemplo.

Como pregunta interesante hecha en voz alta, nose si en la parte tecnica seria comprimir la base de datos completa y luego se usa alguna dll que desencripta, no creo que en memoria si la base de datos es enorme.

Lo que intento es por lo menos saber como podria funcionar a nivel teorico.

Hay otras partes que hablan de encriptar el filesystem.

Si veo que tiene el tema mucha complejidad.... sorry

Última edición por anubis fecha: 28-08-2012 a las 03:33:26.
Responder Con Cita
  #12  
Antiguo 28-08-2012
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 3.473
Poder: 21
newtron Va camino a la fama
Bueno, imagino que lo adecuado para el caso que comentas es que la base de datos tenga la posibilidad de funcionar encriptada, que no sé si es el caso, o en su defecto que tenga un password para poder abrirla.
__________________
Be water my friend.
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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Insertar datos entre bases de datos diferentes franjero Firebird e Interbase 1 19-06-2012 08:32:42
seguridad en bases de datos firebird anubis Firebird e Interbase 10 26-02-2008 20:40:07
Como pasar datos de una hoja de Excel a Bases de Datos de Paradox Goyo OOP 1 06-02-2007 01:57:20
Seguridad para bases de datos Interbase BuenaOnda Conexión con bases de datos 6 03-01-2007 22:43:12
Seguridad de las bases de datos Osorio Firebird e Interbase 1 03-08-2003 13:45:09


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


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