JP2002518726A - プラグインフィルタを用いた拡張性の高いプロキシサーバ - Google Patents

プラグインフィルタを用いた拡張性の高いプロキシサーバ

Info

Publication number
JP2002518726A
JP2002518726A JP2000555143A JP2000555143A JP2002518726A JP 2002518726 A JP2002518726 A JP 2002518726A JP 2000555143 A JP2000555143 A JP 2000555143A JP 2000555143 A JP2000555143 A JP 2000555143A JP 2002518726 A JP2002518726 A JP 2002518726A
Authority
JP
Japan
Prior art keywords
filter
information
url
server
response
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2000555143A
Other languages
English (en)
Inventor
ビベック ナジャール
インダージート シン
Original Assignee
サンマイクロシステムズ インコーポレーテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by サンマイクロシステムズ インコーポレーテッド filed Critical サンマイクロシステムズ インコーポレーテッド
Publication of JP2002518726A publication Critical patent/JP2002518726A/ja
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0281Proxies

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

(57)【要約】 【課題】フィルタリングする内容及び方法に関しユーザが容易に変更を行えるように、フィルタリング技術を向上させること。 【解決手段】本発明に係るプロキシサーバは、プラグインフィルタを具備する。本発明に係る情報のフィルタリングを行う方法は、プロキシサーバ(228)によりクライアント(210)からの要求を受け取る工程を含む。前記プロキシサーバ(228)は、要求に含まれる、サーバプロセス(208)のURLをシステムに対して予め定義されたフィルタ規則と比較する。前記URLが前記フィルタ規則の1つを満たせば、対応するフィルタサーブレットを用いて情報のフィルタリングを行う。フィルタリングされた要求は、サーバプロセス(208)から情報を取り出すのに用いられる。クライアントプロセス(210)へのサーバプロセス(208)からの応答に対しても同様にフィルタリング処理が行われる。

Description

