(57)【要約】【課題】ＨＴＴＰＳ通信を利用する場合であっても当該ユーザを特定してＷｅｂ閲覧履歴を取得できるようにする。【解決手段】ユーザ端末のＷｅｂブラウザから閲覧されたＷｅｂページの閲覧履歴を取得するＷｅｂ閲覧履歴取得装置であって、ＨＴＴＰＳ通信要求の受信に応じて、該ＨＴＴＰＳ通信要求をなしたユーザを特定するとともにＳＳＬ通信用トンネルを作成し、前記特定されたユーザと前記ＳＳＬ通信用トンネルのポート番号との対応を表す対応表を作成するＳＳＬハンドリング部と、ＨＴＴＰＳ通信に用いられたポート番号で前記対応表を検索することによりユーザを特定し、該特定されたユーザを示すＷｅｂページの閲覧履歴を保存する履歴保存部と、を具備する。【選択図】図１
2014229182.tif 000002
【特許請求の範囲】
【請求項１】
ユーザ端末のＷｅｂブラウザから閲覧されたＷｅｂページの閲覧履歴を取得するＷｅｂ閲覧履歴取得装置であって、
ＨＴＴＰＳ通信要求の受信に応じて、該ＨＴＴＰＳ通信要求をなしたユーザを特定するとともにＳＳＬ通信用トンネルを作成し、前記特定されたユーザと前記ＳＳＬ通信用トンネルのポート番号との対応を表す対応表を作成するＳＳＬハンドリング部と、
ＨＴＴＰＳ通信に用いられたポート番号で前記対応表を検索することによりユーザを特定し、該特定されたユーザを示すＷｅｂページの閲覧履歴を保存する履歴保存部と、
を具備することを特徴とするＷｅｂ閲覧履歴取得装置。
【請求項２】
前記ＨＴＴＰＳ通信要求が、ＨＴＴＰ通信によるＣＯＮＮＥＣＴメソッドであることを特徴とする請求項１記載のＷｅｂ閲覧履歴取得装置。
【請求項３】
前記履歴保存部は、前記ＨＴＴＰＳ通信の内容を復号化することにより前記Ｗｅｂページの閲覧履歴を取得したのち、前記ＨＴＴＰＳ通信の内容を暗号化して前記ユーザ端末に送信することを特徴とする請求項１記載のＷｅｂ閲覧履歴取得装置。
【請求項４】
ユーザ端末のＷｅｂブラウザから閲覧されたＷｅｂページの閲覧履歴を取得するＷｅｂ閲覧履歴取得方法であって、
ＨＴＴＰＳ通信要求の受信に応じて、該ＨＴＴＰＳ通信要求をなしたユーザを特定するとともにＳＳＬ通信用トンネルを作成し、前記特定されたユーザと前記ＳＳＬ通信用トンネルのポート番号との対応を表す対応表を作成するステップと、
ＨＴＴＰＳ通信に用いられたポート番号で前記対応表を検索することによりユーザを特定し、該特定されたユーザを示すＷｅｂページの閲覧履歴を保存するステップと、
を具備することを特徴とするＷｅｂ閲覧履歴取得方法。
【請求項５】
ユーザ端末のＷｅｂブラウザから閲覧されたＷｅｂページの閲覧履歴を取得するＷｅｂ閲覧履歴取得装置として機能させるためのプログラムであって、
コンピュータを、
ＨＴＴＰＳ通信要求の受信に応じて、該ＨＴＴＰＳ通信要求をなしたユーザを特定するとともにＳＳＬ通信用トンネルを作成し、前記特定されたユーザと前記ＳＳＬ通信用トンネルのポート番号との対応を表す対応表を作成するＳＳＬハンドリング部、
ＨＴＴＰＳ通信に用いられたポート番号で前記対応表を検索することによりユーザを特定し、該特定されたユーザを示すＷｅｂページの閲覧履歴を保存する履歴保存部、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プロキシサーバにおいてＷｅｂ閲覧履歴および／またはＷｅｂリソースを取得する技術に関する。
【背景技術】
【０００２】
ユーザがプロキシサーバ経由でＷｅｂページを閲覧する場合に、プロキシサーバにおいてＷｅｂ閲覧履歴を取得することが行われている（例えば特許文献１参照。）。
また、ＨＴＴＰＳ（Hypertext Transfer Protocol over Secure Socket Layer）通信をプロキシで復号化してユーザの閲覧内容を取得するシステム（例えば、非特許文献１を参照。）も提案されており、情報漏えいを防止するシステムとして使用されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−４８５０５号公報
【非特許文献】
【０００４】
【非特許文献１】マクニカネットワークス、"Blue Coat Systems"、［online］、［平成２５年４月３日検索］、インターネット＜ＵＲＬ：http://www.macnica.net/bluecoat/proxy.html/#01e＞
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ユーザがＨＴＴＰＳのＷｅｂページにアクセスし、ＨＴＴＰＳ通信が行われる場合には、通信路が暗号化される。したがって、通信を行っているユーザを特定することもレスポンスのヘッダ部、ボディ部を取得することもできない。
上記特許文献１の技術ではＷｅｂ閲覧履歴の取得に関してＨＴＴＰ通信のみが考慮されており、ＨＴＴＰＳ通信が行われる場合にはユーザを特定してＷｅｂ閲覧履歴を取得することはできない。
【０００６】
他方、非特許文献１には、暗号化された通信内容をプロキシサーバにおいていったん復号化し、ボディ部に含まれるキーワードのチェック等の情報漏洩防止対策を行い、再度、暗号化して送信するということが記載されている。この場合、通信内容の復号化によりＵＲＬ、Ｗｅｂリソースを取得することは可能である。しかしながら、ＨＴＴＰＳ通信のヘッダ情報には認証情報が含まれないことから、どのユーザの通信であるかを特定することはできない。したがって、非特許文献１の技術においても、ＨＴＴＰＳ通信が行われる場合にユーザを特定してＷｅｂ閲覧履歴を取得することはできない。
【０００７】
この発明は上記事情に着目してなされたもので、その目的とするところは、ＨＴＴＰＳ通信を利用してユーザがＷｅｂページを閲覧する場合であっても当該ユーザを特定してＷｅｂ閲覧履歴を取得することができるＷｅｂ閲覧履歴取得装置、方法、およびプログラムを提供することにある。
【課題を解決するための手段】
【０００８】
上記目的を達成するためにこの発明の一観点は、以下のような構成要素を備えている。すなわち、ユーザ端末のＷｅｂブラウザから閲覧されたＷｅｂページの閲覧履歴を取得するＷｅｂ閲覧履歴取得装置は、ＨＴＴＰＳ通信要求の受信に応じて、該ＨＴＴＰＳ通信要求をなしたユーザを特定するとともにＳＳＬ通信用トンネルを作成し、前記特定されたユーザと前記ＳＳＬ通信用トンネルのポート番号との対応を表す対応表を作成するＳＳＬハンドリング部と、ＨＴＴＰＳ通信に用いられたポート番号で前記対応表を検索することによりユーザを特定し、該特定されたユーザを示すＷｅｂページの閲覧履歴を保存する履歴保存部と、を具備することを特徴とする。
【発明の効果】
【０００９】
すなわちこの発明によれば、ＨＴＴＰＳ通信を利用してユーザがＷｅｂページを閲覧する場合であっても当該ユーザを特定してＷｅｂ閲覧履歴を取得することができるＷｅｂ閲覧履歴取得装置、方法、およびプログラムを提供することができる。
【図面の簡単な説明】
【００１０】
【図１】実施形態に係るＷｅｂシステムを示す図
【図２】Ｗｅｂ閲覧履歴等を取得する基本的概念を説明するための図
【図３】Ｗｅｂ閲覧履歴テーブルの一例を示す図
【図４】ＨＴＴＰ通信からＨＴＴＰＳ通信へ切り替わる際のプロキシサーバの動作を示すフローチャート
【図５】ユーザとポート番号の対応表の例を示す図
【図６】ユーザとポート番号の対応表が作成された後のＨＴＴＰＳ通信の動作を示すフローチャート
【発明を実施するための形態】
【００１１】
以下、図面を参照して本発明の実施形態を説明する。  
図１は、実施形態に係るＷｅｂシステムを示す図である。本システムでは、ユーザ端末１０と、プロキシサーバ２０と、Ｗｅｂサーバ３０とがネットワークを介して接続されている。ユーザはプロキシサーバ２０を経由して例えばインターネットに接続し、Ｗｅｂページを閲覧する。
【００１２】
具体的には、ユーザ端末１０のＷｅｂブラウザ１１からのＷｅｂページ要求をプロキシサーバ２０が処理してこれをＷｅｂサーバ３０に送信する。プロキシサーバ２０は、Ｗｅｂページ要求に対するレスポンス（応答）をＷｅｂサーバ３０から受信し、ユーザ端末１０のＷｅｂブラウザ１１に送信する。また、プロキシサーバ２０は、ユーザ端末１０のＷｅｂブラウザ１１がＷｅｂサーバ３０等にアクセスする際のユーザ認証を行う認証サーバとしても機能する。
【００１３】
なお、図１では、説明の便宜上、ユーザ端末１０、プロキシサーバ２０、Ｗｅｂサーバ３０がそれぞれ一台のみ示されているが、これらの台数に制限はない。
図１に示すように、プロキシサーバ２０は、Ｗｅｂプロキシの主たる動作を行うための機能要素として、プロキシ制御部２１、ユーザ認証部２２、ＳＳＬハンドリング部２３、履歴保存部２５を備える。
【００１４】
プロキシ制御部２１は、プロキシサーバ２０がプロキシとして動作するために、ユーザ端末１０のＷｅｂブラウザ１１との通信、およびＷｅｂサーバ３０との通信を制御する。
ユーザ認証部２２は、プロキシ制御部２１からの要求に応じてユーザ端末１０のユーザ認証を行う。ユーザ認証には例えばユーザＩＤとパスワードの入力を必要とする。認証に成功しなかったユーザはＷｅｂサーバ３０へのアクセスを行うことはできない。
【００１５】
ＳＳＬ（Secure Sockets Layer）ハンドリング部２３は、ユーザ端末１０のＷｅｂブラウザ１１がＨＴＴＰ通信を要求したときに、ＳＳＬ通信用のトンネルを作成し、そのポート番号とユーザとの対応を、ユーザとポート番号の対応表２４に記録する。
【００１６】
履歴保存部２５は、プロキシ制御部２１を経由したＷｅｂ閲覧が行われた際に、そのＷｅｂ閲覧の記録をＷｅｂ閲覧履歴テーブル２６に書き込む。また、履歴保存部２５は、閲覧されたＷｅｂページ中に含まれるＨＴＭＬ、画像等のＷｅｂリソース２７を保存する。
【００１７】
特に本実施形態の履歴保存部２５は、ＨＴＴＰＳ通信が行われたときには、ユーザとポート番号の対応表２４を参照し、ポート番号からユーザを特定し、その特定されたユーザを含むＷｅｂ閲覧履歴テーブル２６を保存し、個々の閲覧に関するＷｅｂリソース２７を保存する。
【００１８】
図２は、本実施形態においてＷｅｂ閲覧履歴等を取得する基本的概念を説明するための図である。ＨＴＴＰＳ通信を利用してユーザがＷｅｂページを閲覧する場合であっても当該ユーザを特定してＷｅｂ閲覧履歴等を取得できるようにするため、本実施形態ではＨＴＴＰ通信からＨＴＴＰＳ通信へ切り替わる時点に着目する。
【００１９】
ＨＴＴＰ通信からＨＴＴＰＳ通信へ切り替わるときには、ユーザ端末１０からはＣＯＮＮＥＣＴメソッド（ＨＴＴＰＳ通信要求）が発行される。この時点ではＨＴＴＰ通信が行われるため、ＨＴＴＰヘッダから認証情報を取得することができ、どのユーザからの通信であるかを特定することができる。
【００２０】
次に、ユーザ端末１０がプロキシサーバ２０からの証明書１をインポートし、プロキシサーバ２０とユーザ端末１０の間にＳＳＬ（Secure Sockets Layer（セキュアソケットレイヤー））通信トンネルＴ１が作成される。また、プロキシサーバ２０がＷｅｂサーバ３０からの証明書２をインポートし、プロキシサーバ２０とＷｅｂサーバ３０の間にＳＳＬ通信トンネルＴ２が作成される。通信トンネルＴ１を作成する際に、そのポート番号を取得することにより、ユーザとポート番号の対応表２４を作成することができる。以後、ＨＴＴＰＳ通信が行われるときに、プロキシサーバ２０は、当該ＨＴＴＰＳ通信が行われているポート番号で対応表２４を検索することにより、当該ＨＴＴＰＳ通信を行っているユーザを特定することができる。
【００２１】
さらに、ＨＴＴＰＳ通信はユーザ端末−プロキシサーバ間（トンネルＴ１）、プロキシサーバ−Ｗｅｂサーバ間（トンネルＴ２）に分けて行われることから、プロキシサーバ２０においてその内容を復号化することができる。したがって、ＨＴＴＰ通信の時と同様に、Ｗｅｂ閲覧履歴およびＷｅｂリソースを取得し、保存することができる。
【００２２】
次に、本実施形態に係るプロキシサーバ２０においてＷｅｂ閲覧履歴等を取得する一連の動作を説明する。
最初にユーザ端末１０から通信要求が行われると、ユーザ認証部２２がユーザＩＤ、パスワードの入力を要求し、当該ユーザの認証処理を行う。その後、ユーザがＷｅｂページを閲覧し、ユーザ端末１０とＷｅｂサーバ３０の間でＨＴＴＰ通信が行われる。
【００２３】
履歴保存部２５は、ＨＴＴＰ通信のメッセージとしてＷｅｂサーバ３０からのレスポンスを受信すると、そのＨＴＴＰヘッダに含まれる認証情報に基づいて、通信を行っているユーザを特定する。また履歴保存部２５は、ＨＴＴＰヘッダからＵＲＬ、日時等の情報を取得し、Ｗｅｂ閲覧履歴テーブル２６に記録する。
【００２４】
また履歴保存部２５は、レスポンスのボディ部を取得することにより、ＷｅｂページのＨＴＭＬソースやＨＴＭＬ中に含まれる画像ファイル等のＷｅｂリソース２７を取得する。
Ｗｅｂ閲覧履歴テーブル２６の一例を図３に示す。例えば、Ｗｅｂ閲覧履歴テーブル２６に記録される各履歴の項目はＩＤ、ユーザ名、時刻、ファイルパスである。ＷｅｂページのＨＴＭＬソースやＨＴＭＬ中に含まれる画像ファイル等のＷｅｂリソース２７は、プロキシサーバ２０においてファイルとして保存される。Ｗｅｂ閲覧履歴テーブル２６には、この保存されたファイルのファイルパスが記録される。Ｗｅｂ閲覧履歴テーブル２６に記載されたファイルパスを辿れば、Ｗｅｂリソース（ＷｅｂページのＨＴＭＬソース、その中に含まれる画像等）２７を参照することができる。
【００２５】
図４は、上述したＨＴＴＰ通信からＨＴＴＰＳ通信へ切り替わる際のプロキシサーバ２０の動作を示すフローチャートである。
ＨＴＴＰＳ通信が行われる時には、まずユーザ端末１０のＷｅｂブラウザ１１からＨＴＴＰ通信によりＣＯＮＮＥＣＴメソッドが発行される。プロキシ制御部２１がこれを受信すると（ステップＳ１＝ＹＥＳ）、ＳＳＬハンドリング部２３はヘッダ部から認証情報を取得し、ユーザを特定する（ステップＳ２）。次に、ＨＴＴＰＳ通信のために、ユーザ端末１０とプロキシサーバ２０の間にＳＳＬ通信用のトンネルＴ１を作成し、プロキシサーバ２０とＷｅｂサーバ３０の間にＳＳＬ通信用のトンネルＴ２を作成し（ステップＳ３）、ポート番号を取得する（ステップＳ４）。またＳＳＬハンドリング部２３は、ユーザＩＤとポート番号との対応を、ユーザとポート番号の対応表２４に記録する（ステップＳ５）。
【００２６】
図５に、ユーザとポート番号の対応表２４の例を示す。ポート番号は、他の通信と重複しないように、標準的に使われるポート番号以外の番号が使用される。ＳＳＬ通信においては、プロキシサーバ２０とユーザ端末１０との間ではプロキシサーバ２０からの証明書１が使用され、プロキシサーバとＷｅｂサーバ３０の間ではＷｅｂサーバ３０からの証明書２が使用される。
【００２７】
図６は、上記のようにユーザとポート番号の対応表２４が作成された後のＨＴＴＰＳ通信の動作を示すフローチャートである。
ＨＴＴＰＳ通信が開始されると、履歴保存部２５はポート番号を取得し、そのポート番号で対応表２４を検索することにより、通信を行っているユーザを特定する（ステップＳ１０）。
【００２８】
本実施形態において、暗号化されたＨＴＴＰＳ通信はユーザ端末１０とプロキシサーバ２０の間のトンネルＴ１、プロキシサーバ２０とＷｅｂサーバ３０の間のトンネルＴ２に区切られて行われる。トンネルＴ１とトンネルＴ２の接続点に位置するプロキシサーバ２０は、通信内容をいったん復号化する（ステップＳ１１）。
【００２９】
このためＨＴＴＰＳ通信が行われた時にも履歴保存部２５は、認証情報を除くヘッダ部の情報、ボディ部の情報を、ＨＴＴＰ通信が行われた時と同様に取得することができ、Ｗｅｂ閲覧履歴テーブル２６やＷｅｂリソース２７を取得し、保存することができる（ステップＳ１２）。Ｗｅｂ閲覧履歴テーブル２６には、ステップＳ１０において特定したユーザ（ユーザ名）を含めることができる。
【００３０】
そして、Ｗｅｂ閲覧履歴テーブル２６やＷｅｂリソース２７を取得したのち、ＨＴＴＰＳ通信の内容を再び暗号化して通信を行う（ステップＳ１３）。
本実施形態によれば、ＨＴＴＰＳ通信が行われた際のポート番号で対応表２４を検索することによりＨＴＴＰＳ通信を行ったユーザを特定することができ、個々のユーザが特定されたＷｅｂ閲覧履歴２６（および具体的なＷｅｂリソース２７）を取得することができる。すなわち、ＨＴＴＰ通信が行われた際と同様のＷｅｂ閲覧履歴２６をＨＴＴＰＳ通信が行われた際にも取得することができる。
【００３１】
なお、ＨＴＴＰＳ通信の際には、ユーザ端末１０とプロキシサーバ２０の間、ならびにプロキシサーバ２０とＷｅｂサーバ３０の間の通信路の暗号化は維持されることから、ユーザ端末１０とＷｅｂサーバ３０の間でＨＴＴＰ通信が行われる場合と比較して、セキュリティを保つことができる。
【００３２】
なお本実施形態に係る装置は、コンピュータプログラムによって実現することができる。この場合、コンピュータを、プロキシ制御部２１、ユーザ認証部２２、ＳＳＬハンドリング部２３、履歴保存部２５として機能させ、Ｗｅｂ閲覧履歴テーブル２６およびＷｅｂリソース２７を記憶する記憶手段として機能させるためのプログラムが、コンピュータ読み取り可能な記録媒体からメモリ等の記憶手段に読み出され、ＣＰＵにより実行される。
【００３３】
また本実施形態に係る装置は、一台のコンピュータではなく、複数のコンピュータシステムから構成されるものとして実現してもよい。
この発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【符号の説明】
【００３４】
１０…ユーザ端末、２０…プロキシサーバ（認証サーバ）、２１…プロキシ制御部、２２…ユーザ認証部、２３…ＳＳＬハンドリング部、２４…ユーザとポート番号の対応表、２５…履歴保存部、２６…Ｗｅｂ閲覧履歴テーブル、２７…Ｗｅｂリソース
【図１】
2014229182.tif 000003
【図２】
2014229182.tif 000004
【図３】
2014229182.tif 000005
【図４】
2014229182.tif 000006
【図５】
2014229182.tif 000007
【図６】
2014229182.tif 000008