- - PR -
Webサーバのコンテンツに応じて処理を振り分ける事ができるフォワードプロキシーを探しています
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2009-04-08 16:24
Webサーバのコンテンツに応じて処理を振り分ける事ができるプロキシーを探索しています。
具体的には、下記Bフォワードプロキシーのイメージです。 @Client --- Aリバースプロキシー --- Bフォワードプロキシー --- CWebサーバ Aからは、HTTPヘッダーでログインしたユーザID等が送られてくるので、 その情報を取得して、リクエストをそのままCに転送して、 戻ってきたレスポンスHTML(ここにアクセスできるユーザIDがタグに記載されている)をみて HTTPヘッダーで取得したユーザIDとタグのユーザIDが合致していたら、 レスポンスHTMLをそのままAに返し、それ以外なら「アクセスできません」のページを返したいです。 製品(DelegateやApacheなど)もしくは、開発かなど 実現に向けてアドバイス等々をいただければ幸いです。 よろしくお願いします。 |
|
投稿日時: 2009-04-13 09:40
要件が特定しにくいのですが、
・HTTPヘッダの中の「ユーザID」 ・HTML内の「ユーザIDタグ」(=Cookie?) ・「アクセスできません」のページの所在 この両方を読める必要がある、ということでしょうか。 一般的なプロキシは、HTTPヘッダ内のURLを読むことが仕事ですので、 「ユーザID」がURLにインプリメントされていれば、問題ないでしょう。 ところが、件の「ユーザIDタグ」については、殆どのプロキシの守備範囲外です。 もちろん、ここがご質問のポイントでしょうか。 通常は、負荷分散装置+Cookieの出番のような気がします。 さて、リクエストを受け取ったサーバには予めアクセス権限のあるユーザIDテーブルがコンテンツごとに準備されていると考えます。アクセス権限のあるユーザが若干名ならうまく行きそうですが、十数名もいたら破綻してしまいます。 データ内にアクセス可能なユーザIDタグ(テーブル?)を入れるのも、セキュリティ上どうかなという感じです。 つまり、サーバが「ユーザIDタグ」なるものをHTML内に書く仕組みにかなりの疑問があります。 通常は、Cookie内にユーザクラス情報をインプリメントして、 負荷分散装置がクラス情報により、適切なサーバに接続するのかと。 Cookieを改ざんされた場合の対処をしておけば、良いと思います。 _________________ _福田太郎_ |
|
投稿日時: 2009-04-15 08:49
ご回答ありがとうございます。
下記、補足です。 Aリバースプロキシーから、HTTPヘッダのREMOTE_USERが送られてくるので それを取得できる事。 また、HTTPヘッダの情報がカンマ区切りで送られてくる場合もあり、 カンマ区切りで変数に格納する等の文字列操作ができる事 CWebサーバの各HTMLには、 利用できるユーザ名がタグに埋め込まれており input type=hidden name1=userid value=taro_yamada input type=hidden name2=userid value=jiro_yamada … HTMLの内容が取得でき、文字列操作ができる事。 ちなみに、HTMLの改修はできません。 そして、ユーザIDが見つからなかった場合には、 「アクセスできません」のHTML(Bフォワードプロキシが持つ)が 見つかった場合には、取得したHTMLがリバースプロキシーに返せる事。 よろしくお願いします。 |
1