【発明の詳細な説明】
【0001】 (関連出願) 本出願は、1998年6月19日出願の米国仮出願番号60/089,995
に基づく優先権を主張する。
【0002】 (発明の技術分野) 本発明は、クライアントプロセスとサーバプロセスとの間で送信される情報の
フィルタリングに関し、更に詳しくは、プロキシサーバとプラグインフィルタを
用いた、クライアントプロセスとウェブサーバとの間で送信される情報のフィル
タリングに関する。
【0003】 (発明の背景技術) インターネットの急速な普及により、企業や消費者からアクセス可能な情報量
が著しく増加した。情報の流入を管理することが次第に重要度を増している。な
ぜならば、情報の中には、ユーザがインターネット上で他者に公開されることを
望まない、或いは、他者から送られてくることを望まない情報が含まれているか
らである。コンピュータ或いはネットワークをインターネットに接続することに
より、ユーザは、政府機関の情報といった安全な情報から娯楽に関する情報まで
あらゆるタイプの情報を検索、アクセス及びダウンロードすることができる。イ
ンターネットに対する規制は殆ど行われていないこともあり、あらゆるタイプの
情報に対するアクセスが劇的に増加した。しかしながら、ユーザがネットワーク
から取り出す情報に対しフィルタリングを行うことを必要とする場合がある。例
えば、企業や政府機関は、セキュリティ情報や機密情報が、例えばローカルネッ
トワーク等の自らのドメインから流出しないようにする必要がある。また、イン
ターネットから受け取る情報は、受け取り側のフォーマットでは操作できないこ
ともあり得る。例えば、インターネットから受け取ったドキュメントの表示解像
度の特性は、ドキュメントの受け取り側のユーザがサポートする特性とは異なる
可能性がある。
【0004】 上述の問題に対処するために、ある情報がドメインに流入したり、ドメインか
ら流出したりすることを防ぐシステムが開発されてきた。この様なシステムは、
情報のフィルタリングは行うことができるものの、複雑であり、特定の企業に適
合させることが容易でない。一般に、情報のフィルタリングを行うシステムは、
一旦ソフトウェア開発者により作成されると、どんな情報をどのように除去する
かという点をその後変更することは不可能であり、そのためにはソフトウェア開
発者が全く新規にフィルタリングシステムを作成し直す必要があった。かかるア
プローチにおける問題は、どの情報をどのようにフィルタリングするかというニ
ーズは殆どの場合それぞれの企業及びユーザに特定であり且つ変化するという点
にある。異なる内容のフィルタリングをユーザが行おうとする度に、ソフトウェ
ア開発者によりシステムの再構築を行うことは現実的でない。更に、現時点では
、最初に受け取った段階でユーザ環境において操作不可能であったデータを、操
作可能なように修正するシステムは存在しない。
【0005】 インターネット、特にワールドワイドウェブ(「ウェブ」)を用いることによ
り、コンピュータとのインターフェースをとるための機能は簡略化される。ウェ
ブのアーキテクチャは、従来のクライアントサーバモデルに従うものとする。「
クライアント」及び「サーバ」という用語は、コンピュータの役割の内、概ねデ
ータの要求者(クライアント)としての役割、或いは、概ねデータの供給者(サ
ーバ)としての役割を表すために用いている。ウェブ環境においては、ウェブブ
ラウザはクライアント側にあり、特定のフォーマットを施された「ウェブドキュ
メント」はインターネットウェブサーバ側にある。ウェブクライアントとウェブ
サーバとは、通常、「hypertext transferred prot
ocol」(HTTP)と呼ばれるプロトコルを用いて互いに通信を行う。
【0006】 実行時には、ブラウザがサーバとの接続を開き、ドキュメントに対する要求を
行う。サーバは要求されたドキュメントを、通常、標準「hypertext
markup language」(HTML)フォーマットで符号化した形式
で引き渡す。ドキュメントを引き渡した後、接続を閉じる。ブラウザはドキュメ
ントを表示し、表示したドキュメントにより指定された機能を実行する。 従って、情報のフィルタリング技術の向上が望まれる。
【0007】 (発明の概略) 本発明に係る方法、システム、及び製造物は、クライアントプロセスとサーバ
プロセス間の情報のフィルタリングを行うための既存の情報システムが抱える欠
点を、プラグインフィルタを具備するプロキシサーバを備えることにより克服す
る。プラグインフィルタを具備するプロキシサーバによれば、どの情報をどのよ
うにフィルタリングするかを容易に変更できる。加えて、プラグインフィルタを
用いることにより、情報の内容除去のような修正だけでなく、情報の特性をクラ
イアントプロセス或いはサーバプロセスの環境に対応するように修正することも
可能になる。
【0008】 本発明の第1の特徴によれば、ここに具現化しその概要を説明する通り、第1の プロセスから第2のプロセスへの情報をフィルタリングする方法において、該方 法は、前記第1のプロセスから前記情報を受け取る工程と、前記第1のプロセス により受け取った情報に適用するためのフィルタを選択する工程と、前記フィル タに含まれる命令に基づき前記情報を修正することにより、前記フィルタを前記 情報に適用する工程と、前記修正された情報を前記第2のプロセスに送信する工 程とを備えることを要旨とするものである。前記第1のプロセスはクライアント プロセスであり、前記情報は要求であり、前記第2のプロセスはサーバプロセス であってもよい。前記要求に含まれる前記情報は、セキュリティデータであって もよい。或いは、前記第1のプロセスはサーバプロセスであり、前記第2のプロ セスはクライアントプロセスであり、前記情報は応答であり、前記修正された情 報は修正された応答であってもよい。更に、前記フィルタリングされた応答をキ ャッシュメモリに格納してもよい。前記情報に適用するフィルタを選択する前記 の工程は、Uniform Resource Locator(URL)と対 応するフィルタとを定義する工程と、前記情報からURLを取り出す工程と、前 記定義されたURLが前記取り出されたURLに合致した場合に、前記情報に適 用するための、前記定義されたURLに対応する前記フィルタを選択する工程と を備えてもよい。
【0009】 更に、本発明の他の特徴によれば、ここに具現化しその概要を説明する通り、プ ロキシサーバを使って情報をフィルタリングする方法において、該方法は、クラ イアントプロセスから要求を受け取る工程と、前記要求に順方向フィルタを適用 する工程と、前記フィルタリングされた要求をサーバプロセスに送信する工程と 、前記フィルタリングされた要求に関する応答を前記サーバプロセスから受け取 る工程と、前記応答に逆方向フィルタを適用する工程と、前記フィルタリングさ れた応答を前記クライアントに送信する工程とを備えることを要旨とするもので ある。前記第2のプロセスはウェブサーバであってもよく、この場合、前記順方 向フィルタを適用する前記の工程は、URLと対応するフィルタとを定義する工 程と、前記定義されたURLが前記要求に含まれている場合に、前記対応するフ ィルタを使って前記要求をフィルタリングする工程とを含んでもよい。また、前 記第2のプロセスがウェブサーバである場合、前記逆方向フィルタを適用する前 記の工程は、URLと対応するフィルタとを定義する工程と、前記定義されたU RLが前記応答に含まれている場合に、前記対応するフィルタを使って前記要求 をフィルタリングする工程とを含んでもよい。前記フィルタリングされた応答を キャッシュメモリに格納してもよい。
【0010】 更に、本発明の他の特徴によれば、ここに具現化しその概要を説明する通り、プ ロキシサーバにフィルタを追加する方法において、該方法は、フィルタを受け取 るように動作する前記プロキシサーバを作成する工程と、フィルタ規則とフィル タサーブレットとを具備するフィルタを作成する工程と、前記フィルタを前記プ ロキシサーバに追加する工程とを備え、前記プロキシサーバは、前記追加された フィルタを使って情報を修正するように動作することを要旨とするものである。 複数のフィルタを前記プロキシサーバに追加してもよい。
【0011】 (発明の詳細な説明) 本明細書に援用され本明細書の一部を構成する添付図面は、本発明の実施を図
示し、本発明の詳細な説明と共に本発明の利点と原理を説明するものである。
【0012】 以下、添付図面に示す本発明の一実施の形態について詳細に説明する。尚、図
面及び下記の説明において、同一或いは類似の部分については同一の符号を用い
て参照した。
【0013】 (導入) 本発明に係るシステム及び方法は、クライアントプロセスとサーバプロセス間
で送信される情報に対しプラグインフィルタを用いて順方向フィルタリング及び
逆方向フィルタリングを行う。プロキシサーバは、サーバプロセスとクライアン
トプロセスとのインターフェースをとるとともに、両者の間で送信される要求及
び応答を監視する。本実施形態において説明するシステム及び方法は、ユーザが
フィルタを作成しこれをプロキシサーバに定義することを可能にし、よってユー
ザはどの情報をどのようにフィルタリングするかを自らのニーズに適合させるこ
とができる。これらのプラグインフィルタは、クライアントプロセスとサーバプ
ロセス間の情報をある一定の方法で修正する。この修正は、例えばセキュリティ
情報を除去するというような内容を基準とした修正でもよいし、或いは、例えば
、表示解像度特性の変更など、サーバプロセスから送られる情報を情報をクライ
アントプロセスでも操作可能にし互換性を持たせるような変更でも良い。
【0014】 更に、詳細には、プロキシサーバは、クライアントプロセス及びサーバプロセ
スとインターフェースされる。フィルタが作成され、プロキシサーバにプラグイ
ンされる。フィルタは、フィルタ規則及びフィルタサーブレットを有する。フィ
ルタ規則は、除去すべき情報を規定する。例えば、要求のUniform Re
source Locator(URL)をフィルタ規則として定義することが
でき、従って、クライアントプロセスが定義されたURLへ要求する情報は全て
、適用されるフィルタを有することになる。フィルタサーブレットは、実行され
ると要求或いは応答に含まれる情報を修正する実際の命令である。従って、前述
の例について述べると、フィルタリングを要する旨を表す標識が一旦要求に付さ
れると、定義されたURLと突き合わせることによりフィルタ規則に対応するフ
ィルタサーブレットが実行され、要求に含まれる情報を一定の方法で修正する。
【0015】 本発明に係る方法及びシステムは、また、複数のプラグインフィルタの追加を
サポートする。フィルタを追加することにより、ユーザはどの情報をどのように
修正するについて多数の変更を行うことができる。更に、かかる方法及びシステ
ムは、クライアントプロセスとサーバプロセス間での要求及び応答の送信に関わ
る管理タスクを行うように構成することも可能である。また、キャッシュメモリ
への格納も実行でき、これにより同一の情報に対する多数のアクセスを速やかに
行うことができる。キャッシュメモリへの格納を行う際は、サーバプロセスから
受け取った応答に再度フィルタを適用する必要を無くすために、フィルタリング
された応答をキャッシュメモリに格納することが好ましい。
【0016】 図1は、更に詳細に、ネットワーク100を介して相互接続されたクライアン
トサーバシステムの例を示す。この例では、遠隔のサーバシステム122はネッ
トワーク100を介してクライアントシステム120に相互接続される。クライ
アントシステム120は、通常の構成要素を含む。例えば、プロセッサ124と
、メモリ125(例えば、RAM)と、プロセッサ124とメモリ125とを接
続するバス126と、I/O制御装置128を介してプロセッサ124及びメモ
リ125に接続される大容量記憶装置127(例えば、磁気ハードディスク、又
は、光記憶ディスク)と、通常のモデムのようなネットワークインターフェイス
129とを含む。
【0017】 サーバシステム122も、通常の構成要素を含む。例えば、プロセッサ134
と、メモリ135(例えば、RAM)と、プロセッサ134とメモリ135とを
接続するバス136と、I/O制御装置138を介してプロセッサ134及びメ
モリ135に接続される大容量記憶装置137(例えば、磁気ディスク又は光デ
ィスク)と、通常のモデムのようなネットワークインターフェイス139とを含
む。本発明は、クライアントサーバシステム上の大容量記憶装置127及び13
7の夫々又はメモリ125及び135の夫々のようなコンピュータ可読媒体に、
実行可能な命令として格納されているソフトウェアにおいて実装されてもよいこ
とが、下記の記載から認識されるであろう。
【0018】 図1に示されるネットワークは、一例としてのネットワークを示しているが、
様々なコンピュータシステムや単一のコンピュータストラクチャにおけるモジュ
ールが情報を交換することを可能にするインターネット、私的ネットワーク及び
内部コンピュータストラクチュアを含む如何なるトポロジであっても構わないこ
とが、当業者に理解されるであろう。
【0019】 図2は、本発明に係る方法及びシステムの実施に好適なデータ処理システムを
示す。データ処理システム200は、イントラネット202及びインターネット
204を有する。イントラネット202は、組織のネットワークを表わし、コン
ピュータ206、コンピュータ208及びファイアウォール214を含む。ファ
イアウォール214はイントラネット202への内向トラフィック及びインター
ネット204への外向トラフィックの両方を監視する。コンピュータ206とコ
ンピュータ208は、どちらも多数の構成要素を有しており、該構成要素には、
メモリ215、217、二次記憶装置219、221、少なくとも1つのI/O
装置223、225及びプロセッサ227、229が該当する。インターネット
204は、コンピュータ206及び208と同様の構成要素を有するコンピュー
タ210、212を含む。イントラネット202及びインターネット204は2
つのコンピュータのみを有するように描写されているが、当業者はこれらのネッ
トワークは、更に多くのコンピュータを含んでもよいことを理解するであろう。
加えて、本発明に係る方法及びシステムは他のローカルエリアネットワーク又は
ワイドエリアネットワークで使用することが可能であることを、当業者は理解す
るであろう。また、コンピュータ206、208、210、212は、更なる構
成要素或いは異なる構成要素を含んでもよい。
【0020】 ファイアウォール214はメモリ224、プロセッサ226及び二次記憶装置
240を含んでいる。本発明に係る方法及びシステムによれば、メモリ224は
、プロキシサーバ228及びプロキシサーバ230を有している。プロキシサー
バ228及び230は、夫々フィルタ232、234を有している。フィルタ2
32を用いて、プロキシサーバ228は、「順方向フィルタリング」を実行する
。「順方向フィルタリング」は、プロキシサーバが、イントラネット202内部
から発生するとともにインターネット204へ送られる要求に対してだけでなく
、これらの要求の応答に対して行うフィルタリングを表わす。例えば、コンピュ
ータ206のクライアントプログラム216は、コンピュータ210のサーバプ
ログラム220にアクセスしようとする。この場合には、フィルタ232は、ブ
ロックされるべき求及び応答の全ての部分だけでなく、ファイアウォールを通過
して流れることができる外向要求及び内向応答をも表わす。即ち、本発明に係る
方法及びシステムによって実行されるフィルタリングは、ウェブサイトの一部が
アクセスされることをブロックすること、又は、ウェブサイト全体がアクセスさ
れることをブロックすることを含む。
【0021】 フィルタ234を用いて、プロキシサーバ230は、「逆方向フィルタリング
」を実行する。「逆方向フィルタリング」は、プロキシサーバが、インターネッ
ト204から発生するとともにイントラネット202へ送られる要求に対してだ
けでなく、これらの要求の応答に対して行うフィルタリングを表す。例えば、コ
ンピュータ212のクライアントプログラム222は、コンピュータ208のサ
ーバプログラム218にアクセスしようとする。この場合には、プロキシサーバ
230は、フィルタ234を用いて、どの要求及び応答がエンティティ内に入っ
てくることができるか、どの要求及び応答が修正しなければエンティティ内に入
ってこれないかを決定する。
【0022】 プロキシサーバは、フィルタ232、234に加えて、プロキシサーバはサー
ブレット236、238を含んでいる。このサーブレット236、238は、プ
ロキシサーバが、例えば、hypertext transfer proto
col(HTTP)など、多数ある周知のプロトコルのいずれかを使って通信を
行うことを可能にするコードである。本発明に係る方法及びシステムによれば、
単一のプロキシサーバを順方向フィルタリングと逆方向フィルタリングとの両方
を実行するように構成することが可能である。また、プロキシサーバは、ファイ
アウォール214以外にも、コンピュータなどの他の装置上に配置することも可
能である。尚、本発明の実施態様例はメモリに格納するものとして説明したが、
かかる実施態様例は、ハードディスク、フロッピーディスク、CD−ROM、イ
ンターネットなどのネットワークからの搬送波、或いは他の形態のRAM若しく
はROMに格納し、そこから読み出すようにすることが可能であることを、当業
者は理解するであろう。
【0023】 本発明に係る方法及びシステムに従ったプロキシサーバの他の特徴は、かかる
プロキシサーバは、要求に応じて遠隔位置からデータを取り出した後、ファイア
ウォール214のキャッシュ242にこのデータを格納するという点にある。こ
れにより、このデータの要求はこれ以降全て、通信オーバーヘッドを伴うことな
くなく、ローカルな記憶場所に格納されたコピーを用いて実行することが可能で
ある。キャッシュメモリに格納されたデータは、フィルタリングされたバージョ
ンとなる。従って、フィルタ(例えば、フィルタ234)がデータから内容を取
り除く場合、この修正されたバージョンがキャッシュメモリに格納されることに
なる。このデータはプロトコルに依存することなしにキャッシュメモリに格納さ
れる。即ち、データのアクセスに使用されるプロトコル(例えば、HTTPやF
TP)に関わらす、データはキャッシュ242に格納される。従って、キャッシ
ュ242は、異なるプロトコルを用いてアクセスされたデータを含み得る。本発
明に係る方法及びシステムは、データを二次記憶装置に格納するものとして説明
したが、或いは、他の実施形態としてデータをメモリ224に格納してもよい。
【0024】 図3は、本発明の例示的実施形態に従った、情報のフィルタリングに用いられ
るプロキシサーバアーキテクチャを示した図である。本発明の一実施形態におい
て、プロキシサーバ300の構成要素には、フィルタ規則を含んだ要求フィルタ
310、同じくフィルタ規則を含んだ応答フィルタ320、及び、プロキシサー
バプロセッシング構成要素315が含まれる。プロキシサーバは、サーバプロセ
ス325からの情報を要求するクライアントプロセス305とのインターフェー
スをとる。クライアントは、ネットワークに接続されたコンピュータ、或いは、
サーバ325に直接に接続されたコンピュータなど、どのコンピュータであって
もい。通常、クライアントはサーバに送る要求を生成するとともにこの要求を満
たす応答をサーバから受け取る。
【0025】 プロキシサーバ300は、論理上はクライアントプロセス305とサーバプロ
セス325との間に位置し、企業のファイアウォール内に組み込むことも可能で
ある。プロキシサーバ内では、要求フィルタ310は、クライアントによって送
られるサーバ情報を求める要求を受け取る。要求フィルタ310は、受け取った
要求を分析し、要求の中に、プロキシサーバプロセッシング領域315において
定義されるフィルタの対象となる情報が含まれているかを決定する。この分析は
フィルタ規則を用いて実行される。フィルタ規則はフィルタリングすべき情報を
定義する。一実施形態では、フィルタ規則は、Uniform Resourc
e Locator(URL)を含んでおり、従って、要求を受け取ると、UR
Lをフィルタ規則に照らして検査し、かかる要求がフィルタリングすべき情報で
あるかどうかを検査する。URLの検査は、当業者に周知のどの方法でも行うこ
とができる。例えば、フィルタ規則をテーブルに納める方法、データベースによ
る方法、或いは、正則表現を生成して、URLと生成した正則表現とを比較する
方法などである。
【0026】 要求に対しフィルタリングを行う必要がある場合、即ち、フィルタ規則のいず
れかが満たされた場合は、かかる要求はプロキシサーバプロセッシング315に
引き渡され、要求に含まれる情報の内フィルタサーブレットにより定義される情
報を修正する。フィルタサーブレットは、実行されると要求に対する修正を行う
命令を含んでいる。要求をサーバプロセスに送信するに先立ち、かかる要求から
全てのセキュリティ情報を除去するようプロキシサーバに命令するのは、例えば
、このサーブレットである。
【0027】 サーバは、クライアント305に送り返すための、要求に対する応答を生成す
る。本発明の一実施形態では、応答はクライアントに直接は送られず、プロキシ
サーバ300に送られ、応答フィルタ320がこれを受け取る。要求フィルタ規
則の場合と同様に、応答フィルタ規則は応答を検査し、かかる応答はクライアン
トプロセスへの送信に先立ちフィルタリングを行う必要があるかどうかを決定す
る。応答はフィルタリングされて、問題のありそうな情報が除去されてクライア
ントに渡されないようになったり、或いは、情報がクライアント側の環境で機能
するように修正されたりする。例えば、サーバプロセスにより定義されているが
、クライアントプロセスとは互換性がない表示解像度の修正が行われる。
【0028】 応答が応答フィルタ規則のいずれかを満たす場合、プロキシサーバは、フィル
タサーブレットの内の満たされたフィルタ規則に対応するものを前記応答に適用
する。プロキシサーバは、要求フィルタリングと応答フィルタリングとの両方を
同時に実行する必要がないことは、当業者には理解されよう。プロキシサーバは
要求のみ、或いは、応答のみを処理すればよい。どの情報をどのようにフィルタ
リングするかは、ユーザにより定義される。
【0029】 プロキシサーバプロセッシング構成要素315は、プロキシサーバ300に対
して定義付けされたいずれかのフィルタの規定に従って情報を修正する。これら
のフィルタ、即ちフィルタ規則及びサーブレットは、モジュールになっており、
要求フィルタ規則或いは応答フィルタ規則を定義するとともにこれを適切な規則
構成要素に対し定義付けすることにより、プロキシサーバに差し込むことが可能
である。これにより、フィルタ規則に対応するフィルタサーブレットが、プロキ
シサーバプロセッシング構成要素に対し定義付けされる。
【0030】 プロキシサーバプロセッシングは、フィルタサーブレットの適用に加え、他の
機能も実行する。ここで言う他の機能とは、応答及び要求のログを記録する機能
や、サーバプロセスにより受け取ったフィルタリング後の応答をキャッシュに格
納して速やかに取り出せるようにする機能を含む。キャッシュへ格納することに
より、他のクライアントが同じ情報を要求した場合、サーバプロセスに新たに要
求を送る代わりに、かかる情報をキャッシュから取り出すことができるので、取
り出しに要する時間を短縮できるという利点が得られる。応答をキャッシュに格
納する場合、フィルタリングを行った後の応答を格納することが好ましい。フィ
ルタリングされた応答をキャッシュに格納することにより、キャッシュから応答
を取り出した場合でも、プロキシサーバに応答を再びフィルタリングさせること
を防ぐことができる。
【0031】 図3には、1つのクライアントプロセスと、1つのサーバプロセスと、1つの
プロキシサーバを図示したが、1つのプロキシサーバに接続されたクライアント
プロセスが複数あってもよいし、クライアントプロセス及びサーバプロセスから
の要求及び応答のフィルタリングを行うように連鎖されたプロキシサーバが複数
あってもよいことは、当業者には理解されるであろう。加えて、クライアントプ
ロセスがネットワークを介してアクセスするサーバプロセスが複数あっても良い
。また、図3にはネットワークを示していないが、本発明は、クライアントから
サーバに送られる情報、或いは逆にサーバからクライアントに送られる情報、の
プロキシサーバによる処理にその重点を置くことが当業者には理解されよう。ネ
ットワークは、クライアントプロセスとプロキシサーバとの間、プロキシサーバ
とサーバプロセスとの間、或いは、クライアントプロセスとサーバプロセスとの
間であればどこに位置してもよい。
【0032】 図4は、順方向フィルタリングと逆方向フィルタリングにおいて実行される主
なステップを示したフローチャートである。順方向フィルタリングは、上述した
ように、クライアントプロセスからの外向要求に対して実行されるフィルタリン
グと定義される。これとは逆に、逆方向フィルタリングは、サーバプロセスから
クライアントプロセスへ向けた内向応答に対して実行されるフィルタリングと定
義される。この処理は、サーバプロセスの情報に対する要求をクライアントプロ
セスから受け取ると開始される(ステップ400)。本発明の一実施形態におい
て、サーバプロセスはウェブサーバであり、クライアントプロセスは、インター
ネットに接続されており、ウェブブラウザを用いて情報へのアクセスを行うコン
ピュータである。
【0033】 要求の受取に続き、本発明に係るシステム及び方法は、その要求に対し順方向
フィルタを適用する(ステップ405)。順方向フィルタは、例えば、企業が該
企業のドメイン外に流出することを望まないセキュリティ情報を全て取り除くこ
ともできる。要求の受け取りに応じて、サーバプロセスは、クライアントプロセ
スに送り返すための、要求に対する応答を生成する。応答には、例えば、クライ
アントプロセスにより要求されたウェブサーバのドキュメントが含まれる。この
後、プロキシサーバは前記要求を満たすこの応答を受け取る(ステップ410)
【0034】 一実施形態では、応答は以前にサーバから受け取られ、プロキシサーバからア
クセス可能であるキャッシュに格納されている。応答がキャッシュに格納される
と、かかる応答は、サーバプロセスに対し新たな要求を行うことなしに直接クラ
イアントプロセスに送られるので、応答の取り出しに要する時間を短縮できる。
この際、キャッシュに格納された古い応答をクライアントに送ることを防ぐため
、タイムスタンプを用いることが望ましい。タイムスタンプは、無効になったも
のの依然としてキャッシュに残っている古いデータを除去する処理として当業者
には周知である。更に、キャッシュへの格納に先立ち応答をフィルタリングする
ことが望ましい。これにより、プロキシサーバが再びフィルタリング処理を行う
ことなく、フィルタリングされた応答を直接クライアントプロセスに送ることが
可能になる。
【0035】 応答がキャッシュに格納されていない場合は、本発明に係るシステム及び方法
は、サーバプロセスから応答を受け取った後、受け取った応答に逆方向フィルタ
リングを適用する(ステップ415)。順方向フィルタリングの場合と同様に、
逆方向フィルタリングも応答に含まれる情報の修正を行う。逆方向フィルタリン
グの例として、クライアントプロセスの環境において情報が機能するようにパラ
メータを修正すること、問題のありそうな情報を除去することが挙げられる。
【0036】 逆方向フィルタリングの適用に続き、フィルタリングされた応答はそれぞれの
用途のためにクライアントに送られる(ステップ420)。フィルタリングされ
た応答は、フィルタによる定義に従って情報の除去、修正を行っており、プロキ
シサーバを含むドメインの要求を満たしていることになる。応答をクライアント
プロセスへ送信後、プロキシサーバは、フィルタリングされた応答の「後処理」
を行ってもよい(ステップ425)。プロキシサーバがフィルタリングされた応
答をキャッシュに格納するのは、例えばこの段階で行ってもよい。加えて、例え
ば、プロキシサーバを通過した要求及び応答のログを記録するなどの他の管理用
の機能もこの段階で実行してもよい。
【0037】 図5は、本発明の例示的実施形態に従った様式で、要求或いは応答のフィルタ
リングを行うためのステップを示したフローチャートである。図5には、図4に
おいて大まかに示したステップ405及びステップ415の更に詳細なステップ
を示す。要求或いは応答を受け取ると、本発明に係るシステム及び方法は、これ
に引き続き要求或いは応答中のURL又はドメインを識別する(ステップ505
)。本発明の一実施形態においては、クライアントは、ウェブサーバに要求を出
し、これに応えウェブサーバは応答を送る。この要求と応答とは、夫々クライア
ントプロセスとサーバプロセスのURLをそれぞれ表示している。本発明に係る
システム及び方法は、この情報を使ってかかる要求又は応答がフィルタリングす
べきものであるかどうかを決定する。従って、本発明に係るシステム及び方法は
、応答或いは要求に含まれるURLの識別に引き続き、識別されたURLに対す
るフィルタが存在するかどうかを決定する(ステップ510)。
【0038】 フィルタが作成されプロキシサーバに追加されると(図6を参照して更に詳細
に後述する)、プロキシサーバは、要求或いは応答に対しフィルタリングすべき
、又は、フィルタを適用すべきURLを識別するフィルタ規則を与えられる。こ
のURLのリストは、探索機能を実行するのに用いることができるものであれば
、テーブル、データベース、或いは他のどのようなデータ構造であってもよい。
本発明に係るシステム及び方法が、要求或いは応答を受け取ると、サーバプロセ
スのURL情報が検出される。このURL情報を使って、本発明に係るシステム
及び方法は、URL情報をプロキシサーバに対し定義付けされた全てのフィルタ
規則と比較する。
【0039】 URL情報をフィルタ規則と比較し、かかる応答或いは要求に対応するフィル
タがあると判定すると、本発明に係るシステム及び方法は、フィルタ規則に対応
するフィルタサーブレットの命令による定義通りに、応答或いは要求に対しフィ
ルタを適用する(ステップ515)。これらの命令は、実行されると、要求或い
は応答をフィルタサーブレットに規定されたように修正する。応答或いは要求に
対してフィルタが適用されると、フィルタリングされた情報は、応答であればク
ライアントに、要求であればサーバに渡される(ステップ520)。
【0040】 図6は、本発明の例示的な一実施形態に従った様式で、プロキシサーバにフィ
ルタを追加するのに必要なステップを示したフローチャートである。本発明の利
点の1つは、全く新しいソフトウェアをプロキシサーバ用に開発することなしに
、種々のフィルタをプロキシサーバに「プラグイン(差し込み)」することがで
きるという点にある。これにより、ローカルのシステムの管理者が、或るドメイ
ンに特有の所望の情報をフィルタリングするように、プロキシサーバを調整する
ことが可能になる。本発明に係るシステム及び方法は、フィルタサーブレットを
作成することによりプロキシサーバにフィルタを追加することができる(ステッ
プ600)。サーブレットとは、フィルタ規則に対応付けられているとともに、
実行されると、システム管理者の要件を満たすように要求或いは応答を修正する
一連の命令である。
【0041】 次に、フィルタ規則が作成され(ステップ605)、これをきっかけとしてフ
ィルタサーブレットが実行される。フィルタ規則は、ステップ600においてフ
ィルタサーブレット内に作成した命令を適用すべきドメインの識別子であり、例
えばURLである。例えば、ユーザは、セキュリティの観点から特に関心のある
多数のウェブアドレス或いはURLを、プロキシサーバに対するフィルタ規則と
して指定することができる。URLを含む要求或いは応答をプロキシサーバによ
り受け取ると、受け取ったURLが予め定義されたフィルタ規則のいずれかに一
致するかを決定するためのテストが実行される。一致が見られれば、一致したフ
ィルタ規則に対応するフィルタサーブレットが実行され、要求或いは応答に適用
される。
【0042】 フィルタサーブレット及びフィルタ規則の作成後、本発明に係るシステム及び
方法は、プロキシサーバに新たなフィルタ規則を識別させる(ステップ610)
。システム管理者が自らのドメインに入ってくる情報の保護或いは修正を行うた
めのフィルタ規則及びフィルタサーブレットを作成する場合には、これらのフィ
ルタは実行可能になるためプロキシサーバに対し明確にされる必要がある。プロ
キシサーバにフィルタを識別させる際、このフィルタ規則は他のフィルタ規則と
ともにリストに含めることが望ましい。これは、プロキシサーバが、取り出した
URLをフィルタリングすべき全てのフィルタ規則と比較できるようにするため
である。
【0043】 次に、フィルタ規則は、要求或いは応答のいずれに適用されるかをプロキシサ
ーバに識別される(ステップ615)。これにより、プロキシサーバが要求に対
してフィルタを適用すべき時に誤って応答に対してフィルタを適用したり、或い
はその逆を行ったりすることを防ぐ。
【0044】 最後に、フィルタサーブレットの位置をプロキシサーバに識別させる(ステッ
プ620)。これは、フィルターサブレットを他の全てのフィルタサーブレット
と同じ位置に位置させることにより実行できる。全てのフィルタサーブレットを
同一の位置に置くことにより、プロキシサーバが所望のフィルタサーブレットを
検索する手間を省くことができる。しかしながら、コードを他のコードと識別す
るためのソフトウェア設計は多数存在する。例えば、位置情報にポインタを用い
た、データベースを維持するソフトウェア設計などである。プロキシサーバにフ
ィルタサーブレットの位置を与えるこの例は、選択肢の1つであり、かかる機能
を提供する種々の実施の形態は、本発明の範囲に含まれるものとみなされる。
【0045】 (結論) 以上説明したように、本発明に従った様式でクライアントプロセスとサーバプ
ロセス間の情報をフィルタリングするシステム及び方法によれば、特定のドメイ
ンのニーズを満たすようにフィルタを適合させることが容易に行える。フィルタ
をプラグイン可能にすることにより、要求及び応答から取り除くべき情報のタイ
プの情報に加えて、ユーザはフィルタリングすべき情報を容易に且つ動的に修正
することが可能である。更に、フィルタリングされた応答をキャッシュに格納す
ることにより、クライアントプロセスが同じ情報を要求した場合の処理時間が大
幅に短縮される。
【0046】 上述の本発明の実施形態についての説明は、あくまでも説明のために提示した
ものであり、本発明を網羅するものでも、開示した特定の形態に限定するもので
もない。上述の教示に照らして或いは本発明の実施を通して、様々な変容、変形
が可能である。例えば、上述の説明ではソフトウェアを含む実施形態とたが、本
発明に係るシステム及び方法はハードウェアとソフトウェアとの組合せとして、
或いは、ハードウェアのみとして実施することが可能である。本発明はオブジェ
クト指向プログラミング言語、及び、非オブジェクト指向プログラミング言語を
用いて実施することが可能である。加えて、本発明の実施態様例はメモリに格納
するものとして説明したが、これらの実施態様例は、ハードディスク、フロッピ
ーディスク、或いはCD−ROMなどの二次記憶装置、インターネットからの搬
送波や他の伝播媒体、或いはこれ以外の形態のRAMやROMなど、メモリ以外
のタイプのコンピュータ可読媒体に格納してもよいことは、当業者には理解され
るであろう。本発明の範囲は特許請求の範囲及びその均等物により定義される。
【図面の簡単な説明】
【図1】 クライアントシステムとサーバシステムとを含むコンピュータネットワークを
示した図である。
【図2】 本発明に係る方法及びシステムの実施に好適なデータ処理システムを示した図
である。
【図3】 本発明の例示的実施形態に従った様式で情報をフィルタリングするのに用いら
れるプロキシサーバアーキテクチャの構成要素を示した図である。
【図4】 本発明の例示的実施形態に従った様式で情報の順方向フィルタリング及び逆方
向フィルタリングを実行する際の主な工程を示したフローチャートである。
【図5】 本発明の例示的実施形態に従った様式で要求或いは応答をフィルタリングする
ための工程を示したフローチャートである。
【図6】 本発明の例示的実施形態に従った様式でプロキシサーバにフィルタを追加する
のに必要な工程を示したフローチャートである。
【符号の説明】
200 データ処理システム 202 イントラネット 204 インターネット 206、208、210、212 コンピュータ 214 ファイアウォール 215、217、224 メモリ 216、222 クライアントプログラム 218、220 サーバプログラム 219、221、240 二次記憶装置 223、225 I/O装置 226、227、229 プロセッサ 228、230 プロキシサーバ 232、234 フィルタ 236、238 サーブレット 242 キャッシュ 300 プロキシサーバ 305 クライアントプロセス 310 要求フィルタ 315 プロキシサーバプロセッシング 320 応答フィルタ 325 サーバプロセス
───────────────────────────────────────────────────── フロントページの続き (72)発明者 シン インダージート アメリカ合衆国、94040 カリフォルニア 州、マウンテン ビュー、 パーク ドラ イブ1339 7 Fターム(参考) 5B082 GA02 HA07 HA08 5B089 GA19 GB01 GB03 JA21 KA08 KA10 KA17 KH00

