Solved

Securing a 2007/2010 Client Server Application

Posted on 2013-01-25
4
280 Views
Last Modified: 2013-02-19
I have an Access application with a growing user population. The GUI sits on each user PC while the data resides on a server - with the customery table linking. The path to the database is stored in the global module so it can be called as needed when recordsets are used.

A Login form launches when a user starts the application and a valid user name/password combination is required for a successful login. All of the objects are hidden except for the Login form and user Access applications are set up not to show them.

Unfortunately, at this stage, we are relying on user ignorance to protect the application and the data. A curious, or malicious, user could change a few settings and see stuff we don't want them to see. I would like to accomplish the following:

1) Implement a password on the back end data. A user who tries to open that .accdb directly will need the password, but if they open it through the application, the password will be handed to the BE automatically.

2) Lock down the front end so that users can only see the things we want them to see.

If I had my druthers, I would be developing this in straight VB, but unfortunately the company in question wants it in Access.

Any suggestions or links to resources would be appreciated.
0
Comment
Question by:Buck_Beasom
4 Comments
 
LVL 47

Accepted Solution

by:
Dale Fye (Access MVP) earned 167 total points
ID: 38818489
Unfortunately, it is difficult to "secure" an Access BE.

You could put a startup (login) form in the backend, so that if someone attempts to open the backend directly, it would ask for a password and shut down if they don't have the correct password.  Then set the Use Access Special Keys property of the database to No (unchecked) to prevent users from bypassing the startup form.  This is not fool proof either, but it would take someone with enough knowledge (or Internet savy to do a search) to bypass this method.

If you truly need security, step your BE up to SQL Server or SQL Server Express (free).
0
 
LVL 84

Assisted Solution

by:Scott McDaniel (Microsoft Access MVP - EE MVE )
Scott McDaniel (Microsoft Access MVP - EE MVE ) earned 167 total points
ID: 38818511
Regarding the FE, you should be deploying a .accde (or .mde) file. This will effectively disable the user from opening the form in design view, which can stop design mods to Forms, Report and Modules. Users could still modify table and query DATA (and some design), however, so be aware of that.

As fyed said, you should also remove the Shift key bypass for the FE. This provides another level of security, but as fyed mentions there is really no way to fully secure this. If the client wants a truly secure app, they'll need to move to a more secure platform for both the UI and the data.
0
 
LVL 77

Assisted Solution

by:peter57r
peter57r earned 166 total points
ID: 38818544
The other significant step you can take in securing the application (as opposed to the data) is to convert the front-end into an accde file.

This removes the capability to make design changes to forms, reports and code.

I notice your question title refers to A2007/2010.  If you are not already aware, then note that the chances of running a non-trivial A2010 application in A2007 are pretty slim.
0
 

Author Closing Comment

by:Buck_Beasom
ID: 38905151
Since all of these are helpful (and this question has been sitting open for a while) I am splitting up the points.

Thanks to all.
0

Featured Post

Complete VMware vSphere® ESX(i) & Hyper-V Backup

Capture your entire system, including the host, with patented disk imaging integrated with VMware VADP / Microsoft VSS and RCT. RTOs is as low as 15 seconds with Acronis Active Restore™. You can enjoy unlimited P2V/V2V migrations from any source (even from a different hypervisor)

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Most if not all databases provide tools to filter data; even simple mail-merge programs might offer basic filtering capabilities. This is so important that, although Access has many built-in features to help the user in this task, developers often n…
As tax season makes its return, so does the increase in cyber crime and tax refund phishing that comes with it
Familiarize people with the process of utilizing SQL Server stored procedures from within Microsoft Access. Microsoft Access is a very powerful client/server development tool. One of the SQL Server objects that you can interact with from within Micr…
Using Microsoft Access, learn some simple rules for how to construct tables in a relational database. Split up all multi-value fields into single values: Split up fields that belong to other things into separate tables: Make sure that all record…

776 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question