?
Solved

Securing a 2007/2010 Client Server Application

Posted on 2013-01-25
4
Medium Priority
?
308 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 49

Accepted Solution

by:
Dale Fye earned 668 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 85

Assisted Solution

by:Scott McDaniel (Microsoft Access MVP - EE MVE )
Scott McDaniel (Microsoft Access MVP - EE MVE ) earned 668 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 664 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

The new generation of project management tools

With monday.com’s project management tool, you can see what everyone on your team is working in a single glance. Its intuitive dashboards are customizable, so you can create systems that work for you.

Question has a verified solution.

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

This article shows how to get a list of available printers for display in a drop-down list, and then to use the selected printer to print an Access report or a Word document filled with Access data, using different syntax as needed for working with …
Implementing simple internal controls in the Microsoft Access application.
In Microsoft Access, when working with VBA, learn some techniques for writing readable and easily maintained code.
Add bar graphs to Access queries using Unicode block characters. Graphs appear on every record in the color you want. Give life to numbers. Hopes this gives you ideas on visualizing your data in new ways ~ Create a calculated field in a query: …
Suggested Courses

593 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