私たちは現在、nodejsに 'nconf' npmモジュールを使用して、単一のjson構成ファイルを使用して環境固有の設定を処理しています。この設定はgitリポジトリにチェックインされ、アプリケーションによって使用されます。しかし、アプリケーションが大きくなると、構成ファイルに機密情報が含まれるようになりました。私は、環境ごとにこれらの資格情報の設定を処理するための良い方法が何であるかを知りたいと思っていました。私は多くのフォーラムで、ノードサーバを起動してソースリポジトリに保存しない環境ランタイムパラメータとしてこれらの資格情報を提供しています。サーバーを手動で起動している場合はこれが有効ですが、自動コンテナの展開をドッキングすることを計画しています。その場合は、資格情報の設定をどこかに保存する必要があります。そのため、このような状況に対処するための良い戦略が何であるかについての提案を探してください。NodeJS環境固有の設定(秘密鍵など)を扱うための戦略
0
A
答えて
0
インフラストラクチャに依存していると思います。たとえば、herokuを使用している場合は、ENV_VARSを設定してそれを設定できます。 管理者としてサーバーを所有している場合は、それらの変数を設定でき、アクセスできるユーザーのみがわかります。
0
私はHerokuと.envノードライブラリと同様のことをしました。
このライブラリは、サーバーが.envファイルから検索を開始すると、一連の環境変数をプッシュします。
ローカル環境でのみ.envファイルを作成し、.gitignoreファイルに設定して、リモートにアップロードされないようにします。
あなた .envファイルは次のようになります:
AMAZON_CLIENT_ID=ABCDEFG
AMAZON_CLIENT_SECRET=CATDOGCOW
私が代わりの広範なコードの周りにそれらを見つけることができるように単一のファイルにすべての私の設定変数や定数を置くのが好き。
は、だから私はこの
require('dotenv').config({silent: true});
module.exports = {
AMAZON_CLIENT_ID:process.env.AMAZON_CLIENT_ID,
AMAZON_CLIENT_SECRET:process.env.AMAZON_CLIENT_SECRET,
}
のように見えますconfig.jsのは少なくともHerokuので、私はセットアップを手動でHerokuのウェブサイト上のすべてのそれらの環境変数は、私はあなたが行うことができます引き受けることができますと呼ばれるファイルを作成しますDockerのようなものです。私はそれがドッカーないですけど、あなたは上記の多くを知ることに興味があるならば、私はそれについてtutorialを書いた
var config = require('./config');
//some random code
if(req.query.amzclientid == config.AMAZON_CLIENT_ID)
:
は、次に、あなたのようなあなたのコード内の任意の場所にそれを使用します。関連する問題
- 1. Django設定の秘密鍵環境変数502 nginx
- 2. クロスプラットフォームgit:プラットフォーム固有のファイルを扱うための可能な戦略
- 3. GoogleのreCAPTCHA秘密鍵の環境変数の使用
- 4. Git:Merge Conflictsを扱うための戦略?
- 5. 秘密のためのGoogleクラウドコンテナクラスター環境変数
- 6. サーバーの公開鍵/秘密鍵の設定
- 7. ガーディアン設定の秘密鍵を設定する - Phoenix
- 8. 共有秘密鍵の長さ
- 9. 鍵ボールト鍵と秘密鍵
- 10. 秘密のOpenShift環境変数
- 11. Beanstalk秘密鍵
- 12. PHP環境で暗号化用の秘密鍵を格納する場所
- 13. pytest - 環境固有の値を持つ環境変数を設定する
- 14. JSCH - 無効な秘密鍵
- 15. 秘密鍵を秘密鍵で暗号化する
- 16. 公開鍵は、固有の秘密鍵のみを参照するようにしていますか?
- 17. JWTトークン - 秘密鍵
- 18. RSA秘密鍵 - iOS
- 19. パンダのマルチインデックスを扱うための戦略
- 20. 秘密鍵sshがユーザーjenkinsのために機能しない
- 21. 秘密の環境変数をangle 4+とnodejsで使用する
- 22. django設定の秘密鍵を管理します
- 23. AWSCredentialsProviderのアクセスキーと秘密鍵を設定できません
- 24. 秘密鍵でnode.jsのSSLを設定する
- 25. Androidの秘密鍵ストレージ
- 26. 秘密鍵の拡張子
- 27. keygenタグの秘密鍵
- 28. OpenSSH秘密鍵の形式
- 29. 秘密鍵の管理
- 30. 非自動インクリメントIDを扱うための戦略
ドッカーに秘密の '.env'ファイルを作成しようとしていますか? – imcvampire
アプリケーションのドッキングを開始したところです。私は個人的にDockerの秘密を使用していませんが、私の初期の読者は、SECRETのキー/値を作成し、Dockerを使ってアプリケーションに注入できることを示唆しています。すべてのキーと値を作成してハッシュ化するために、構成ファイル全体を一度に提供することが可能であることが期待されます。 – Dev