我正在使用Heroku托管的RoR,并希望使用paperclip将文件存储在s3上。我的源代码托管在github上并且是可读的。如何最好地保证密钥不被泄露给其他人?
Paperclip建议将访问密钥存储在配置文件(或代码中),例如:
Paperclip建议将访问密钥存储在配置文件(或代码中),例如:
文件:config/s3.yml
access_key_id: my_access_key_id
secret_access_key: my_very_secret_key
bucket: bucket_name
Heroku通过将代码提交到本地git,然后将其推送到Heroku来工作。
由于我也在使用github,所以我也将相同的代码推送到github。这意味着我也把密钥推送到了github。
我目前正在使用可公开访问的github账户,所以如果我付费了github,我可以解决一半的问题,但我仍然不满意将密钥放在代码的配置文件中。我不知道是否有更好的做法。
在使用上述库和服务的情况下,保持密钥的机密性的最佳实践是什么?
顺便说一句,我上周才开始使用ror和heroku,所以可能被认为是新手,请理解一下;)谢谢!
config:add
已被config:set
替换。 - thomasb