Ayuda con proteccion de datos

215 views
Skip to first unread message

Renata

unread,
Aug 13, 2010, 12:27:26 AM8/13/10
to Comunidad de Visual Foxpro en Español
Antes que nada gracias por la ayuda que me puedan proporcionar. Tengo
un programa hecho en VFP 8 con la base de datos tambien en VFP,
alguien me podria decir como puedo proteger los datos, para no sea tan
facil modificarlos por alguien que tenga a la computadora. Ahora si es
necesario cambiar de manejador hay alguna opcion no cara?. Bendiciones

Roberto Olivas Mendoza

unread,
Aug 13, 2010, 12:46:18 AM8/13/10
to publice...@googlegroups.com
Te recomiendo utilizar Firebird, pues con respecto a los datos en VFP la
forma de asegurarlos es por medio de herramientas de terceros o haciendo
artilugios por medio de programación. Firebird es SQL y totalmente libre
para cualquier tipo de aplicación.


-----Mensaje original-----
De: publice...@googlegroups.com
[mailto:publice...@googlegroups.com] En nombre de Renata
Enviado el: Jueves, 12 de Agosto de 2010 10:27 p.m.
Para: Comunidad de Visual Foxpro en Español
Asunto: [vfp] Ayuda con proteccion de datos

Luis Mata

unread,
Aug 13, 2010, 2:48:55 AM8/13/10
to Comunidad de Visual Foxpro en Español
Si es DBF no pierdas tu tiempo buscando y probando.
Si estas pensando en elevar tu nivel de conocimiento con respecto a BD y
piensas migrar a otro tienes Sql Express, Mysql, Postgress.. etc.. y asi
empleas tu tiempo de forma mas productiva.

Luis

Walter R. Ojeda Valiente

unread,
Aug 13, 2010, 2:39:03 AM8/13/10
to publice...@googlegroups.com
Hola Renata

Esta misma pregunta ya la respondí no hace mucho tiempo, puedes buscar entre los e-mails, si te interesa verla.

En síntesis, los .DBF sí se pueden proteger, pero esa protección tiene sus limitaciones. Si tu aplicación requiere que los datos sean seguros, deberás cambiarte a algún SQL, ¿cuál de ellos? depende de tu gusto, todos tienen sus ventajas y sus desventajas. MySQL es la mejor opción si piensas tener bases de datos en Internet. Para aplicaciones de escritorio, Firebird es buenísimo, te lo recomiendo.

Si alguien quiere abrir una Base de Datos SQL deberá saber:
- El nombre de la Base de Datos
- La ubicación de la Base de Datos
- Cual es el motor utilizado (Firebird, MySQL, SQLExpress, PostgreSQL, Oracle, etc.)
- Nombre del usuario
- Contraseña del usuario

Si alguien no conoce uno solo de esos datos, no podrá acceder a la Base de Datos. Como ves, hay mucha seguridad. No es perfecto ni infalible, por supuesto, en Informática no se pueden proteger los archivos al 100%, pero hace la tarea del intruso harto complicada.

Saludos.

Walter.

Mario López

unread,
Aug 13, 2010, 9:20:58 AM8/13/10
to Comunidad de Visual Foxpro en Español
Renata:

Independientemente de que sea mejor pasarte o no a una alternativa
cliente-servidor,
en realidad los DBFs en sí *SI SE PUEDEN PROTEGER* si el sistema
operativo
lo permite. Para eso tanto el servidor como los clientes tienen que
tener Windows
2000 en adelante.

La forma que yo utilizo es:

En el sistema operativo
----------------------------------
* Crear una cuenta de usuario específica para permitir que el sistema
acceda
a los datos
* Asignarle una contraseña a dicha cuenta
* Asignarle a dicha cuenta permisos completos sobre las carpetas a
utilizar
* Quitar de las cuentas de usuarios comunes (no administradores) los
permisos
para acceder a las carpetas de datos del sistema.

En el programa
----------------------
* Al inicio del programa impersonar el usuario con
ImpersonateLoggedOnUser

----
#define LOGON32_PROVIDER_DEFAULT 0
#define LOGON32_LOGON_INTERACTIVE 2
#define LOGON32_LOGON_NETWORK 3
#define LOGON32_LOGON_BATCH 4
#define LOGON32_LOGON_SERVICE 5
#define LOGON32_LOGON_UNLOCK 7

