Kyle Waters wrote:
I'm in charge of implementing *the* company database. This database(pgsql) stores information that the whole company is meant to see and will eventually store private information like social security numbers, and pay rates.

problem 1
The server that the database and scripts are stored on is being used for other purposes and many employees at the company will have shell access to the server. So I need to protect my script with the database username and password in it from other users. I know the easy way to do this is to set the permissions on my files to 660 and set the group to all the files as apache. And then add all my developers to the apache group. However that solution bugs me. So I thought I would ask what other people did. I'm thinking that rather than use the apache group I will user an other group for my developers and then just give apache read access with acls, but I have never used acls before so I'm not sure if that is a good solution.

IMO I think your best solution for problem 1 is to buy a commercial encoder such as Zend's Zend Guard (http://www.zend.com/products/zend_guard)


problem 2
I have data in the database that everyone needs access to and other data that needs to be restricted. So I have names, phone numbers and social security numbers. I may want to give certain pgsql accounts and scripts access to a persons name and phone number but not that persons social security number. Should I create a separate table with a one to one relation to store the private information? Then I can set privileges on each table, or is there a better way to do this?

One option would be to encrypt the SSN's before being shoved into the table and using the previously mentioned product, you can ensure that only your scripts can read the plain text version.


I hope some of that makes sense.

Kyle



Jordan S. Jones

_______________________________________________

UPHPU mailing list
[email protected]
http://uphpu.org/mailman/listinfo/uphpu
IRC: #uphpu on irc.freenode.net

Reply via email to