3

スタンドアロン アプリケーション(私の場合は Java アプリケーション) があり、このアプリケーションには、必要な一連のデータベースの資格情報 (ユーザーとパスワード) を格納する構成ファイル (私の場合は XML ファイル) があるとします。接続。

すべてがうまく機能しますが、セキュリティやコンプライアンスのために、このアプリケーションを別のサーバーに配置する必要があり、構成ファイルにこれらの資格情報を含めることができないことに気付きました (または私のような新しい要件が与えられました)。考慮事項。

アプリケーション サーバー (WAS サーバー) でホストされているデータ ソースを使用することを検討していますが、これはパフォーマンスが低下する可能性があり、スタンドアロン アプリケーションから接続しているため、最善の方法ではない可能性があります。

ある種の暗号化を使用することも検討していましたが、できるだけシンプルにしたいと考えています。

このケースをどのように処理しますか?これらの資格情報をどこに置くか、侵害されないように保護しますか? または、このシナリオでデータベースにどのように接続しますか?

4

3 に答える 3

1

スタンドアロン アプリケーションが大企業または大企業で実行されている場合は、パスワードにLightweight Directory Access Protocol (LDAP) を使用している可能性があります。

LDAP を使用するか、企業 LDAP 用にアプリケーションにフックを提供することを検討してください。

于 2010-05-16T20:41:00.097 に答える
1

何らかの暗号化も検討していましたが、できるだけシンプルにしたいと考えています。

Java 暗号化アーキテクチャ - パスワードベースの暗号化 をご覧ください。概念は非常に簡単です。ファイルをシリアル化 (非) 化する前に、ユーザー パスワードから派生したキーを使用して XML ストリームを暗号化/復号化します。

セキュリティ/コンプライアンスの考慮事項に必要なものを推測しているだけですが、考慮すべき点がいくつかあります。

  1. 強力なパスワードを要求します。
  2. 機密情報を解読したままにしておく時間を最小限に抑えるようにしてください。
  3. 実行時には、機密情報を慎重に扱います。グローバル オブジェクトに公開したままにしないでください。代わりに、機密性の高い資料の範囲をできる限り減らすようにしてください。たとえば、復号化されたすべてのデータをプライベートとして単一のクラスにカプセル化します。
  4. 設定ファイルのパスワードを紛失した場合の対処方法を考えてください。おそらく、新しい構成ファイルを作成するだけでよいという点で簡単でしょうか?
  5. 構成ファイルにアクセスするには、強力なパスワードとユーザー キーファイルの両方が必要です。これにより、キーファイルを安全に保存することはユーザーに任されます。また、どちらかの情報が誤って公開されたとしても、両方がなければ役に立ちません。

これはやり過ぎかもしれませんが、Bruce SchneierのApplied Cryptographyを読むことを強くお勧めします。それは暗号の領域への素晴らしい一見を提供します.

于 2010-05-12T00:59:15.893 に答える
0

アプリケーション サーバー (WAS サーバー) でホストされているデータ ソースを使用することを検討していますが、これはパフォーマンスが低下する可能性があり、スタンドアロン アプリケーションから接続しているため、最善の方法ではない可能性があります。

反対に、これらのデータソースは通常接続プールされたデータソースであり、接続は最も高価なタスクであるため、DB 接続のパフォーマンスを向上させるだけです。

テスト/ベンチマークしましたか?

于 2010-04-20T22:26:12.810 に答える