Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 01-07-2008
andresenlared andresenlared is offline
Miembro
 
Registrado: oct 2003
Posts: 153
Poder: 21
andresenlared Va por buen camino
Protección de información

Saludos.

Amigos tengo una pregunta: Resulta que en algunas partes se esta usando la base de datos que entrego, para sacar datos, y en ocaciones actualizarlos por medio de otras aplicaciones que usan conexion a mi base.

En el momento la unica proteccion de conexion es la que se usa al momento de cambiar la contraseña del motor por medio del IBOconsol, pero no es suficiente.

Se piensa en encriptamiento de informacion escencial pero considero que es muy complejo de realizar estos ajustes, debido a que se tienen varias aplicaciones que acceden a la misma base y seria un trabajo bien dispendioso.

Alguna idea mas rapida, o como podria controlar el acceso a mi base de datos desde otras aplicaciones que no sean las que libero??

Gracias por su ayuda.
Responder Con Cita
  #2  
Antiguo 02-07-2008
pcicom pcicom is offline
Miembro
 
Registrado: may 2003
Ubicación: MONTERREY MEXICO
Posts: 253
Poder: 22
pcicom Va por buen camino
Temo que eso no es posible, ya que las BD puedes hasta transportarse tan facil como copiar el archivo, y accessarlas tan simple como instalar un componente de lectura de la BD como IBEXPRESS, IBOConsol..
__________________
Poco ha de saber el que no pregunta.. Yo por eso soy un pregunton
Responder Con Cita
  #3  
Antiguo 02-07-2008
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.286
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
En SQL Server, por ejemplo, se pueden definir permisos sobre una tabla de forma individual. Para un usuario/grupo definir qué operaciones puede realizar.

¿Has mirado si en IB/FB hay algo similar? (Pregunto desde mi ignorancia en estas BD)
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #4  
Antiguo 02-07-2008
andresenlared andresenlared is offline
Miembro
 
Registrado: oct 2003
Posts: 153
Poder: 21
andresenlared Va por buen camino
Muchas gracias por sus respuestas.

Si claro, en FB que es la base de datos que se esta manejando, se pueden crear roles y usuarios ligados a esos roles directamente sobre la base de datos. La conexion que se esta realizando es usando este tipo de configuracion sobre la base, definiendo permisos de lectura, actualizacion ejecucion etc para un tipo de rol que fuenciona muy bien accediendo desde mi aplicacion. El problema es cuando se conoce la base de datos en estructura y contenido y se crean otras aplicaciones que estan aprobechando el diseño para beneficio propio, y eso es lo que quiero controlar, el acceso desde otras aplicaciones. De lo que he mirado es muy poco lo que se puede hacer, y la seguridad de los datos por lo general esta dada en tecnicas de encriptamiento que es a lo que no quiero llegar porque el cambio tan grande que se tendria que hacer sobre la aplicacion.

Alguna otra idea o sugerencia...Muchas gracias.
Responder Con Cita
  #5  
Antiguo 02-07-2008
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.286
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por andresenlared Ver Mensaje
El problema es cuando se conoce la base de datos en estructura y contenido y se crean otras aplicaciones que estan aprobechando el diseño para beneficio propio, y eso es lo que quiero controlar, el acceso desde otras aplicaciones.
No acabo de enterder cómo, si has definido la seguridad correctamente, pueden desde otras aplicaciones abrir la BD y ver la estructura y contenido.
Si has definido usuario y contraseña para caceder desde tu aplicación y la BD tiene configurada la seguridad, cualquier otra app/persona que no conozca esos datos no podrá abrir la BD.

Tal vez (seguramente) me estoy perdiendo algo...
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #6  
Antiguo 02-07-2008
pcicom pcicom is offline
Miembro
 
Registrado: may 2003
Ubicación: MONTERREY MEXICO
Posts: 253
Poder: 22
pcicom Va por buen camino
Cita:
Empezado por Neftali Ver Mensaje
No acabo de enterder cómo, si has definido la seguridad correctamente, pueden desde otras aplicaciones abrir la BD y ver la estructura y contenido.
Si has definido usuario y contraseña para caceder desde tu aplicación y la BD tiene configurada la seguridad, cualquier otra app/persona que no conozca esos datos no podrá abrir la BD.

Tal vez (seguramente) me estoy perdiendo algo...

El problema radica que obteniendo la clave de Administrador puedes hacer, lo que quieras con tu BD, aun y cuando existan reglas de usuarios... cuando eres Administrador eso no importa y podras accessar a cuanta BD tengas instalada.. aun asi es tambien tan sencillo como sacar una copia de tu BD he instalarla en una PC con FIREBIRD y con el usuarios SYSDBA puedes manipularla sin problemas..


Lo que se me ocurre a mi es que creees una DLL(Windows) o un .so(Linux) con una funcion UDF que encripte y desencripte ciertos datos, de tal manera que unicamente desde tu APP mande llamar las funciones, con algun parametro unico, de tal manera que si quisieran obrtener ese dato lo regresaria encriptado y no lo podrian utilizar y la unica seria desde tu APP...

Ejemplo: Obviamente la usariamos sobre campos importantes..

Tabla: CLientes
idCliente int
strCliente Varchar(80) <- se ecnriptaria

datos normales
idCleinte =1
strCliente = "JUAN PEREZ"

datos encriptados
idCliente =1
strCliente = "!"·"·$%$%$&&%"

Accesando desde tu logica de SQL seria

Para GRabar seria

INSERT INTO Clientes (idCliente,strCliente) VALUES (1,MyEncriptado('JUAN PEREZ'))

o para Actualizar

UPDATE Clientes Set strCliente=MyEcriptado('JUAN PEREZ') where idCliente=1



SELECT idCliente,MyDesEncriptado(strCliente,"miFraseUnica") FROM clientes
regresaria

1 JUAN PEREZ

Sin Encriptar regresaria

1 "!"·"·$%$%$&&%"


A quien le va a servir ?????

Crea una UDF,, es facil...


/////////////////////////////////
//// OTRA FORMA SERIA /////
/////////////////////////////////

Otra UDF pero que pueda establecerse en algun TRIGGER que detenga sierta ACCION..


No se si FIREBIRD pueda manejar el Evento de Conexion en el que tambien se pueda establecer la ejecucion de una funcion UDF...
__________________
Poco ha de saber el que no pregunta.. Yo por eso soy un pregunton

Última edición por pcicom fecha: 02-07-2008 a las 16:32:58.
Responder Con Cita
  #7  
Antiguo 02-07-2008
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.286
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por pcicom Ver Mensaje
El problema radica que obteniendo la clave de Administrador puedes hacer, lo que quieras con tu BD, aun y cuando existan reglas de usuarios... cuando eres Administrador eso no importa y podras accessar a cuanta BD tengas instalada.. aun asi es tambien tan sencillo como sacar una copia de tu BD he instalarla en una PC con FIREBIRD y con el usuarios SYSDBA puedes manipularla sin problemas..
Ok.
Primero, entiendo que los usuarios de las otras aplicaciones no deberían ser administradores, porque si no esta discusión no tiene sentido.

En segundo lugar, como ya he dicho, no soy un experto en IB/FB pero me niego a pensar que la seguridad de FB es tan básica como lo que tú comentas. Lo primero que me enseñaron al trabajar con IB (y supongo que FB debe seguir la misma norma) es a eliminar el usuario sysDBA/masterkey y sustituirlo por otro que haga sus mismas funciones (Administrador).

Entiendo que realizado ese paso, lo de copiar la BD en otro servidor no debe funcionar.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #8  
Antiguo 02-07-2008
Avatar de AzidRain
[AzidRain] AzidRain is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Córdoba, Veracruz, México
Posts: 2.914
Poder: 21
AzidRain Va camino a la fama
Tan simple como:

Si la aplicación que entregaste fue hecha a medida hay que especificar en el contrato o documentación de entrega que tu aplicación funcionará SI y solo SI no se modifican las tablas de manera externa a lo cual ya no te harás responsable. El usuario SYSDBA o root en otros motores, debe existir siempre pues es el último reducto para poder mantener la base de datos. Normalmente se le coloca un password y se entrega a quien te recibe el sistema. Ahora bien si tu sistema se monta sobre un servidor que ya está trabajando obviamente no puedes exigir que nadie tenga acceso al servidor excepto tu aplicación.

Hay algunas soluciones para detectar que te modifquen campos o registros completos en tu aplicación. Una de las más simples es crear un campo checksum en el que haces alguna operación con todos los demás campos de manera que quien modifique algo no sabrá como calcular ese checksum y de esta forma tu aplicación podrá detectar cualquier alteración.
__________________
AKA "El animalito" ||Cordobés a mucha honra||
Responder Con Cita
  #9  
Antiguo 02-07-2008
pcicom pcicom is offline
Miembro
 
Registrado: may 2003
Ubicación: MONTERREY MEXICO
Posts: 253
Poder: 22
pcicom Va por buen camino
Recibe un cordial saludo..

Cita:
Empezado por Neftali Ver Mensaje
Ok.
Primero, entiendo que los usuarios de las otras aplicaciones no deberían ser administradores, porque si no esta discusión no tiene sentido.

En segundo lugar, como ya he dicho, no soy un experto en IB/FB pero me niego a pensar que la seguridad de FB es tan básica como lo que tú comentas. Lo primero que me enseñaron al trabajar con IB (y supongo que FB debe seguir la misma norma) es a eliminar el usuario sysDBA/masterkey y sustituirlo por otro que haga sus mismas funciones (Administrador).

Entiendo que realizado ese paso, lo de copiar la BD en otro servidor no debe funcionar.
Estimado Aporreador siento que me estas aporreando.... ejejjeejj , no te creas, aveces hay que quitar las suposiciones y mencionar lo hecho, te menciono esto porque el que le definas un usuario a tu acceso unico a tu BD no le hace unico acceso mientras que exista en cualquier BD un Administrador, este mismo puede crear otro usuario con accesos a las BD que se elijan..

Entonces volvemos a lo mismo tanto el Administrador como el o los nuevos usuarios autorizados tendran acceso a la BD...

He realizado lo que mencionas de quitar el SYSDBA, pero si copian la BD a otro equipo la podran abrir con el ADMINISTRADOR...

Saludos...

Por ahi encontre esto que puede servir para cuestiones de SEGURIDAD..

http://www.firebirdfaq.org/faq344/
__________________
Poco ha de saber el que no pregunta.. Yo por eso soy un pregunton
Responder Con Cita
  #10  
Antiguo 03-07-2008
andresenlared andresenlared is offline
Miembro
 
Registrado: oct 2003
Posts: 153
Poder: 21
andresenlared Va por buen camino
Thumbs up

Muchas gracias a todos por sus observaciones, espero encontrar la mejor manera de solucionar este problemilla.

Hasta pronto
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
Protección anticopia... ¿ sí o no ? rretamar Debates 11 10-04-2013 19:37:34
Proteccion de ejecutables e instalador razor7 Varios 18 02-06-2008 10:36:37
Protección de archivos mdb Gabo Conexión con bases de datos 3 05-09-2007 18:40:11
Protección de archivos y carpetas fide API de Windows 0 20-01-2007 04:17:36
sobre proteccion de ficheros xelip Varios 1 28-08-2006 03:04:21


La franja horaria es GMT +2. Ahora son las 21:20:36.


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