Solved

Ms Access prevent queries from being exported

Posted on 2014-01-15
3
370 Views
Last Modified: 2014-02-05
I have an access app that i have compiled to remove the code.  however the passthrough queries are still visible if i attempt to import them from another access app.  Is there a way to prevent the query and table objects from being exported?
0
Comment
Question by:RDLFC
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
3 Comments
 
LVL 22

Accepted Solution

by:
Kelvin Sparks earned 500 total points
ID: 39783216
What I have done in the past is to set the properties of each of these to hidden. They are not then visible under normal settings (unless you choose to display hidden objects). They then will not appear in the list of objects that can be exported. There is not real way of preventing this totally although using an accde does make it harder as the user will not be able to change the setting to view hidden objects.


Kelvin
0
 
LVL 85
ID: 39785139
I don't think you can do this with .accdb files. The older .mdb format allowed you to implement User Level Security, and you could remove certain permissions that would handle situations like this, but with .accdb files that's not available.

You could add a Database Password to the file, and a user would need to know that password in order to open the database. Many times the developer will use a "launcher" application to open their password-protected database. The "launcher" app can be another access database the user opens, and then the launcher will actually open the password-protected database. This way, the user doesn't need to know the password:

Dim acc As Access.Application
Set acc = New Access.Application
acc.Visible = True

Dim dbs as DAO.Database
Set dbs = acc.DBEngine.OpenDatabase("full path to your database", False, False, "PWD=YourPassword")
acc.OpenCurrentDatabase "full path to your database"

dbs.Close
Set dbs = Nothing

Open in new window

Code poached from here: http://support.microsoft.com/kb/235422

So your user would open the "launcher" app, and then the "launcher" app would run the code above to open your database. You could do this in the Open or Load event of a form to do things in an automated manner, or you could do this in the Click event of a button.
0
 
LVL 74

Expert Comment

by:Jeffrey Coachman
ID: 39789957
My guess is that what Scott posted will get you what you want,

You also need to ultimately consider your need for this.

Are you just trying t stop a casual user from clicking "Export"
Or are you trying to "Harden" the data from a determined hacker...
...or some other scenario?

The general rule is that "if they can see it, they can steal it.
 vba automation, SQL Insert queries, Screeenshots, screenscrapers, copy/paste, cameras, even brute force memorization are all possible at some level,

"Is there a way to prevent the query and table objects from being exported? "
Well, if a user is already "in" the database, then they can use any number of technique to export it out...

I may have misunderstood your question here, so these are just some other things to consider.

;-)

JeffCoachman
0

Featured Post

[Live Webinar] The Cloud Skills Gap

As Cloud technologies come of age, business leaders grapple with the impact it has on their team's skills and the gap associated with the use of a cloud platform.

Join experts from 451 Research and Concerto Cloud Services on July 27th where we will examine fact and fiction.

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…
AutoNumbers should increment automatically, without duplicates.  But sometimes something goes wrong, and the next AutoNumber value is a duplicate.  This article shows how to recover from this problem.
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…
Polish reports in Access so they look terrific. Take yourself to another level. Equations, Back Color, Alternate Back Color. Write easy VBA Code. Tighten space to use less pages. Launch report from a menu, considering criteria only when it is filled…

635 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