• Status: Solved
  • Priority: Low
  • Security: Public
  • Views: 37
  • Last Modified:

shared database

Hello peoples,

I need help with my project vs setting theft protection. db is split fronted and backend and I use protection with vba and here is my problem...
How I may lock/set security/protect this both shared database?

My problem:
If someone copy db to place it where is not function vba/macro then he may close security popup modal window and theft all data.
vba is set with password but when he want to get table, query, form etc. Is way how lock menu bar in ms access or set security in shared db with split db?

thnx for reply
0
Johny Rambo
Asked:
Johny Rambo
  • 5
  • 3
  • 2
  • +1
4 Solutions
 
ste5anSenior DeveloperCommented:
First of all: There is no foolproof way to do it. Cause that's inherint to the system.

What do you want to protect?

When it's the data in the back-end, then you need/should to switch to SQL Server. Then the data could not be longer copied as a single file.

vba is set with password[..]
The only thing here is to deploy compiled ACCDE files (maybe also renamed to ACCDR). This will protect your IP in the code. But you cannot stop a sophisticated user from accessing linked tables.
1
 
Fabrice LambertFabrice LambertCommented:
Hi,

This can be done by altering some properties of your database:
Dim db as DAO.Database
Set db = CurrentDb
db.Properties("StartupShowDBWindow") = False
db.Properties("StartupShowStatusBar") = False
db.Properties("AllowBuiltinToolbars") = False
db.Properties("AllowFullMenus") = False
db.Properties("AllowBreakIntoCode") = False
db.Properties("AllowSpecialKeys") = False
db.Properties("AllowBypassKey") = False
set db = Nothing

Open in new window

At least this will prevent "rookies" from going into "restricted areas" of your database.

PS: Allow yourself a backdoor, in case of troubles.
1
 
Johny RamboAuthor Commented:
I need protect all data in shared db as is possible for example exclusive mode...

Problem is that this db must be shared for all users, I can't set password for backend db where is all tables with data...

with the popup modal window form is not good solution for security... when is not working macro then user know close this modal window with default close button and then may makr everything in option from menu bar in file...

I have this popup modal window form set without close system default button from proerty options and when is function macro all is good... when is not working then show me close button on form again and it does not matter ig is disabled...
0
Cloud Class® Course: SQL Server Core 2016

This course will introduce you to SQL Server Core 2016, as well as teach you about SSMS, data tools, installation, server configuration, using Management Studio, and writing and executing queries.

 
Johny RamboAuthor Commented:
security when is enabled macro is no problem, I need anything when is only security warning with enable macro or macro is disabled...
0
 
Fabrice LambertFabrice LambertCommented:
Problem is that this db must be shared for all users, I can't set password for backend db where is all tables with data...
Why  ?
Setting a password on the back-end is the first thing to do.
Else any other security is useless as one can link tables to your backend from another db and read / write data at will.
0
 
Johny RamboAuthor Commented:
I am tested it but my front-end shared db show me error that my back-end db with password is in exlusive mode... so I must give the backend db for shared mode and then is all function again :/
0
 
Fabrice LambertFabrice LambertCommented:
Upload your databases (front-end and back-end).
I suspect something else is in the work.
The back-end shouldn't be in exclusive mode.
0
 
Johny RamboAuthor Commented:
so if I have one db which is divided into two parts, in the first re forms, queries and reports and in the second re all tables then the second split db can't be in exclusive mode which re protected with password?

Is in this case frontend or backend? I thing that in the second db re all data and this db should be protect :/
0
 
PatHartmanCommented:
Putting the database into exclusive mode doesn't add any protection.  It just makes the app inconvenient to use.  Access is a multi-user application out of the box and is perfectly able to control the sharing of data.  It is the Front End that can't be shared.  Each user MUST have his own personal copy of the FE.  They are all linked to the shared copy of the BE.  This keeps the users separate so they don't interfere with each other and still allows them to share the same set of data.

As the others have said, you really have no good way of protecting data in an Access database.  A user with bad intent can simply copy the database and bring it home to crack it at his leisure.  SQL Server (even the free SQL Server Express) version is far superior when it comes to data security.

Protections on the FE are usually to keep people from changing things they shouldn't.  You can lock down the FE sufficiently to keep out non professionals but even distributing as an .accde won't protect your code since there are services out there that can de-compile the compiled code and return an unlocked .accdb with code almost as good as the original.
1
 
Johny RamboAuthor Commented:
ok I have solution for first problem and both db re shared
1. delete connected tables in FE
2. open shared BE in exlusive mode
3. set encryption and close BE
4. import tables to FE, u must give your password
5. compact and repair

it's all

but how to set protection of FE if makro is disabled or not function?
0
 
PatHartmanCommented:
You already accepted two conflicting answers and your proposed solution has nothing to do what what I suggested so you should not have awarded me ANYTHING.

Either reopen the question or start a new one.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Upgrade your Question Security!

Your question, your audience. Choose who sees your identity—and your question—with question security.

  • 5
  • 3
  • 2
  • +1
Tackle projects and never again get stuck behind a technical roadblock.
Join Now