1

Thinking about a situation where multiple developers cooperate on a project. A project that is tested on a development server and then moved on a webserver when ready.

This project talks with paypal API so in dev-mode uses the Sandbox credentials, and when online uses LIVE api credentials.

Problem is security, since I want that only the team leader have access to the file that contains the live API data.

the only solution i've reach until now is to limit the FTP access to the webserver to one person, and this person is the only one who can access the credentials file. But this could be not very practical. Since there will be no synch with the dev server....

I guess this is a common pattern, where sensitive data has to be placed in a secured place, and just accessed from the ProjectLeader, and from the Live web-application.

I need an idea... any suggestion?

kante
  • 229
  • 1
  • 4
  • 13
  • 1
    Nothing requires you to place the credentials file inside the directory that is accessible via FTP. Just place it outside of the working tree. – lanzz Jun 20 '12 at 09:24
  • Hi, you could also encript that file, but keep in mind, even if the file is encrypted (ioncube, zend, etc) or elsewhere (not accessible via ftp) a developer can always include that file and simply print the value of the variables... –  Jun 20 '12 at 09:26
  • @JorgeFerreira In other words, security by obscurity. I would go with Ianzz's suggestion; place the file outside the webroot, and allow FTP access to certain trusted members on the webroot only. – Robert Jun 20 '12 at 13:23
  • 1
    Still that also doesn't protect from simply echoing the values. –  Jun 22 '12 at 18:21
  • About echoing: for this reason I was speaking about LIVE and DEV ENVs. People who doesn't have to access the credentials file will not have FTP access to the LIVE app. So cannot echo the Live credentials. Just need to remember to not to synch the credential file from DEV to LIVE and viceversa. – kante Jun 25 '12 at 15:55

0 Answers0