DECLARE INTEGER ImpersonateLoggedOnUser IN AdvApi32.DLL INTEGER hToken

nToken = 0
IF EMPTY(LogonUser ("usuario_sistema", GETENV("USERDOMAIN"),
"password_sistema", LOGON32_LOGON_INTERACTIVE,
LOGON32_PROVIDER_DEFAULT, @nToken))
? "Error en impersonate"
CANCEL
ENDIF
---

De acá en más el programa tiene los permisos que le asignaste a la
cuenta
"usuario_sistema", así que puede crear conexiones de red, abrir y
modificar
archivos, etc.


HTH
Mario

Oscar Díaz

unread,
Aug 13, 2010, 9:30:05 AM8/13/10
to publice...@googlegroups.com
Buenos dias Renata:
 
Yo utilizo el siguiente truco que encontré no recuerdo de quien:
 
proteger la tabla en la ventana de comandos
* protegedbf
      nfile = FOPEN('RUAF.DBF', 12)
      FWRITE(nfile, 'O')  &&la letra O de Oscar
      FCLOSE(nfile)
*
al entrar al programa
* desprotegedbf
 nfile = FOPEN('RUAF.DBF',12)
 FWRITE(nfile,'O')  &&la letra O de Oscar
 FCLOSE(nfile)
*
al salir del programa
* protegedbf
      nfile = FOPEN('RUAF.DBF', 12)
      FWRITE(nfile, 'O')  &&la letra O de Oscar
      FCLOSE(nfile)
*
Adjunto ventana de error cuando se quiere abrir la tabla
desde la ventana de comandos.
 
Espero te sirva.
 
Oscar Diaz
Bogotá - Colombia

error-abrirbd.JPG

Luis Mata

unread,
Aug 13, 2010, 10:16:18 AM8/13/10
to publice...@googlegroups.com
Una solucion interesante, pero es solo una de la lista de problemas que
traen los DBFS

Luis

----- Original Message -----
From: "Mario L�pez" <guag...@gmail.com>
To: "Comunidad de Visual Foxpro en Espa�ol"

<publice...@googlegroups.com>
Sent: Friday, August 13, 2010 8:20 AM
Subject: [vfp] Re: Ayuda con proteccion de datos


Renata:

Independientemente de que sea mejor pasarte o no a una alternativa
cliente-servidor,

en realidad los DBFs en s� *SI SE PUEDEN PROTEGER* si el sistema


operativo
lo permite. Para eso tanto el servidor como los clientes tienen que
tener Windows
2000 en adelante.

La forma que yo utilizo es:

En el sistema operativo
----------------------------------

* Crear una cuenta de usuario espec�fica para permitir que el sistema
acceda
a los datos
* Asignarle una contrase�a a dicha cuenta

De ac� en m�s el programa tiene los permisos que le asignaste a la
cuenta
"usuario_sistema", as� que puede crear conexiones de red, abrir y
modificar
archivos, etc.


HTH
Mario

On 13 ago, 03:39, "Walter R. Ojeda Valiente" <w...@hotmail.com> wrote:
> Hola Renata
>

> Esta misma pregunta ya la respond� no hace mucho tiempo, puedes buscar

> entre los e-mails, si te interesa verla.
>

> En s�ntesis, los .DBF s� se pueden proteger, pero esa protecci�n tiene sus
> limitaciones. Si tu aplicaci�n requiere que los datos sean seguros,
> deber�s cambiarte a alg�n SQL, �cu�l de ellos? depende de tu gusto, todos
> tienen sus ventajas y sus desventajas. MySQL es la mejor opci�n si piensas

> tener bases de datos en Internet. Para aplicaciones de escritorio,

> Firebird es buen�simo, te lo recomiendo.
>
> Si alguien quiere abrir una Base de Datos SQL deber� saber:


> - El nombre de la Base de Datos

> - La ubicaci�n de la Base de Datos


> - Cual es el motor utilizado (Firebird, MySQL, SQLExpress, PostgreSQL,
> Oracle, etc.)
> - Nombre del usuario

> - Contrase�a del usuario
>
> Si alguien no conoce uno solo de esos datos, no podr� acceder a la Base de

> Datos. Como ves, hay mucha seguridad. No es perfecto ni infalible, por

> supuesto, en Inform�tica no se pueden proteger los archivos al 100%, pero

