Access 2007 Security and .NET Applications

C

clifgriffin

I've written a password management application using .NET and c# that
stores several lists of passwords in a password protected Microsoft
Access database.

My first question is this...

1. Is Access 2007 security formidable? I know in previous versions,
there many utilities that would remove or reveal the password. How
easy is it to circumvent Access 2007's beefed up encryption?

I relied on the Microsoft model of handling database connections. They
store a global connection string in the application settings, which
unfortunately includes a password. The problem with this, obviously,
is that you can simply run strings against the compiled application to
find the password to my database in plaintext.

This obviously defeats the purpose of all the security and hashing
done in the rest of the application. This one little password gives
them access to all lists.

So my second question is...

2. Assuming access 2007 security is sufficiently hard to crack, how
can I obscure or encrypt the password for the database in my code
without having it directly related to user input. (Impratical since I
have multiple passwords.)

The solution does not have to be 100% unbreakable. We have more layers
of protection than just this utility (including a windows account
password, and a fingerprint reader).

But it should be at least secure enough that someone cannot simply run
strings against the binary to get the password to the database with
all of our other passwords.

Any ideas?

Thanks in advance,
Clifton
 
D

David W. Fenton

(e-mail address removed) wrote in
2. Assuming access 2007 security is sufficiently hard to crack,
how can I obscure or encrypt the password for the database in my
code without having it directly related to user input. (Impratical
since I have multiple passwords.)

Microsoft says the encryption in A2K7's ACCDB format is much
stronger than in the past.

In an Access application, a password in code can be protected by
delivering an encrypted MDB.

But since your application is built in a different language, you
have to ask the question in a forum devoted to that language.

Or, you could encrypt it and then use the encrypted value in the
code wrapped in a decryption function. That would mean it wouldn't
show up as plain text in your executable.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top