Claims (26)

    【特許請求の範囲】
  1. 【請求項1】 第1のプロセスから第2のプロセスへの情報をフィルタリン
    グする方法において、該方法は、 前記第1のプロセスから前記情報を受け取る工程と、 前記第1のプロセスにより受け取った情報に適用するためのフィルタを選択す
    る工程と、 前記フィルタに含まれる命令に基づき前記情報を修正することにより、前記フ
    ィルタを前記情報に適用する工程と、 前記修正された情報を前記第2のプロセスに送信する工程とを備える。
  2. 【請求項2】 請求項1に記載の方法において、前記第1のプロセスはクラ
    イアントプロセスであり、前記情報は要求であり、前記第2のプロセスはサーバ
    プロセスである。
  3. 【請求項3】 請求項2に記載の方法において、前記情報を修正する前記の
    工程は、前記情報からセキュリティデータを取り除く工程を含む。
  4. 【請求項4】 請求項1に記載の方法において、前記第1のプロセスはサー
    バプロセスであり、前記第2のプロセスはクライアントプロセスであり、前記情
    報は応答であり、前記修正された情報は修正された応答である。
  5. 【請求項5】 請求項4に記載の方法であって、該方法は、更に、前記修正
    された応答をキャッシュメモリに格納する工程を備える。
  6. 【請求項6】 請求項1に記載の方法において、前記第2のプロセスはウェ
    ブサーバであり、前記情報に適用するフィルタを選択する前記の工程は、 第1のUniform Resource Locator(URL)と対応
    するフィルタとを定義する工程と、 前記情報から第2のURLを取り出す工程と、 前記第1のURLが前記第2のURLに合致した場合に、前記情報に適用する
    ための、前記定義されたURLに対応する前記フィルタを選択する工程とを備え
    る。
  7. 【請求項7】 請求項1に記載の方法であって、該方法は、更に、プラグイ
    ンフィルタを追加する工程を含む。
  8. 【請求項8】 請求項に7に記載の方法において、前記情報に適用される前
    記フィルタは前記プラグインフィルタである。
  9. 【請求項9】 第1のプロセスから第2のプロセスへの情報をプロキシサー
    バによりフィルタリングする方法において、該方法は、 Uniform Resource Locator(URL)をフィルタ規
    則として定義し、対応するフィルタサーブレットを定義する工程と、 前記第1のプロセスから前記情報を受け取る工程とを備え、前記情報はURL
    を含み、前記方法は、更に、 前記情報に含まれる前記URLが、前記フィルタ規則に含まれる前記URLに
    合致する場合に、前記情報に適用するための、前記定義されたURLに対応する
    前記フィルタサーブレットを選択する工程と、 前記フィルタサーブレットに含まれる命令に基づき前記情報を修正することに
    より、前記フィルタサーブレットを前記情報に適用する工程と、 前記修正された情報を前記第2のプロセスに送信する工程とを備える。
  10. 【請求項10】 請求項9に記載の方法において、前記第1のプロセスはク
    ライアントプロセスであり、前記情報は要求であり、前記第2のプロセスはサー
    バプロセスである。
  11. 【請求項11】 請求項10に記載の法において、前記情報を修正する前記
    の工程は、前記情報からセキュリティデータを取り除く工程を含む。
  12. 【請求項12】 請求項9に記載の方法において、前記第1のプロセスはサ
    ーバプロセスであり、前記第2のプロセスはクライアントプロセスであり、前記
    情報は応答であり、前記修正された情報は修正された応答である。
  13. 【請求項13】 請求項12に記載の方法であって、該方法は、更に、前記
    修正された応答をキャッシュメモリに格納する工程を備える。
  14. 【請求項14】 請求項1に記載の方法であって、該方法は、更に、前記プ
    ロキシサーバに対し他のフィルタ規則と他のフィルタサーブレットを定義するこ
    とにより、プラグインフィルタを追加する工程を含む。
  15. 【請求項15】 プロキシサーバを使って情報をフィルタリングする方法に
    おいて、該方法は、 クライアントプロセスから要求を受け取る工程と、 前記要求に順方向フィルタを適用する工程と、 前記フィルタリングされた要求をサーバプロセスに送信する工程と、 前記フィルタリングされた要求に関する応答を前記サーバプロセスから受け取
    る工程と、 前記応答に逆方向フィルタを適用する工程と、 前記フィルタリングされた応答を前記クライアントに送信する工程とを備える
  16. 【請求項16】 請求項15に記載の方法において、前記第2のプロセスは
    ウェブサーバであり、前記順方向フィルタを適用する前記の工程は、 Uniform Resource Locator(URL)と対応するフ
    ィルタとを定義する工程と、 前記定義されたURLが前記要求に含まれている場合に、前記対応するフィル
    タを使って前記要求をフィルタリングする工程とを含む。
  17. 【請求項17】 請求項15に記載の方法において、前記第2のプロセスは
    ウェブサーバであり、前記逆方向フィルタを適用する前記の工程は、 Uniform Resource Locator(URL)と対応するフ
    ィルタとを定義する工程と、 前記定義されたURLが前記応答に含まれている場合に、前記対応するフィル
    タを使って前記要求をフィルタリングする工程とを含む。
  18. 【請求項18】 請求項15に記載の方法であって、該方法は、更に、前記
    修正された応答をキャッシュメモリに格納する工程を備える。
  19. 【請求項19】 請求項15に記載の方法であって、該方法は、更に、プラ
    グインフィルタを追加する工程を含む。
  20. 【請求項20】 請求項19に記載の方法において、前記情報に適用される
    前記フィルタは前記プラグインフィルタである。
  21. 【請求項21】 プロキシサーバにフィルタを追加する方法において、該方
    法は、 フィルタを受け取るように動作する前記プロキシサーバを作成する工程と、 フィルタ規則とフィルタサーブレットとを具備するフィルタを作成する工程と
    、 前記フィルタを前記プロキシサーバに追加する工程とを備え、前記プロキシサ
    ーバは、前記追加されたフィルタを使って情報を修正するように動作する。
  22. 【請求項22】 請求項21に記載の方法において、前記フィルタ規則は、
    Uniform Resource Locator(URL)を含み、前記フ
    ィルタサーブレットは、実行されると前記情報を修正する命令を含む。
  23. 【請求項23】 請求項21に記載の方法であって、該方法は、更に、複数
    のフィルタを前記プロキシサーバに追加する工程を備える。
  24. 【請求項24】 第1のプロセスから第2のプロセスへの情報をプロキシサ
    ーバによりフィルタリングするデータ処理システムにおいて、該システムは、 中央処理装置と、 オペレーティングシステムと、 命令を格納したメモリとを備え、該命令は、実行されると、 Uniform Resource Locator(URL)をフィルタ規
    則として定義し、対応するフィルタサーブレットを定義する工程と、 前記第1のプロセスから前記情報を受け取る工程とを実行し、前記情報はUR
    Lを含み、前記命令は、更に、 前記情報に含まれる前記URLが、前記フィルタ規則に含まれる前記URLに
    合致する場合に、前記情報に適用するための、前記定義されたURLに対応する
    前記フィルタサーブレットを選択する工程と、 前記フィルタサーブレットに含まれる命令に基づき前記情報を修正することに
    より、前記フィルタサーブレットを前記情報に適用する工程と、 前記修正された情報を前記第2のプロセスに送信する工程とを実行する。
  25. 【請求項25】 方法を実行するための、第1のプロセスから第2のプロセ
    スへの情報をフィルタリングするためのコンピュータにより実行可能な命令を含
    むコンピュータ可読媒体であって、該方法は、 前記第1のプロセスから前記情報を受け取る工程と、 前記第1のプロセスにより受け取った情報に適用するためのフィルタを選択す
    る工程と、 前記フィルタに含まれる命令に基づき前記情報を修正することにより、前記フ
    ィルタを前記情報に適用する工程と、 前記修正された情報を前記第2のプロセスに送信する工程とを備える。
  26. 【請求項26】 第1のプロセスから第2のプロセスへの情報をフィルタリ
    ングする方法において、該方法は、 前記第1のプロセスから前記情報を受け取る手段と、 前記第1のプロセスにより受け取った情報に適用するためのフィルタを選択す
    る手段と、 前記フィルタに含まれる命令に基づき前記情報を修正することにより、前記フ
    ィルタを前記情報に適用する手段と、 前記修正された情報を前記第2のプロセスに送信する手段とを備える。
