Solved

Securing a 2007/2010 Client Server Application

Posted on 2013-01-25
4
285 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

Comprehensive Backup Solutions for Microsoft

Acronis protects the complete Microsoft technology stack: Windows Server, Windows PC, laptop and Surface data; Microsoft business applications; Microsoft Hyper-V; Azure VMs; Microsoft Windows Server 2016; Microsoft Exchange 2016 and SQL Server 2016.

Question has a verified solution.

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

It’s been over a month into 2017, and there is already a sophisticated Gmail phishing email making it rounds. New techniques and tactics, have given hackers a way to authentically impersonate your contacts.How it Works The attack works by targeti…
Preparing an email is something we should all take special care with – especially when the email is for somebody you may not know very well. The pressures of everyday working life stacked with a hectic office environment can make this a real challen…
Basics of query design. Shows you how to construct a simple query by adding tables, perform joins, defining output columns, perform sorting, and apply criteria.
With Microsoft Access, learn how to specify relationships between tables and set various options on the relationship. Add the tables: Create the relationship: Decide if you’re going to set referential integrity: Decide if you want cascade upda…

809 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