(57)【要約】【課題】サービスにログインしたユーザが或るサービス提供装置と進めたセッションを、後にユーザがログインし直したときに同じサービス提供装置と再度進める。【解決手段】応答送信部は、受信部が受信したリクエスト中にユーザの識別情報がある場合、それに基づき認証されたユーザ固有の固有情報つきのレスポンスをセッション管理サーバ４に送信する。転送部は、固有情報付きのレスポンスを受信した場合、そのレスポンスを、その送信元のサービス提供サーバ６の識別ＩＤを付けてクライアント装置に転送する。リクエスト送信部は原則、リクエスト受信部が受信したリクエストをリクエスト中の識別ＩＤに対応するサービス提供サーバに送信するが、セッション管理ＤＢに記憶済の固有情報と同一の固有情報付きのリクエストを受信した場合は、その固有情報に関連づけられた識別ＩＤに対応するサービス提供サーバに送信する。【選択図】図１０
2015115039.tif 000002
【特許請求の範囲】
【請求項１】
セッション管理装置と、同種のサービスを提供する複数のサービス提供装置と、を含み、
前記セッション管理装置は、
クライアント装置から送信されたリクエストデータを受信するリクエスト受信手段と、
リクエスト受信手段により受信されたリクエストデータを、該リクエストデータ中のセッション情報により特定されるサービス提供装置に送信するリクエスト送信手段と、
前記リクエスト送信手段によるリクエストデータの送信後、該リクエストデータの送信先のサービス提供装置から返信される応答データを受信し、受信した応答データを、該送信先のサービス提供装置を特定するセッション情報とともに、該リクエストデータの送信元のクライアント装置に転送する転送手段と、
を含み、
前記サービス提供装置は、
前記セッション管理装置から送信されたリクエストデータを受信する受信手段と、
前記受信手段により受信されたリクエストデータにユーザを識別するユーザ識別情報が含まれる場合に、該ユーザ識別情報に基づいて、該ユーザ識別情報により識別されるユーザを認証する認証手段と、
前記受信手段により受信されたリクエストデータに応じた応答データを前記セッション管理装置に送信する応答送信手段と、
を含むセッション管理システムであって、
前記応答送信手段は、
前記受信手段により受信されたリクエストデータにユーザを識別するユーザ識別情報が含まれる場合、該リクエストデータに応じた応答データを、該ユーザ識別情報に基づき前記認証手段により認証されたユーザに固有のユーザ情報とともに、前記セッション管理装置に送信し、
前記セッション管理装置に、
ユーザ情報をセッション情報に関連づけて記憶するための記憶手段がさらに備えられ、
前記転送手段は、
前記リクエスト送信手段によるリクエストデータの送信後、該リクエストデータの送信先のサービス提供装置から応答データとともにユーザ情報を受信した場合、受信した応答データを、該送信先のサービス提供装置を特定するセッション情報と該受信したユーザ情報とともに、該リクエストデータの送信元のクライアント装置に転送し、
前記リクエスト送信手段は、
前記リクエスト受信手段により受信されたリクエストデータにユーザ情報が含まれるとき、該リクエストデータに含まれるユーザ情報と同一のユーザ情報が前記記憶手段に記憶されていない場合は、該リクエストデータに含まれるユーザ情報とセッション情報とを関連づけて前記記憶手段に記憶するとともに、該リクエストデータを、該リクエストデータに含まれるセッション情報により特定されるサービス提供装置に送信し、前記リクエスト受信手段により受信されたリクエストデータにユーザ情報が含まれる場合であって、該リクエストデータに含まれるユーザ情報と同一のユーザ情報が前記記憶手段に記憶されている場合は、該リクエストデータを、該ユーザ情報に関連づけて前記記憶手段に記憶されるセッション情報により特定されるサービス提供装置に送信すること、
を特徴とするセッション管理システム。
【請求項２】
前記セッション管理装置は、
前記リクエスト送信手段によるリクエストデータの送信後、該リクエストデータの送信先のサービス提供装置から前記転送手段が前記記憶手段に記憶されていないユーザ情報を応答データとともに受信したとき、該転送手段が受信したユーザ情報を、該送信先のサービス提供装置を特定するセッション情報に関連づけて前記記憶手段に記憶する手段をさらに含むこと、
を特徴とする請求項１に記載のセッション管理システム。
【請求項３】
クライアント装置から送信されたリクエストデータを受信するリクエスト受信手段と、
リクエスト受信手段により受信されたリクエストデータを、同種のサービスを提供する複数のサービス提供装置のうち、該リクエストデータ中のセッション情報により特定されるサービス提供装置に送信するリクエスト送信手段と、
前記リクエスト送信手段によるリクエストデータの送信後、該リクエストデータの送信先のサービス提供装置から返信される応答データを受信し、受信した応答データを、該送信先のサービス提供装置を特定するセッション情報とともに、該リクエストデータの送信元のクライアント装置に転送する転送手段と、
情報を記憶するための記憶手段と、
を含み、
前記転送手段は、
前記リクエスト送信手段によるリクエストデータの送信後、該リクエストデータの送信先のサービス提供装置から応答データとともに、該送信先のサービス提供装置により認証されたユーザに固有のユーザ情報を受信した場合、受信した応答データを、該送信先のサービス提供装置を特定するセッション情報と該受信したユーザ情報とともに、該リクエストデータの送信元のクライアント装置に転送し、
前記リクエスト送信手段は、
前記リクエスト受信手段により受信されたリクエストデータにユーザ情報が含まれる場合であって、該リクエストデータに含まれるユーザ情報と同一のユーザ情報が前記記憶手段に記憶されている場合は、該リクエストデータを、該ユーザ情報に関連づけて前記記憶手段に記憶されるセッション情報により特定されるサービス提供装置に送信すること、
を特徴とするセッション管理装置。
【請求項４】
情報を記憶する記憶手段を備えたコンピュータを、
クライアント装置から送信されたリクエストデータを受信するリクエスト受信手段、
リクエスト受信手段により受信されたリクエストデータを、同種のサービスを提供する複数のサービス提供装置のうち、該リクエストデータ中のセッション情報により特定されるサービス提供装置に送信するリクエスト送信手段、
前記リクエスト送信手段によるリクエストデータの送信後、該リクエストデータの送信先のサービス提供装置から返信される応答データを受信し、受信した応答データを、該送信先のサービス提供装置を特定するセッション情報とともに、該リクエストデータの送信元のクライアント装置に転送する転送手段、
として機能させるためのプログラムであって、
前記転送手段は、
前記リクエスト送信手段によるリクエストデータの送信後、該リクエストデータの送信先のサービス提供装置から応答データとともに、該送信先のサービス提供装置において認証されたユーザに固有のユーザ情報を受信した場合、受信した応答データを、該送信先のサービス提供装置を特定するセッション情報と該受信したユーザ情報とともに、該リクエストデータの送信元のクライアント装置に転送し、
前記リクエスト送信手段は、
前記リクエスト受信手段により受信されたリクエストデータにユーザ情報が含まれるとき、該リクエストデータに含まれるユーザ情報と同一のユーザ情報が前記記憶手段に記憶されていない場合は、該リクエストデータに含まれるユーザ情報とセッション情報とを関連づけて前記記憶手段に記憶するとともに、該リクエストデータを、該リクエストデータに含まれるセッション情報により特定されるサービス提供装置に送信し、該リクエストデータに含まれるユーザ情報と同一のユーザ情報が前記記憶手段に記憶されている場合は、該リクエストデータを、該ユーザ情報に関連づけて前記記憶手段に記憶されるセッション情報により特定されるサービス提供装置に送信する、
前記プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、セッション管理システム、セッション管理装置、及びプログラムに関する。
【背景技術】
【０００２】
下記特許文献１には、最初に選択したサーバの情報をクッキーとしてクライアントに提供することにより、クライアントからのリクエストを常に同じサーバに転送するロードバランス装置が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】米国特許６４７３８０２号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の目的は、サービスにログインしたユーザが複数のサービス提供装置のうちの一のサービス提供装置との間で進めたセッションを、後にユーザがサービスにログインし直したときに、選択したサービス提供装置と再度セッションを進めることができるようにすることである。
【課題を解決するための手段】
【０００５】
上記課題を解決するための請求項１に記載の発明は、セッション管理装置と、同種のサービスを提供する複数のサービス提供装置と、を含み、前記セッション管理装置は、クライアント装置から送信されたリクエストデータを受信するリクエスト受信手段と、リクエスト受信手段により受信されたリクエストデータを、該リクエストデータ中のセッション情報により特定されるサービス提供装置に送信するリクエスト送信手段と、前記リクエスト送信手段によるリクエストデータの送信後、該リクエストデータの送信先のサービス提供装置から返信される応答データを受信し、受信した応答データを、該送信先のサービス提供装置を特定するセッション情報とともに、該リクエストデータの送信元のクライアント装置に転送する転送手段と、を含み、前記サービス提供装置は、前記セッション管理装置から送信されたリクエストデータを受信する受信手段と、前記受信手段により受信されたリクエストデータにユーザを識別するユーザ識別情報が含まれる場合に、該ユーザ識別情報に基づいて、該ユーザ識別情報により識別されるユーザを認証する認証手段と、前記受信手段により受信されたリクエストデータに応じた応答データを前記セッション管理装置に送信する応答送信手段と、を含むセッション管理システムであって、前記応答送信手段は、前記受信手段により受信されたリクエストデータにユーザを識別するユーザ識別情報が含まれる場合、該リクエストデータに応じた応答データを、該ユーザ識別情報に基づき前記認証手段により認証されたユーザに固有のユーザ情報とともに、前記セッション管理装置に送信し、前記セッション管理装置に、ユーザ情報をセッション情報に関連づけて記憶するための記憶手段がさらに備えられ、前記転送手段は、前記リクエスト送信手段によるリクエストデータの送信後、該リクエストデータの送信先のサービス提供装置から応答データとともにユーザ情報を受信した場合、受信した応答データを、該送信先のサービス提供装置を特定するセッション情報と該受信したユーザ情報とともに、該リクエストデータの送信元のクライアント装置に転送し、前記リクエスト送信手段は、前記リクエスト受信手段により受信されたリクエストデータにユーザ情報が含まれるとき、該リクエストデータに含まれるユーザ情報と同一のユーザ情報が前記記憶手段に記憶されていない場合は、該リクエストデータに含まれるユーザ情報とセッション情報とを関連づけて前記記憶手段に記憶するとともに、該リクエストデータを、該リクエストデータに含まれるセッション情報により特定されるサービス提供装置に送信し、前記リクエスト受信手段により受信されるリクエストデータにユーザ情報が含まれる場合であって、該リクエストデータに含まれるユーザ情報と同一のユーザ情報が前記記憶手段に記憶されている場合は、該リクエストデータを、該ユーザ情報に関連づけて前記記憶手段に記憶されるセッション情報により特定されるサービス提供装置に送信すること、を特徴とする。
【０００６】
また、請求項２に記載の発明は、請求項１に記載のセッション管理システムにおいて、前記セッション管理装置が、前記リクエスト送信手段によるリクエストデータの送信後、該リクエストデータの送信先のサービス提供装置から前記転送手段が前記記憶手段に記憶されていないユーザ情報を応答データとともに受信したとき、該転送手段が受信したユーザ情報を、該送信先のサービス提供装置を特定するセッション情報に関連づけて前記記憶手段に記憶する手段をさらに含むことを特徴としている。
【０００７】
上記課題を解決するための請求項３に記載の発明は、クライアント装置から送信されたリクエストデータを受信するリクエスト受信手段と、リクエスト受信手段により受信されたリクエストデータを、同種のサービスを提供する複数のサービス提供装置のうち、該リクエストデータ中のセッション情報により特定されるサービス提供装置に送信するリクエスト送信手段と、前記リクエスト送信手段によるリクエストデータの送信後、該リクエストデータの送信先のサービス提供装置から返信される応答データを受信し、受信した応答データを、該送信先のサービス提供装置を特定するセッション情報とともに、該リクエストデータの送信元のクライアント装置に転送する転送手段と、情報を記憶するための記憶手段と、を含み、前記転送手段は、前記リクエスト送信手段によるリクエストデータの送信後、該リクエストデータの送信先のサービス提供装置から応答データとともに、該送信先のサービス提供装置にて認証されたユーザに固有のユーザ情報を受信した場合、受信した応答データを、該送信先のサービス提供装置を特定するセッション情報と該受信したユーザ情報とともに、該リクエストデータの送信元のクライアント装置に転送し、前記リクエスト送信手段は、前記リクエスト受信手段により受信されたリクエストデータにユーザ情報が含まれる場合であって、該リクエストデータに含まれるユーザ情報と同一のユーザ情報が前記記憶手段に記憶されている場合は、該リクエストデータを、該ユーザ情報に関連づけて前記記憶手段に記憶されるセッション情報により特定されるサービス提供装置に送信すること、を特徴とするセッション管理装置である。
【０００８】
上記課題を解決するための請求項４に記載の発明は、情報を記憶する記憶手段を備えたコンピュータを、クライアント装置から送信されたリクエストデータを受信するリクエスト受信手段、リクエスト受信手段により受信されたリクエストデータを、同種のサービスを提供する複数のサービス提供装置のうち、該リクエストデータ中のセッション情報により特定されるサービス提供装置に送信するリクエスト送信手段、前記リクエスト送信手段によるリクエストデータの送信後、該リクエストデータの送信先のサービス提供装置から返信される応答データを受信し、受信した応答データを、該送信先のサービス提供装置を特定するセッション情報とともに、該リクエストデータの送信元のクライアント装置に転送する転送手段、として機能させるためのプログラムであって、前記転送手段は、前記リクエスト送信手段によるリクエストデータの送信後、該リクエストデータの送信先のサービス提供装置から応答データとともに、該送信先のサービス提供装置にて認証されたユーザに固有のユーザ情報を受信した場合、受信した応答データを、該送信先のサービス提供装置を特定するセッション情報と該受信したユーザ情報とともに、該リクエストデータの送信元のクライアント装置に転送し、前記リクエスト送信手段は、前記リクエスト受信手段により受信されたリクエストデータにユーザ情報が含まれるとき、該リクエストデータに含まれるユーザ情報と同一のユーザ情報が前記記憶手段に記憶されていない場合は、該リクエストデータに含まれるユーザ情報とセッション情報とを関連づけて前記記憶手段に記憶するとともに、該リクエストデータを、該リクエストデータに含まれるセッション情報により特定されるサービス提供装置に送信し、該リクエストデータに含まれるユーザ情報と同一のユーザ情報が前記記憶手段に記憶されている場合は、該リクエストデータを、該ユーザ情報に関連づけて前記記憶手段に記憶されるセッション情報により特定されるサービス提供装置に送信するプログラムである。
【発明の効果】
【０００９】
請求項１、３、４に記載の発明によれば、サービスにログインしたユーザが複数のサービス提供装置のうちの一のサービス提供装置との間で進めたセッションを、後にユーザがサービスにログインし直したときに、選択したサービス提供装置と再度セッションを進められるようにすることができる。
【００１０】
また、請求項２に記載の発明によれば、サービスにログインしたユーザが複数のサービス提供装置のうちの一のサービス提供装置との間で進めたセッションを、後にユーザがサービスにログインし直したときに、選択したサービス提供装置と再度セッションを進められるようにすることを、より確実に実現できる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施形態に係るセッション管理システムの構成を示す図である。
【図２】セッション管理システムにて実行される処理を示すシーケンス図である。
【図３】セッション管理サーバにて実行される転送処理を示す図である。
【図４Ａ】ログイン画面を示す図である。
【図４Ｂ】設定画面を示す図である。
【図４Ｃ】案内画面を示す図である。
【図４Ｄ】指示待ち画面を示す図である。
【図５】セッション管理システムにて実行される処理を示すシーケンス図である。
【図６】サービス提供サーバにて実行される認証処理を示す図である。
【図７】サービス提供サーバにて実行される返信処理を示す図である。
【図８】セッション管理システムにて実行される処理を示すシーケンス図である。
【図９】セッション管理システムにて実行される処理を示すシーケンス図である。
【図１０】セッション管理システムにて実現される機能群を示す機能ブロック図である。
【発明を実施するための形態】
【００１２】
以下、本発明の実施形態の例について図面に基づき詳細に説明する。
【００１３】
図１は、本発明の実施形態に係るセッション管理システム１の構成を示す図である。同図に示すように、セッション管理システム１は、複数のクライアント装置２と、セッション管理サーバ４と、情報処理サービスを提供するための複数のサービス提供サーバ６と、を含む。これら各々の装置は、ネットワークに接続されている。
【００１４】
クライアント装置２には、ブラウザアプリケーションがインストールされており、ユーザは、ブラウザアプリケーションを介して、情報処理サービスにログインし、情報処理サービスを利用するためのＨＴＴＰセッションを進める。本実施形態の場合、クライアント装置２ａは、マイクロプロセッサ、メモリ及びハードディスクなどの記憶装置、マウス及びキーボードなどの入力装置、ネットワークインタフェース、及びディスプレイを備えたパーソナルコンピュータであるものとする。また、クライアント装置２ｂは、マイクロプロセッサ、メモリ及びハードディスクなどの記憶装置、ネットワークインタフェース、タッチスクリーン、及びスキャナを備えた画像処理装置であるものとする。
【００１５】
セッション管理サーバ４及びサービス提供サーバ６は、マイクロプロセッサ、メモリ及びハードディスクなどの記憶装置、ネットワークインタフェースなどを備えたサーバコンピュータである。セッション管理サーバ４及びサービス提供サーバ６は、それぞれ、記憶装置に記憶されるプログラムに従って情報処理を実行する。このプログラムは、ネットワークから受信することにより記憶装置に記憶されてもよいし、コンピュータ読みとり可能な情報記憶媒体から読み出すことにより記憶装置に記憶されてもよい。セッション管理サーバ４は、ロードバランサとも呼ばれる。また、各サービス提供サーバ６は、ユーザに対してクラウド上で共通の情報処理サービスを提供し、本実施形態では、クライアント装置２から送付される文書画像を翻訳する画像処理サービスをユーザに提供する。各サービス提供サーバ６は、ユーザデータベース８に接続されている。ユーザデータベース８には、サービスの利用者として登録されているユーザの認証情報（ユーザ名（ユーザ識別情報）とパスワード）が記憶されており、サービス提供サーバ６は、ユーザデータベース８を用いてユーザ認証を行う。
【００１６】
画像処理サービスの利用場面について説明する。本実施形態では、ユーザは、クライアント装置２においてブラウザアプリケーションを起動し、所定箇所にログイン画面のＵＲＬ（Uniformed Resource Locator）を入力する。図２は、ログイン画面のＵＲＬが入力された場合に、セッション管理システム１にて実行される処理を示すシーケンス図である。以下、ログイン画面のＵＲＬが入力されたクライアント装置２のことをクライアント装置Ｘと表記する。ユーザがログイン画面のＵＲＬを入力すると、クライアント装置Ｘは、ブラウザアプリケーションを介し、ＨＴＴＰリクエスト（リクエストデータ）をセッション管理サーバ４に送信する（Ｓ１０１）。ＨＴＴＰリクエストには、クライアント装置Ｘが記憶装置に保持しているクッキー情報などの各種データが含まれる。ここでは、クライアント装置Ｘがクッキー情報を保持していないので、ＨＴＴＰリクエストにクッキー情報は含まれない。
【００１７】
セッション管理サーバ４は、クライアント装置Ｘから送信されたＨＴＴＰリクエストを受信する。そして、受信したＨＴＴＰリクエストを、所定のアルゴリズム（例えばラウンドロビンアルゴリズム）に従って選択したサービス提供サーバ６に転送する（Ｓ１０２）。具体的には、セッション管理サーバ４は、ＨＴＴＰリクエストを受信した場合に、図３に示す転送処理を実行する。すなわち、セッション管理サーバ４は、ＨＴＴＰリクエスト中のクッキー情報に、セッションＩＤが含まれるか否かを判定する（Ｓ２０１）。ここで、セッションＩＤとは、サービス管理サーバ６の識別情報である。
【００１８】
上述のように、この段階では、ＨＴＴＰリクエスト中にクッキー情報がない。そこで、セッション管理サーバ４は、上述のアルゴリズムに従って転送先のサービス提供サーバ６を選択し、選択したサービス提供サーバ６にＨＴＴＰリクエストを転送する（Ｓ２０２）。なお、ここでは、サービス提供サーバＸが選択されたものとする。
【００１９】
ＨＴＴＰリクエストを受信したサービス提供サーバＸは、受信したＨＴＴＰリクエストに応じたＨＴＴＰレスポンスを、セッション管理サーバ４に返信する（Ｓ１０３）。この段階では、ログイン画面のウェブページをＨＴＴＰレスポンスとして返信する。そして、ＨＴＴＰレスポンスを受信したセッション管理サーバ４は、受信したＨＴＴＰレスポンスを、該ＨＴＴＰレスポンスの送信元であるサービス提供サーバＸを識別するセッションＩＤとともに、クライアント装置Ｘに転送する（Ｓ１０４）。セッションＩＤは、クッキー情報として、ＨＴＴＰレスポンスに含まれる。
【００２０】
ＨＴＴＰレスポンスを受信したクライアント装置Ｘでは、ログイン画面が表示される。また、ＨＴＴＰレスポンス中のクッキー情報が記憶装置に保存される。図４Ａは、ログイン画面の一例を示す図である。このログイン画面を用いてユーザは、画像処理サービスにログインする。すなわち、ユーザは、ログイン画面に自身の認証情報（ユーザ名とパスワード）を入力する。そして、所定のボタンを押す。
【００２１】
図５は、ログイン画面においてユーザが上記所定のボタンを押した場合に、セッション管理システム１において実行される処理を示すシーケンス図である。クライアント装置Ｘは、記憶装置に記憶されるクッキー情報と入力された認証情報とを含むＨＴＴＰリクエストを、セッション管理サーバ４に送信する（Ｓ３０１）。セッション管理サーバ４（リクエスト受信手段、リクエスト送信手段）は、クライアント装置Ｘから送信されたＨＴＴＰリクエストを受信すると、受信したＨＴＴＰリクエストをサービス提供サーバＸに転送する（Ｓ３０２）。具体的には、Ｓ３０２において、図３に示す転送処理を実行する。この段階では、クッキー情報にサービス提供サーバＸのセッションＩＤが含まれる。そのため、Ｓ２０３のステップが実行され、セッション管理サーバ４は、クッキー情報に後述するコンテクスト情報がさらに含まれるか否かを判定する（Ｓ２０３）。この段階では、クッキー情報にコンテクスト情報は含まれない。よって、セッション管理サーバ４は、クッキー情報中のセッションＩＤにより識別されるサービス提供サーバＸにＨＴＴＰリクエストを転送することとなる（Ｓ２０４）。
【００２２】
サービス提供サーバＸ（受信手段）は、セッション管理サーバ４から転送されたＨＴＴＰリクエストを受信する。そして、リダイレクト指示をＨＴＴＰレスポンスとして、セッション管理サーバ４に返信する（Ｓ３０３）。この段階では、ＨＴＴＰリクエストに認証情報が含まれる。そのため、ＨＴＴＰリクエストを受信したサービス提供サーバＸは、Ｓ３０３のステップにおいて、図６に示す認証処理を実行する。すなわち、サービス提供サーバＸ（認証手段）は、ＨＴＴＰリクエスト中の認証情報と、ユーザデータベース８の記憶内容と、に基づいて、ユーザを認証する（Ｓ４０１）。具体的には、サービス提供サーバＸは、ＨＴＴＰリクエスト中の認証情報がユーザデータベース８に記憶されているか否かを判定する。そして、ユーザが認証された場合、認証されたユーザに固有のコンテクスト情報をＨＴＴＰリクエスト中の認証情報に基づいて所定のコンテクスト生成アルゴリズムに従い生成する（Ｓ４０２）。例えば、サービス提供サーバＸは、認証されたユーザのユーザ名を暗号化してコンテクスト情報を生成する。なお、コンテクスト情報の生成に用いるコンテクスト生成アルゴリズムは、すべてのサービス提供サーバ６に共通である。そして、サービス提供サーバＸは、リダイレクト指示をＨＴＴＰレスポンスとして、コンテクスト情報とともに、セッション管理サーバ４に返信する（Ｓ４０３）。コンテクスト情報は、クッキー情報としてＨＴＴＰレスポンスに含まれる。
【００２３】
セッション管理サーバ４（転送手段）は、Ｓ３０４のステップにおいてＨＴＴＰレスポンスを受信すると、受信したＨＴＴＰレスポンスを、該ＨＴＴＰレスポンスの送信元であるサービス提供サーバＸのセッションＩＤとともに、クライアント装置Ｘに転送する（Ｓ３０４）。セッションＩＤは、クッキー情報としてＨＴＴＰレスポンスに含まれる。
【００２４】
ＨＴＴＰレスポンスを受信したクライアント装置Ｘは、ＨＴＴＰレスポンス中のクッキー情報を記憶装置に保存する。そして、クッキー情報を含むＨＴＴＰリクエストを、セッション管理サーバ４に送信する（Ｓ３０５）。
【００２５】
セッション管理サーバ４（リクエスト受信手段、リクエスト送信手段）は、クライアント装置Ｘから送信されたＨＴＴＰリクエストを受信すると、受信したＨＴＴＰリクエストをサービス提供サーバＸに転送する（Ｓ３０６）。具体的には、セッション管理サーバ４（リクエスト送信手段）は、Ｓ３０６において、Ｓ３０２と同様にして図３に示す転送処理を実行する。この段階では、クッキー情報に、サービス提供サーバＸのセッションＩＤとコンテクスト情報との双方が含まれる。そのため、Ｓ２０５以降のステップが実行される。本実施形態では、コンテクスト情報をセッションＩＤに関連づけて記憶するセッション管理データベース（以下、セッション管理ＤＢと表記する）がセッション管理サーバ４の記憶装置に設けられ、Ｓ２０５において、セッション管理サーバ４は、クッキー情報中のコンテクスト情報と同一のコンテクスト情報がセッション管理ＤＢに記憶されているか否か判定する（Ｓ２０５）。この段階では、クッキー情報中のコンテクスト情報と同一のコンテクスト情報は記憶されていない。そのため、セッション管理サーバ４は、クッキー情報中のセッションＩＤにより識別されるサービス提供サーバ６（すなわち、サービス提供サーバＸ）にＨＴＴＰリクエストを転送する（Ｓ２０６）。また、クッキー情報中のコンテクスト情報とセッションＩＤとを関連づけてセッション管理ＤＢに保存する（Ｓ２０７）。
【００２６】
サービス提供サーバＸ（受信手段）は、セッション管理サーバ４から転送されたＨＴＴＰリクエストを受信する。そして、ＨＴＴＰレスポンスを、ＨＴＴＰリクエスト中のコンテクスト情報とともに、セッション管理サーバ４に返信する（Ｓ３０７）。この段階では、ＨＴＴＰリクエストにコンテクスト情報が含まれるので、サービス提供サーバＸは、Ｓ３０７のステップにおいて、図７に示す返信処理を実行する。すなわち、本実施形態では、各サービス提供サーバ６の記憶装置に、コンテクスト情報とセッションの進行度を示すセッション進行度と、を関連づけたコンテクスト管理データベース（以下、コンテクスト管理ＤＢと表記する）が設けられる。サービス提供サーバＸは、クッキー情報中のコンテクスト情報と同一のコンテクスト情報が、コンテクスト管理ＤＢに記憶されているか否かを判定する（Ｓ５０１）。この段階では、クッキー情報中のコンテクスト情報と同一のコンテクスト情報が、コンテクスト管理ＤＢに記憶されていない。そこで、クッキー情報中のコンテクスト情報を、現段階でのセッションの進行度を示すセッション進行度に関連づけてコンテクスト管理ＤＢに保存する（Ｓ５０２）。また、所定のＨＴＴＰレスポンスを、クッキー情報中のコンテクスト情報とともに、セッション管理サーバ４に送信する（Ｓ５０３）。具体的には、図４Ｂに示す設定画面のウェブページをＨＴＴＰレスポンスとして送信する。コンテクスト情報は、クッキー情報としてＨＴＴＰレスポンスに含まれる。
【００２７】
そして、Ｓ３０８において、ＨＴＴＰレスポンスを受信したセッション管理サーバ４は、Ｓ３０４のステップと同様にして、受信したＨＴＴＰレスポンスを、サービス提供サーバＸのセッションＩＤとともに、クライアント装置Ｘに送信する（Ｓ３０８）。セッションＩＤは、クッキー情報としてＨＴＴＰレスポンスに含まれる。その結果、ＨＴＴＰレスポンスを受信したクライアント装置Ｘにおいて、ＨＴＴＰレスポンスに応じた画面が表示される。この段階では、図４Ｂに示す設定画面が表示される。また、ＨＴＴＰレスポンス中のクッキー情報が記憶装置に保存される。
【００２８】
その後、ユーザは、図４Ｃに示す案内画面が表示されるまで、クライアント装置Ｘにおいて、サービス提供サーバＸとのセッションを進める操作を行う。セッション管理システム１では、セッションを進める操作が行われるたびに、図８のシーケンス図に示す処理が実行される。
【００２９】
すなわち、クライアント装置Ｘは、記憶装置に保持しているクッキー情報を含むＨＴＴＰリクエストを、セッション管理サーバ４に送信する（Ｓ６０１）。クッキー情報には、サービス提供サーバＸのセッションＩＤと、ユーザに固有のコンテクスト情報と、が含まれる。
【００３０】
セッション管理サーバ４（リクエスト受信手段、リクエスト送信手段）は、クライアント装置Ｘから送信されたＨＴＴＰリクエストを受信すると、受信したＨＴＴＰリクエストをサービス提供サーバＸに転送する（Ｓ６０２）。具体的には、セッション管理サーバ４（リクエスト送信手段）は、Ｓ６０２において、Ｓ３０２とＳ３０８と同様に図３に示す転送処理を実行する。この段階では、クッキー情報に、サービス提供サーバＸのセッションＩＤとコンテクスト情報との双方が含まれる。しかも、クッキー情報中のコンテクスト情報と同一のコンテクスト情報がセッション管理ＤＢに記憶済であるので（Ｓ２０５のＹ）、セッション管理サーバ４は、Ｓ２０８のステップを実行する。すなわち、セッション管理サーバ４は、クッキー情報中のコンテクスト情報と同一のコンテクスト情報に関連づけられたセッションＩＤにより識別されるサービス提供サーバ６（すなわち、サービス提供サーバＸ）にＨＴＴＰリクエストを転送する（Ｓ２０８）。
【００３１】
サービス提供サーバＸ（受信手段）は、セッション管理サーバ４から転送されたＨＴＴＰリクエストを受信する。そして、ＨＴＴＰレスポンスを、セッション管理サーバ４に返信する（Ｓ６０３）。この段階では、ＨＴＴＰリクエストにコンテクスト情報が含まれるので、サービス提供サーバＸは、Ｓ６０３のステップにおいて、Ｓ３０７のステップと同様に図７に示す返信処理を実行する。しかも、クッキー情報中のコンテクスト情報と同一のコンテクスト情報が、コンテクスト管理ＤＢに記憶済であるので（Ｓ５０１のＹ）、サービス提供サーバＸは、クッキー情報中のコンテクスト情報と同一のコンテクスト情報に関連づけられたセッション進行度に応じたＨＴＴＰレスポンスを、コンテクスト情報とともにセッション管理サーバ４に送信する（Ｓ５０４）。また、クッキー情報中のコンテクスト情報と同一のコンテクスト情報に関連づけられたセッション進行度を更新する。なお、コンテクスト情報は、クッキー情報としてＨＴＴＰレスポンスに含まれる。
【００３２】
そして、Ｓ６０４において、ＨＴＴＰレスポンスを受信したセッション管理サーバ４は、Ｓ３０４のステップと同様にして、受信したＨＴＴＰレスポンスを、サービス提供サーバＸのセッションＩＤとともに、クライアント装置Ｘに送信する。セッションＩＤは、クッキー情報としてＨＴＴＰレスポンスに含まれる。その結果、ＨＴＴＰレスポンスを受信したクライアント装置Ｘにおいて、ＨＴＴＰレスポンスに応じた画面が表示される。
【００３３】
ここで、ユーザがまずクライアント装置２ａにて画像処理サービスにログインし、サービス提供サーバＸとの間で、図４Ｃに示す案内画面が表示されるまでセッションを進めた後、クライアント装置２ｂにて画像処理サービスにログインしなおす場合を想定する。この場合、クライアント装置２ｂから最初に送信されたＨＴＴＰリクエストが図２のＳ１０２においてサービス提供サーバＸとは異なるサービス提供サーバＹに転送される場合がある。しかし、以下の理由から、このような場合でも、サービス提供サーバＸと進めていたセッションを、サービス提供サーバＸと再び進めることができるようになっている。
【００３４】
図９は、クライアント装置Ｘたるクライアント装置２ｂから最初に送信されたＨＴＴＰリクエストがサービス提供サーバＹに転送された場合に、セッション管理システム１で実行される処理を示すシーケンス図である。図９につき、図５と比較しつつ説明する。この場合、まず、Ｓ３０１で送信されるＨＴＴＰリクエストのクッキー情報には、サービス提供サーバＹのセッションＩＤが含まれる。そのため、図５とは異なり、Ｓ３０２において、ＨＴＴＰリクエストは、サービス提供サーバＹに転送されてしまう。
【００３５】
しかし、Ｓ３０３において、ユーザに固有のコンテクスト情報が生成され、それがクライアント装置Ｘに送信される。そのため、以後、クライアント装置Ｘから送信されるＨＴＴＰリクエストには、コンテクスト情報が含まれることとなる（Ｓ３０５及び図８のＳ６０１参照）。しかも、ＨＴＴＰリクエスト中のコンテクスト情報と同一のコンテクスト情報がセッション管理ＤＢに記憶されている場合、ＨＴＴＰリクエストの転送先が、そのコンテクスト情報に関連づけてセッション管理ＤＢに記憶されるセッションＩＤにより識別されるサービス提供サーバ６となる（図３のＳ２０８参照）。従って、サービス提供サーバＸとのセッション時にユーザのコンテクスト情報がサービス提供サーバＸのセッションＩＤに関連づけてセッション管理ＤＢに記憶済みであるから、Ｓ３０６や図９のＳ６０２において、ＨＴＴＰリクエストが、常に、サービス提供サーバＸに転送されることとなる。従って、クライアント装置２ｂにサービスにログインし直したユーザは、クライアント装置２ａを用いてサービス提供サーバＸと進めていたセッションを、サービス提供サーバＸと再び進めることができる。そのため、例えば、ログインし直したとき、図４Ｂに示す設定画面ではなく、図４Ｃの案内画面の次に表示されるべき、図４Ｄの指示待ち画面が表示される。また、セッションを進める操作が行われるたびに、図８のシーケンス図に示すようにして、サービス提供サーバＸとのセッションが進められることになる。
【００３６】
図１０は、セッション管理サーバ１にて実現される機能群を示す機能ブロック図である。同図に示すように、セッション管理サーバ１では、リクエスト受信部１０、リクエスト送信部１２、転送部１４、受信部１６、認証部１８、及び応答送信部２０、が実現される。リクエスト受信部１０、リクエスト送信部１２、及び転送部１４は、セッション管理サーバ４において、マイクロプロセッサが記憶装置に記憶されるプログラムを実行することにより実現される。受信部１６、認証部１８、及び応答送信部２０は、サービス提供サーバ６において、マイクロプロセッサが記憶装置に記憶されるプログラムを実行することにより実現される。
【００３７】
リクエスト受信部１０は、クライアント装置２から送信されたＨＴＴＰリクエストを受信する。リクエスト送信部１２は、リクエスト受信部１０により受信されたＨＴＴＰリクエストを、原則、該ＨＴＴＰリクエスト中のセッションＩＤにより識別されるサービス提供サーバ６に送信する（図５のＳ３０２及びＳ３０６等参照）。
【００３８】
受信部１６は、セッション管理サーバ４から送信されたＨＴＴＰリクエストを受信する。認証部１８は、受信部１６により受信されたＨＴＴＰリクエストにユーザを識別する識別情報（ここでは、ユーザ名）が含まれる場合に、該識別情報に基づいて、該識別情報により識別されるユーザを認証する（図５のＳ３０３及び図６参照）。
【００３９】
応答送信部２０は、受信部１８により受信されたＨＴＴＰリクエストデータに応じたＨＴＴＰレスポンスをセッション管理サーバ４に返信する。また、転送部１４は、リクエスト送信部１２によるＨＴＴＰリクエストの送信後、そのＨＴＴＰリクエストの送信先のサービス提供サーバ６から返信されるＨＴＴＰレスポンスを受信し、受信したＨＴＴＰレスポンスを、該送信先のサービス提供サーバ６を識別するセッションＩＤとともに、そのＨＴＴＰリクエストの送信元のクライアント装置２に転送する（図５のＳ３０４及びＳ３０８等参照）。
【００４０】
但し、応答送信部２０は、受信部１６により受信されたＨＴＴＰリクエストにユーザを識別する識別情報が含まれる場合、ＨＴＴＰレスポンスを、該識別情報に基づき認証部１８が認証したユーザに固有のコンテクスト情報とともに、セッション管理サーバ４に送信する（図５のＳ３０３参照）。また、転送部１４は、リクエスト送信部１２によるＨＴＴＰリクエストの送信後、そのＨＴＴＰリクエストの送信先のサービス提供サーバ６からＨＴＴＰレスポンスとともにコンテクスト情報も受信した場合、ＨＴＴＰレスポンスを、該送信先のサービス提供サーバ６を識別するセッションＩＤだけでなく、それとともに受信したコンテクスト情報とともに、そのＨＴＴＰリクエストの送信元のクライアント装置２に転送する（図５のＳ３０４及びＳ３０８等参照）。こうすることで、ユーザ認証の完了後は、クライアント装置２から、コンテクスト情報付きでＨＴＴＰリクエストが送信されるようにする。
【００４１】
こうした上で、さらに、リクエスト送信部１２は、コンテクスト情報を含むＨＴＴＰリクエストがリクエスト受信部１０により受信されたとき、以下のように、送信先を振り分ける。すなわち、ＨＴＴＰリクエストに含まれるコンテクスト情報と同一のコンテクスト情報がセッション管理ＤＢに記憶されていない場合、そのＨＴＴＰリクエストに含まれるコンテクスト情報とセッションＩＤとを関連づけてセッション管理ＤＢに記憶し、そのＨＴＴＰリクエストを、原則通り、そのＨＴＴＰリクエストに含まれるセッションＩＤにより識別されるサービス提供サーバ６に送信する（図３参照）。一方、ＨＴＴＰリクエストに含まれるコンテクスト情報と同一のコンテクスト情報がセッション管理ＤＢに記憶されている場合、そのＨＴＴＰリクエストを、そのコンテクスト情報に関連づけて記憶されるセッションＩＤにより識別されるサービス提供サーバ６に送信する（図３参照）。
【００４２】
なお、本発明の実施形態は、上記実施形態だけに限らない。
【００４３】
例えば、セッション管理サーバ４は、Ｓ３０４において、下記の処理を追加で行ってもよい。すなわち、セッション管理サーバ４は、受信したＨＴＴＰリスポンス中のクッキー情報に含まれるコンテクスト情報と同一のコンテクスト情報がセッション管理ＤＢに記憶されているか否かを判定してもよい。そして、受信したＨＴＴＰレスポンス中のクッキー情報に含まれるコンテクスト情報と同一のコンテクスト情報がセッション管理ＤＢに記憶されていない場合、クッキー情報に含まれるコンテクスト情報を、サービス提供サーバＸのセッションＩＤに関連づけてセッション管理ＤＢに保存してもよい。
【００４４】
また例えば、セッション管理システム１は、セッション管理サーバ４を複数含んでいてもよい。この場合、クライアント装置２は、いずれかのセッション管理サーバ４に、ＨＴＴＰリクエストを送信すればよい。
【符号の説明】
【００４５】
１  セッション管理システム、２，２ａ，２ｂ  クライアント装置、４  セッション管理サーバ、６  サービス提供サーバ、８  ユーザデータベース、１０  リクエスト受信部、１２  リクエスト送信部、１４  転送部、１６  受信部、２０  認証部、２２  応答送信部。
【図１】
2015115039.tif 000003
【図２】
2015115039.tif 000004
【図３】
2015115039.tif 000005
【図４Ａ】
2015115039.tif 000006
【図４Ｂ】
2015115039.tif 000007
【図４Ｃ】
2015115039.tif 000008
【図４Ｄ】
2015115039.tif 000009
【図５】
2015115039.tif 000010
【図６】
2015115039.tif 000011
【図７】
2015115039.tif 000012
【図８】
2015115039.tif 000013
【図９】
2015115039.tif 000014
【図１０】
2015115039.tif 000015