JP2000555143A 1998-06-19 1999-06-18 プラグインフィルタを用いた拡張性の高いプロキシサーバ Pending JP2002518726A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US8999598P 1998-06-19 1998-06-19
US60/089,995 1998-06-19
PCT/US1999/013876 WO1999066385A2 (en) 1998-06-19 1999-06-18 Scalable proxy servers with plug in filters

Publications (1)

Publication Number Publication Date
JP2002518726A true JP2002518726A (ja) 2002-06-25

Family

ID=22220580

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000555143A Pending JP2002518726A (ja) 1998-06-19 1999-06-18 プラグインフィルタを用いた拡張性の高いプロキシサーバ

Country Status (5)

Country Link
US (1) US6604143B1 (ja)
EP (1) EP1086426B1 (ja)
JP (1) JP2002518726A (ja)
AT (1) ATE345528T1 (ja)
WO (1) WO1999066385A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7058695B2 (en) 2000-07-27 2006-06-06 International Business Machines Corporation System and media for simplifying web contents, and method thereof

Families Citing this family (112)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9219755B2 (en) 1996-11-08 2015-12-22 Finjan, Inc. Malicious mobile code runtime monitoring system and methods
US8079086B1 (en) 1997-11-06 2011-12-13 Finjan, Inc. Malicious mobile code runtime monitoring system and methods
US7058822B2 (en) 2000-03-30 2006-06-06 Finjan Software, Ltd. Malicious mobile code runtime monitoring system and methods
US20020089551A1 (en) * 1997-07-14 2002-07-11 Hugh Harlan M. Method and apparatus for displaying a thought network from a thought's perspective
US7401115B1 (en) * 2000-10-23 2008-07-15 Aol Llc Processing selected browser requests
DE19952527C2 (de) 1999-10-30 2002-01-17 Ibrixx Ag Fuer Etransaction Ma Verfahren und Transaktionsinterface zum gesicherten Datenaustausch zwischen unterscheidbaren Netzen
JP3596400B2 (ja) * 2000-01-21 2004-12-02 日本電気株式会社 Dnsサーバフィルタ
US8843617B2 (en) * 2000-03-01 2014-09-23 Printeron Inc. Multi-stage polling mechanism and system for the transmission and processing control of network resource data
CA2299824C (en) * 2000-03-01 2012-02-21 Spicer Corporation Network resource control system
CA2301996A1 (en) * 2000-03-13 2001-09-13 Spicer Corporation Wireless attachment enabling
KR100460276B1 (ko) * 2000-06-10 2004-12-04 유미특허법인 인터넷 서비스 장치 및 서비스 방법
WO2001098934A2 (en) * 2000-06-20 2001-12-27 Privo, Inc. Method and apparatus for granting access to internet content
US9444785B2 (en) 2000-06-23 2016-09-13 Cloudshield Technologies, Inc. Transparent provisioning of network access to an application
US7032031B2 (en) * 2000-06-23 2006-04-18 Cloudshield Technologies, Inc. Edge adapter apparatus and method
US7003555B1 (en) * 2000-06-23 2006-02-21 Cloudshield Technologies, Inc. Apparatus and method for domain name resolution
US6829654B1 (en) * 2000-06-23 2004-12-07 Cloudshield Technologies, Inc. Apparatus and method for virtual edge placement of web sites
US8204082B2 (en) * 2000-06-23 2012-06-19 Cloudshield Technologies, Inc. Transparent provisioning of services over a network
KR100358387B1 (ko) * 2000-06-27 2002-10-25 엘지전자 주식회사 네트워크망에서 내부자원의 보호기능이 강화된 보안장치및 그 운용방법
US8972590B2 (en) 2000-09-14 2015-03-03 Kirsten Aldrich Highly accurate security and filtering software
US7587499B1 (en) * 2000-09-14 2009-09-08 Joshua Haghpassand Web-based security and filtering system with proxy chaining
US7171487B2 (en) * 2000-09-22 2007-01-30 International Business Machines Corporation Method and system for application specific packet forwarding
US7136896B1 (en) 2000-09-26 2006-11-14 Juniper Networks, Inc. Dynamic toolbar for markup language document
AU2001296289A1 (en) * 2000-09-26 2002-04-08 Danastreet Technologies, Inc. Enhanced browsing environment
US7865569B1 (en) 2000-09-26 2011-01-04 Juniper Networks, Inc. Method and system for modifying script portions of requests for remote resources
US7774455B1 (en) 2000-09-26 2010-08-10 Juniper Networks, Inc. Method and system for providing secure access to private networks
US7085817B1 (en) 2000-09-26 2006-08-01 Juniper Networks, Inc. Method and system for modifying requests for remote resources
US6865605B1 (en) * 2000-10-04 2005-03-08 Microsoft Corporation System and method for transparently redirecting client requests for content using a front-end indicator to preserve the validity of local caching at the client system
US6823391B1 (en) * 2000-10-04 2004-11-23 Microsoft Corporation Routing client requests to back-end servers
DE10053738A1 (de) * 2000-10-30 2002-05-02 Starzone Gmbh Verfahren zur Verknüpfung von unterschiedlichen Zielgruppen sowie ein geeignetes System hierfür
US7620719B2 (en) 2002-06-06 2009-11-17 Juniper Networks, Inc. Method and system for providing secure access to private networks
US20020099829A1 (en) * 2000-11-27 2002-07-25 Richards Kenneth W. Filter proxy system and method
US20020111818A1 (en) * 2001-02-15 2002-08-15 International Business Machines Corporation Method and apparatus for providing independent filtering of e-commerce transactions
US20020133603A1 (en) * 2001-03-13 2002-09-19 Fujitsu Limited Method of and apparatus for filtering access, and computer product
US7302634B2 (en) 2001-03-14 2007-11-27 Microsoft Corporation Schema-based services for identity-based data access
US7024662B2 (en) * 2001-03-14 2006-04-04 Microsoft Corporation Executing dynamically assigned functions while providing services
US7200679B2 (en) * 2001-04-13 2007-04-03 Telefonaktiebolaget Lm Ericsson (Publ) Creating distributed proxy configurations
KR100398281B1 (ko) * 2001-04-17 2003-09-19 시큐아이닷컴 주식회사 패킷 차단방식 방화벽 시스템에서의 고속 정책 판별 방법
FR2825214B1 (fr) * 2001-05-23 2003-10-31 Unlog Dispositif de communication electronique securise, notamment d'acces electronique securise
GB2376766B (en) * 2001-06-19 2005-04-06 Ibm Method and system for controlling transmission of information
US7069330B1 (en) * 2001-07-05 2006-06-27 Mcafee, Inc. Control of interaction between client computer applications and network resources
US20030014659A1 (en) * 2001-07-16 2003-01-16 Koninklijke Philips Electronics N.V. Personalized filter for Web browsing
US7076736B2 (en) * 2001-07-31 2006-07-11 Thebrain Technologies Corp. Method and apparatus for sharing many thought databases among many clients
US7631084B2 (en) 2001-11-02 2009-12-08 Juniper Networks, Inc. Method and system for providing secure access to private networks with client redirection
US7146403B2 (en) 2001-11-02 2006-12-05 Juniper Networks, Inc. Dual authentication of a requestor using a mail server and an authentication server
ITMI20020063A1 (it) * 2002-01-15 2003-07-15 Gestweb Spa Procedimento per inivire l'invio da parte di un minorenne di dati du una rete telematica
US7197530B2 (en) * 2002-01-18 2007-03-27 Bea Systems, Inc. System and method for pluggable URL pattern matching for servlets and application servers
US7552189B2 (en) * 2002-01-18 2009-06-23 Bea Systems, Inc. System and method for using virtual directories to service URL requests URL requests in application servers
US20030140100A1 (en) * 2002-01-18 2003-07-24 Sam Pullara System and method for URL response caching and filtering in servlets and application servers
US20030145048A1 (en) * 2002-01-18 2003-07-31 Bea Systems, Inc. System and method for HTTP request preprocessing for servlets and application servers
US7853719B1 (en) * 2002-02-11 2010-12-14 Microsoft Corporation Systems and methods for providing runtime universal resource locator (URL) analysis and correction
JP3942941B2 (ja) * 2002-04-22 2007-07-11 三菱電機株式会社 通信装置及びプラグインモジュール制御方法及びコンピュータに実行させるためのプログラム及びコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体
US8060629B2 (en) * 2002-05-30 2011-11-15 Hewlett-Packard Development Company, L.P. System and method for managing information requests
US7809813B2 (en) * 2002-06-28 2010-10-05 Microsoft Corporation System and method for providing content-oriented services to content providers and content consumers
US9886309B2 (en) 2002-06-28 2018-02-06 Microsoft Technology Licensing, Llc Identity-based distributed computing for device resources
US20040010710A1 (en) * 2002-07-10 2004-01-15 Wen-Hao Hsu Method and system for filtering requests to a web site
US7130877B2 (en) 2002-09-30 2006-10-31 Alcatel Canada Inc. Request processing switch
US7694018B2 (en) * 2002-11-19 2010-04-06 Hewlett-Packard Development Company, L.P. Method and system for communication between two devices by editing machine specific information at a proxy server
US8335860B2 (en) * 2002-12-19 2012-12-18 Nokia Corporation Filtering application services
US20040167960A1 (en) * 2003-02-21 2004-08-26 Jason Kinner Network service interceptor
US7349943B2 (en) * 2003-03-12 2008-03-25 Microsoft Corporation Protocol-independent client-side caching system and method
US20050144315A1 (en) * 2003-12-08 2005-06-30 International Business Machines Corporation Method and structure to analyze web client dialogs
US20050144324A1 (en) * 2003-12-08 2005-06-30 International Business Machines Corporation Service for analyzing web client dialogs
EP1733314A4 (en) * 2004-03-29 2012-08-22 Cyber Ark Software Ltd IMPROVED SERVER, COMPUTERIZED NETWORK COMPRISING THE SAME, AND METHOD OF INCREASING THE LEVEL OF EFFICIENCY OF A NETWORK
GB0411331D0 (en) * 2004-05-21 2004-06-23 Qinetiq Ltd Hyperlinks
US7269411B2 (en) * 2004-06-16 2007-09-11 The Boeing Company Methods and systems for providing information network access to a host agent via a guardian agent
US20060064469A1 (en) * 2004-09-23 2006-03-23 Cisco Technology, Inc. System and method for URL filtering in a firewall
US20060111960A1 (en) * 2004-11-22 2006-05-25 International Business Machines Corporation Performance prediction service using business-process information
CN100464518C (zh) * 2005-02-03 2009-02-25 杭州华三通信技术有限公司 基于用户的互联网访问控制系统、方法及路由设备
US8316446B1 (en) * 2005-04-22 2012-11-20 Blue Coat Systems, Inc. Methods and apparatus for blocking unwanted software downloads
CA2510647A1 (en) * 2005-06-23 2006-12-23 Cognos Incorporated Signing of web request
US8478894B2 (en) * 2005-07-21 2013-07-02 International Business Machines Corporation Web application response cloaking
US7937435B2 (en) * 2006-02-21 2011-05-03 Strangeloop Networks, Inc. Identifying, storing, and retrieving context data for a network message
US8166114B2 (en) 2006-02-21 2012-04-24 Strangeloop Networks, Inc. Asynchronous context data messaging
US8037127B2 (en) 2006-02-21 2011-10-11 Strangeloop Networks, Inc. In-line network device for storing application-layer data, processing instructions, and/or rule sets
US8185944B2 (en) * 2006-02-28 2012-05-22 The Boeing Company High-assurance file-driven content filtering for secure network server
US8041946B2 (en) * 2006-02-28 2011-10-18 The Boeing Company Data transfer between networks operating at different security levels
US9390019B2 (en) * 2006-02-28 2016-07-12 Violin Memory Inc. Method and apparatus for providing high-performance and highly-scalable storage acceleration
US8301728B2 (en) * 2006-07-21 2012-10-30 Yahoo! Inc. Technique for providing a reliable trust indicator to a webpage
US8112703B2 (en) * 2006-07-21 2012-02-07 Yahoo! Inc. Aggregate tag views of website information
US8554869B2 (en) * 2006-08-02 2013-10-08 Yahoo! Inc. Providing an interface to browse links or redirects to a particular webpage
CN101154223B (zh) * 2006-09-27 2012-05-02 阿里巴巴集团控股有限公司 查看与系统功能对应的源代码的方法及系统
US7934223B2 (en) * 2007-01-13 2011-04-26 International Business Machines Corporation Context-sensitive middleware service injection
US20090043881A1 (en) * 2007-08-10 2009-02-12 Strangeloop Networks, Inc. Cache expiry in multiple-server environment
US20090254707A1 (en) * 2008-04-08 2009-10-08 Strangeloop Networks Inc. Partial Content Caching
US9906620B2 (en) 2008-05-05 2018-02-27 Radware, Ltd. Extensible, asynchronous, centralized analysis and optimization of server responses to client requests
US9549039B2 (en) 2010-05-28 2017-01-17 Radware Ltd. Accelerating HTTP responses in a client/server environment
US20110072489A1 (en) * 2009-09-23 2011-03-24 Gilad Parann-Nissany Methods, devices, and media for securely utilizing a non-secured, distributed, virtualized network resource with applications to cloud-computing security and management
GB201004449D0 (en) 2010-02-22 2010-05-05 Corbett Sean Data accelerator
US20110231482A1 (en) * 2010-03-22 2011-09-22 Strangeloop Networks Inc. Automated Optimization Based On Determination Of Website Usage Scenario
US8453166B2 (en) * 2010-04-14 2013-05-28 Bank Of America Corporation Data services framework visibility component
US8572023B2 (en) 2010-04-14 2013-10-29 Bank Of America Corporation Data services framework workflow processing
CN101895531B (zh) * 2010-06-13 2015-01-07 北京北大众志微系统科技有限责任公司 一种客户端设备、多媒体数据卸载系统及卸载方法
KR101089023B1 (ko) * 2010-08-06 2011-12-01 삼성에스디에스 주식회사 스마트 카드, 및 이를 이용한 안티-바이러스 시스템 및 스캐닝 방법
US8570566B2 (en) 2010-09-17 2013-10-29 Printeron Inc. System and method that provides user interface on mobile network terminal for releasing print jobs based on location information
US8970873B2 (en) 2010-09-17 2015-03-03 Printeron Inc. System and method for managing printer resources on an internal network
CA2759736C (en) 2010-11-30 2020-12-29 Printeron Inc. System for internet enabled printing
WO2012101585A1 (en) 2011-01-28 2012-08-02 Strangeloop Networks, Inc. Prioritized image rendering based on position within a web page
WO2012160499A1 (en) 2011-05-23 2012-11-29 Strangeloop Networks, Inc. Optimized rendering of dynamic content
CA2828056A1 (en) * 2011-05-24 2012-11-29 Isa Auctionata Auktionen Ag Computer system for the exchange of messages
US9292467B2 (en) 2011-09-16 2016-03-22 Radware, Ltd. Mobile resource accelerator
US9817860B2 (en) * 2011-12-13 2017-11-14 Microsoft Technology Licensing, Llc Generation and application of correctness-enforced executable filters
US20130254830A1 (en) * 2012-03-22 2013-09-26 Madhav Moganti Apparatus and method for assuring communications of corporate users
US9483576B2 (en) * 2012-08-29 2016-11-01 Hewlett Packard Enterprise Development Lp Offline application support
US8954495B2 (en) * 2013-01-04 2015-02-10 Netfilx, Inc. Proxy application with dynamic filter updating
IN2013CH05960A (ja) * 2013-12-20 2015-06-26 Samsung R & D Inst India Bangalore Private Ltd
US9356882B2 (en) 2014-02-04 2016-05-31 Printeron Inc. Streamlined system for the transmission of network resource data
WO2016033765A1 (zh) * 2014-09-03 2016-03-10 华为技术有限公司 网页自动化测试方法及装置
CN105591997B (zh) * 2014-10-20 2019-04-09 杭州迪普科技股份有限公司 一种url分类过滤方法及装置
US11082519B2 (en) * 2017-05-08 2021-08-03 Salesforce.Com, Inc. System and method of providing web content using a proxy cache
CN112930668A (zh) 2018-09-11 2021-06-08 阿韦瓦软件有限责任公司 用于dmz代理客户端的安全配置推送的服务器和系统
US11537575B1 (en) * 2019-02-04 2022-12-27 Amazon Technologies, Inc. Real-time database performance tuning
US11526553B2 (en) * 2020-07-23 2022-12-13 Vmware, Inc. Building a dynamic regular expression from sampled data

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5835726A (en) 1993-12-15 1998-11-10 Check Point Software Technologies Ltd. System for securing the flow of and selectively modifying packets in a computer network
KR960008583A (ko) * 1994-08-26 1996-03-22 윌리암 티. 엘리스 데이타 프로세싱 시스템 및 데이타 프로세싱 시스템 관리 방법
US5623601A (en) 1994-11-18 1997-04-22 Milkway Networks Corporation Apparatus and method for providing a secure gateway for communication and data exchanges between networks
US5802320A (en) 1995-05-18 1998-09-01 Sun Microsystems, Inc. System for packet filtering of data packets at a computer network interface
US5673322A (en) 1996-03-22 1997-09-30 Bell Communications Research, Inc. System and method for providing protocol translation and filtering to access the world wide web from wireless or low-bandwidth networks
JP3767047B2 (ja) * 1996-04-26 2006-04-19 セイコーエプソン株式会社 投写型表示装置
US5884033A (en) * 1996-05-15 1999-03-16 Spyglass, Inc. Internet filtering system for filtering data transferred over the internet utilizing immediate and deferred filtering actions
US5805820A (en) 1996-07-15 1998-09-08 At&T Corp. Method and apparatus for restricting access to private information in domain name systems by redirecting query requests
US6125385A (en) * 1996-08-01 2000-09-26 Immersion Corporation Force feedback implementation in web pages
US6003084A (en) 1996-09-13 1999-12-14 Secure Computing Corporation Secure network proxy for connecting entities
US5958008A (en) * 1996-10-15 1999-09-28 Mercury Interactive Corporation Software system and associated methods for scanning and mapping dynamically-generated web documents
US6182141B1 (en) * 1996-12-20 2001-01-30 Intel Corporation Transparent proxy server
US5864666A (en) * 1996-12-23 1999-01-26 International Business Machines Corporation Web-based administration of IP tunneling on internet firewalls
US6006279A (en) * 1997-01-21 1999-12-21 Canon Information Systems, Inc. Plug-in module host framework
US6105027A (en) * 1997-03-10 2000-08-15 Internet Dynamics, Inc. Techniques for eliminating redundant access checking by access filters
US6094684A (en) * 1997-04-02 2000-07-25 Alpha Microsystems, Inc. Method and apparatus for data communication
US5951651A (en) * 1997-07-23 1999-09-14 Lucent Technologies Inc. Packet filter system using BITMAP vector of filter rules for routing packet through network
US6055572A (en) * 1998-01-20 2000-04-25 Netscape Communications Corporation System and method for creating pathfiles for use to predict patterns of web surfaces
US6148336A (en) * 1998-03-13 2000-11-14 Deterministic Networks, Inc. Ordering of multiple plugin applications using extensible layered service provider with network traffic filtering
US6065055A (en) * 1998-04-20 2000-05-16 Hughes; Patrick Alan Inappropriate site management software
DE69803369T2 (de) * 1998-07-21 2002-08-29 Oliver Kaufmann Verfahren und Vorrichtung zur Bereitstellung eines dritten Internet-Datenkanals
US6336117B1 (en) * 1999-04-30 2002-01-01 International Business Machines Corporation Content-indexing search system and method providing search results consistent with content filtering and blocking policies implemented in a blocking engine

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7058695B2 (en) 2000-07-27 2006-06-06 International Business Machines Corporation System and media for simplifying web contents, and method thereof

