Support

Akeeba Backup for Joomla!

#8694 Is Amazon S3 secret key a secret?

Posted in ‘Akeeba Backup for Joomla! 4 & 5’
This is a public ticket

Everybody will be able to see its contents. Do not include usernames, passwords or any other sensitive information.

Environment Information

Joomla! version
n/a
PHP version
n/a
Akeeba Backup version
n/a

Latest post by nicholas on Monday, 08 November 2010 07:38 CST

user7288
Hi,
I am considering to upgrade from the core to the professional version, because I would like to backup to Amazon S3.
Now I am wondering, when the Amazon S3 credentials are being stored in the joomla site, how secure are they? Is there any encryption for the locally stored Amazon S3 credentials, and if yes, what is it?
If I backup all my customer sites to the same Amazon S3 account and one site is compromised, I do not want any backup from other customers to be compromised because someone can steal the Amazon S3 credentials.
Thank you!

steph.s
Hi Auccess,
The keys are saved in the database with the configuration, so they are secure. :)

user7288
Hi Steph,
Thank you for your quick response.
Please let me know if the information is stored in the database in clear text fields, or if it is stored in encrypted fields.

nicholas
Akeeba Staff
Manager
There is no point in storing them as encrypted fields, because you'd either have to supply the decryption password every time you backed up your site or you'd have to store the decryption key with them, which kinda beats the purpose of encryption in the first place. However, we have two workarounds:

1. If you are interested in taking CRON backups only, you do not have to supply the S3 credentials at all in Akeeba Backup's Configuration. Instead, you can pass them as parameters to the CRON helper script (backup.php) using the -override command-line paremeter as detailed in our PDF documentation (the relevant chapter doesn't exist in the on-line documentation)

2. There's another nifty trick: creating a write-only S3 user. First create a new Amazon S3 user. Don't worry, the way we'll set it up won't incure any extra charges to your credit card. Go to your backup bucket and add this user to the bucket, giving him write-only permissions. Then go to Akeeba Backup's configuration and give this new user's login credentials in the Configuration. This is the most secure solution. The user has permission to add backup archives to the bucket but can not list the bucket's contents, download files from it or even delete any files. In other words, even if a hacker compromises your site he can't do anything with this login information. In fact, I suggest creating one such user per domain you want to back up. Since the bucket is owned by your "master user", the usage fees are charged to the master user, not the write-only user. The write-only user also doesn't own any bucket, so even if a hacker steals its login credentials he's stuck (and you can always revoke the credentials for that write-only user any time you wish). This is the method I am using on all of my sites, in order to avoid nasty surprises.

I hope that clarifies things a bit :) If you have any more questions, please post back.

Nicholas K. Dionysopoulos

Lead Developer and Director

πŸ‡¬πŸ‡·Greek: native πŸ‡¬πŸ‡§English: excellent πŸ‡«πŸ‡·French: basic β€’ πŸ• My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

user7288
Hi Nicholas,
thank you for both of the solutions provided!

nicholas
Akeeba Staff
Manager
You're welcome :)

Nicholas K. Dionysopoulos

Lead Developer and Director

πŸ‡¬πŸ‡·Greek: native πŸ‡¬πŸ‡§English: excellent πŸ‡«πŸ‡·French: basic β€’ πŸ• My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

Support Information

Working hours: We are open Monday to Friday, 9am to 7pm Cyprus timezone (EET / EEST). Support is provided by the same developers writing the software, all of which live in Europe. You can still file tickets outside of our working hours, but we cannot respond to them until we're back at the office.

Support policy: We would like to kindly inform you that when using our support you have already agreed to the Support Policy which is part of our Terms of Service. Thank you for your understanding and for helping us help you!