2017-07-11 3 views
0

アプリケーションでは、アプリケーションがMavenコマンドラインから起動されたときに指定された引数値に応じて、特定のSpringコンテキストファイルを起動します。アプリケーションを起動するときに使用するコンテキストファイルを決定するために、自分のフィールドとしてパラメータ-DEnvironment = [NameOfEnv]を使用します。このコードは、当社のエンタープライズBitBucket/Stashに保存されています。特定のグループが特定のSpringアプリケーションコンテキストファイルにアクセスできないようにするにはどうすればよいですか?

私たち(チームA)が別のグループ(チームB)とアプリケーションを共有するように求められたときに問題が爆発しましたが、オフショアであったため、コンテキストファイルのデータの多くは "機密"したがって、アプリケーションコンテキストファイルにアクセス/表示できませんでした。ここで

は、私が何を意味するかの実例である:

AppContext File Visibility

私は他のように、2つのCONTEXT FILESではなく、それらのすべての可視性を持っているチームBを設定する方法を把握しようとしています彼らは見ることができない機密データを持っています。ここで

は、いくつかのソリューション/思考は以下のとおりです。

  1. どういうわけか、この、彼らのシステム上のローカルの場所からコンテキストファイルをロード(最速&汚いが、より多くの頭痛)のみ、コンテキストファイルで重複したアプリケーションを作成します。私たちを見ることはできません
  2. 完全に別個のリポジトリ/プロジェクトからコンテキストファイルをロードし、それに応じて権限を設定します。したがって、2つの別々の「コンテキスト関連」リポジトリがあります.1つはチームAコンテキストファイル用で、もう1つはチームBコンテキストファイル用です。チームBのためのコンテキストファイル
  3. 実際の値を見ることができないようにコンテキストファイルを暗号化する可能性がありますか?
  4. 他にもありますか?

これは少しはっきりしていることを望みます。

ありがとうございました!

答えて

0

すべてのプロパティー・ホルダーを使用する場合は、コンテキスト・ファイルには何もする必要はありません。

あなたは2つのことを実行する必要があります。必要に応じて、彼らは別の実行中のアプリを持っているので、

1)各チームのためにspring profiles異なる使用します。

2)Property Placeholdersを使用すると、コンテクストファイルに直接にではなく、すべてのセキシティブ情報をプロパティファイルに追加できます。

チームAとチームBに異なるプロパティファイルを与え、同じコードベースと同じコンテキストファイルから異なるプロファイルを使用するように要求できます。

+0

これらの過去の日に私は働いていましたが、コンテキストファイルに機密データのないアプリケーションを実行しています!その点をありがとうございます。 #2については、私が自分の場合にどのように適用するのかを決定するために、「プロファイル」をさらに読む必要があります。 回答を回答として設定したいと思いますが、そのオプションは表示されません。おそらく私はまだポイントを持っていないでしょうか? – Buitrago

関連する問題