locked
Data encryption in Access database RRS feed

  • Question

  • User186656733 posted

    I am new to this subject - please bear with me.

    Are Access databases encrypted?  If not, is there a way to do so and still use the data via SQL within Asp.net?

    How are developers protecting their Access databases data, so if there is a breach, the data will be mostly useless to the thief?

    If this is not the correct forum for these questions, please point to the right one.

    Help most appreciated.

    Friday, May 11, 2018 3:16 AM

All replies

  • User753101303 posted

    Hi,

    You could likely use https://support.office.com/en-us/article/Encrypt-a-database-by-using-a-database-password-FE1CC5FE-F9A5-4784-B090-FDB2673457AB to encrypt the Acces file and https://www.connectionstrings.com/access/ to access to this file. Make sure also to place this file in a directory such as App_Data and that the file extension is not registered in IIS (the purpose being to block download attempts).

    Finally make sure you really have  no other option as Access is primarily intended for a single user desktop use rather than as a scalable multi user database for web sites.

    Monday, May 14, 2018 9:05 AM
  • User186656733 posted

    PatriceSc,

    Thank you for this information.  It obviously works. 

    It does scare me a bit - what happens if password is corrupt, or some other unexpected problem occurs?  Is it still possible to get to the data?

    Is there a way to encrypt/decrypt the data as it is read or written?  Would this be better/worse/no different than having a password?

    This database was created a few years back, and client is unwilling to pay for the work necessary to upgrade.

    Help is most appreciated.

    Wednesday, May 16, 2018 1:40 AM
  • User347430248 posted

    Hi Saavik,

    You had asked several questions.

    (1) It does scare me a bit - what happens if password is corrupt, or some other unexpected problem occurs?  Is it still possible to get to the data?

    If the Access Database get corrupt then you can repair the database by using Compact and Repair feature of Access.

    Most of the time it removes the corruption. If that feature is also not able to correct the corruption then you can use the third party software which can provide facility to recover the data.

    Till now I did not heard that password got corrupted.

    But you can take the precaution and try to take a backup regularly. So if database get corrupted and nothing works then you can recover the data from backup copy.

    Reference:

    How to troubleshoot and to repair a damaged Access 2002 or later database

    (2) Is there a way to encrypt/decrypt the data as it is read or written?  Would this be better/worse/no different than having a password?

    You can find some code examples online which can encrypt / decrypt the data. But what if that encrypted data got corrupted in Access.

    Then you will not able to get the correct data after decrypting it.

    So You can think about it before following that approach.

    But generally, it is enough that you can just put the password on your database.

    If you are worrying that someone will steal your database and get the data, In that case I suggest you to add some VBA code in your Access Database.

    With that code, You can try to check the location of the database and username of Access and that computer.

    If that does not match it means that someone had steal your data and store on some other location.

    In that situation, You can fire Delete queries from your VBA code and destroy all the data.

    You can perform this operation on opening of database file.

    You can create AutoExec macros.

    Reference:

    Automate startup events with a macro

    Create a macro that runs when you open a database

    If you have any questions regarding VBA code in Access then you can try to post it in forum below. Which is a specific forum to handle Access VBA Object Model related issues.

    MSDN Access For Developers Forum

    Regards

    Deepak

    Wednesday, May 16, 2018 9:46 AM