0

質問はタイトルと同じくらい簡単です。私はウェブアプリを持っています(それがどのテクノロジーで構築されているのか、どのアプリサーバーで実行されているのかわかりません)。ただし、このWebアプリケーションがApacheサーバー/IISサーバー/IBMHttpサーバーによって提供されていることは知っています。ここで、Webサーバー側にプラグイン/モジュール/アドオンを配置します。これにより、http応答(要求されたURLのパターンに基づく)とマスク(暗号化/シャッフル/)が解析/切り捨て/カット/正規表現されます。代替)さまざまなパラメータ(イントラネットでのユーザーのLDAP権限/インターネット上の場合はユーザーの地理的位置など)に基づいてこの応答の一連のフィールドを使用し、変更された応答をユーザーに送り返します。

それで、そのようなプラグイン/モジュール/アドオンを作成するための簡単な答えはありますか?Webアプリのコードを変更せずにWebアプリの機密情報をマスクしたい場合、Webサーバーで追加のソフトウェアを作成するこのアプローチはどの程度実現可能ですか?Apacheでこれを行うのに役立つツールはありますか?

そして最後に、これは本当にクレイジーなことですか?!

4

2 に答える 2

1

各Webサーバーには、独自の方法があります。

Webサーバー用のユニバーサルプラグインアーキテクチャはありません。

IISでは、HTTPハンドラーまたはHTTPモジュール、あるいはISAPIフィルターを記述します。HttpContextによって公開されたResponseオブジェクトを使用して、http応答と直接対話することもできます。

apacheには、必要なことを実行できるさまざまなモジュールがあります(たとえば、 mod_headers)。

WebSphereについては何も知りませんが、同様のメカニズムを備えていると確信しています。

あなたが求めていることは、ほとんどのWebアプリケーションで必要とされるため、組み込みであるか、非常に簡単に実行できます。

于 2010-02-05T12:05:04.650 に答える
1

最も簡単な方法は、Web アプリケーション コンテナーを使用してプラグインを追加することです。たとえば、Tomcat の場合は、フィルターまたはバルブを追加できます。

Web サーバーにプラグインする場合は、使用している Web サーバーの API を使用してカスタム モジュールを作成する必要があります。

他のすべてが失敗した場合は、常にサーバー全体をリバース プロキシでラップできます。すべてのリクエストはプロキシを通過するため、リクエストとレスポンスを変更する機会が得られます。

于 2010-02-05T18:24:58.557 に答える