FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Firebird y permisos: ocultando TODO...o casi
Hola.
Hago una consulta: tengo una base de datos Firebird 2.5 ,a la cual acceden dos usuarios: uno es SYSDBA, con control total, y el otro usuario solo tiene permisos para hacer un SELECT en una VISTA, nada más que eso. Pero resulta que si ingreso con un administrador de base de datos como Flamerobin usando la cuenta de ese usuario súper restringido, si bien no puedo ver el contenido de las tablas o de otras vistas, sí puedo mirar la estructura de los metadatos (campos de las demás tablas, estructura de las vistas, índices, etc.). Puedo mirar mucho más de la base de datos que el simple resultado de una vista. ¿ Hay alguna forma de restringir esto ? He repasado la documentación y no doy en la tecla. Saludos y gracias.
__________________
Lazarus Codetyphon : Desarrollo de aplicaciones Object Pascal, libre y multiplataforma. |
#2
|
|||
|
|||
Una de las formas es ocultarle al usuario la ruta (dirección ip + carpeta + archivo de la base de datos) de la base de datos, en mi caso que estoy desarrollando con uniGui y el aplicativo es web, el usuario ingresa vía una ruta ip y un puerto pero desconoce exactamente donde esta la base de datos, es más, la base de datos puede estar en otro servidor. Entonces el usuario no podría conectarse con alguna herramienta administrativa, además, debe colocarse una contraseña fuerte para el usuario sysdba y no la clásica 'masterkey'.
Sin embargo, los productos que tengo en modo escritorio adolecen del problema que comentas y como a veces deja uno instalado el flamerobin, los usuarios tratan de entrar por allí y he visto a más de un curioso viendo a ver para que sirve, el problema radica en que tengo un archivo .ini donde está la ruta de la base de datos. Una solución que estuve considerando es manejar los usuarios del aplicativo sin usar los permisos de firebird creando tablas para el manejo de usuarios, contraseñas y permisos, pero me parece que es más trabajo.
__________________
Luis Fernando Buelvas T. |
#3
|
||||
|
||||
El "usuario" es un desarrollador web, que está creando una interfaz PHP para consultar una vista de mi base de datos, de forma muy sencilla. O sea que tiene los parámnetros de conexion, password, etc. Si bien le di permisos solo para que haga SELECT sobre la vista, si el se instala por ejemplo FlameRobin o cualquier otro administrador de base de datos, puede ver la estructura de todas las tablas, indices, vistas, etc. O sea puede ver todos los metadatos, y no encuentro forma de ocultar eso.
Se que Lazarus (la herramienta de programación que uso) tiene componentes para hacer aplicaciones web, pero no me puse a estudiar eso, y decidí recurrir a un tercero que lo haga con php.
__________________
Lazarus Codetyphon : Desarrollo de aplicaciones Object Pascal, libre y multiplataforma. |
#4
|
||||
|
||||
Pues cópiale una BD (localmente para él) con solo algunos datos para hacer las pruebas y con las tablas que necesite.
De todas formas, lo importante son los datos, ya que la estructura tiene poca importancia.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#5
|
|||
|
|||
Hice una prueba con Firebird 1.5 e ingrese con un usuario con menos privilegios y puede ver los procedimientos almacenados que es donde está la parte fuerte de mi trabajo. La estructura de la base de datos cualquiera la puede ver simplemente copiando la base de datos a otro equipo con Firebird instalado y un par de herramientas. La verdad a mi la estructura es lo de menos que la conozcan pero el código de triggers y procedimientos almacenados es fundamental en mi negocio que nadie por fuera la conozca. En las base de datos en producción yo borro el código fuente de triggers y procedimientos almacenados vía sql. Esto ya se había tratado en este hilo https://www.clubdelphi.com/foros/showthread.php?t=8982
__________________
Luis Fernando Buelvas T. |
#6
|
||||
|
||||
Gracias por responder. Es extraño que no se puedan proteger de alguna forma el "fisgoneo" de los metadatos.
__________________
Lazarus Codetyphon : Desarrollo de aplicaciones Object Pascal, libre y multiplataforma. |
#7
|
||||
|
||||
Si no conoces el password
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Maximizar ocultando barra de windows | giulichajari | OOP | 2 | 05-06-2017 20:09:36 |
Permisos en Firebird | jourdan | Firebird e Interbase | 3 | 18-05-2010 07:58:21 |
Problemas Con Permisos ,Firebird 1.5 | SpyO_O | Firebird e Interbase | 0 | 14-01-2009 16:29:06 |
Conocer Permisos en Firebird | totote | Conexión con bases de datos | 1 | 06-01-2009 13:48:16 |
¡Soluciona (casi) todas tus dudas sobre firebird! | Rufus | Firebird e Interbase | 2 | 18-07-2005 17:45:49 |
|