Security problem

jal

Registered User.
Local time
Yesterday, 16:28
Joined
Mar 30, 2007
Messages
1,709
At my job each computer has read-only access to the Cdrive of the other computers. So here's the problem. I need to store an Access .MDB file on one of the computers (for read-only access). About ten users will connect to it (probably no more than two or three at a time).

With DAO I couldn't connect at all to the "server" machine. The reason is that Access wants to create a log file (.ldb file) in violation of our security policy which states, "You can't create files on another user's computer."

Oledb let me connect, but apparently put me in "exclusive mode" (there was no .ldb file) - another user wasn't able to connect simultaneously with me - only when I closed my connection was he able to connect, so apparently this is "one-user mode" (not good).

I could ask the IT dept to create a public folder on the "server" machine (a folder where everyone has permission to create log files), but I don't think they'd be willing to help me. So at this point I don't have a way to enable two or three simultaneous connections, unless someone has a fresh suggestion.
 
The .LDB file is not for logging but for record locking.

Have you tried using linked tables to the back end?
 
Thanks for the suggestion. However, I'm not sure that linked tables is an option. The users don't have the Access runtime installed (I don't have permission to install it). I am using C#.Net to drive a Jet database. With C#, I don't need permission to install anything because nothing needs to be installed. For example I don't need to register any DLLs.

On the other hand maybe I'm missing something here, as I've never used linked tables.
 
Hmm....Come to think of it, I do seem to recall hearing that DAO can be used to link tables even without the Access runtime installed. Ok, I guess it's time for me to start learning about linked tables - I'll do a search.

Thanks!
 
As an experiment at home, I tried linking a local .MDB file (I guess this would be the front end) to a remote Access .MDB file (apparently this would be the back end).

But this action created an .LDB file at the back end. This works fine at home, but it would fail at the job for lack of permission to create files on a remote computer.

Am I missing something here?
 
Each user should have a local copy of the front end on their machine. Each front end will point to the shared location where the back end resides (Server) not peer to peer. When the user opens the front end a ldb file will open on their own machine. By using linked tables no ldb file is created on the back end location. If users do not have Access installed on their own machines. Then you have two options. 1 install it on each machine. 2 install a runtime version on each machine.
 
Each user should have a local copy of the front end on their machine. Each front end will point to the shared location where the back end resides (Server) not peer to peer. When the user opens the front end a ldb file will open on their own machine. By using linked tables no ldb file is created on the back end location. If users do not have Access installed on their own machines. Then you have two options. 1 install it on each machine. 2 install a runtime version on each machine.
Thanks for the info. Unfortunately I can't install the Access runtime on these machines because I don't have permission. Maybe I can migrate this project to an SQLite database.
 
If this database is mission critical for the workforce to actually do their job. Then I think IT need to revise their stance. Why was this not highlighted prior to the develpment of the application. The technical feasability should have highlighted this issue. It's no good writing a program if the users are not going to be allowed to use it. IT should be caperble of giving write permissions to a specific folder on the C: drive where the mdb resides. Also if the necessary software is not available/installed then whats the point of having the program in the first place.

Don't forget IT are still accountable.
 
I could ask the IT dept to create a public folder on the "server" machine (a folder where everyone has permission to create log files), but I don't think they'd be willing to help me. So at this point I don't have a way to enable two or three simultaneous connections, unless someone has a fresh suggestion.

That is the way it should be done. The backend of the db should be in directory in a server and have it secured so that only those with permissions can access the directory. The users will need full add/edit/delete file permissions to the secured directory to add/edit/delete the .ldb file (as you have found out ;-).
 

Users who are viewing this thread

Back
Top Bottom