edgar suarez kummers

unread,
Aug 13, 2010, 10:34:36 AM8/13/10
to publice...@googlegroups.com
Estimado Oscar:
Muy buena tu sentencia para proteger las tablas,
Ahora sí, ...., una pregunta: 
Son muchísimas las tablas ....
¿Cómo lo harías desde el main.prg?
Tal que la primera vez que entres, por ejemplo dando tu clave de acceso,
en todas las tablas le otorgue el permiso de acceso por escritura ....
Y que al salir, en todas las tablas le niegue el permiso de acceso por escritura.
Sería genial una solución así.
Una justa pregunta para Luis María y para Walter ....
Saludos
Edgar



De: Oscar Díaz <oscar...@gmail.com>
Para: publice...@googlegroups.com
Enviado: vie,13 agosto, 2010 08:30
Asunto: Re: [vfp] Ayuda con proteccion de datos

Luis Maria Guayan

unread,
Aug 13, 2010, 11:05:06 AM8/13/10
to publice...@googlegroups.com
Agrego solo un truco para "proteger" bases de datos de VFP

-- Evitar la apertura de tablas contenidas en un DBC --
http://www.portalfox.com/article.php?sid=2404

Como indican la mayoría de las respuestas de este hilo, si se requiere un protección real de los datos, se debe pensar en un motor de bases de datos como los enumerados en la siguiente página

--
Sitios sobre motores de bases de datos  --
http://groups.google.com.ar/group/publicesvfoxpro/web/sitios-sobre-motores-de-bases-de-datos

Luis María Guayán
Tucumán, Argentina
_________________________
http://www.PortalFox.com
Nada corre como un zorro
_________________________

 

Armando Rodríguez

unread,
Aug 13, 2010, 11:31:01 AM8/13/10
to publice...@googlegroups.com

En la sección de -- Sitios para motores de bases de datos --, cuando se hace click en la liga de la conexión de MySql, apunta a la conexión de Firebird.

 

Saludos

Armando R.

Viktor Velazquez

unread,
Aug 13, 2010, 11:43:54 AM8/13/10
to publice...@googlegroups.com
para esta parte de la seguridad.. hice una aplicacion yo use  cryptor5 de  Xitech..
me funciono bien.. y es seguro.. no se para los expertos .. pero si. no habres tan facil la tabla,
la desventaja., ke es de paga.. pero lo ke yo hice fue entregar solo el  .app y el vfp.exe donde corriera.. junto con las .dll de fox
y me funciono muy bien.. bueno esa fue un modo de trukearlo.. ya que si quiero entregar executables tendre ke comprar la licencia..
 
saludos foxeros..


!No progresas mejorando lo que ya esta hecho, sino esforzandote por lograr lo que aun queda por hacer!  (K. Gibran)



 

Date: Fri, 13 Aug 2010 12:05:06 -0300
From: luis...@portalfox.com
To: publice...@googlegroups.com
Subject: Re: [vfp] Ayuda con proteccion de datos

Oscar Díaz

unread,
Aug 13, 2010, 11:45:50 AM8/13/10
to publice...@googlegroups.com
Estimado Edgar:
 
Cuando son muchas las tablas las coloco en una matriz (array) asi:
 

* al entrar desprotegedbf

close tables

gnDbcnumber = ADIR(gaBaseDatos, '*.DBF') && Crea la matriz.

FOR nCount = 1 TO gnDbcnumber && Bucle para obtener el número de tablas.

if substr(gaBaseDatos(nCount,1),1,7) <> "FOXUSER"

nfile =

FOPEN(gaBaseDatos(nCount,1)+'.DBF',12)

FWRITE(nfile,'0') &&el numero cero (0)

FCLOSE(nfile)

endif

ENDFOR

* al salir protegedbf

close tables

gnDbcnumber = ADIR(gaBaseDatos, '*.DBF') && Crea la matriz.

FOR nCount = 1 TO gnDbcnumber && Bucle para obtener el número de bases de datos.

if substr(gaBaseDatos(nCount,1),1,7) <> "FOXUSER"

nfile =

FOPEN(gaBaseDatos(nCount,1)+'.DBF',12)

FWRITE(nfile,'O') &&la letra O de Oscar

FCLOSE(nfile)

endif

ENDFOR

Oscar Diaz
Bogotá - Colombia

extremo

