多くの外部システム API と対話するシステムに取り組んでいます。それらのほとんどは、何らかの認証を必要とします。使いやすさのために、構成情報と外部システムの資格情報を格納する「アプリケーション全体で到達可能な」AppConfig があります。
私の質問は、ユーザー名とパスワードを (平文で) 外部システムのアプリケーション構成ファイルに保存するのは悪い考えかということです。もしそうなら、どうやってそれを避けますか?
構成ファイルにアクセスするには、サーバーのファイル システムを侵害するか、別のサーバー (またはもちろん開発者のシステム) の git リポジトリを侵害する必要があります。暗号化キーもどこかに保存する必要があるため、構成ファイルでパスワードを暗号化してもセキュリティレベルは向上しないと考えています。私はこれについて間違っていますか?
この問題をどのように解決したかを説明する回答をいただければ幸いです。
解決
わかりましたので、これが私の最終的な解決策です。OpenSSL を使用して機密データを暗号化および復号化する単純なライブラリを作成しました。キーは、構成が読み込まれるときにユーザーから取得されます。ただし、キーがファイルに格納されている運用サーバーは除きます。それはまだ最適な解決策ではありませんが、私が以前に持っていた「解決策」よりもはるかに優れています.
回答ありがとうございます。それが最も有益だったので、ウェインの答えを受け入れます。