Access Database security

naym

Registered User.
Local time
Today, 17:46
Joined
Aug 30, 2006
Messages
47
Hi There
I am wandering if anyone knows of any advanced method of securing a access database, i know how to disable the toolbars etc and add a password to the database and visual basic code editor but there are software out now that can get past some of these passwords, i did see a database once that even when you went into design mode it wouldnt let you do any changes and wouldnt allow any persmision to do any changes, is this done through the registry or some sort or does someone have any information on how to do this??

any ideas would be much appriciated thanks
 
The best way, IMO, to do DB security with Access is to have a list of users in your database (in a table) and compare who is opening the database to that list on startup - kick them out if not authorized. You will need to deploy an MDE file for this to work well. MDE is about as secure as Access can get if you PW protect everything. The code isn't accessible (yet at least) and you can't do design changes. You could run some software that pulls out forms and such but you can't modify the MDE file.

If you really want to secure your data, you should use a SQL server and require logins so that way if anyone does not have a valid login they can't access the data or the database application.
 
Acces Security related..

I have created a very good looking DB for my job and I want to be sure that noone else besides me (the creator) will use in another pc. My question is: Can I do anything to protect the whole file so that if someone wants to copy it (in a usb stick for example) he won't be able to?

I want to be sure that it is gonna be installed and used only where I want or have orders to.

Thank you in advance folks!
 
You can protect your VBA code, but software exists that can pull forms and such out of MDE files.

If you don't deploy an MDE file, your VBA code can be accessed.

Ideally you will have a front end (MDE with all forms, reports, queries, VBA, Macros, Modules) and a back end (MDB with tables which are linked to in the MDE, or ideally use a SQL server to be sure data is secure).

Nothing should be in the MDB besides data. There will be no code or anything there.

This not only helps to prevent data corruption (assuming the MDB file is properly maintained), but it protects your code from prying eyes.

It cannot protect forms and other objects from being hacked and pulled out - but it can prevent the more casual user from doing anything with it.

As for securing the database to only be able to be opened by who you want, you need a user list table with access levels or something in order to compare who opens it with what access they have or if they don't have access, then it quits out.
 
Various articles have been posted in this forum talking about ways to restrict users from opening a database without some code. Such as a registry entry to act as a license key.

Search the general and database design themes. I'm sure the posts I'm trying to recall were in one or the other of those sections
 
Hi
Thanks Odin1701 i think what you have said might do the trick and GeorgeChr thats what basically i was looking for so no one call just put it on a flash drive and use it on another computer etc and no one can go into design view and start modifying the changes, but will have to look into the MDE file throughly tho.

Also Odin1701 you mentioned about adding the details to a sql server well i do have a server setup at the moment that works witha vb front end but is it possible to create a access db linked to a sql server? because at my shop at the moment runs an access database but if i was say to do online ordering ro somesort would need a sql server so if access is able to do that i wont need to change it.
Many thanks
 
Right Access can link to SQL tables. So instead of having a back-end database, the SQL server will act as your back-end storing all of the data. The code for your front end can be in an MDE file and hold all your forms and reports and such.

You can script the linking to the tables so that if someone is not authorized then it doesn't link the SQL tables, etc.
 
Thanks Odin1701 that has changed my opinion a bit on access and its limittations, do you happen to know of any examples or tutorials on how to do this by any chance?

Many Thanks
 

Users who are viewing this thread

Back
Top Bottom