unread,
Aug 13, 2010, 11:50:16 AM8/13/10
to Comunidad de Visual Foxpro en Español
El truco con el FOPEN viene de clipper pero nunca lo he implementado
ya que tengo sistemas que funcionan las 24 horas del dia, en ese caso
creo (porque no he realizado pruebas) de que no serviria ese truco.

El metodo utilizado por Mario Lopez lo encuentro bastante interesante.

Bendiciones

Arnaldo Toledano

unread,
Aug 13, 2010, 12:07:56 PM8/13/10
to publice...@googlegroups.com
Renata:
Todo depende que es lo que quieras proteger.
Tenes que realizar un buen analisis para ello.
En el caso de modificar un bit con FOPEN, trae problemas cuando trabajas en red.
Lo que estas realizando es modificar la cabecera del la tabla DBF.
Tenes que tener mucho cuidado si abris la tabla en modo compartido.
Si desde una pc, ingresaste y cambiaste el bit y la dejaste "desprotegida" y otra pc ingresa y quiere modificar, podes ocacionar un lindo safarrancho, salvo que tengas en cuenta esto.
Creo que los primeros 32 bit guardan datos sobre cantidad de registros, cantidad de campos, etc, de la tabla, yo en tu lugar averiguaria muy bien que informacion guarda en la cabecera para evitar problemas.
 
Si lo que te interesa es que NO LEAN la verdadera informacion que guardas en las tablas, lo que podes hacer es guardar algun campo determinado con una rutina que grabe el dato encriptado.
Ejemplo.
 
Replace Campo1  With Cambiadato(_Campo1)
 
Donde Cambiadato() es una funcion de encriptado que tiene que tener una inversa para leer los datos.
Recuerdo que hace un tiempo tenia un cliente que queria justamente eso, para ello encriptaba los campos de importes y los campos de codigos de clientes.
De esa manera cuando abrias la tabla, al estar esos datos encriptados nadie podia leerlos.
Como en Argentina cambiaron las disposiciones con respecto a los datos guardados de los sistemas de facturacion, (deben estar legibles para las autoridades fiscales), tuve que sacar los encriptados.
 
 
Arnaldo
 
 
__________ Información de ESET Smart Security, versión de la base de firmas de virus 5364 (20100813) __________

ESET Smart Security ha comprobado este mensaje.

http://www.eset.com

Luis Maria Guayan

unread,
Aug 13, 2010, 2:44:58 PM8/13/10
to publice...@googlegroups.com
Gracias por el aviso, ya está corregido

edgar suarez kummers

unread,
Aug 13, 2010, 2:53:04 PM8/13/10
to publice...@googlegroups.com
Estimado Oscar:

Te agradezco tu respuesta. Se aprecia muy buena.

Saludos

Edgar

Enviado: vie,13 agosto, 2010 10:45

Luis Dalmasso

unread,
Aug 13, 2010, 4:08:18 PM8/13/10
to publice...@googlegroups.com

Aha , y en un entorno multiusuario como haces?, y si se le colgó el sistema y lo cerro mas te quedarían desprotegidas?

Lo mejor es  alternativa económica es guardar los datos encriptados y listo

 

Saludos

Luis Dalmasso

edgar suarez kummers

unread,
Aug 13, 2010, 4:38:51 PM8/13/10
to publice...@googlegroups.com
Estimado Luis:

Entiéndeme esta frase:

¿Cómo?, ¿Cuándo?, ¿Dónde?

Somos todo oídos .... explícanos por favor !

Saludos

Edgar


De: Luis Dalmasso <luisda...@gmail.com>
Para: publice...@googlegroups.com
Enviado: vie,13 agosto, 2010 15:08
Asunto: RE: [vfp] Ayuda con proteccion de datos

IVAN MARTINEZ

unread,
Aug 16, 2010, 12:31:45 AM8/16/10
to publice...@googlegroups.com

Mario Porque es necesario que las estaciones tengan tambien win2000 o mas.?

Ivan Martinez

>>>-----Mensaje original-----
>>>De: publice...@googlegroups.com
>>>[mailto:publice...@googlegroups.com] En nombre de Mario López
>>>Enviado el: Viernes, 13 de Agosto de 2010 08:51 a.m.
>>>Para: Comunidad de Visual Foxpro en Español
>>>Asunto: [vfp] Re: Ayuda con proteccion de datos

HernanCano

unread,
Aug 16, 2010, 2:10:30 AM8/16/10
to Comunidad de Visual Foxpro en Español
Claro, como dice Luis M. Guayán, quizá lo mejor sea migrar a un motor
de bases de datos.

Sin embargo con este comentario quiero ensalzar la respuesta de Mario
López, pues yo siempre tuve la impresión de que debería ser posible, e
hice un comentario hace tiempo al respecto.

La conclusión es:
- El sistema operativo tiene las capacidades (los sistemas operativos
tienen las capacidades); ¿por qué no usarlas?
-¿Por qué siempre dejárselas al motor?
- Esta alternativa minimiza los requerimientos de software, y por ende
de hardware ¿correcto?
-Algún pesimista quizá diga que "agranda" nuestros requerimientos de
conocimientos de software, pero entonces ¿somos programadores (y/o
analistas) o no? ¿acaso no se nos amplia mucho más teniendo que
conocer un lenguaje como T-SQL? (por favor no pretendo negativizar los
motores, sólo "defender" las DBF).
-Así mismo ¿acaso lo que "aprendamos" (de proteger aplicaciones de
esta forma) no se puede usar también con los motores? ¿y de esa forma
mejorar sus prestaciones de protección?

Mi conclusión: Con esta metodologia (de proteger aplicaciones basada
en la seguridad del sistema operativo) podemos darnos personalmente un
plazo adicional para migrar nuestras aplicaciones a un motor. Bueno yo
no lo haré (migrar). Pero sé que muchos están estresados por hacerlo o
haciéndolo. Y aún habrá muchos casos (para cada uno) en que será
suficiente.

VFP rocks!!
VFP firme!!

Daniel Sánchez

unread,
Aug 16, 2010, 10:46:35 AM8/16/10
to publice...@googlegroups.com
Bueno compañeros, contare mi caso de porque migre de DBF a un motor de base de datos.

Cuando empece ha dedicarme con fuerza en lo que es sistemas hace 12 años (programaba desde 1992 de manera esporadica siempre con foxPro) migre del DOS a FoxPro for Windows 2.6 comenze con clientes pequeños, sin más requerimientos de seguridad ni volumen de información, pero con el paso de los años estos clientes y otros nuevos que fui teniendo en mi cartera fueron creciendo en volumen de información y tal vez no tanto en necesidad de seguridad, pero las cosas una o otra se fueron dando y yo no podía quedarme con una aplicación en primer lugar no orientada a objetos (que con la práctica demostró darme mas potencia y flexibilidad a la hora de programar) y en segundo lugar con carpetas compartidas para poder acceder a los datos desde mi aplicación y también por parte de cualquier usuario que tuviera acceso al sistema (lamentablemente en algunos casos felizmente no todos, siempre hay gente buscando la forma de encontrar la debilidad para cubrir algún robo y echarle la culpa a que el software no es seguro y por ahí el error en dar los datos), entonces opte por empezar de 0 programando toda la aplicación de manera orientada a objetos y a la vez amarrado a un motor de base de datos que me daba más potencia, seguridad y nuevas alternativas de expansión de mi software a travez de internet. (obviamente el proceso tomo sus años, primero realizando clases para diversos objetivos, teniendo claro un marco de trabajo de las aplicaciones para estandarizar pantallas, procesos, métodos de almacenamiento de datos, toda una ingeniería, que se fue probando en pequeños proyectos que iban solicitando esporádicamente, mientras en paralelo daba forma a la aplicación final que se trabaja y comercializa ahora)
En conclusión el paso lógico es avanzar hacia un mejor repositorio de datos como no los da los motores de base de datos, en el mercado hay gratuitas y pagas, ademas el cliente puede no saber nada sobre esto, pero nosotros sabemos que tenemos un producto seguro, bueno y confiable y con grandes posibilidades de mantenerse en el futuro y soporte si el cliente crece el volumen de su información sin tener que recurrir a parches temporales (como limpieza de su información muy antigua, sacar productos que ya no usan y otras cosas mas que en su momento utilice para mantener ágil el antiguo sistema)
Por eso amigos no tengan miedo cambiar a un GBD potente, eso sí, tomara su tiempo hacerlo, pero creo que el resultado final, profesional como económico, lo justifica; lo digo por experiencia propia, ademas no tengamos en contra 2 cosas en este mercado competitivo, 1ero en usar un lenguaje que según para la mayoría esta muriendo y 2do menos aún no usar un GBD para su información, que diciendo eso ya no estarán tan preocupados de que lenguaje uses mas si que maneja un GBD potente.

--
Daniel Sánchez Escobar
Investigación y Desarrollo
Reset Software & Sistemas
Móvil 044-949398047
Trujillo - Perú

Luis Mata

unread,
Aug 16, 2010, 8:24:05 AM8/16/10
to publice...@googlegroups.com
Asi es daniel:
 
Un punto importante tambien:
 
Con DBF utilizando entorno de datos, o el USE para abrir las tablas , jamas tendras un sistema cliente servidor lo que te limita tener un sistema local.
con VPN, Solo imaginar abrir con un USE una tabla de 300000 registros para sacar un solo registro, ya es una exageracion.
 
Algo que no sucede con una Motor de Base de datos (Sql server, Mysql, Postgres), solo lanzas la sentencia y pides el dato que quieres y te retorna lo que quieres.
 
Esta es la Razon mas importante que me hizo abandonar DBF como Base de datos.
Bueno luego salieron solitos todas las demas ventajas..
 
Luis

IVAN MARTINEZ

unread,
Aug 16, 2010, 1:21:56 PM8/16/10
to publice...@googlegroups.com
Con bases de datos vfp no se puede usar spt.?
 
ivan


De: publice...@googlegroups.com [mailto:publice...@googlegroups.com] En nombre de Luis Mata
Enviado el: Lunes, 16 de Agosto de 2010 07:54 a.m.
Para: publice...@googlegroups.com
Asunto: Re: [vfp] Re: Ayuda con proteccion de datos

Geovanny Contreras Peralta

unread,
Aug 16, 2010, 3:06:47 PM8/16/10
to publice...@googlegroups.com
Yo creo que cada cosa con su cosa, dependiendo de lo que se quiera hacer y que desarrollar con nuestro vfp.
VFP tiene base de datos nativa, si sus requerimientos como desarrollador hacen que sus clientes se sientan satisfechos usa sus tablas nativas, son rapidísimas, si sus propósitos son otros usa otro motor, esa es la ventaja del lenguaje. Es como los lenguajes de programación, para unos es mejor uno que el otro.

Parte de este texto me lo encontré en esta dirección:
http://www.avemundi.com/software/articulos/20020503.htm

El formato nativo de archivos de datos de Clipper es la estructura conocida como DBF, que fue mostrada por primera vez en el dBase III+, si bien muchos programadores "modernos" la consideran vieja, obsoleta y decadente, el archivo DBF tiene la sencillez de un clasico, visto desde el punto de vista romántico, un DBF es como las Piramides de Egipto, un ejemplo vivo de una cultura antigua pero que ha durado por siglos, por mucho, más tiempo que obras maestras de la arquitecutra moderna como Las Torres Gemelas de NY,  porque fue creado para durar.


From: iva...@gmail.com
To: publice...@googlegroups.com
Subject: RE: [vfp] Re: Ayuda con proteccion de datos
Date: Mon, 16 Aug 2010 12:51:56 -0430

Walter R. Ojeda Valiente

unread,
Aug 16, 2010, 6:07:50 PM8/16/10
to publice...@googlegroups.com
Y porque no les estrellaron dos aviones contra ellas.

Saludos.

Walter.

Carlos Miguel FARIAS

unread,
Aug 17, 2010, 4:43:12 PM8/17/10
to publice...@googlegroups.com
La estabilidad de un sistema de almacenamientos de datos, llamese dbf, sgbd del monton (sqlite, no por ello de mala calidad, salvo que monousuario), sgbd del medio (gratis y soporte "de buena voluntad de la comunidad") o de alto nivel (pagos, con soporte kate kate, pero que no esta cuando lo necesita) es directamente proporcional a las opciones de recupero de datos que se establezcan.
He instrumentado sistemas con dbf, donde el operador principal es consciente de la importancia de los backups, y los hace como les corresponde y casi nunca han tenido problemas y sistemas con sofisticadas bd, donde el operador hace backup a la marchanta y perder meses de trabajo porque los backups "que debían" estar, no estaban porque no terminaron a tiempo (dentro del turno) y se cancelaron sin dejar aviso.
Esto es legal (ley de Murphy).
Reply all
Reply to author
Forward
0 new messages