Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 09-07-2008
canelita canelita is offline
Miembro
 
Registrado: ago 2007
Ubicación: Cucuta
Posts: 18
Poder: 0
canelita Va por buen camino
Seguridad -->Clave de Acceso a base de datos

Es posible eliminar la clave SYSDBA y masterkey de Interbase para mantener la seguridad en los datos de tal modo que otro ingeniero que programe no puede acceder a la base de datos. Es decir dejar solo las claves que van a manejar los usarios responsables de alimentar la informacion de la base de datos?
Responder Con Cita
  #2  
Antiguo 10-07-2008
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.070
Poder: 32
jhonny Va camino a la famajhonny Va camino a la fama
Cita:
Empezado por canelita Ver Mensaje
Es posible eliminar la clave SYSDBA y masterkey de Interbase para mantener la seguridad en los datos de tal modo que otro ingeniero que programe no puede acceder a la base de datos. Es decir dejar solo las claves que van a manejar los usarios responsables de alimentar la informacion de la base de datos?
Puedes usar el gsec para cambiar el password de cualquier usuario, incluso el del SYSDBA, pero de ahí a eliminar el SYSDBA, pues la verdad es que nunca lo había intentado hasta hoy y ni siquiera se si se puede hacer.

Pero por lo menos si hago lo siguiente:

gsec -user SYSDBA -password masterkey -delete SYSDBA

Pues me devuelve:
"An error occurred while attempting to delete the user record."

Para que veas como utilizar el gsec, puedes ir a la pagina web...
http://www.destructor.de/firebird/gsec.htm
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #3  
Antiguo 11-07-2008
pedrohdez pedrohdez is offline
Miembro
 
Registrado: may 2003
Ubicación: Murcia
Posts: 54
Poder: 24
pedrohdez Va por buen camino
Hola,
No te serviria de mucho eliminar SYSDBA, en Firebird la seguridad es del servidor, la forma mas sencilla de saltarte esas restricciones es instalar un firebird en una maquina limpia, copia la GDB y listo, accedes como SYSDBA masterkey sin mayor problema.

O incluso mas sencillo, usa Firebird embebido, ni siquieras tienes que instalar nada.

Te recomiendo que revises las paginas de FirebirdSQL.org esta previsto implementar la seguridad por base de datos para la version 3.0 (lo cuentan aqui: http://www.destructor.de/firebird/3.0/index.htm)

Un saludo,
Pedro
Responder Con Cita
  #4  
Antiguo 11-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: 24
AzidRain Va camino a la fama
Yo creo que estás cayendo en la paranoia del programador bisoño. La estructura de una base de datos mas los SP (o PA) no son sino una parte un sistema completo. Hay más de un ejemplo estructuras de archivos y BD que nacieron con intención de ser "privadas" que no duraron ni la víspera antes de que alguien se metiera a descubrir como le hicieron.

Antes que pensar que tienes el "santo grial" de la programación, es mejor verificar que efectivamente el software que produces resuelve el o los problemas para los cuales fue concebido.
__________________
AKA "El animalito" ||Cordobés a mucha honra||
Responder Con Cita
  #5  
Antiguo 12-07-2008
lbuelvas lbuelvas is offline
Miembro
 
Registrado: may 2003
Ubicación: Colombia
Posts: 378
Poder: 24
lbuelvas Va por buen camino
En Interbase /Firebird no es posible cerrar la base de datos para que nadie tenga acceso al diseño (tablas, llaves, indicces, etc).

Lo unico que se puede hacer como comento kinobi (quien hace años no pasa por aca) y de hecho yo lo hago es eliminar el codigo fuente de los triggers y procedimientos almacenados.

Kinobi elaboro un documento para eso, me tomo el atrevimiento de copiar el codigo sql para eso:

Código SQL [-]
update rdb$procedures
set rdb$procedure_source = null
where (rdb$system_flag = 0);

update rdb$triggers
SET rdb$trigger_source = NULL
WHERE (((rdb$system_flag = 0) OR (rdb$system_flag IS NULL))
AND   (rdb$trigger_name NOT IN (SELECT rdb$trigger_name
                                FROM rdb$check_constraints)));
__________________
Luis Fernando Buelvas T.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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


La franja horaria es GMT +2. Ahora son las 08:26:37.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi