1

特定の資格情報とキーを含む yml ファイルがあります。したがって、セキュリティを強化するために、s3にアップロードして、プライベートURLまたは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/ファイルのアクセス許可と関係がありますか?? どうすればこれを達成できますか?

AWS を使用するのはこれが初めてであり、私のアプローチが正しいかどうか、またはこれが機密データを安全に保つための最良の方法であるかどうかはわかりません. これを達成する方法を教えてください。

ありがとう

4

1 に答える 1

1

これには、yaml 実装よりもはるかに優れた次の gem を使用します。

https://github.com/bkeepers/dotenv

それをインストールして、Gemfile に追加します。

次に、vim .envまたは選択したエディターを使用してこの新しいファイルを作成します。

キーを追加します。

S3_BUCKET=YOURS3BUCKET
SECRET_KEY=YOURSECRETKEYGOESHERE

保存します。

S3 キーが必要な場所ならどこでも、アプリケーションから呼び出すことができるようになりました。

ENV['S3_BUCKET']
ENV['SECRET_KEY']

Heorku にプッシュしたら、環境変数を更新するだけなので、シークレットを Github にプッシュする必要はありません。

于 2014-11-04T20:48:51.367 に答える