views:

121

answers:

1

For those in the know, what recommendations do you have for storing passwords in Windows Azure configuration file (which is accessed via RoleManager)? It's important that:

1) Developers should be able to connect to all production databases while testing on their own local box, which means using the same configuration file,

2) Being Developers need the same configuration file (or very similar) as what is deployed, passwords should not be legible.

I understand that even if passwords in the configuration were not legible Developers can still debug/watch to grab the connection strings, and while this is not desirable it is at least acceptable. What is not acceptable is people being able to read these files and grab connection strings (or other locations that require passwords).

Best recommendations?

Thanks,

Aaron

+1  A: 

Hum, devs are not supposed to have access to production databases in the first place. That's inherently non-secure, no matter if it's on Azure or somewhere else. Performing live debugging against a production database is a risky business, as a simple mistake is likely to trash your whole production. Instead I would suggest to duplicate the production data (eventually as an overnight process), and let the devs work against a non-prod copy.

Joannes Vermorel
I understand, but the core issue is where/how these passwords should be stored in the first place. Developers for instance connect to a "dev" environment, which should also be secured.
Aaron
Passwords and the like (connection strings) should be stored in your azure package configuration file. That's the logical place for that. Then concerning the "dev" environment, I think there are 2 simple practices 1) know the persons that you trust with credentials 2) change credentials when people quit the dev team.
Joannes Vermorel