Also Published As

Publication number Publication date
EP1086426B1 (en) 2006-11-15
EP1086426A4 (en) 2002-12-04
WO1999066385A3 (en) 2000-02-03
ATE345528T1 (de) 2006-12-15
US6604143B1 (en) 2003-08-05
WO1999066385A2 (en) 1999-12-23
EP1086426A2 (en) 2001-03-28

Similar Documents

Publication Publication Date Title
JP2002518726A (ja) プラグインフィルタを用いた拡張性の高いプロキシサーバ
US7827280B2 (en) System and method for domain name filtering through the domain name system
US7277914B2 (en) Proxy server apparatus and method for providing service using the same
EP1461928B1 (en) Method and system for network caching
US8032586B2 (en) Method and system for caching message fragments using an expansion attribute in a fragment link tag
US7987239B2 (en) Method and system for caching role-specific fragments
US7412535B2 (en) Method and system for caching fragments while avoiding parsing of pages that do not contain fragments
US8788528B2 (en) Filtering cached content based on embedded URLs
US6092204A (en) Filtering for public databases with naming ambiguities
US7587515B2 (en) Method and system for restrictive caching of user-specific fragments limited to a fragment cache closest to a user
US20040139151A1 (en) Apparatus and method for selecting a web service in response to a request from a client device
US20030188021A1 (en) Method and system for processing multiple fragment requests in a single message
US7039804B2 (en) Method and system to integrate existing user and group definitions in a database server with heterogeneous application servers
JP2001515669A (ja) 分散コンピュータシステムにおける情報へのアクセス権を付与するシステムおよび方法
WO2002082210A2 (en) Method, system, and software for transmission of information
US20030135587A1 (en) Method and system of state management for data communications
US20090172107A1 (en) Proxy content for submitting web service data in the user's security context
JP5347429B2 (ja) ユニフォームリソースロケータ書換方法及び装置
US7873707B1 (en) Client-side URL rewriter
US7529750B2 (en) Accessing information on a network
JP3437680B2 (ja) 対話管理型情報提供方法及び装置
US8250236B2 (en) Method and apparatus for translating a web services address
JP2004246747A (ja) 既存サービスのラッピング方法および装置
US6968356B1 (en) Method and apparatus for transferring data between a client and a host across a firewall
JP3528065B2 (ja) コンピュータネットワーク上の対話継承型アクセス制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060523

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090421

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20091006