MS Access provides the following methods to secure an application while still allowing users to remain active:

  • Database Password
  • Workgroup Security
  • Encryption
  • MDE Version

Database Password

The database password is the basic level of seccurity and once it is entered, a user has complete control of the database objects. A password is easily cracked and relatively weak protection.

Workgroup Security

The next level is workgroup security that requires both a user name as well as password. Groups and individual users can be specified as well as rights at the individual object or object type level. Although very helpful if you want specify data entry or read only rights, this can be a challenge to specify. A workgroup security file also exists that contains settings used for managing multiple databases. Keep in mind that workgroup security isn’t supported in the  ACCDB database Access 2007 format, although 2007 supports workgroup security for MDB databases.

Encryption

Another form of protection is encryption. Access databases can be encrypted and the Access 2007 ACCDB format provides advanced encryption of older versions.

Access MDE Version

A database can be protected or locked and source code compiled by converting the DB to an MDE file if a database  needs to be locked to prevent unauthorized changes. Changes made to the VBA project also must be made to the original MDB and reconverted to MDE. ACCDB 2007 database gets converted to a ACCDE file. Tools are also available for decompiling and unlocking but some elements like original VBA formtating and comments are irretrievable.