我有一个包含某些凭据和密钥的yml文件。因此,为了获得额外的安全性,我想知道将它上传到s3并使用私人网址或通过aws对象进行访问是否合适。
我尝试在我的development.rb中提供url来加载无效的文件。
接下来,我尝试创建一个aws对象并访问s3存储桶中的文件。
s3 = AWS::S3.new(access_ key_id: 'xxx', secret_access_key: 'yyy')
s3.buckets['my-bucket'].objects['file_name.yml']
我尝试使用不带.yml的url文件名来访问该文件并读取它。但它一直让我空虚{}
。这与url / file权限有什么关系吗?我怎样才能做到这一点?
这是我第一次使用aws并且不确定我的方法是否正确,或者这是保持敏感数据安全的最佳方法。 Plz指导我如何实现这一目标。
由于
答案 0 :(得分:1)
我会使用以下gem,比yaml实现要好得多。
https://github.com/bkeepers/dotenv
安装它并添加到Gemfile。
然后vim .env
或使用您选择的编辑器创建此新文件。
添加密钥:
S3_BUCKET=YOURS3BUCKET
SECRET_KEY=YOURSECRETKEYGOESHERE
并保存。
现在,无论您需要S3密钥,都可以从应用程序中调用它。
ENV['S3_BUCKET']
ENV['SECRET_KEY']
一旦推送到Heorku,只更新了你的环境变量,无需将你的秘密告诉Github。