Hola; tengo el siguiente problema:
Necesito impedir que el sysadmin tenga acceso a mis Bases de Datos SQL Server.
Por que quiero impedir esto?.
En la empresa donde trabajo tenemos varias aplicaciones desarrolladas en SQL
Server y no queremos que los sysadmins donde instalamos nuestras aplicaciones
tengan acceso a nuestras bases de datos.
Esta inquietud de proteger los datos de los sysadmins radica en que ya
tenemos incidentes con algunas instalaciones donde estan entrando a las bases
de datos a hacer inserciones, consultas, modificaciones etc. y tambien
tenemos la inquietud que nos copien la estructura de la base de datos la
competencia. Lo peor es que esas modificaciones que hacen en nuestra
estructura en algunos casos esta bajo el concentimiento de los mismos dueños
de la empresa donde estan nuestras aplicaciones instaladas. Obviamente el DBA
gosa de su completa confianza del dueño; pero el problema es que para
nosotros el DBA no es de confianza.
Ahora estamos a punto de implementar SQL Server 2008 con encriptacion
transparente (TDE),pero tampoco nos resuelve el problema del acceso de los
sysadmins a nuestras bases de datos;
Una idea que tenemos es hacernos del SA de las instalaciones asi no podran
entrar por ningun lado ya que tambien estara implementado TDE. Pero ahi ya
tambien nos chocamos en que nosotros tenemos versiones Lite (recortadas) las
que corren en SQL Express (para pequeñas empresas); y TDE solo puede ser
usado en la version Enterprise de SQL Server (tomar encuenta el costo de
licensamiento no todos quedran comprar esa licencia). Tambien implementamos
columnas encryptadas que nos ayudan a saber si los registros fueron hechos
por nuestros sistemas o no esto (algo asi como una firma que esta enlazada al
registro) que tambien nos permitira sacar mensajes en nuestras aplicaciones
"De que la abse de datos nos es confiable ya que sufrio modificaciones extra
sistemas" estamos ya a punto de terminar eso.
Contarles la anegdota de una de estas empresas que anda haciendo todo eso de
meterce a la base de datos y modificar registros insertar etc. Esta empresa
lleva como cliente nuestro ya casi 3 años (SQL Server 2005) esta emrpesa
cuenta con una cartera de aproximadamente 23 mil clientes y va en crecimiento
constante, y por no comprar mas licencias de puntos de cobranzas por que le
parecen caras suponemos que dio la autorizacion a su DBA de analizar nuestras
estructuras (dicha persona tiene certificaciones de microsoft como
desarrollador en .net) hasta que nos dimos cuenta de que habian desarrollado
un punto de cobranzas propio sobre nuestras estructuras; darnos cuenta de
esto nos tomo bastante tiempo y cuando lo hicimos nos dimos cuenta que les
tomo casi un año afinar su programa para llegar a tener casi un 100% de
exactitud como la nuestra, digo casi por que por ahi es donde lo pillamos por
algunos registros que el asia de distinta manera que nosotros o algunas
columnas que el llenaba que nosotros ya en versiones actuales ya no usamos y
habian rastros de como el fue afinando estas inserciones de una data de un
año atras. la cosa es que nos costo tiempo y dinero pillar esto. y hacer esto
en un proceso tan delicado como cobranzas es tremendo podemos tener problemas
con la ley si el DBA hace estas cosas sin que el concentimiento del dueño
quien dice que tiene su quintita y hace y deshace operaciones de cobranzas,
la culpa nos cae a nosotros. y bueno asi van apareciendo otras cuentas
(instalaciones) que ya estan con la misma tonica que esta empresa que les
comento.
como veran estamos metidos un tremendo problema, aparte que estamos a punto
de migrar a todos nuestros clientes de ACCESS a SQL Server que son bastantes.
Bueno espero puedan ayudarme, si no es posible hacer lo que pido, por lo
menos hacerle mas dificil el acceso a los DBAs. Esto es trabajo de muchos
años y no podemos dejar que otros en un 2 por 3 se aprovechen de lo
desarrollado, costo mucho tiempo y esfuerzo llegar al nivel que llegamos.
Gracias. de ante mano
Leer las respuestas