Compartir una carpeta en el servidor

Hay una carpeta en el servidor, con una base de datos access a la cual acceden todos los usuarios de la red a través de un programa vb.
Quería saber como puedo ocultar la carpeta para que no pueda ser abierta la base ni copiada ni modificada.

1 Respuesta

Respuesta
1
Para que los usuarios no puedan abrir la base de access puedes hacer lo siguiente:
No se que modelo de acceso a datos estas utilizando (ADO, DAO o RDO)Te envío un ejemplo con ADO, pero también se puede hacer con DAO y RDO.
Primero desde Access le pones un password a la base de datos, para esto la abres en modo exclusivo y en Herramientas->Seguridad->Establecer Contraseña para la base de datos.
Luego cuando la abras desde Visual Basic 6.0 y ADO utilizas este código.
Dim m_cnn as New ADODB.Connection
m_cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\mibase.mdb;"
m_cnn.CursorLocation = adUseClient
m_cnn.Properties("Jet OLEDB:Database Password") = "PASSWORD"
m_cnn.Open
El password debe coincidir con el que le asignaste a la base de datos desde Access.
Así nadie pordrá abrir la base de datos y modificarla, esto solo será posible desde tu programa.
Para que la base de datos no pueda ser copiada ni eliminada del servidor, deberás utilizar las herramientas de seguridad de tu servidor, supongo que tienes windows 2000 server o NT 4.0, ¿es así?
La partición donde esta tu base de datos es NTFS o FAT32, dependiendo de esto las opciones de seguridad son más avanzadas, es mejor NTFS.
Dale click derecho a la base de datos en el servidor, luego seleccionas propiedades, luego seguridad y si tienes NTFS dale click a seguridad, ahí podrás definir quien tiene permisos a la base de datos y que tipo de permisos.
El tema es que ya lo tengo hecho, pero si alguien por la red crackea la contraseña entra y puede modificar la base de datos, lo que yo quiero es que la carpeta no se vea y que nadie tenga acceso al directorio salvo el que entra a través de la aplicación. !
Creo que lo que quieres no se puede hacer, a través de Windows 2000 Server y con NTFS puedes establecer quien puede leer, escribir, listar los archivos y demás, pero estos usuarios tendrán estos permisos siempre que se autentifiquen con su usuario en Windows NT sin importar si entraron a la aplicación o no, esto lo puedes hacer dando click derecho a la carpeta, luego propiedades, seleccionas los permisos, luego en botón de permisos avanzadors, en ver y/o modificar podrás personalizar aun más los derechos de los usuarios.
Para lograr lo que deseas creo que necesitarías migrar tu aplicación a un manejador de bases de datos más robusto como SQL Server en donde no dependerás de carpetas y directorios.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas