(57)【特許請求の範囲】
【請求項１】
クライアント端末と情報処理装置との間で通信される通信データを中継する中継処理装置であって、
前記クライアント端末と前記情報処理装置との間で通信される通信データの中継が許可又は不許可されている当該通信で用いられる通信プロトコルを記憶する記憶手段と、
前記記憶手段に記憶された通信プロトコルに従ったデータの通信を前記情報処理装置と行う通信手段と、
前記通信手段による、前記情報処理装置との、前記記憶手段に記憶された通信プロトコルに従ったデータの通信が成功したか否かを判定する判定手段と、
前記判定手段による判定結果に従って、前記クライアント端末と前記情報処理装置との間で通信される通信データの中継を許可するか否かを決定する決定手段と、
を備えることを特徴とする中継処理装置。
【請求項２】
前記記憶手段は、前記クライアント端末と前記情報処理装置との間で通信される通信データの中継が許可又は不許可されている通信プロトコルを構成する通信プロトコルとして、トランスポート層の通信プロトコルである下位通信プロトコルと、トランスポート層よりも上位の通信プロトコルである上位通信プロトコルとを記憶し、
前記通信手段は、前記記憶手段に記憶された下位通信プロトコルに従ったデータの通信、及び前記記憶手段に記憶された上位通信プロトコルに従ったデータの通信を前記情報処理装置と行い、
前記判定手段は、前記通信手段により、前記情報処理装置との、前記記憶手段に記憶された下位通信プロトコルに従ったデータの通信、及び前記記憶手段に記憶された上位通信プロトコルに従ったデータの通信が成功したか否かを判定することにより、前記情報処理装置との、前記記憶手段に記憶された通信プロトコルに従ったデータの通信が成功したか否かを判定することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記下位通信プロトコルは、暗号通信で用いられる通信プロトコルを含むことを特徴とする請求項２項に記載の中継処理装置。
【請求項４】
前記上位通信プロトコルは、アプリケーション層における通信プロトコルを含むことを特徴とする請求項２又は３に記載の中継処理装置。
【請求項５】
前記クライアント端末から、前記情報処理装置からのデータ送信を要求する通信要求データを含む通信データを受信する受信手段と、
前記受信手段で受信した通信要求データが、トランスポート層における、前記クライアント端末と前記情報処理装置との間で通信される通信データの中継を要求するトランスポート通信要求情報であるか否かを判定する要求情報判定手段と、
を更に備え、
前記通信手段は、前記要求情報判定手段で、前記受信手段で受信した通信要求データが当該トランスポート通信要求情報であると判定された場合に、前記記憶手段に記憶された通信プロトコルに従ったデータの通信を前記情報処理装置と行うことを特徴とする請求項１乃至４の何れか１項に記載の中継処理装置。
【請求項６】
前記要求情報判定手段で、前記受信手段で受信した通信要求データが当該トランスポート通信要求情報ではないと判定された場合、前記受信手段で受信した通信要求データを解析することにより、前記クライアント端末と前記情報処理装置との間の通信で用いられる通信プロトコルを特定する特定手段を更に備え、
前記決定手段は、前記特定手段により特定された通信プロトコルと、前記記憶手段に記憶されている、中継が許可又は不許可されている通信プロトコルとに従って、前記クライアント端末と前記情報処理装置との間で通信される通信データの中継を許可するか否かを決定することを特徴とする請求項５に記載の中継処理装置。
【請求項７】
通信プロトコルと、当該通信プロトコルを通信で用いる情報処理装置を識別する情報処理装置識別情報とを関連付けて記憶するプロトコル記憶手段と、
前記受信手段で受信した通信要求データを解析することにより、該通信要求データによりデータ送信が要求されている情報処理装置の情報処理装置識別情報を取得する取得手段と
を更に備え、
前記決定手段は、前記取得手段で取得した情報処理装置識別情報に関連付けられて前記プロトコル記憶手段に記憶された通信プロトコルと、前記記憶手段に記憶されている、中継が許可又は不許可されている通信プロトコルとに従って、前記クライアント端末と前記情報処理装置との間で通信される通信データの中継を許可するか否かを決定することを特徴とする請求項５又は６に記載の中継処理装置。
【請求項８】
前記判定手段により、前記通信手段によるデータの通信が成功したと判定された通信プロトコルと、前記取得手段により取得された情報処理装置識別情報とを関連付けて前記プロトコル記憶手段に記憶するキャッシュ手段を更に備えることを特徴とする請求項７に記載の中継処理装置。
【請求項９】
クライアント端末と情報処理装置との間で通信される通信データを中継する中継処理装置であって、
通信プロトコルに従ったデータの通信を前記情報処理装置と行う通信手段と、
前記通信手段による前記情報処理装置とのデータの通信が成功した通信プロトコルを、前記情報処理装置との通信で用いられる通信プロトコルとして特定する特定手段と、
前記特定手段で特定された通信プロトコルに従って、前記クライアント端末と前記情報処理装置との間で通信される通信データを中継するか否かを決定する決定手段と、
を備えることを特徴とする中継処理装置。
【請求項１０】
前記特定手段は、前記通信手段による前記情報処理装置との、通信プロトコルに従ったデータの通信が成功しない場合、前記情報処理装置との通信で用いられる通信プロトコルを不明な通信プロトコルとして特定し、
前記決定手段は、前記特定手段で特定された不明な通信プロトコルに従って、前記クライアント端末と前記情報処理装置との間で通信される通信データを中継するか否かを決定することを特徴とする請求項９に記載の中継処理装置。
【請求項１１】
前記通信手段は、トランスポート層の通信プロトコルである下位通信プロトコルに従ったデータの通信、及びトランスポート層よりも上位の通信プロトコルである上位通信プロトコルに従ったデータの通信を前記情報処理装置と行い、
前記特定手段は、前記通信手段による前記情報処理装置とのデータの通信が成功した下位通信プロトコル、及び、前記通信手段による前記情報処理装置とのデータの通信が成功した上位通信プロトコルから、前記情報処理装置との通信で用いられる通信プロトコルを特定することを特徴とする請求項９又は１０の中継処理装置。
【請求項１２】
前記下位通信プロトコルは、暗号通信で用いられる通信プロトコルを含むことを特徴とする請求項１１項に記載の中継処理装置。
【請求項１３】
前記上位通信プロトコルは、アプリケーション層における通信プロトコルを含むことを特徴とする請求項１１又は１２に記載の中継処理装置。
【請求項１４】
前記クライアント端末から、前記情報処理装置からのデータ送信を要求する通信要求データを含む通信データを受信する受信手段と、
前記受信手段で受信した通信要求データが、トランスポート層における、前記クライアント端末と前記情報処理装置との間で通信される通信データの中継を要求するトランスポート通信要求情報であるか否かを判定する要求情報判定手段と、
を更に備え、
前記通信手段は、前記要求情報判定手段で、前記受信手段で受信した通信要求データが当該トランスポート通信要求情報であると判定された場合に、通信プロトコルに従ったデータの通信を前記情報処理装置と行うことを特徴とする請求項９乃至１３の何れか１項に記載の中継処理装置。
【請求項１５】
前記特定手段は、前記要求情報判定手段で、前記受信手段で受信した通信要求データが当該トランスポート通信要求情報ではないと判定された場合、前記受信手段で受信した通信要求データを解析することにより、前記クライアント端末と前記情報処理装置との間の通信で用いられる通信プロトコルを特定し、
前記決定手段は、前記特定手段により特定された通信プロトコルに従って、前記クライアント端末と前記情報処理装置との間で通信される通信データを中継するか否かを決定することを特徴とする請求項１４に記載の中継処理装置。
【請求項１６】
通信プロトコルと、当該通信プロトコルを通信で用いる情報処理装置を識別する情報処理装置識別情報とを関連付けて記憶する記憶手段と、
前記受信手段で受信した通信要求データを解析することにより、該通信要求データによりデータ送信が要求されている情報処理装置の情報処理装置識別情報を取得する取得手段と
を更に備え、
前記決定手段は、前記取得手段で取得した情報処理装置識別情報に関連付けられて前記記憶手段に記憶された通信プロトコルに従って、前記クライアント端末と前記情報処理装置との間で通信される通信データの中継を許可するか否かを決定することを特徴とする請求項１４又は１５に記載の中継処理装置。
【請求項１７】
前記通信手段によるデータの通信が成功した通信プロトコルと、前記取得手段により取得された情報処理装置識別情報とを関連付けて前記記憶手段に記憶するキャッシュ手段を更に備えることを特徴とする請求項１６に記載の中継処理装置。
【請求項１８】
クライアント端末と情報処理装置との間で通信される通信データを中継し、前記クライアント端末と前記情報処理装置との間で通信される通信データの中継が許可又は不許可されている当該通信で用いられる通信プロトコルを記憶する記憶手段を備える中継処理装置の制御方法であって、
前記通信手段が、前記記憶手段に記憶された通信プロトコルに従ったデータの通信を前記情報処理装置と行う通信工程と、
判定手段が、前記通信工程による、前記情報処理装置との、前記記憶手段に記憶された通信プロトコルに従ったデータの通信が成功したか否かを判定する判定工程と、
決定手段が、前記判定工程による判定結果に従って、前記クライアント端末と前記情報処理装置との間で通信される通信データの中継を許可するか否かを決定する決定工程と、
を備えることを特徴とする中継処理装置の制御方法。
【請求項１９】
クライアント端末と情報処理装置との間で通信される通信データを中継し、前記クライアント端末と前記情報処理装置との間で通信される通信データの中継が許可又は不許可されている当該通信で用いられる通信プロトコルを記憶する記憶手段を備える中継処理装置で実行可能なプログラムであって、
前記中継処理装置を、
前記記憶手段に記憶された通信プロトコルに従ったデータの通信を前記情報処理装置と行う通信手段と、
前記通信手段による、前記情報処理装置との、前記記憶手段に記憶された通信プロトコルに従ったデータの通信が成功したか否かを判定する判定手段と、
前記判定手段による判定結果に従って、前記クライアント端末と前記情報処理装置との間で通信される通信データの中継を許可するか否かを決定する決定手段として機能させることを特徴とするプログラム。
【請求項２０】
クライアント端末と情報処理装置との間で通信される通信データを中継する中継処理装置の制御方法であって、
通信手段が、通信プロトコルに従ったデータの通信を前記情報処理装置と行う通信工程と、
特定手段が、前記通信工程による前記情報処理装置とのデータの通信が成功した通信プロトコルを、前記情報処理装置との通信で用いられる通信プロトコルとして特定する特定工程と、
決定手段が、前記特定工程で特定された通信プロトコルに従って、前記クライアント端末と前記情報処理装置との間で通信される通信データを中継するか否かを決定する決定工程と、
を備えることを特徴とする中継処理装置の制御方法。
【請求項２１】
クライアント端末と情報処理装置との間で通信される通信データを中継する中継処理装置で実行可能なプログラムであって、
前記中継処理装置を、
通信プロトコルに従ったデータの通信を前記情報処理装置と行う通信手段と、
前記通信手段による前記情報処理装置とのデータの通信が成功した通信プロトコルを、前記情報処理装置との通信で用いられる通信プロトコルとして特定する特定手段と、
前記特定手段で特定された通信プロトコルに従って、前記クライアント端末と前記情報処理装置との間で通信される通信データを中継するか否かを決定する決定手段として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、中継処理装置、及びその制御方法、プログラムに関し、特に、通信データの中継制御を行う技術に関するものである。
【背景技術】
【０００２】
近年、インターネットを介した情報交換が活発になるにつれて、ウィルス・マルウェアによる被害や企業などにおける顧客情報、営業機密等の情報漏洩による社会的信用の失墜や賠償請求による金銭的損失など、情報セキュリティにかかわる問題が深刻化している。
【０００３】
このような問題に対して、ファイアーウォールやアンチウィルスソフトをはじめとするソフトウェア、情報処理装置によって対策がとられるのが一般的になっている。
【０００４】
ファイアーウォールは、企業内ＬＡＮなどの組織内ネットワークとインターネットなどの外部ネットワークの境界領域に設置され、両領域をまたがる通信に関して、その通信を中継し制御する機能を主にもつ。
【０００５】
ファイアーウォールは、中継する通信の内容を監視し、その通信を行うノード機器（クライアント、サーバなどと呼ばれる）のアドレス、通信プロトコル、通信プロトコルで伝送されるアプリケーションデータなどの情報を、事前に設定されたアクセス制御ルールと照合し、その照合結果によってその通信の可否を決定し、制御するといった動作を行う機器である。
【０００６】
ファイアーウォールの上記のような機能は、主にプロキシサーバーとよばれるソフトウェアプロセスによって実現されている。プロキシサーバーは、基本的にアプリケーションレベルのゲートウェイシステムであり、ＨＴＴＰ、ＨＴＴＰＳ、ＦＴＰ、ＧＯＰＨＥＲの通信プロトコルに対応しており、これらの通信の中継を行うことができる。
【０００７】
このうちＨＴＴＰ、ＦＴＰ、ＧＯＰＨＥＲのプロトコルに関しては、アプリケーションゲートウェイ方式で中継する。クライアントとプロキシサーバーの間の通信と、プロキシサーバーとサーバの間の通信とは、それぞれ独立にアプリケーションレベルの通信回線が開設され、プロキシサーバーにおいて両通信回線間のデータを相互に中継する（アプリケーションゲートウェイ方式）。つまり、プロキシサーバーはアプリケーション層において中継処理を行っている。
【０００８】
例えば、ＦＴＰ通信では、クライアントとプロキシサーバーとの間はＨＴＴＰの通信回線が確立され、プロキシサーバーとＦＴＰサーバとの間でＦＴＰの通信回線が確立される。プロキシサーバーでは、ＨＴＴＰで受け取った要求メッセージをＦＴＰの要求メッセージへ変換し、サーバへ送信し、サーバから受け取ったＦＴＰの応答メッセージを、ＨＴＴＰの応答メッセージへ変換して、クライアントへ送信するといった動作を行う。
【０００９】
これに対し、ＨＴＴＰＳ（ＨＴＴＰ  Ｏｖｅｒ  ＳＳＬ）通信に関しては、ＳＳＬ（Ｓｅｃｕｒｅ  Ｓｏｃｋｅｔ  Ｌａｙｅｒ）通信が、クライアントとサーバとの間でエンドツーエンドの暗号化通信回線を要求するため、プロキシサーバーではトンネリング方式で中継する。すなわち、プロキシサーバーでは単純に、クライアントから受信した通信データをサーバ側へ送信し、サーバ側から受信した通信データをクライアントへ送信するという動作を行う。つまりプロキシサーバーはトランスポート層において中継処理を行っている。
【００１０】
非特許文献１は、ＨＴＴＰを規定したＲＦＣであり、中継処理システムにおいてアプリケーションゲートウェイ方式で通信を中継する動作仕様が記載されている。
【００１１】
また、非特許文献２には、中継処理システムにおいて、トンネリング方式で、暗号化されたデータを中継する（橋渡しする）ことが記載されている。
【００１２】
また、非特許文献３では、ＳｏｆｔＥｔｈｅｒというＶＰＮ（仮想プライベートネットワーク）プロトコルが、プロキシサーバーのＨＴＴＰＳ通信を中継するための設定（ポート番号４４３）を使って、内部ネットワークと外部ネットワークの間に自由にＶＰＮを構築することができることが記載されている。
【先行技術文献】
【非特許文献】
【００１３】
【非特許文献１】Ｒ．  Ｆｉｅｌｄｉｎｇ他，  “Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ  −−  ＨＴＴＰ／１．１”，  ＲＦＣ２６１６    ＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ｉｅｔｆ．ｏｒｇ／ｒｆｃ／ｒｆｃ２６１６．ｔｘｔ＞
【非特許文献２】Ａｒｉ  Ｌｕｏｔｏｎｅｎ，  “Ｔｕｎｎｅｌｉｎｇ  ＴＣＰ  ｂａｓｅｄ  ｐｒｏｔｏｃｏｌｓ  ｔｈｒｏｕｇｈ  ｗｅｂ  ｐｒｏｘｙ  ｓｅｒｖｅｒｓ”，  ＩＥＴＦ  ＩｎｔｅｒｎｅｔＤｒａｆｔ    ＜ＵＲＬ：ｈｔｔｐ：／／ｔｏｏｌｓ．ｉｅｔｆ．ｏｒｇ／ｈｔｍｌ／ｄｒａｆｔ−ｌｕｏｔｏｎｅｎ−ｗｅｂ−ｐｒｏｘｙ−ｔｕｎｎｅｌｉｎｇ−０１＞
【非特許文献３】登大遊，  “ＳｏｆｔＥｔｈｅｒによるＥｔｈｅｒｎｅｔの仮想化とトンネリング通信”    ＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ｓｏｆｔｅｔｈｅｒ．ｃｏ．ｊｐ／ｊｐ／ｖｐｎ２／ｏｌｄ／ｏｖｅｒｖｉｅｗ／ｐａｐｅｒ／ｓｏｆｔｅｔｈｅｒｐａｐｅｒ．ｐｄｆ＞
【発明の概要】
【発明が解決しようとする課題】
【００１４】
前述したしたように、ＨＴＴＰ、ＦＴＰ、ＧＯＰＨＥＲの通信は、プロキシサーバーにおいてアプリケーションゲートウェイ方式で通信を中継するため、上述したファイアーウォールでの説明のように、クライアントとサーバのアドレス情報、通信プロトコル、アプリケーションデータの情報に基づいてアクセス制御することができる。
【００１５】
例えば、ＨＴＴＰの中継では、クライアントとプロキシサーバーとの間で通信回線を確立した後、クライアントのＩＰアドレス、通信プロトコル（ＨＴＴＰ）、受信したＨＴＴＰリクエストメソッド、リクエストＵＲＬなどを取得し、次にそれらの組合せがプロキシサーバーに事前に登録されたアクセス制御ルールと照合して許可すべきものか拒否すべきものか判定し、それに基づきアクセス制御を実施する。
【００１６】
これに対し、ＨＴＴＰＳの通信を中継する場合は、トンネリング方式（トランスポート層での中継を行う方式）であるため、プロキシサーバーにおいては、クライアントとプロキシサーバーのＴＣＰ回線とプロキシサーバーとサーバのＴＣＰ回線との間でデータの橋渡しをするのみである。
【００１７】
そのため、従来のプロキシサーバーは、ＴＣＰ通信回線（トランスポート通信：トランスポート層での通信）の上（上位）を流れるデータについては感知しておらず、そのアプリケーションプロトコル（ＨＴＴＰやＦＴＰ、ＧＯＰＨＥＲなど）（アプリケーション層のプロトコル）が何であるかを確認することなく中継処理を行っている。
【００１８】
プロキシサーバーは、ＨＴＴＰＳを中継するための仕組みとして開発されたにも関わらず、結果的に、ＴＣＰベースの通信プロトコルの汎用中継システムとなっている。
【００１９】
このため、ＨＴＴＰＳ通信を中継する目的で設置されたプロキシサーバーを悪用して、ファイアーウォールのアクセス制御を回避する形で、組織内ネットワークから外部ネットワークのＨＴＴＰＳ以外のプロトコルのサーバ（たとえば、ＳＭＴＰサーバ、ＳｏｆｔＥｔｈｅｒの仮想ハブ）に接続することが可能となっている。例えば、社内ＰＣからプロキシサーバーを経由して自宅のＶＰＮサーバに接続し、そのＶＰＮサーバから他のファイルサーバやＨＴＴＰサーバ等の他のサーバのデータを不正に取得することが可能となる。
【００２０】
例えば、スパムメールの送信する業者が、送信元詐称を行うために外部のプロキシサーバーを経由して、ＳＭＴＰサーバへ接続し、スパムメールを送るなどの事例が報告されている。
【００２１】
このような本来の意図に反したプロキシサーバーの不正な利用に対して、従来は、非特許文献３のように、プロキシサーバーにおいて、中継先のサーバのＴＣＰポート番号をＨＴＴＰＳ用の４４３や８４４３に限定するといった効果が限定的な対策しかとることができていない。
【００２２】
すなわち、例えば、通常、ＨＴＴＰＳでは、ＨＴＴＰのデータをＳＳＬにより暗号化して通信されるが、プロキシサーバーでは、ＳＳＬで暗号化されているデータが本当にＨＴＴＰによるデータなのか、ＳＳＬで暗号化されているデータがどのプロトコルによるデータなのかを確認して、不正なプロキシサーバーの利用を判定することが困難であった。
【００２３】
なぜならば、プロキシサーバーは、クライアント端末から送信される、エンドツーエンドで通信されるトランスポート層での通信の通信要求（ＣＯＮＮＥＣＴメソッド）には、クライアント端末と中継先のサーバとの間で通信される通信プロトコルを示す情報が含まれていないため、その通信プロトコルを特定することができない。そのため、プロキシサーバーは、クライアント端末と中継先のサーバとの間で通信される通信プロトコルを特定することが困難であった。
【００２４】
上述した問題を解消するために、プロキシサーバーの不正な利用を判定して、その結果に応じた中継制御を行う機能が必要である。
【００２５】
本発明は、エンドツーエンドで通信される通信データを中継する仕組みにおいて、当該通信で用いられるプロトコルに基づいて、当該通信される通信データを中継するか否かを決定することにより、セキュリティを向上させることを目的とする。
【課題を解決するための手段】
【００２６】
本発明は、クライアント端末と情報処理装置との間で通信される通信データを中継する中継処理装置であって、前記クライアント端末と前記情報処理装置との間で通信される通信データの中継が許可又は不許可されている当該通信で用いられる通信プロトコルを記憶する記憶手段と、前記記憶手段に記憶された通信プロトコルに従ったデータの通信を前記情報処理装置と行う通信手段と、前記通信手段による、前記情報処理装置との、前記記憶手段に記憶された通信プロトコルに従ったデータの通信が成功したか否かを判定する判定手段と、前記判定手段による判定結果に従って、前記クライアント端末と前記情報処理装置との間で通信される通信データの中継を許可するか否かを決定する決定手段と、を備えることを特徴とする。
【００２７】
また、本発明は、クライアント端末と情報処理装置との間で通信される通信データを中継する中継処理装置であって、通信プロトコルに従ったデータの通信を前記情報処理装置と行う通信手段と、前記通信手段による前記情報処理装置とのデータの通信が成功した通信プロトコルを、前記情報処理装置との通信で用いられる通信プロトコルとして特定する特定手段と、前記特定手段で特定された通信プロトコルに従って、前記クライアント端末と前記情報処理装置との間で通信される通信データを中継するか否かを決定する決定手段と、を備えることを特徴とする。
【００２８】
また、本発明は、クライアント端末と情報処理装置との間で通信される通信データを中継し、前記クライアント端末と前記情報処理装置との間で通信される通信データの中継が許可又は不許可されている当該通信で用いられる通信プロトコルを記憶する記憶手段を備える中継処理装置の制御方法であって、前記通信手段が、前記記憶手段に記憶された通信プロトコルに従ったデータの通信を前記情報処理装置と行う通信工程と、判定手段が、前記通信工程による、前記情報処理装置との、前記記憶手段に記憶された通信プロトコルに従ったデータの通信が成功したか否かを判定する判定工程と、決定手段が、前記判定工程による判定結果に従って、前記クライアント端末と前記情報処理装置との間で通信される通信データの中継を許可するか否かを決定する決定工程と、を備えることを特徴とする。
【００２９】
また、本発明は、クライアント端末と情報処理装置との間で通信される通信データを中継し、前記クライアント端末と前記情報処理装置との間で通信される通信データの中継が許可又は不許可されている当該通信で用いられる通信プロトコルを記憶する記憶手段を備える中継処理装置で実行可能なプログラムであって、前記中継処理装置を、前記記憶手段に記憶された通信プロトコルに従ったデータの通信を前記情報処理装置と行う通信手段と、前記通信手段による、前記情報処理装置との、前記記憶手段に記憶された通信プロトコルに従ったデータの通信が成功したか否かを判定する判定手段と、前記判定手段による判定結果に従って、前記クライアント端末と前記情報処理装置との間で通信される通信データの中継を許可するか否かを決定する決定手段として機能させることを特徴とする。
【００３０】
また、本発明は、クライアント端末と情報処理装置との間で通信される通信データを中継する中継処理装置の制御方法であって、通信手段が、通信プロトコルに従ったデータの通信を前記情報処理装置と行う通信工程と、特定手段が、前記通信工程による前記情報処理装置とのデータの通信が成功した通信プロトコルを、前記情報処理装置との通信で用いられる通信プロトコルとして特定する特定工程と、決定手段が、前記特定工程で特定された通信プロトコルに従って、前記クライアント端末と前記情報処理装置との間で通信される通信データを中継するか否かを決定する決定工程と、を備えることを特徴とする。
【００３１】
また、本発明は、クライアント端末と情報処理装置との間で通信される通信データを中継する中継処理装置で実行可能なプログラムであって、前記中継処理装置を、通信プロトコルに従ったデータの通信を前記情報処理装置と行う通信手段と、前記通信手段による前記情報処理装置とのデータの通信が成功した通信プロトコルを、前記情報処理装置との通信で用いられる通信プロトコルとして特定する特定手段と、前記特定手段で特定された通信プロトコルに従って、前記クライアント端末と前記情報処理装置との間で通信される通信データを中継するか否かを決定する決定手段として機能させることを特徴とする。
【発明の効果】
【００３２】
本発明によれば、エンドツーエンドで通信される通信データを中継する仕組みにおいて、当該通信で用いられるプロトコルに基づいて、当該通信される通信データを中継するか否かを決定することにより、セキュリティを向上させることができる。
【図面の簡単な説明】
【００３３】
【図１】本発明の実施形態における中継処理システムの構成を示す図である。
【図２】本発明の実施形態における各種端末のハードウェア構成を示す図である。
【図３】本発明の実施形態における中継処理装置のプロトコル検査部の構成を示す図である。
【図４】本発明の実施形態における中継処理装置の基本的な処理フローを示す図である。
【図５】本発明の実施形態における中継処理装置のプロトコル検査処理フローを示す図である。
【図６】本発明の実施形態における中継処理装置のプロトコル検査手続き決定表の例を示す図である。
【図７】本発明の実施形態における中継処理装置のプロトコルキャッシュ表の例を示す図である。
【図８】本発明の実施形態における中継処理装置と情報提供処理装置とのＳＳＬプロトコルのデータフローの例を示す図である。
【図９】本発明の実施形態における中継処理装置と情報提供処理装置とのＨＴＴＰプロトコルのデータフローの例を示す図である。
【図１０】本発明の実施形態における中継処理装置と情報提供処理装置とのＳＭＴＰプロトコルのデータフローの例を示す図である。
【図１１】本発明の実施形態における中継処理装置のアクセス制御表の例を示す図である。
【図１２】本発明に係る機能ブロック図である。
【図１３】本発明に係る機能ブロック図である。
【図１４】本発明に係る機能ブロック図である。
【図１５】本発明に係る機能ブロック図である。
【発明を実施するための形態】
【００３４】
以下、添付図面を参照して、本発明を好適な実施形態に従って詳細に説明する。
【００３５】
図１は、本発明の実施形態における中継処理システムの構成を示す図である。
【００３６】
尚、図１のネットワーク上に接続される各種端末と各種装置の構成は、一例であり、用途や目的に応じて様々な構成例があることは言うまでもない。
【００３７】
中継処理システム（図１）は、利用者端末１１０と中継処理装置１２０と情報提供処理装置１５０とから構成される。利用者端末１１０と中継処理装置１２０、中継処理装置１２０と情報提供処理装置１５０とはそれぞれネットワークを介して相互に通信可能に接続されている。
【００３８】
中継処理装置１２０は、本発明の中継処理装置の適用例であり、利用者端末１１０は、クライアント端末の適用例であり、情報提供処理装置１５０は、情報処理装置の適用例である。
【００３９】
利用者端末１１０は、情報提供処理装置１５０が提供するコンテンツデータを取得し表示するために使用する情報処理装置である。利用者端末１１０は、閲覧処理部１１１を備えている。
【００４０】
閲覧処理部１１１は、一般にＷｅｂブラウザと呼ばれるＨＴＴＰプロトコル、ＨＴＴＰＳプロトコルのクライアントプログラム、一般にメーラーと呼ばれるＳＭＴＰプロトコルのクライアントプログラム、ＳＳＨプロトコルのクライアントプログラム、ＳｏｆｔＥａｔｈｅｒプロトコルのクライアントプログラムに相当する機能処理部である。
【００４１】
閲覧処理部１１１は、利用者からの指示を受付け、中継処理装置１２０を経由して情報提供処理装置１５０へ通信要求メッセージを送信し、該通信要求メッセージに対して情報提供処理装置１５０から応答された通信応答メッセージを受信し、該通信応答メッセージを整形したものを利用者端末１１０のＣＲＴ２１０等に表示する機能を備えている。この時、閲覧処理部１１１と中継処理装置１２０のクライアント通信部１２１との間で開設される通信コネクションをクライアント回線１６１とする。
【００４２】
中継処理装置１２０は、一般にプロキシサーバーと呼ばれるプログラムまたは装置がもつ機能を備える情報処理装置である。
【００４３】
中継処理装置１２０は、利用者端末１１０から送信される通信要求メッセージを受信し、宛先である情報提供処理装置１５０へ該通信要求メッセージを中継し、情報提供処理装置１５０から応答される通信応答メッセージを、利用者端末１１０へ中継することができる。
【００４４】
中継処理装置１２０は、クライアント通信部１２１と、サーバ通信部１２２と、通信制御部１２３と、プロトコル検査部１２４と、管理表保存部１２５と、検査手続き定義部１２６と、から構成される。
【００４５】
クライアント通信部１２１は、利用者端末１１０の閲覧処理部１１１から接続要求を受け付け、利用者端末１１０からの通信要求メッセージを受信し、情報提供処理装置１５０からの通信応答メッセージを送信する機能を備える。
【００４６】
サーバ通信部１２２は、情報提供処理装置１５０のサーバ処理部１５１へ接続し、利用者端末１１０からの通信要求メッセージを送信し、情報提供処理装置１５０からの通信応答メッセージを受信する機能を備える。
【００４７】
通信制御部１２３は、クライアント通信部１２１が行う処理と、サーバ通信部１２２が行う処理と、プロトコル検査部１２４が行う処理との間で同期制御処理を行う機能をもつ。また、該同期制御処理において関連する情報を、管理表保存部１２５へ記憶させる機能と、管理表保存部１２５に記憶されたデータを参照する機能と、を備えている。また、通信制御部１２３は、管理表保存部１２５に保存されているアクセス制御情報に基づき、クライアント通信部１２１が受信した接続要求（情報提供処理装置１５０と通信するための情報提供処理装置１５０との接続要求）（通信要求メッセージ）による通信を許可するか否かを判定する機能、該判定された結果に基づき、クライアント通信部１２１と、サーバ通信部１２２とに、中継を許可するか否かの中継制御指示を通知する機能を備える。クライアント通信部１２１と、サーバ通信部１２２とは、この通知に基づいて中継を許可するか否かを制御する。
【００４８】
プロトコル検査部１２４は、サーバ通信部１２２が行う通信とは独立して、情報提供処理装置１５０のサーバ処理部１５１とテスト回線１６３を開設して、サーバ処理部１５１が対応する通信プロトコル（単にプロトコルとも言う）を検査する機能（サーバ処理部１５１が通信で用いる通信プロトコルを検査する機能）を備える。
【００４９】
プロトコル検査部１２４は、図３で示すように、検査処理制御部３０１と、個々の通信プロトコルを検査する部分（３０２〜３０７）と、から構成される。
【００５０】
図３で示すプロトコル検査部は、ＳＳＬ検査処理部３０２と、ＨＴＴＰ検査処理部３０３と、ＳＭＴＰ検査処理部３０４と、ＳＳＨ検査処理部３０５と、ＳｏｆｔＥｔｈｅｒ検査処理部３０６とを含み、それぞれ、ＳＳＬと、ＨＴＴＰと、ＳＭＴＰと、ＳＳＨと、ＳｏｆｔＥｔｈｅｒのプロトコルを検査する機能を備えていることを表している。また、図３のＸＸＸ検査処理部３０７は検査する通信プロトコルを示していない。これは、新規に検査したい通信プロトコルが出てきた場合には、３０７に新規に検査したい通信プロトコルの検査処理部を追加し、該通信プロトコルを検査することが可能となることを示している。
【００５１】
管理表保存部１２５は、アクセス制御表（アクセス制御情報）（図１１）を記憶するための記憶領域である。
（アクセス制御表の説明）
【００５２】
アクセス制御表（図１１）は、通信制御部１２３から参照され、利用者端末１１０からの通信要求リクエスト（通信要求メッセージ）の中継の可否を決定するために利用される表である。
【００５３】
図１１にアクセス制御表の一例を示す。アクセス制御表の各レコードは、利用者端末１１０と情報提供処理装置１５０との通信の可否を示すルール（アクセス制御ルール）を表し、クライアント条件欄と、サーバ条件欄と、プロトコル欄と、結果欄と、から構成される。
【００５４】
クライアント条件欄は、利用者端末１１０の条件（利用者端末を識別するための識別情報）が記憶される。サーバ条件欄は、情報提供処理装置１５０の条件（情報提供処理装置を識別するための識別情報）が記憶される。プロトコル欄は、利用者端末１１０と情報提供処理装置１５０との通信で用いられる通信プロトコルが記憶される。
【００５５】
例えば、図１１の１１０１のレコードは、１０．１．０．０／２５５．２５５．０．０の範囲のＩＰアドレス（クライアントアドレス情報）が設定されている利用者端末１１０が任意の情報提供処理装置とＨＴＴＰＳによるデータの通信を許可するルールを示している。
【００５６】
検査手続き定義部１２６は、プロトコル検査手続き決定表（図６）とプロトコル情報キャッシュ表（図７）とを記憶するための記憶領域である。
【００５７】
（プロトコル検査手続き決定表（図６）の説明）
【００５８】
プロトコル検査手続き決定表（図６）は、サーバ回線１６２の開設に先立ち、情報提供処理装置１５０のサーバ処理部１５１が通信で用いる通信プロトコルを検査するため、プロトコル検査部１２４が使用する表である。
【００５９】
プロトコル検査手続き決定表の例を図６に示す。プロトコル検査手続き決定表は、プロトコル検査部１２４が検査する各通信プロトコルを示しており、プロトコル名欄と、下位プロトコル検査処理部欄と、上位プロトコル検査処理部欄と、から構成される。
【００６０】
プロトコル名欄は、検査対象である通信プロトコル名を保存する場所である。下位プロトコル検査処理部欄は、該通信プロトコルのトランスポート層の通信プロトコル（下位通信プロトコル）の検査処理部名を保存する場所である。上位プロトコル検査処理部欄は、該通信プロトコルの上位の通信プロトコル（上位通信プロトコル）（例えば、アプリケーション層の通信プロトコル）の検査処理部名を保存する場所である。
【００６１】
下位通信プロトコルには、ＳＳＬなどの、トランスポート層での（エンドツーエンドでの）暗号通信で用いられる通信プロトコルが含まれている。
【００６２】
例えば、図６の６０１のレコードは、情報提供処理装置１５０がＨＴＴＰＳによる通信に対応しているかどうかを検査するためには、上位プロトコルと下位プロトコルの二段階で検査する必要があることを示している。すなわち、上位プロトコルの検査は、上位プロトコル検査処理部に示しているようにＨＴＴＰ検査処理部３０３で検査を行い、下位プロトコルの検査は、下位プロトコル検査処理部に示しているようにＳＳＬ検査処理部３０２で検査を行うことを示している。
【００６３】
（プロトコル情報キャッシュ表（図７）の説明）
【００６４】
プロトコル情報キャッシュ表（図７）は、プロトコル検査部１２４によって判明（特定）した、情報提供処理装置１５０のサーバ処理部１５１が対応している通信プロトコル（サーバ処理部１５１が通信で用いる通信プロトコル）を一定期間記憶するための表である。
【００６５】
プロトコル情報キャッシュ表の例を図７で示す。プロトコル情報キャッシュ表は、サーバ識別子欄、有効期限欄、プロトコル名欄から構成される。
【００６６】
サーバ識別子欄は、情報提供処理装置１５０を識別するための識別情報として、情報提供処理装置１５０のホスト名とＴＣＰポート番号とを組み合わせた情報を保存する場所である。有効期限欄は、レコードの有効期限（日時）を保存する場所である。プロトコル名欄は決定された通信プロトコル名を保存する場所である。
【００６７】
プロトコル情報キャッシュ表の各レコードは定期的に検査され、有効期限欄の日時が、検査する日時より古い場合には、それに該当するレコードが削除される。
【００６８】
例えば、図７の７０１のレコードは、ホスト名がｗｗｗ．ｘｘｘ．ｃｏ．ｊｐである情報提供処理装置１５０のポート番号４４３をもつサーバ処理部１５１が通信で用いる通信プロトコルがＨＴＴＰＳであることを、２００９年８月３１日の３時２０分５４秒まで、再利用できる情報として保存されていることを示している。
【００６９】
図７は、通信プロトコルと、該通信プロトコルを通信で用いる情報提供処理装置を識別するサーバ識別子（情報処理装置識別情報）とを関連付けて記憶している（プロトコル記憶手段）。
【００７０】
情報提供処理装置１５０は、利用者端末１１０から送信された通信要求メッセージを受信し、該通信要求メッセージの内容に基づき通信応答メッセージを応答する情報処理装置である。情報提供処理装置１５０は、サーバ処理部１５１を備えている。
【００７１】
サーバ処理部１５１は、一般にアプリケーションプロトコルのサーバと知られるプログラムに相当する機能処理部である。サーバ処理部１５１は、ＨＴＴＰ、ＨＴＴＰＳ、ＳＭＴＰ、ＳＳＨ、ＳｏｆｔＥｔｈｅｒ、ＳＭＴＰ  Ｏｖｅｒ  ＳＳＬの１つ又は複数のプロトコルのサーバ機能を備えている。
【００７２】
次に、図１の利用者端末１１０、中継処理装置１２０、情報提供処理装置１５０の各種端末のハードウェア構成について、図２を用いて説明する。
【００７３】
図２は、本発明の実施形態における各種端末のハードウェア構成を示す図である。
【００７４】
ＣＰＵ２０１は、システムバス２０４に接続される各デバイスやコントローラを統括的に制御する。
【００７５】
また、ＲＯＭ２０２あるいは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  ／  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）やオペレーティングシステムプログラム（以下、ＯＳ）や、各サーバ或いは各ＰＣの実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。
【００７６】
ＲＡＭ２０３は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。
【００７７】
ＣＰＵ２０１は、処理の実行に際して必要なプログラム等をＲＡＭ２０３にロードして、プログラムを実行することで各種動作を実現するものである。
【００７８】
また、入力コントローラ（入力Ｃ）２０５は、キーボード２０９や不図示のマウス等のポインティングデバイスからの入力を制御する。
【００７９】
ビデオコントローラ（ＶＣ）２０６は、ＣＲＴディスプレイ（ＣＲＴ）２１０等の表示器への表示を制御する。表示器はＣＲＴだけでなく、液晶ディスプレイでも構わない。これらは必要に応じて管理者が使用するものである。本発明には直接関係があるものではない。
【００８０】
メモリコントローラ（ＭＣ）２０７は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク（ＨＤ）やフロッピーディスク（登録商標  ＦＤ）或いはＰＣＭＣＩＡカードスロットにアダプタを介して接続されるコンパクトフラッシュメモリ等の外部メモリ２１１へのアクセスを制御する。
【００８１】
通信Ｉ／Ｆコントローラ（通信Ｉ／ＦＣ）２０８は、ネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、ＴＣＰ／ＩＰを用いたインターネット通信等が可能である。
【００８２】
なお、ＣＰＵ２０１は、例えばＲＡＭ２０３内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、ＣＲＴ２１０上での表示を可能としている。また、ＣＰＵ２０１は、ＣＲＴ２１０上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【００８３】
本発明を実現するためのプログラム２１２は外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０３にロードされることによりＣＰＵ２０１によって実行されるものである。
【００８４】
さらに、外部メモリ２１１は、本発明に係わるプログラムが用いる前述した管理表保存部１２５及び検査手続き定義部１２６を含み、これらについての詳細な説明は後述する。
【００８５】
次に、中継処理装置における処理手順を、図４を用いて説明する。
【００８６】
図４に示す各ステップは、中継処理装置１２０のＣＰＵ２０１が外部メモリ２１１等のメモリに格納されたプログラムをＲＡＭ２０３にロードして実行することにより実現される。
【００８７】
ステップ４０１では、クライアント通信部１２１は、利用者端末１１０の閲覧処理部１１１からの接続要求を受け付け、通信回線（以降、クライアント回線１６１と呼ぶ）を確立し、利用者端末１１０のクライアントアドレス情報をＲＡＭ２０３の特定の領域に保存する。
【００８８】
次に、クライアント通信部１２１は、確立された通信回線によって利用者端末より送信された通信要求メッセージ（情報提供処理装置からのデータ送信を要求する通信要求データ（通信データ））を受信する。そして、クライアント通信部１２１は、通信制御部１２３へ通信要求メッセージを渡し、ステップ４０２へ進む。
【００８９】
ステップ４０２では、通信制御部１２３は、通信制御部１２３は通信要求メッセージに含まれるリクエストメソッドを参照し、接続先となる情報提供処理装置１５０のサーバ処理部のアドレスを表すサーバ識別子情報（ホスト名：ポート番号）を、ＲＡＭ２０３の特定の領域に保存する。
【００９０】
次に、通信制御部１２３は、該リクエストメソッドがＣＯＮＮＥＣＴメソッドか否かを判定する。すなわち、該リクエストメソッドが、トランスポート層における、利用者端末と情報提供処理装置との間で（エンドツーエンドで）通信されるデータの中継を要求するＣＯＮＮＥＣＴメソッド（トランスポート通信要求情報）であるか否かを判定する（要求情報判定手段）。
【００９１】
ＣＯＮＮＥＣＴメソッドである場合は、情報提供処理装置１５０のサーバ処理部１５１が通信で用いる通信プロトコルを検査（特定）するために、ステップ４０３へ進む。通信制御部１２３は、該リクエストメソッドがＣＯＮＮＥＣＴメソッドでない場合は、該通信要求メッセージを解析して、該リクエストメソッドのメソッド引数から通信プロトコルを判別し、該通信プロトコル名をＲＡＭ２０３の特定の領域の保存し、ステップ４０４へ進む。
【００９２】
リクエストメソッドがＣＯＮＮＥＣＴメソッドである場合の通信要求メッセージの例を下記に示す。
【００９３】
ＣＯＮＮＥＣＴ  ｗｗｗ．ｘｘｘｘ．ｃｏ．ｊｐ：４４３  ＨＴＴＰ／１．０
【００９４】
この場合は、サーバ識別子情報は“ｗｗｗ．ｘｘｘｘ．ｃｏ．ｊｐ：４４３”であることはわかるが、通信プロトコルが何であるのか不明である。
【００９５】
次に、通信要求メッセージのリクエストメソッドがＣＯＮＮＥＣＴメソッドでない場合（例えば、リクエストメソッドがＧＥＴメソッドの場合）の通信要求メッセージの例を下記に示す。
【００９６】
ＧＥＴ  ｈｔｔｐ：／／ｗｗｗ．ｘｘｘｘ．ｃｏ．ｊｐ／ｉｎｄｅｘ．ｈｔｍｌ  ＨＴＴＰ／１．０
【００９７】
この場合は、サーバ識別子情報は“ｗｗｗ．ｘｘｘｘ．ｃｏ．ｊｐ：８０”であることが分かり、メソッド引数の“ｈｔｔｐ：／／ｗｗｗ．ｘｘｘｘ．ｃｏ．ｊｐ／ｉｎｄｅｘ．ｈｔｍｌ”というＵＲＬのスキーム部分から通信プロトコルが“ｈｔｔｐ”であることが判別できる。
【００９８】
ステップ４０３では、プロトコル検査部１２４において、サーバ処理部１５１の通信プロトコルを判別（特定）するための処理を行う。
【００９９】
プロトコル検査部１２４におけるプロトコル検査処理の詳細は、後ほど説明する。プロトコル検査部１２４は、サーバ処理部１５１の通信プロトコルが何かを判明（特定）すると、該通信プロトコル名をＲＡＭ２０３の特定の領域の保存し、ステップ４０４へ進む。
【０１００】
ステップ４０４では、通信制御部１２３において、ステップ４０１においてＲＡＭ２０３に保存したクライアントアドレス情報と、ステップ４０２においてＲＡＭ２０３に保存したサーバ識別子情報と、ステップ４０２またはステップ４０３でＲＡＭ２０３の特定の領域に保存された通信プロトコル名を取得する。
【０１０１】
次に、通信制御部１２３は、管理表保存部１２５に保存されているアクセス制御表（図１１）を取得し、該アクセス制御表（図１１）の各レコードを１つ１つ取り出し、利用者端末１１０が情報提供処理装置１５０としようとしている通信の条件に合致するレコードを検索する。
【０１０２】
通信制御部１２３は、アクセス制御表（図１１）の先頭行から順番に１つ１つレコードを取得して照合手続き処理を繰返し実施する。照合手続き処理では、利用者端末１１０から受信した通信要求メッセージに含まれる利用者端末１１０のＩＰアドレス（クライアントアドレス情報）がクライアント条件欄の条件が合致し、かつ、利用者端末１１０から受信した通信要求メッセージに含まれる、サーバを識別するための識別情報（サーバ識別子）（サーバ識別子情報とも言う）がサーバ条件欄の条件と合致し、かつ、ステップＳ４０３で特定された通信プロトコル、又は、通信要求メッセージに含まれるメソッド引数のＵＲＬのスキーム部分から特定された通信プロトコルの通信プロトコル名がプロトコル欄の条件と合致するか否かを判定する。照合手続き処理で、利用者端末１１０が情報提供処理装置１５０としようとしている通信の条件に合致するレコードが見つかるか、全てのレコードに対して処理するまで実行する。
【０１０３】
通信制御部１２３は、条件に合致するレコードがあった場合には、該レコードの結果欄をアクセス制御の結果（中継制御の内容）として用いる。全てのレコードを検査しても合致するレコードがなかった場合には、中継処理装置１２０に予め設定されたデフォルトの結果値（“許可”もしくは“禁止（不許可）”）を、アクセス制御の結果（アクセス制御の内容）として用いる。次にステップ４０５へ進む。
【０１０４】
図１１の例では、ステップＳ４０３で特定された通信プロトコルが、未定義（サーバ処理部１５１が通信するために用いられる通信プロトコルが不明な通信プロトコル）である場合は、Ｎｏ．６の条件に合致して、中継が禁止されるように設定されている。
【０１０５】
ステップ４０５では、ステップ４０４で判定されたアクセス制御の結果が、“許可”の場合は、ステップ４０６へ進み、“禁止”の場合は、ステップ４０７へ進む。
【０１０６】
また、ステップＳ４０５では、ステップＳ４０４でＲＡＭ２０３から読み出した、サーバ識別子情報と、通信プロトコル名を、それぞれ、プロトコル情報キャッシュ表（図７）のサーバ識別子、プロトコル名に記憶して、有効期限を更新する。
【０１０７】
ステップ４０６では、通信制御部１２３は、利用者端末１１０からの通信要求メッセージを、サーバ通信部１２２へ渡し、サーバ通信部１２２では、ＲＡＭ２０３に保存されたサーバ識別子情報に基づき、情報提供処理装置１５０のサーバ処理部１５１へ接続し、通信回線（以降、サーバ回線１６２と呼ぶ）を開設する。
【０１０８】
通信制御部１２３は、サーバ回線１６２を通じて、利用者端末１１０からの通信要求メッセージを送信する。これに対して、情報提供処理装置１５０のサーバ処理部１５１から応答される通信応答メッセージを、サーバ通信部１２２で受信する。
【０１０９】
通信制御部１２３は、該通信応答メッセージを、サーバ通信部１２２から通信制御部１２３、クライアント通信部１２１へと渡し、クライアント通信部１２１は、クライアント回線１６１を介して、利用者端末１１０の閲覧処理部１１１に該通信応答メッセージを送信する。そして、サーバ回線１６２とクライアント回線１６１を切断し、処理を終了する。
【０１１０】
このように、中継処理装置１２０は、利用者端末１１０と情報提供処理装置１５０との間で通信されるデータ（通信データ）を中継するように制御する。
【０１１１】
ステップ４０７では、通信制御部１２３は、クライアント通信部１２１に、アクセス拒否を指示する情報（中継を禁止する旨の中継制御指示）を送信し、クライアント通信部１２１は、クライアント回線１６１を介して、利用者端末１１０にアクセス拒否を表す通信応答メッセージを送信する。そして、クライアント回線１６１を切断して処理を終了する。利用者端末１１０は、当該アクセス拒否を表す通信応答メッセージを受信すると、当該通信応答メッセージに従って中継処理装置１２０で中継が禁止された旨を表示する。
【０１１２】
通信制御部１２３は、ステップＳ４０６、又はステップＳ４０７の処理を実行すると、処理を終了する。
【０１１３】
次に、ステップ４０３に示すプロトコル検査処理の詳細処理について、図５を用いて説明する。
【０１１４】
図５に示す各ステップは、中継処理装置１２０のＣＰＵ２０１が外部メモリ２１１等のメモリに格納されたプログラムをＲＡＭ２０３にロードして実行することにより実現される。
【０１１５】
ステップ５０１では、プロトコル検査部１２４は、検査手続き定義部１２６に保存されたプロトコル情報キャッシュ表（図７）をＲＡＭ２０３へ読み込む。そしてステップ５０２へ進む。
【０１１６】
プロトコル検査部１２４は、ステップ５０２では、ステップ５０１において読み込んだプロトコル情報キャッシュ表（図７）の中から、ＲＡＭ２０３に保存されたサーバ識別子情報が、プロトコル情報キャッシュ表のサーバ識別子欄の値と一致し、かつ、プロトコル情報キャッシュ表の有効期限欄の値が、現在の日時よりも後であるレコードを検索する。
【０１１７】
そして、プロトコル検査部１２４は、該当するレコードが検索された場合は、処理をステップ５０３に進め、該当するレコードが検索されなかった場合は、処理をステップ５０４に進める。
【０１１８】
プロトコル検査部１２４は、ステップ５０３では、ステップ５０２において検索されたレコードのプロトコル名欄の値（通信プロトコル）をプロトコル検査処理の結果値として処理を終了する。すなわち、ステップ５０２において検索されたレコードのプロトコル名欄の値（通信プロトコル）を、情報提供処理装置１５０のサーバ処理部１５１が通信で用いる通信プロトコルとして特定する。そして、ステップ４０３の処理（図５）を終了し、処理をステップＳ４０４に進める。なお、ここで特定された通信プロトコル名（プロトコル検査処理の結果値）は、ＲＡＭ２０３の特定の領域に保存する。
【０１１９】
ステップ５０４では、プロトコル検査部１２４は、検査手続き定義部１２６に保存されたプロトコル検査手続き決定表（図６）を、ＲＡＭ２０３へ読み込み、プロトコル検査手続き決定表（図６）の先頭から１行ずつレコードを取り出し、レコードの数だけステップ５０５からステップ５０７を繰り返し実行する。
【０１２０】
ステップ５０５では、プロトコル検査部１２４は、ＲＡＭ２０３に保存されたサーバ識別子情報に基づき、情報提供処理装置１５０のサーバ処理部１５１へ接続し、通信回線（以降、テスト回線１６３と呼ぶ）を開設する。
【０１２１】
ステップ５０６では、プロトコル検査部１２４は、テスト回線を通じて、プロトコル検査手続き処理を実施する。プロトコル検査手続き処理は、ステップ５０４で取り出したプロトコル検査手続き決定表（図６）のレコードに従って処理を行う。
【０１２２】
まず、プロトコル検査部１２４は、レコードの下位プロトコル検査処理部に記載されている検査処理部（図３の３０２から３０７のいずれかの処理部）で処理を実行する（下位プロトコル検査処理）。
【０１２３】
すなわち、例えば、図６の６０１のレコードの例では、下位プロトコル検査処理部であるＳＳＬ検査処理部３０２が、ＳＳＬの通信プロトコルに従ったデータの通信（交換）を情報提供処理装置１５０のサーバ処理部１５１と行う。
【０１２４】
そして、プロトコル検査部１２４は、情報提供処理装置１５０のサーバ処理部１５１と行った、通信プロトコルに従ったデータの通信（交換）が失敗した場合、すなわち、プロトコル検査手続き決定表（図６）の下位プロトコル検査処理部に記載されている検査処理部の通信プロトコルに従った、情報提供処理装置１５０とのデータの通信（交換）による検査結果が失敗の場合は、プロトコル検査手続きの検査結果ステータスを失敗とし、処理をステップ５０７に進める。
【０１２５】
一方、プロトコル検査部１２４は、情報提供処理装置１５０のサーバ処理部１５１と行った、通信プロトコルに従ったデータの通信（交換）が成功した場合、すなわち、プロトコル検査手続き決定表（図６）の下位プロトコル検査処理部に記載されている検査処理部の通信プロトコルに従った、情報提供処理装置１５０とのデータの通信（交換）による検査結果が成功の場合は、レコードの上位プロトコル検査処理部の値を取得し、当該値が未定義でない場合は該値が示す検査処理部（図３の３０２から３０７のいずれかの処理部）の処理を実行する（上位プロトコル検査処理）。また、該値が未定義の場合は、プロトコル検査手続きの検査処理の結果ステータスを成功とし、処理をステップ５０７に進める。
【０１２６】
例えば、図６の６０１のレコードの例では、上位プロトコル検査処理部であるＨＴＴＰ検査処理部３０３が、ＨＴＴＰの通信プロトコルに従ったデータの通信（交換）を情報提供処理装置１５０のサーバ処理部１５１と行う。
ここで行われる情報提供処理装置１５０との通信は、通信が成功した下位プロトコル検査処理部での通信プロトコルを利用して行われる。
【０１２７】
すなわち、例えば、中継処理装置１２０は、通信が成功した下位プロトコル検査処理部がＳＳＬ検査処理部であれば、ＳＳＬ通信の確立の際に得られる、中継処理装置１２０と情報提供処理装置１５０の共通鍵を用いて、情報提供処理装置１５０に送信するデータを暗号化し、また、情報提供処理装置１５０から受信するデータを復号して、上位プロトコル検査処理部での通信プロトコルに従ったデータの通信（交換）を行う。
【０１２８】
そして、プロトコル検査部１２４は、情報提供処理装置１５０のサーバ処理部１５１と行った、通信プロトコルに従ったデータの通信（交換）が失敗した場合、すなわち、プロトコル検査手続き決定表（図６）の上位プロトコル検査処理部に記載されている検査処理部の通信プロトコルに従った、情報提供処理装置１５０とのデータの通信（交換）による検査結果が失敗の場合は、プロトコル検査手続きの検査結果ステータスを失敗とし、処理をステップ５０７に進める。
【０１２９】
一方、プロトコル検査部１２４は、情報提供処理装置１５０のサーバ処理部１５１と行った、通信プロトコルに従ったデータの通信（交換）が成功した場合、すなわち、プロトコル検査手続き決定表（図６）の上位プロトコル検査処理部に記載されている検査処理部の通信プロトコルに従った、情報提供処理装置１５０とのデータの通信（交換）による検査結果が成功の場合は、プロトコル検査手続きの検査結果ステータスを成功とし、処理をステップＳ５０７に進める。
【０１３０】
ステップ５０７では、ステップ５０６のプロトコル検査手続き処理の検査結果ステータスが成功であるか、失敗であるかを判定し、成功であると判定された場合は、処理をステップ５１０へ進める。一方、検査結果ステータスが失敗であると判定された場合は、処理をステップ５０８へ進める。
【０１３１】
ステップ５０８では、ステップ５０５で開設したテスト回線１６３を切断する。次に、プロトコル検査手続き決定表（図６）の全てのレコードに対する処理を行った場合には、処理をステップ５０９に進め、そうでない場合は、次のレコードを処理対象にして、処理をステップ５０４に戻す。
【０１３２】
ステップ５０９では、プロトコル検査処理の結果を未定義（サーバ処理部１５１が通信するために用いられる通信プロトコルが不明な通信プロトコル）として、ＲＡＭ２０３の特定領域に記憶保存して、ステップ４０３の処理（図５）を終了し、処理をステップＳ４０４に進める。
【０１３３】
ステップ５１０では、ステップ５０６のプロトコル検査手続き処理でサーバ処理部とデータの通信が成功したプロトコル検査手続き決定表（図６）のレコードのプロトコル名欄の値を、サーバ処理部が通信で用いる通信プロトコルとして、ＲＡＭ２０３の特定領域に記憶保存して、ステップ４０３の処理（図５）を終了し、処理をステップＳ４０４に進める。
【０１３４】
次に、ステップ５０６で実行される上位プロトコル検査処理と下位プロトコル検査処理の具体例について説明する。
【０１３５】
まず、図８を用いて、ＳＳＬ検査処理部３０２によるＳＳＬプロトコルの検査処理の例を説明する。
【０１３６】
ステップ８０１では、中継処理装置１２０は、開設されたテスト回線１６３を通じて、Ｃｌｉｅｎｔ  Ｈｅｌｌｏメッセージを送信する。
【０１３７】
ステップ８０２では、情報提供処理装置１５０は、テスト回線１６３を通じて、Ｓｅｒｖｅｒ  Ｈｅｌｌｏメッセージを送信する。
【０１３８】
ステップ８０３では、情報提供処理装置１５０は、テスト回線１６３を通じて、Ｓｅｒｖｅｒ  Ｃｅｒｔｉｆｉｃａｔｅメッセージを送信する。
【０１３９】
ステップ８０４では、情報提供処理装置１５０は、テスト回線１６３を通じて、Ｓｅｒｖｅｒ  Ｈｅｌｌｏ  Ｄｏｎｅメッセージを送信する。
【０１４０】
ステップ８０５では、中継処理装置１２０は、テスト回線１６３を通じて、ＣｌｉｅｎｔＫｅｙＥｘｃｈａｎｇｅメッセージを送信する。
【０１４１】
ステップ８０６では、中継処理装置１２０は、テスト回線１６３を通じて、ＣｈａｎｇｅＣｉｐｈｅｒＳｐｅｃメッセージを送信する。
【０１４２】
ステップ８０７では、中継処理装置１２０は、テスト回線１６３を通じて、Ｈａｎｄｓｈａｋｅ  ｆｉｎｉｓｈｅｄメッセージを送信する。
【０１４３】
ステップ８０８では、情報提供処理装置１５０は、テスト回線１６３を通じて、ＣｈａｎｇｅＣｉｐｈｅｒＳｐｅｃメッセージを送信する。
【０１４４】
ステップ８０９では、情報提供処理装置１５０は、テスト回線１６３を通じて、Ｈａｎｄｓｈａｋｅ  ｆｉｎｉｓｈｅｄメッセージを送信する。
【０１４５】
ＳＳＬ検査処理部３０２では、以上のようなＳＳＬプロトコルに準拠したメッセージ交換ができるか否かを、実際にテスト回線１６３を通じて試行して確認する。ＳＳＬプロトコルに準拠したメッセージ交換（データの通信）ができればＳＳＬ検査手続き処理の検査結果を成功として処理を終了する。また、ＳＳＬプロトコルに準拠したメッセージ交換（データの通信）ができなければ、ＳＳＬ検査手続き処理の検査結果を失敗として処理を終了する。
【０１４６】
ＳＳＬプロトコルの対応確認だけの場合は、例えばステップ８０１に対してステップ８０２の実行があることを、ＳＳＬ検査処理部３０２が確認するだけでよいが、ＳＳＬ通信の場合は、続いてペイロード部分の通信プロトコルも検査することが必要なので、ステップ８０９までのハンドシェイク手続きを正常に完了するところまでの確認を実施し、その後そのまま上位プロトコル検査処理を行うようにする。
【０１４７】
プロトコル検査部１２４は、下位プロトコル検査処理としてＳＳＬ検査処理が実施された場合は、上位プロトコル検査処理は、図８のペイロードプロトコルと記載した個所で実施する。ペイロード部分のプロトコル検査処理が終了したら、その後、ステップ８１０、ステップ８１１のＳＳＬコネクション終了手続き処理（通知）を実施し、ＳＳＬ通信全体を終了する。
【０１４８】
次に、図９を用いて、ＨＴＴＰ検査処理部３０３によるＨＴＴＰプロトコルの検査処理の例を説明する。例えば、図８のペイロードプロトコルと記載した個所で、上位プロトコル検査処理であるＨＴＴＰプロトコルの検査処理を行うことができる。
【０１４９】
ここで、後述するステップ９０１、ステップ９０２で送受信されるＨＴＴＰリクエストメッセージ、ＨＴＴＰレスポンスメッセージは、ステップ８０１からステップステップ８０９により確立されたＳＳＬ通信の通信回線（テスト回線１６３）を用いて送受信される。
【０１５０】
ステップ９０１では、中継処理装置１２０は、開設されたテスト回線１６３を通じて、“ＧＥＴ  ／  ＨＴＴＰ／１．０”というリクエストラインからなるＨＴＴＰリクエストメッセージを送信する。
【０１５１】
すなわち、ステップ９０１では、中継処理装置１２０は、ステップ８０１からステップステップ８０９により確立されたＳＳＬ通信により得られる、情報提供処理装置１５０との共通鍵を用いて、ＨＴＴＰリクエストメッセージを暗号化し、当該暗号化されたＨＴＴＰリクエストメッセージを送信する。
【０１５２】
ステップ９０２では、情報提供処理装置１５０は、テスト回線１６３を通じて、“ＨＴＴＰ／１．０  ２００”というステータスラインからなるＨＴＴＰレスポンスメッセージを送信する。
【０１５３】
すなわち、ステップ９０２では、情報提供処理装置１５０は、ステップ８０１からステップステップ８０９により確立されたＳＳＬ通信により得られる、中継処理装置１２０との共通鍵を用いて、ＨＴＴＰレスポンスメッセージを暗号化し、当該暗号化されたＨＴＴＰレスポンスメッセージを送信する。
【０１５４】
そして、中継処理装置１２０は、情報提供処理装置１５０から受信した暗号化されたＨＴＴＰレスポンスメッセージを、共通鍵を用いて復号して、復号されることで得られるＨＴＴＰレスポンスメッセージを取得する。このようにして、取得されたデータがＨＴＴＰレスポンスメッセージであるか否かの検査を行うことで、ＨＴＴＰＳプロトコルに準拠したメッセージ交換ができるか否かを判定する。
【０１５５】
ＨＴＴＰ検査処理部３０３では、以上のようなＨＴＴＰプロトコルに準拠したメッセージ交換ができるか否かを、実際にテスト回線１６３を通じて試行して確認する。確認に成功すればＨＴＴＰ検査手続きの結果を成功として処理を終了する。また、ＨＴＴＰプロトコルに準拠したメッセージ交換（データの通信）ができなければ、ＨＴＴＰ検査手続き処理の検査結果を失敗として処理を終了する。
【０１５６】
次に、図１０を用いて、ＳＭＴＰ検査処理部３０４によるＳＭＴＰプロトコルの検査処理の例を説明する。例えば、図８のペイロードプロトコルと記載した個所で、上位プロトコル検査処理であるＳＭＴＰプロトコルの検査処理を行うことができる。
【０１５７】
ここで、後述するステップ１００１からステップ１００７で送受信されるデータは、ステップ８０１からステップステップ８０９により確立されたＳＳＬ通信の通信回線（テスト回線１６３）を用いて送受信される。
【０１５８】
ここで、ステップ１００２、ステップ１００４、ステップ１００６では、中継処理装置１２０は、ステップ８０１からステップステップ８０９により確立されたＳＳＬ通信により得られる、情報提供処理装置１５０との共通鍵を用いて、情報提供処理装置１５０に送信するデータ（メッセージ）を暗号化し、当該暗号化されたデータを情報提供処理装置１５０に送信する。
【０１５９】
ここで、ステップ１００１、ステップ１００３、ステップ１００５、ステップ１００７では、情報提供処理装置１５０は、ステップ８０１からステップステップ８０９により確立されたＳＳＬ通信により得られる、中継処理装置１２０との共通鍵を用いて、中継処理装置１２０に送信するデータ（メッセージ）を暗号化し、当該暗号化されたデータを中継処理装置１２０に送信する。
【０１６０】
ステップ１００１では、情報提供処理装置１５０は、開設されたテスト回線１６３を通じて、リプライコード２２０のメッセージを送信する。
【０１６１】
ステップ１００２では、中継処理装置１２０は、テスト回線１６３を通じて、ＥＨＬＯメッセージを送信する。
【０１６２】
ステップ１００３では、情報提供処理装置１５０は、テスト回線１６３を通じて、リプライコード２５０のメッセージを送信する。
【０１６３】
ステップ１００４では、中継処理装置１２０は、テスト回線１６３を通じて、ＮＯＯＰメッセージを送信する。
【０１６４】
ステップ１００５では、情報提供処理装置１５０は、テスト回線１６３を通じて、リプライコード２５０のメッセージを送信する。
【０１６５】
ステップ１００６では、中継処理装置１２０は、テスト回線１６３を通じて、ＱＵＩＴメッセージを送信する。
【０１６６】
ステップ１００７では、情報提供処理装置１５０は、テスト回線１６３を通じて、リプライコード２２１のメッセージを送信する。
【０１６７】
ＳＭＴＰ検査処理部３０４では、以上のようなＳＭＴＰプロトコルに準拠したメッセージ交換ができるか否かを、実際にテスト回線１６３を通じて試行して確認する。確認に成功すればＳＭＴＰ検査手続きの結果を成功として処理を終了する。
【０１６８】
以上、上述した本実施の形態では、プロトコル検査手続き決定表（図６）のプロトコル名に示す通信プロトコルに従ったデータの通信（交信）が情報提供処理装置１５０のサーバ処理部１５１とできた場合は、当該通信プロトコルを、情報提供処理装置１５０のサーバ処理部１５１との通信で用いられる通信プロトコルとして特定され、当該通信プロトコルが、アクセス制御表（図１１）で中継が許可されているか否かを判定し、利用者端末１１０と情報提供処理装置１５０との間で通信される通信データの中継を許可するか否かを決定すること説明した。例えば、情報提供処理装置１５０のサーバ処理部１５１との通信で用いられる通信プロトコルが、図６のＮｏ．５のＳｏｆｔＥｔｈｅｒである場合は、図１１で中継が禁止されるように制御される。
【０１６９】
また、プロトコル検査手続き決定表（図６）のプロトコル名に示す通信プロトコルが、利用者端末１１０と情報提供処理装置１５０との間で通信されるデータの中継が許可される通信プロトコルとして登録するべく、アクセス制御表（図１１）に示すプロトコルに、プロトコル検査手続き決定表（図６）のプロトコル名に示す通信プロトコルが、中継が許可される通信プロトコルとして登録されている場合は、プロトコル検査手続き決定表（図６）のプロトコル名に示す通信プロトコルに従ったデータの通信を情報提供処理装置と行い、当該データの通信が成功したか否かを判定し、その判定結果に従って、利用者端末と情報処理装置との間で通信される通信データの中継を許可するか否かを決定することができるようになる（ホワイトリストの方式）。
【０１７０】
また、プロトコル検査手続き決定表（図６）のプロトコル名に示す通信プロトコルが、利用者端末１１０と情報提供処理装置１５０との間で通信されるデータの中継が禁止される通信プロトコルとして登録するべく、アクセス制御表（図１１）に示すプロトコルに、プロトコル検査手続き決定表（図６）のプロトコル名に示す通信プロトコルが、中継が禁止される通信プロトコルとして登録されている場合は、プロトコル検査手続き決定表（図６）のプロトコル名に示す通信プロトコルに従ったデータの通信を情報提供処理装置と行い、当該データの通信が成功したか否かを判定し、その判定結果に従って、利用者端末と情報処理装置との間で通信される通信データの中継を許可するか否かを決定することができるようになる（ブラックリストの方式）。
【０１７１】
以上、本発明によれば、エンドツーエンドで通信される通信データを中継する仕組みにおいて、当該通信で用いられるプロトコルに基づいて、当該通信される通信データを中継するか否かを決定することにより、セキュリティを向上させることができる。
【０１７２】
また、本実施形態によれば、通信をトランスポート層で中継する仕組みにおいても、中継する通信のアプリケーション層のプロトコルを正確に把握してその情報に基づいてアクセス制御を実施することができる。
【０１７３】
また、本実施形態によれば、中継処理システムのＨＴＴＰＳ通信を中継するためのトンネリング機能を悪用して他の種類の通信（ＳＭＴＰなどの他プロトコルへのスパムブロック回避手段やＶＰＮ）を行おうという行為を遮断し、ネットワークシステムの安全性を向上させることができる。
以下に、図１２を用いて、本発明に係る機能ブロックについて説明する。
図１２は、本発明に係る機能ブロックを示す図である。
中継処理装置１２０は、記憶部１２０１、通信部１２０２、判定部１２０３、決定部１２０４を備えている。
【０１７４】
記憶部１２０１は、クライアント端末（利用者端末）と情報処理装置（情報提供処理装置）との間で通信される通信データの中継が許可又は不許可されている当該通信で用いられる通信プロトコルを記憶している。
通信部１２０２は、記憶部１２０１に記憶された通信プロトコルに従ったデータの通信を情報処理装置と行う。
判定部１２０３は、通信部による、情報処理装置との、記憶部に記憶された通信プロトコルに従ったデータの通信が成功したか否かを判定する。
決定部１２０４は、通信部による、情報処理装置との、記憶部に記憶された通信プロトコルに従ったデータの通信が成功したか否かを判定する。
以下に、図１３を用いて、本発明に係る機能ブロックについて説明する。
図１３は、本発明に係る機能ブロックを示す図である。
【０１７５】
中継処理装置１２０は、記憶部１２０１、通信部１２０２、判定部１２０３、決定部１２０４、受信部１３０１、要求情報判定部１３０２、特定部１３０３、プロトコル記憶部１３０４、取得部１３０５、キャッシュ部１３０６を備えている。
【０１７６】
記憶部１２０１、通信部１２０２、判定部１２０３、決定部１２０４については、図１２を用いて、既に説明しているため、記憶部１２０１、通信部１２０２、判定部１２０３、決定部１２０４については、更に有している機能について追加で説明する。
【０１７７】
記憶部１２０１は、クライアント端末と情報処理装置との間で通信される通信データの中継が許可又は不許可されている通信プロトコルを構成する通信プロトコルとして、トランスポート層の通信プロトコルである下位通信プロトコルと、トランスポート層よりも上位の通信プロトコルである上位通信プロトコルとを記憶している。
【０１７８】
ここで、下位通信プロトコルは、暗号通信で用いられる通信プロトコルを含む。また、上位通信プロトコルは、アプリケーション層における通信プロトコルを含む。
【０１７９】
通信部１２０２は、記憶部に記憶された下位通信プロトコルに従ったデータの通信、及び記憶部に記憶された上位通信プロトコルに従ったデータの通信を情報処理装置と行う。
【０１８０】
判定部１２０３は、通信部により、情報処理装置との、記憶部に記憶された下位通信プロトコルに従ったデータの通信、及び記憶部に記憶された上位通信プロトコルに従ったデータの通信が成功したか否かを判定することにより、情報処理装置との、記憶部に記憶された通信プロトコルに従ったデータの通信が成功したか否かを判定する。
受信部１３０１は、クライアント端末から、情報処理装置からのデータ送信を要求する通信要求データを含む通信データを受信する。
【０１８１】
要求情報判定部１３０２は、受信部で受信した通信要求データが、トランスポート層における、クライアント端末と情報処理装置との間で通信される通信データの中継を要求するトランスポート通信要求情報であるか否かを判定する。
【０１８２】
通信部１２０２は、要求情報判定部で、受信部で受信した通信要求データが当該トランスポート通信要求情報であると判定された場合に、記憶部に記憶された通信プロトコルに従ったデータの通信を情報処理装置と行う。
【０１８３】
特定部１３０３は、要求情報判定部で、受信部で受信した通信要求データがトランスポート通信要求情報ではないと判定された場合、受信部で受信した通信要求データを解析することにより、クライアント端末と情報処理装置との間の通信で用いられる通信プロトコルを特定する。
【０１８４】
決定部１２０４は、特定部により特定された通信プロトコルと、記憶部に記憶されている、中継が許可又は不許可されている通信プロトコルとに従って、クライアント端末と情報処理装置との間で通信される通信データの中継を許可するか否かを決定する。
プロトコル記憶部１３０４は、通信プロトコルと、当該通信プロトコルを通信で用いる情報処理装置を識別する情報処理装置識別情報とを関連付けて記憶する。
【０１８５】
取得部１３０５は、受信部で受信した通信要求データを解析することにより、該通信要求データによりデータ送信が要求されている情報処理装置の情報処理装置識別情報を取得する。
【０１８６】
決定部１２０４は、更に、取得部で取得した情報処理装置識別情報に関連付けられてプロトコル記憶部に記憶された通信プロトコルと、記憶部に記憶されている、中継が許可又は不許可されている通信プロトコルとに従って、クライアント端末と情報処理装置との間で通信される通信データの中継を許可するか否かを決定する。
【０１８７】
キャッシュ部１３０６は、判定部により、通信部によるデータの通信が成功したと判定された通信プロトコルと、取得部により取得された情報処理装置識別情報とを関連付けてプロトコル記憶部に記憶する。
以下に、図１４を用いて、本発明に係る機能ブロックについて説明する。
図１４は、本発明に係る機能ブロックを示す図である。
中継処理装置１２０は、通信部１４０１、特定部１４０２、決定部１４０３を備えている。
通信部１４０１は、通信プロトコルに従ったデータの通信を情報処理装置（情報提供処理装置）と行う。
【０１８８】
特定部１４０２は、通信部による情報処理装置とのデータの通信が成功した通信プロトコルを、情報処理装置との通信で用いられる通信プロトコルとして特定する。
【０１８９】
決定部１４０３は、特定部で特定された通信プロトコルに従って、クライアント端末（利用者端末）と情報処理装置（情報提供処理装置）との間で通信される通信データを中継するか否かを決定する。
以下に、図１５を用いて、本発明に係る機能ブロックについて説明する。
図１５は、本発明に係る機能ブロックを示す図である。
【０１９０】
中継処理装置１２０は、通信部１４０１、特定部１４０２、決定部１４０３、受信部１５０１、要求情報判定部１５０２、記憶部１５０３、取得部１５０４、キャッシュ部１５０５を備えている。
【０１９１】
通信部１４０１、特定部１４０２、決定部１４０３については、図１４を用いて、既に説明しているため、通信部１４０１、特定部１４０２、決定部１４０３、については、更に有している機能について追加で説明する。
【０１９２】
特定部１４０２は、通信部による情報処理装置との、通信プロトコルに従ったデータの通信が成功しない場合、情報処理装置との通信で用いられる通信プロトコルを不明な通信プロトコルとして特定する。
【０１９３】
また、決定部は、特定部で特定された不明な通信プロトコルに従って、クライアント端末と情報処理装置との間で通信される通信データを中継するか否かを決定する。
【０１９４】
通信部１４０１は、トランスポート層の通信プロトコルである下位通信プロトコルに従ったデータの通信、及びトランスポート層よりも上位の通信プロトコルである上位通信プロトコルに従ったデータの通信を情報処理装置と行う。ここで、下位通信プロトコルは、暗号通信で用いられる通信プロトコルを含む。また、上位通信プロトコルは、アプリケーション層における通信プロトコルを含む。
【０１９５】
特定部１４０２は、通信部による情報処理装置とのデータの通信が成功した下位通信プロトコル、及び、通信部による情報処理装置とのデータの通信が成功した上位通信プロトコルから、情報処理装置との通信で用いられる通信プロトコルを特定する。
受信部１５０１は、クライアント端末から、情報処理装置からのデータ送信を要求する通信要求データを含む通信データを受信する。
【０１９６】
要求情報判定部１５０２は、受信部で受信した通信要求データが、トランスポート層における、クライアント端末と情報処理装置との間で通信される通信データの中継を要求するトランスポート通信要求情報であるか否かを判定する。
【０１９７】
通信部１４０１は、要求情報判定部で、受信部で受信した通信要求データがトランスポート通信要求情報であると判定された場合に、通信プロトコルに従ったデータの通信を情報処理装置と行う。
【０１９８】
特定部１４０２は、要求情報判定部で、受信部で受信した通信要求データがトランスポート通信要求情報ではないと判定された場合、受信部で受信した通信要求データを解析することにより、クライアント端末と情報処理装置との間の通信で用いられる通信プロトコルを特定する。
【０１９９】
決定部１４０３は、特定部により特定された通信プロトコルに従って、クライアント端末と情報処理装置との間で通信される通信データを中継するか否かを決定する。
記憶部１５０３は、通信プロトコルと、当該通信プロトコルを通信で用いる情報処理装置を識別する情報処理装置識別情報とを関連付けて記憶する。
【０２００】
取得部１５０４は、受信部で受信した通信要求データを解析することにより、該通信要求データによりデータ送信が要求されている情報処理装置の情報処理装置識別情報を取得する。
【０２０１】
決定部１４０３は、取得部で取得した情報処理装置識別情報に関連付けられて記憶部に記憶された通信プロトコルに従って、クライアント端末と情報処理装置との間で通信される通信データの中継を許可するか否かを決定する。
【０２０２】
キャッシュ部１５０５は、通信部によるデータの通信が成功した通信プロトコルと、取得部により取得された情報処理装置識別情報とを関連付けて記憶部に記憶する。
【０２０３】
以上、本発明の実施形態を詳述したが、本発明は、例えば、システム、装置、方法、装置で読み取り実行可能なプログラムもしくは記憶媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。  
【０２０４】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。  
【０２０５】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、プログラムコード自体及びそのプログラムコードを記憶した記憶媒体は本発明を構成することになる。  
【０２０６】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。  
【０２０７】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（基本システム或いはオペレーティングシステム）などが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。  
【０２０８】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【符号の説明】
【０２０９】
１１０  利用者端末
１１１  閲覧処理部
１２０  中継所処理装置
１２１  クライアント通信部
１２２  サーバ通信部
１２３  通信制御部
１２４  プロトコル検査部
１２５  管理表保存部
１２６  検査手続き定義部
１５０  情報提供処理装置
１５１  サーバ処理部
１６１  クライアント回線
１６２  サーバ回線
１６３  テスト回線
３０１  検査処理制御部
３０２  ＳＳＬ検査処理部
３０３  ＨＴＴＰ検査処理部
３０４  ＳＭＴＰ検査処理部
３０５  ＳＳＨ検査処理部
３０６  ＳｏｆｔＥｔｈｅｒ検査処理部
３０７  ＸＸＸ検査処理部
【図１】
0005294098.tif 000002
【図２】
0005294098.tif 000003
【図３】
0005294098.tif 000004
【図４】
0005294098.tif 000005
【図５】
0005294098.tif 000006
【図６】
0005294098.tif 000007
【図７】
0005294098.tif 000008
【図８】
0005294098.tif 000009
【図９】
0005294098.tif 000010
【図１０】
0005294098.tif 000011
【図１１】
0005294098.tif 000012
【図１２】
0005294098.tif 000013
【図１３】
0005294098.tif 000014
【図１４】
0005294098.tif 000015
【図１５】
0005294098.tif 000016