JP6156116B2 - セッション管理システム、セッション管理装置、及びプログラム - Google Patents

セッション管理システム、セッション管理装置、及びプログラム Download PDF

Info

Publication number
JP6156116B2
JP6156116B2 JP2013259060A JP2013259060A JP6156116B2 JP 6156116 B2 JP6156116 B2 JP 6156116B2 JP 2013259060 A JP2013259060 A JP 2013259060A JP 2013259060 A JP2013259060 A JP 2013259060A JP 6156116 B2 JP6156116 B2 JP 6156116B2
Authority
JP
Japan
Prior art keywords
request
request data
information
user information
session
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.)
Expired - Fee Related
Application number
JP2013259060A
Other languages
English (en)
Other versions
JP2015115039A (ja
Inventor
道村 唯夫
唯夫 道村
森田 雅夫
雅夫 森田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation Corp
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 Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP2013259060A priority Critical patent/JP6156116B2/ja
Priority to US14/462,042 priority patent/US9609068B2/en
Priority to CN201410554258.6A priority patent/CN104717197B/zh
Publication of JP2015115039A publication Critical patent/JP2015115039A/ja
Application granted granted Critical
Publication of JP6156116B2 publication Critical patent/JP6156116B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)

Description

本発明は、セッション管理システム、セッション管理装置、及びプログラムに関する。
下記特許文献1には、最初に選択したサーバの情報をクッキーとしてクライアントに提供することにより、クライアントからのリクエストを常に同じサーバに転送するロードバランス装置が開示されている。
米国特許6473802号明細書
本発明の目的は、サービスにログインしたユーザが複数のサービス提供装置のうちの一のサービス提供装置との間で進めたセッションを、後にユーザがサービスにログインし直したときに、選択したサービス提供装置と再度セッションを進めることができるようにすることである。
上記課題を解決するための請求項1に記載の発明は、セッション管理装置と、同種のサービスを提供する複数のサービス提供装置と、を含み、前記セッション管理装置は、クライアント装置から送信されたリクエストデータを受信するリクエスト受信手段と、リクエスト受信手段により受信されたリクエストデータを、該リクエストデータ中のセッション情報により特定されるサービス提供装置に送信するリクエスト送信手段と、前記リクエスト送信手段によるリクエストデータの送信後、該リクエストデータの送信先のサービス提供装置から返信される応答データを受信し、受信した応答データを、該送信先のサービス提供装置を特定するセッション情報とともに、該リクエストデータの送信元のクライアント装置に転送する転送手段と、を含み、前記サービス提供装置は、前記セッション管理装置から送信されたリクエストデータを受信する受信手段と、前記受信手段により受信されたリクエストデータにユーザを識別するユーザ識別情報が含まれる場合に、該ユーザ識別情報に基づいて、該ユーザ識別情報により識別されるユーザを認証する認証手段と、前記受信手段により受信されたリクエストデータに応じた応答データを前記セッション管理装置に送信する応答送信手段と、を含むセッション管理システムであって、前記応答送信手段は、前記受信手段により受信されたリクエストデータにユーザを識別するユーザ識別情報が含まれる場合、該リクエストデータに応じた応答データを、該ユーザ識別情報に基づき前記認証手段により認証されたユーザに固有のユーザ情報とともに、前記セッション管理装置に送信し、前記セッション管理装置に、ユーザ情報をセッション情報に関連づけて記憶するための記憶手段がさらに備えられ、前記転送手段は、前記リクエスト送信手段によるリクエストデータの送信後、該リクエストデータの送信先のサービス提供装置から応答データとともにユーザ情報を受信した場合、受信した応答データを、該送信先のサービス提供装置を特定するセッション情報と該受信したユーザ情報とともに、該リクエストデータの送信元のクライアント装置に転送し、前記リクエスト送信手段は、前記リクエスト受信手段により受信されたリクエストデータにユーザ情報が含まれるとき、該リクエストデータに含まれるユーザ情報と同一のユーザ情報が前記記憶手段に記憶されていない場合は、該リクエストデータに含まれるユーザ情報とセッション情報とを関連づけて前記記憶手段に記憶するとともに、該リクエストデータを、該リクエストデータに含まれるセッション情報により特定されるサービス提供装置に送信し、前記リクエスト受信手段により受信されるリクエストデータにユーザ情報が含まれる場合であって、該リクエストデータに含まれるユーザ情報と同一のユーザ情報が前記記憶手段に記憶されている場合は、該リクエストデータを、該ユーザ情報に関連づけて前記記憶手段に記憶されるセッション情報により特定されるサービス提供装置に送信すること、を特徴とする。
また、請求項2に記載の発明は、請求項1に記載のセッション管理システムにおいて、前記セッション管理装置が、前記リクエスト送信手段によるリクエストデータの送信後、該リクエストデータの送信先のサービス提供装置から前記転送手段が前記記憶手段に記憶されていないユーザ情報を応答データとともに受信したとき、該転送手段が受信したユーザ情報を、該送信先のサービス提供装置を特定するセッション情報に関連づけて前記記憶手段に記憶する手段をさらに含むことを特徴としている。
上記課題を解決するための請求項3に記載の発明は、クライアント装置から送信されたリクエストデータを受信するリクエスト受信手段と、リクエスト受信手段により受信されたリクエストデータを、同種のサービスを提供する複数のサービス提供装置のうち、該リクエストデータ中のセッション情報により特定されるサービス提供装置に送信するリクエスト送信手段と、前記リクエスト送信手段によるリクエストデータの送信後、該リクエストデータの送信先のサービス提供装置から返信される応答データを受信し、受信した応答データを、該送信先のサービス提供装置を特定するセッション情報とともに、該リクエストデータの送信元のクライアント装置に転送する転送手段と、情報を記憶するための記憶手段と、を含み、前記転送手段は、前記リクエスト送信手段によるリクエストデータの送信後、該リクエストデータの送信先のサービス提供装置から応答データとともに、該送信先のサービス提供装置にて認証されたユーザに固有のユーザ情報を受信した場合、受信した応答データを、該送信先のサービス提供装置を特定するセッション情報と該受信したユーザ情報とともに、該リクエストデータの送信元のクライアント装置に転送し、前記リクエスト送信手段は、前記リクエスト受信手段により受信されたリクエストデータにユーザ情報が含まれる場合であって、該リクエストデータに含まれるユーザ情報と同一のユーザ情報が前記記憶手段に記憶されている場合は、該リクエストデータを、該ユーザ情報に関連づけて前記記憶手段に記憶されるセッション情報により特定されるサービス提供装置に送信すること、を特徴とするセッション管理装置である。
上記課題を解決するための請求項4に記載の発明は、情報を記憶する記憶手段を備えたコンピュータを、クライアント装置から送信されたリクエストデータを受信するリクエスト受信手段、リクエスト受信手段により受信されたリクエストデータを、同種のサービスを提供する複数のサービス提供装置のうち、該リクエストデータ中のセッション情報により特定されるサービス提供装置に送信するリクエスト送信手段、前記リクエスト送信手段によるリクエストデータの送信後、該リクエストデータの送信先のサービス提供装置から返信される応答データを受信し、受信した応答データを、該送信先のサービス提供装置を特定するセッション情報とともに、該リクエストデータの送信元のクライアント装置に転送する転送手段、として機能させるためのプログラムであって、前記転送手段は、前記リクエスト送信手段によるリクエストデータの送信後、該リクエストデータの送信先のサービス提供装置から応答データとともに、該送信先のサービス提供装置にて認証されたユーザに固有のユーザ情報を受信した場合、受信した応答データを、該送信先のサービス提供装置を特定するセッション情報と該受信したユーザ情報とともに、該リクエストデータの送信元のクライアント装置に転送し、前記リクエスト送信手段は、前記リクエスト受信手段により受信されたリクエストデータにユーザ情報が含まれるとき、該リクエストデータに含まれるユーザ情報と同一のユーザ情報が前記記憶手段に記憶されていない場合は、該リクエストデータに含まれるユーザ情報とセッション情報とを関連づけて前記記憶手段に記憶するとともに、該リクエストデータを、該リクエストデータに含まれるセッション情報により特定されるサービス提供装置に送信し、該リクエストデータに含まれるユーザ情報と同一のユーザ情報が前記記憶手段に記憶されている場合は、該リクエストデータを、該ユーザ情報に関連づけて前記記憶手段に記憶されるセッション情報により特定されるサービス提供装置に送信するプログラムである。
請求項1、3、4に記載の発明によれば、サービスにログインしたユーザが複数のサービス提供装置のうちの一のサービス提供装置との間で進めたセッションを、後にユーザがサービスにログインし直したときに、選択したサービス提供装置と再度セッションを進められるようにすることができる。
また、請求項2に記載の発明によれば、サービスにログインしたユーザが複数のサービス提供装置のうちの一のサービス提供装置との間で進めたセッションを、後にユーザがサービスにログインし直したときに、選択したサービス提供装置と再度セッションを進められるようにすることを、より確実に実現できる。
本発明の実施形態に係るセッション管理システムの構成を示す図である。 セッション管理システムにて実行される処理を示すシーケンス図である。 セッション管理サーバにて実行される転送処理を示す図である。 ログイン画面を示す図である。 設定画面を示す図である。 案内画面を示す図である。 指示待ち画面を示す図である。 セッション管理システムにて実行される処理を示すシーケンス図である。 サービス提供サーバにて実行される認証処理を示す図である。 サービス提供サーバにて実行される返信処理を示す図である。 セッション管理システムにて実行される処理を示すシーケンス図である。 セッション管理システムにて実行される処理を示すシーケンス図である。 セッション管理システムにて実現される機能群を示す機能ブロック図である。
以下、本発明の実施形態の例について図面に基づき詳細に説明する。
図1は、本発明の実施形態に係るセッション管理システム1の構成を示す図である。同図に示すように、セッション管理システム1は、複数のクライアント装置2と、セッション管理サーバ4と、情報処理サービスを提供するための複数のサービス提供サーバ6と、を含む。これら各々の装置は、ネットワークに接続されている。
クライアント装置2には、ブラウザアプリケーションがインストールされており、ユーザは、ブラウザアプリケーションを介して、情報処理サービスにログインし、情報処理サービスを利用するためのHTTPセッションを進める。本実施形態の場合、クライアント装置2aは、マイクロプロセッサ、メモリ及びハードディスクなどの記憶装置、マウス及びキーボードなどの入力装置、ネットワークインタフェース、及びディスプレイを備えたパーソナルコンピュータであるものとする。また、クライアント装置2bは、マイクロプロセッサ、メモリ及びハードディスクなどの記憶装置、ネットワークインタフェース、タッチスクリーン、及びスキャナを備えた画像処理装置であるものとする。
セッション管理サーバ4及びサービス提供サーバ6は、マイクロプロセッサ、メモリ及びハードディスクなどの記憶装置、ネットワークインタフェースなどを備えたサーバコンピュータである。セッション管理サーバ4及びサービス提供サーバ6は、それぞれ、記憶装置に記憶されるプログラムに従って情報処理を実行する。このプログラムは、ネットワークから受信することにより記憶装置に記憶されてもよいし、コンピュータ読みとり可能な情報記憶媒体から読み出すことにより記憶装置に記憶されてもよい。セッション管理サーバ4は、ロードバランサとも呼ばれる。また、各サービス提供サーバ6は、ユーザに対してクラウド上で共通の情報処理サービスを提供し、本実施形態では、クライアント装置2から送付される文書画像を翻訳する画像処理サービスをユーザに提供する。各サービス提供サーバ6は、ユーザデータベース8に接続されている。ユーザデータベース8には、サービスの利用者として登録されているユーザの認証情報(ユーザ名(ユーザ識別情報)とパスワード)が記憶されており、サービス提供サーバ6は、ユーザデータベース8を用いてユーザ認証を行う。
画像処理サービスの利用場面について説明する。本実施形態では、ユーザは、クライアント装置2においてブラウザアプリケーションを起動し、所定箇所にログイン画面のURL(Uniformed Resource Locator)を入力する。図2は、ログイン画面のURLが入力された場合に、セッション管理システム1にて実行される処理を示すシーケンス図である。以下、ログイン画面のURLが入力されたクライアント装置2のことをクライアント装置Xと表記する。ユーザがログイン画面のURLを入力すると、クライアント装置Xは、ブラウザアプリケーションを介し、HTTPリクエスト(リクエストデータ)をセッション管理サーバ4に送信する(S101)。HTTPリクエストには、クライアント装置Xが記憶装置に保持しているクッキー情報などの各種データが含まれる。ここでは、クライアント装置Xがクッキー情報を保持していないので、HTTPリクエストにクッキー情報は含まれない。
セッション管理サーバ4は、クライアント装置Xから送信されたHTTPリクエストを受信する。そして、受信したHTTPリクエストを、所定のアルゴリズム(例えばラウンドロビンアルゴリズム)に従って選択したサービス提供サーバ6に転送する(S102)。具体的には、セッション管理サーバ4は、HTTPリクエストを受信した場合に、図3に示す転送処理を実行する。すなわち、セッション管理サーバ4は、HTTPリクエスト中のクッキー情報に、セッションIDが含まれるか否かを判定する(S201)。ここで、セッションIDとは、サービス管理サーバ6の識別情報である。
上述のように、この段階では、HTTPリクエスト中にクッキー情報がない。そこで、セッション管理サーバ4は、上述のアルゴリズムに従って転送先のサービス提供サーバ6を選択し、選択したサービス提供サーバ6にHTTPリクエストを転送する(S202)。なお、ここでは、サービス提供サーバXが選択されたものとする。
HTTPリクエストを受信したサービス提供サーバXは、受信したHTTPリクエストに応じたHTTPレスポンスを、セッション管理サーバ4に返信する(S103)。この段階では、ログイン画面のウェブページをHTTPレスポンスとして返信する。そして、HTTPレスポンスを受信したセッション管理サーバ4は、受信したHTTPレスポンスを、該HTTPレスポンスの送信元であるサービス提供サーバXを識別するセッションIDとともに、クライアント装置Xに転送する(S104)。セッションIDは、クッキー情報として、HTTPレスポンスに含まれる。
HTTPレスポンスを受信したクライアント装置Xでは、ログイン画面が表示される。また、HTTPレスポンス中のクッキー情報が記憶装置に保存される。図4Aは、ログイン画面の一例を示す図である。このログイン画面を用いてユーザは、画像処理サービスにログインする。すなわち、ユーザは、ログイン画面に自身の認証情報(ユーザ名とパスワード)を入力する。そして、所定のボタンを押す。
図5は、ログイン画面においてユーザが上記所定のボタンを押した場合に、セッション管理システム1において実行される処理を示すシーケンス図である。クライアント装置Xは、記憶装置に記憶されるクッキー情報と入力された認証情報とを含むHTTPリクエストを、セッション管理サーバ4に送信する(S301)。セッション管理サーバ4(リクエスト受信手段、リクエスト送信手段)は、クライアント装置Xから送信されたHTTPリクエストを受信すると、受信したHTTPリクエストをサービス提供サーバXに転送する(S302)。具体的には、S302において、図3に示す転送処理を実行する。この段階では、クッキー情報にサービス提供サーバXのセッションIDが含まれる。そのため、S203のステップが実行され、セッション管理サーバ4は、クッキー情報に後述するコンテクスト情報がさらに含まれるか否かを判定する(S203)。この段階では、クッキー情報にコンテクスト情報は含まれない。よって、セッション管理サーバ4は、クッキー情報中のセッションIDにより識別されるサービス提供サーバXにHTTPリクエストを転送することとなる(S204)。
サービス提供サーバX(受信手段)は、セッション管理サーバ4から転送されたHTTPリクエストを受信する。そして、リダイレクト指示をHTTPレスポンスとして、セッション管理サーバ4に返信する(S303)。この段階では、HTTPリクエストに認証情報が含まれる。そのため、HTTPリクエストを受信したサービス提供サーバXは、S303のステップにおいて、図6に示す認証処理を実行する。すなわち、サービス提供サーバX(認証手段)は、HTTPリクエスト中の認証情報と、ユーザデータベース8の記憶内容と、に基づいて、ユーザを認証する(S401)。具体的には、サービス提供サーバXは、HTTPリクエスト中の認証情報がユーザデータベース8に記憶されているか否かを判定する。そして、ユーザが認証された場合、認証されたユーザに固有のコンテクスト情報をHTTPリクエスト中の認証情報に基づいて所定のコンテクスト生成アルゴリズムに従い生成する(S402)。例えば、サービス提供サーバXは、認証されたユーザのユーザ名を暗号化してコンテクスト情報を生成する。なお、コンテクスト情報の生成に用いるコンテクスト生成アルゴリズムは、すべてのサービス提供サーバ6に共通である。そして、サービス提供サーバXは、リダイレクト指示をHTTPレスポンスとして、コンテクスト情報とともに、セッション管理サーバ4に返信する(S403)。コンテクスト情報は、クッキー情報としてHTTPレスポンスに含まれる。
セッション管理サーバ4(転送手段)は、S304のステップにおいてHTTPレスポンスを受信すると、受信したHTTPレスポンスを、該HTTPレスポンスの送信元であるサービス提供サーバXのセッションIDとともに、クライアント装置Xに転送する(S304)。セッションIDは、クッキー情報としてHTTPレスポンスに含まれる。
HTTPレスポンスを受信したクライアント装置Xは、HTTPレスポンス中のクッキー情報を記憶装置に保存する。そして、クッキー情報を含むHTTPリクエストを、セッション管理サーバ4に送信する(S305)。
セッション管理サーバ4(リクエスト受信手段、リクエスト送信手段)は、クライアント装置Xから送信されたHTTPリクエストを受信すると、受信したHTTPリクエストをサービス提供サーバXに転送する(S306)。具体的には、セッション管理サーバ4(リクエスト送信手段)は、S306において、S302と同様にして図3に示す転送処理を実行する。この段階では、クッキー情報に、サービス提供サーバXのセッションIDとコンテクスト情報との双方が含まれる。そのため、S205以降のステップが実行される。本実施形態では、コンテクスト情報をセッションIDに関連づけて記憶するセッション管理データベース(以下、セッション管理DBと表記する)がセッション管理サーバ4の記憶装置に設けられ、S205において、セッション管理サーバ4は、クッキー情報中のコンテクスト情報と同一のコンテクスト情報がセッション管理DBに記憶されているか否か判定する(S205)。この段階では、クッキー情報中のコンテクスト情報と同一のコンテクスト情報は記憶されていない。そのため、セッション管理サーバ4は、クッキー情報中のセッションIDにより識別されるサービス提供サーバ6(すなわち、サービス提供サーバX)にHTTPリクエストを転送する(S206)。また、クッキー情報中のコンテクスト情報とセッションIDとを関連づけてセッション管理DBに保存する(S207)。
サービス提供サーバX(受信手段)は、セッション管理サーバ4から転送されたHTTPリクエストを受信する。そして、HTTPレスポンスを、HTTPリクエスト中のコンテクスト情報とともに、セッション管理サーバ4に返信する(S307)。この段階では、HTTPリクエストにコンテクスト情報が含まれるので、サービス提供サーバXは、S307のステップにおいて、図7に示す返信処理を実行する。すなわち、本実施形態では、各サービス提供サーバ6の記憶装置に、コンテクスト情報とセッションの進行度を示すセッション進行度と、を関連づけたコンテクスト管理データベース(以下、コンテクスト管理DBと表記する)が設けられる。サービス提供サーバXは、クッキー情報中のコンテクスト情報と同一のコンテクスト情報が、コンテクスト管理DBに記憶されているか否かを判定する(S501)。この段階では、クッキー情報中のコンテクスト情報と同一のコンテクスト情報が、コンテクスト管理DBに記憶されていない。そこで、クッキー情報中のコンテクスト情報を、現段階でのセッションの進行度を示すセッション進行度に関連づけてコンテクスト管理DBに保存する(S502)。また、所定のHTTPレスポンスを、クッキー情報中のコンテクスト情報とともに、セッション管理サーバ4に送信する(S503)。具体的には、図4Bに示す設定画面のウェブページをHTTPレスポンスとして送信する。コンテクスト情報は、クッキー情報としてHTTPレスポンスに含まれる。
そして、S308において、HTTPレスポンスを受信したセッション管理サーバ4は、S304のステップと同様にして、受信したHTTPレスポンスを、サービス提供サーバXのセッションIDとともに、クライアント装置Xに送信する(S308)。セッションIDは、クッキー情報としてHTTPレスポンスに含まれる。その結果、HTTPレスポンスを受信したクライアント装置Xにおいて、HTTPレスポンスに応じた画面が表示される。この段階では、図4Bに示す設定画面が表示される。また、HTTPレスポンス中のクッキー情報が記憶装置に保存される。
その後、ユーザは、図4Cに示す案内画面が表示されるまで、クライアント装置Xにおいて、サービス提供サーバXとのセッションを進める操作を行う。セッション管理システム1では、セッションを進める操作が行われるたびに、図8のシーケンス図に示す処理が実行される。
すなわち、クライアント装置Xは、記憶装置に保持しているクッキー情報を含むHTTPリクエストを、セッション管理サーバ4に送信する(S601)。クッキー情報には、サービス提供サーバXのセッションIDと、ユーザに固有のコンテクスト情報と、が含まれる。
セッション管理サーバ4(リクエスト受信手段、リクエスト送信手段)は、クライアント装置Xから送信されたHTTPリクエストを受信すると、受信したHTTPリクエストをサービス提供サーバXに転送する(S602)。具体的には、セッション管理サーバ4(リクエスト送信手段)は、S602において、S302とS308と同様に図3に示す転送処理を実行する。この段階では、クッキー情報に、サービス提供サーバXのセッションIDとコンテクスト情報との双方が含まれる。しかも、クッキー情報中のコンテクスト情報と同一のコンテクスト情報がセッション管理DBに記憶済であるので(S205のY)、セッション管理サーバ4は、S208のステップを実行する。すなわち、セッション管理サーバ4は、クッキー情報中のコンテクスト情報と同一のコンテクスト情報に関連づけられたセッションIDにより識別されるサービス提供サーバ6(すなわち、サービス提供サーバX)にHTTPリクエストを転送する(S208)。
サービス提供サーバX(受信手段)は、セッション管理サーバ4から転送されたHTTPリクエストを受信する。そして、HTTPレスポンスを、セッション管理サーバ4に返信する(S603)。この段階では、HTTPリクエストにコンテクスト情報が含まれるので、サービス提供サーバXは、S603のステップにおいて、S307のステップと同様に図7に示す返信処理を実行する。しかも、クッキー情報中のコンテクスト情報と同一のコンテクスト情報が、コンテクスト管理DBに記憶済であるので(S501のY)、サービス提供サーバXは、クッキー情報中のコンテクスト情報と同一のコンテクスト情報に関連づけられたセッション進行度に応じたHTTPレスポンスを、コンテクスト情報とともにセッション管理サーバ4に送信する(S504)。また、クッキー情報中のコンテクスト情報と同一のコンテクスト情報に関連づけられたセッション進行度を更新する。なお、コンテクスト情報は、クッキー情報としてHTTPレスポンスに含まれる。
そして、S604において、HTTPレスポンスを受信したセッション管理サーバ4は、S304のステップと同様にして、受信したHTTPレスポンスを、サービス提供サーバXのセッションIDとともに、クライアント装置Xに送信する。セッションIDは、クッキー情報としてHTTPレスポンスに含まれる。その結果、HTTPレスポンスを受信したクライアント装置Xにおいて、HTTPレスポンスに応じた画面が表示される。
ここで、ユーザがまずクライアント装置2aにて画像処理サービスにログインし、サービス提供サーバXとの間で、図4Cに示す案内画面が表示されるまでセッションを進めた後、クライアント装置2bにて画像処理サービスにログインしなおす場合を想定する。この場合、クライアント装置2bから最初に送信されたHTTPリクエストが図2のS102においてサービス提供サーバXとは異なるサービス提供サーバYに転送される場合がある。しかし、以下の理由から、このような場合でも、サービス提供サーバXと進めていたセッションを、サービス提供サーバXと再び進めることができるようになっている。
図9は、クライアント装置Xたるクライアント装置2bから最初に送信されたHTTPリクエストがサービス提供サーバYに転送された場合に、セッション管理システム1で実行される処理を示すシーケンス図である。図9につき、図5と比較しつつ説明する。この場合、まず、S301で送信されるHTTPリクエストのクッキー情報には、サービス提供サーバYのセッションIDが含まれる。そのため、図5とは異なり、S302において、HTTPリクエストは、サービス提供サーバYに転送されてしまう。
しかし、S303において、ユーザに固有のコンテクスト情報が生成され、それがクライアント装置Xに送信される。そのため、以後、クライアント装置Xから送信されるHTTPリクエストには、コンテクスト情報が含まれることとなる(S305及び図8のS601参照)。しかも、HTTPリクエスト中のコンテクスト情報と同一のコンテクスト情報がセッション管理DBに記憶されている場合、HTTPリクエストの転送先が、そのコンテクスト情報に関連づけてセッション管理DBに記憶されるセッションIDにより識別されるサービス提供サーバ6となる(図3のS208参照)。従って、サービス提供サーバXとのセッション時にユーザのコンテクスト情報がサービス提供サーバXのセッションIDに関連づけてセッション管理DBに記憶済みであるから、S306や図9のS602において、HTTPリクエストが、常に、サービス提供サーバXに転送されることとなる。従って、クライアント装置2bにサービスにログインし直したユーザは、クライアント装置2aを用いてサービス提供サーバXと進めていたセッションを、サービス提供サーバXと再び進めることができる。そのため、例えば、ログインし直したとき、図4Bに示す設定画面ではなく、図4Cの案内画面の次に表示されるべき、図4Dの指示待ち画面が表示される。また、セッションを進める操作が行われるたびに、図8のシーケンス図に示すようにして、サービス提供サーバXとのセッションが進められることになる。
図10は、セッション管理サーバ1にて実現される機能群を示す機能ブロック図である。同図に示すように、セッション管理サーバ1では、リクエスト受信部10、リクエスト送信部12、転送部14、受信部16、認証部18、及び応答送信部20、が実現される。リクエスト受信部10、リクエスト送信部12、及び転送部14は、セッション管理サーバ4において、マイクロプロセッサが記憶装置に記憶されるプログラムを実行することにより実現される。受信部16、認証部18、及び応答送信部20は、サービス提供サーバ6において、マイクロプロセッサが記憶装置に記憶されるプログラムを実行することにより実現される。
リクエスト受信部10は、クライアント装置2から送信されたHTTPリクエストを受信する。リクエスト送信部12は、リクエスト受信部10により受信されたHTTPリクエストを、原則、該HTTPリクエスト中のセッションIDにより識別されるサービス提供サーバ6に送信する(図5のS302及びS306等参照)。
受信部16は、セッション管理サーバ4から送信されたHTTPリクエストを受信する。認証部18は、受信部16により受信されたHTTPリクエストにユーザを識別する識別情報(ここでは、ユーザ名)が含まれる場合に、該識別情報に基づいて、該識別情報により識別されるユーザを認証する(図5のS303及び図6参照)。
応答送信部20は、受信部18により受信されたHTTPリクエストデータに応じたHTTPレスポンスをセッション管理サーバ4に返信する。また、転送部14は、リクエスト送信部12によるHTTPリクエストの送信後、そのHTTPリクエストの送信先のサービス提供サーバ6から返信されるHTTPレスポンスを受信し、受信したHTTPレスポンスを、該送信先のサービス提供サーバ6を識別するセッションIDとともに、そのHTTPリクエストの送信元のクライアント装置2に転送する(図5のS304及びS308等参照)。
但し、応答送信部20は、受信部16により受信されたHTTPリクエストにユーザを識別する識別情報が含まれる場合、HTTPレスポンスを、該識別情報に基づき認証部18が認証したユーザに固有のコンテクスト情報とともに、セッション管理サーバ4に送信する(図5のS303参照)。また、転送部14は、リクエスト送信部12によるHTTPリクエストの送信後、そのHTTPリクエストの送信先のサービス提供サーバ6からHTTPレスポンスとともにコンテクスト情報も受信した場合、HTTPレスポンスを、該送信先のサービス提供サーバ6を識別するセッションIDだけでなく、それとともに受信したコンテクスト情報とともに、そのHTTPリクエストの送信元のクライアント装置2に転送する(図5のS304及びS308等参照)。こうすることで、ユーザ認証の完了後は、クライアント装置2から、コンテクスト情報付きでHTTPリクエストが送信されるようにする。
こうした上で、さらに、リクエスト送信部12は、コンテクスト情報を含むHTTPリクエストがリクエスト受信部10により受信されたとき、以下のように、送信先を振り分ける。すなわち、HTTPリクエストに含まれるコンテクスト情報と同一のコンテクスト情報がセッション管理DBに記憶されていない場合、そのHTTPリクエストに含まれるコンテクスト情報とセッションIDとを関連づけてセッション管理DBに記憶し、そのHTTPリクエストを、原則通り、そのHTTPリクエストに含まれるセッションIDにより識別されるサービス提供サーバ6に送信する(図3参照)。一方、HTTPリクエストに含まれるコンテクスト情報と同一のコンテクスト情報がセッション管理DBに記憶されている場合、そのHTTPリクエストを、そのコンテクスト情報に関連づけて記憶されるセッションIDにより識別されるサービス提供サーバ6に送信する(図3参照)。
なお、本発明の実施形態は、上記実施形態だけに限らない。
例えば、セッション管理サーバ4は、S304において、下記の処理を追加で行ってもよい。すなわち、セッション管理サーバ4は、受信したHTTPリスポンス中のクッキー情報に含まれるコンテクスト情報と同一のコンテクスト情報がセッション管理DBに記憶されているか否かを判定してもよい。そして、受信したHTTPレスポンス中のクッキー情報に含まれるコンテクスト情報と同一のコンテクスト情報がセッション管理DBに記憶されていない場合、クッキー情報に含まれるコンテクスト情報を、サービス提供サーバXのセッションIDに関連づけてセッション管理DBに保存してもよい。
また例えば、セッション管理システム1は、セッション管理サーバ4を複数含んでいてもよい。この場合、クライアント装置2は、いずれかのセッション管理サーバ4に、HTTPリクエストを送信すればよい。
1 セッション管理システム、2,2a,2b クライアント装置、4 セッション管理サーバ、6 サービス提供サーバ、8 ユーザデータベース、10 リクエスト受信部、12 リクエスト送信部、14 転送部、16 受信部、20 認証部、22 応答送信部。

Claims (4)

  1. セッション管理装置と、同種のサービスを提供する複数のサービス提供装置と、を含み、
    前記セッション管理装置は、
    クライアント装置から送信されたリクエストデータを受信するリクエスト受信手段と、
    リクエスト受信手段により受信されたリクエストデータを、該リクエストデータ中のセッション情報により特定されるサービス提供装置に送信するリクエスト送信手段と、
    前記リクエスト送信手段によるリクエストデータの送信後、該リクエストデータの送信先のサービス提供装置から返信される応答データを受信し、受信した応答データを、該送信先のサービス提供装置を特定するセッション情報とともに、該リクエストデータの送信元のクライアント装置に転送する転送手段と、
    を含み、
    前記サービス提供装置は、
    前記セッション管理装置から送信されたリクエストデータを受信する受信手段と、
    前記受信手段により受信されたリクエストデータにユーザを識別するユーザ識別情報が含まれる場合に、該ユーザ識別情報に基づいて、該ユーザ識別情報により識別されるユーザを認証する認証手段と、
    前記受信手段により受信されたリクエストデータに応じた応答データを前記セッション管理装置に送信する応答送信手段と、
    を含むセッション管理システムであって、
    前記複数のサービス提供装置それぞれに、
    セッションの進行度を示すセッション進行度を、前記認証されたユーザに固有のユーザ情報に関連づけて記憶するための第1記憶手段がさらに備えられ、
    前記応答送信手段は、
    前記受信手段により受信されたリクエストデータにユーザを識別するユーザ識別情報が含まれる場合、該リクエストデータに応じた応答データを、該ユーザ識別情報に基づき前記認証手段により認証されたユーザに固有のユーザ情報とともに、前記セッション管理装置に送信し、前記受信手段により受信されたリクエストデータに前記ユーザ情報が含まれ、当該ユーザ情報と同一のユーザ情報が前記第1記憶手段に記憶されていない場合、該ユーザ情報を、前記セッション進行度に関連づけて第1記憶手段に記憶するとともに、該リクエストデータに応じた応答データを、該ユーザ情報とともに送信し、前記受信手段により受信されたリクエストデータに前記ユーザ情報が含まれ、該ユーザ情報と同一のユーザ情報が前記第1記憶手段に記憶されている場合、該記憶されたユーザ情報に関連づけられたセッション進行度に応じた応答データを、該ユーザ情報とともに送信し、
    前記セッション管理装置に、
    ユーザ情報をセッション情報に関連づけて記憶するための第2記憶手段がさらに備えられ、
    前記転送手段は、
    前記リクエスト送信手段によるリクエストデータの送信後、該リクエストデータの送信先のサービス提供装置から応答データとともにユーザ情報を受信した場合、受信した応答データを、該送信先のサービス提供装置を特定するセッション情報と該受信したユーザ情報とともに、該リクエストデータの送信元のクライアント装置に転送し、
    前記リクエスト送信手段は、
    前記リクエスト受信手段により受信されたリクエストデータにユーザ情報が含まれるとき、該リクエストデータに含まれるユーザ情報と同一のユーザ情報が前記第2記憶手段に記憶されていない場合は、該リクエストデータに含まれるユーザ情報とセッション情報とを関連づけて前記第2記憶手段に記憶するとともに、該リクエストデータを、該リクエストデータに含まれるセッション情報により特定されるサービス提供装置に送信し、前記リクエスト受信手段により受信されたリクエストデータにユーザ情報が含まれる場合であって、該リクエストデータに含まれるユーザ情報と同一のユーザ情報が前記第2記憶手段に記憶されている場合は、該リクエストデータを、該ユーザ情報に関連づけて前記第2記憶手段に記憶されるセッション情報により特定されるサービス提供装置に送信すること、
    を特徴とするセッション管理システム。
  2. 前記セッション管理装置は、
    前記リクエスト送信手段によるリクエストデータの送信後、該リクエストデータの送信先のサービス提供装置から前記転送手段が前記第2記憶手段に記憶されていないユーザ情報を応答データとともに受信したとき、該転送手段が受信したユーザ情報を、該送信先のサービス提供装置を特定するセッション情報に関連づけて前記第2記憶手段に記憶する手段をさらに含むこと、
    を特徴とする請求項1に記載のセッション管理システム。
  3. クライアント装置から送信されたリクエストデータを受信するリクエスト受信手段と、
    リクエスト受信手段により受信されたリクエストデータを、同種のサービスを提供する複数のサービス提供装置のうち、該リクエストデータ中のセッション情報により特定されるサービス提供装置に送信するリクエスト送信手段と、
    前記リクエスト送信手段によるリクエストデータの送信後、該リクエストデータの送信先のサービス提供装置から返信される応答データを受信し、受信した応答データを、該送信先のサービス提供装置を特定するセッション情報とともに、該リクエストデータの送信元のクライアント装置に転送する転送手段と、
    情報を記憶するための第2記憶手段と、
    を含み、
    前記転送手段は、
    前記リクエスト送信手段によるリクエストデータの送信後、該リクエストデータの送信先のサービス提供装置から応答データとともに、該送信先のサービス提供装置により認証されたユーザに固有のユーザ情報を受信した場合、受信した応答データを、該送信先のサービス提供装置を特定するセッション情報と該受信したユーザ情報とともに、該リクエストデータの送信元のクライアント装置に転送し、
    前記リクエスト送信手段は、
    前記リクエスト受信手段により受信されたリクエストデータにユーザ情報が含まれる場合であって、該リクエストデータに含まれるユーザ情報と同一のユーザ情報が前記第2記憶手段に記憶されている場合は、該リクエストデータを、該ユーザ情報に関連づけて前記第2記憶手段に記憶されるセッション情報により特定されるサービス提供装置に送信
    前記転送手段は、さらに、
    前記リクエスト受信手段により受信されたリクエストデータに前記ユーザ情報が含まれる場合において、該リクエストデータ中のセッション情報により特定されるサービス提供装置が有する第1記憶手段に該ユーザ情報と同一のユーザ情報が記憶されていない場合、該リクエストデータに応じた応答データを受信し、該応答データを該ユーザ情報とともに該リクエストデータの送信元のクライアント装置に転送し、前記第1記憶手段に該ユーザ情報がセッションの進行度を示すセッション進行度と関連付けて記憶されている場合、該記憶されたユーザ情報に関連づけられたセッション進行度に応じた応答データを受信し、該応答データを該ユーザ情報とともに該リクエストデータの送信元のクライアント装置に転送すること、
    を特徴とするセッション管理装置。
  4. 情報を記憶する第2記憶手段を備えたコンピュータを、
    クライアント装置から送信されたリクエストデータを受信するリクエスト受信手段、
    リクエスト受信手段により受信されたリクエストデータを、同種のサービスを提供する複数のサービス提供装置のうち、該リクエストデータ中のセッション情報により特定されるサービス提供装置に送信するリクエスト送信手段、
    前記リクエスト送信手段によるリクエストデータの送信後、該リクエストデータの送信先のサービス提供装置から返信される応答データを受信し、受信した応答データを、該送信先のサービス提供装置を特定するセッション情報とともに、該リクエストデータの送信元のクライアント装置に転送する転送手段、
    として機能させるためのプログラムであって、
    前記転送手段は、
    前記リクエスト送信手段によるリクエストデータの送信後、該リクエストデータの送信先のサービス提供装置から応答データとともに、該送信先のサービス提供装置において認証されたユーザに固有のユーザ情報を受信した場合、受信した応答データを、該送信先のサービス提供装置を特定するセッション情報と該受信したユーザ情報とともに、該リクエストデータの送信元のクライアント装置に転送し、
    前記リクエスト送信手段は、
    前記リクエスト受信手段により受信されたリクエストデータにユーザ情報が含まれるとき、該リクエストデータに含まれるユーザ情報と同一のユーザ情報が前記第2記憶手段に記憶されていない場合は、該リクエストデータに含まれるユーザ情報とセッション情報とを関連づけて前記第2記憶手段に記憶するとともに、該リクエストデータを、該リクエストデータに含まれるセッション情報により特定されるサービス提供装置に送信し、該リクエストデータに含まれるユーザ情報と同一のユーザ情報が前記第2記憶手段に記憶されている場合は、該リクエストデータを、該ユーザ情報に関連づけて前記第2記憶手段に記憶されるセッション情報により特定されるサービス提供装置に送信
    前記転送手段は、さらに、
    前記リクエスト受信手段により受信されたリクエストデータに前記ユーザ情報が含まれる場合において、該リクエストデータ中のセッション情報により特定されるサービス提供装置が有する第1記憶手段に該ユーザ情報と同一のユーザ情報が記憶されていない場合、該リクエストデータに応じた応答データを受信し、該応答データを該ユーザ情報とともに該リクエストデータの送信元のクライアント装置に転送し、前記第1記憶手段に該ユーザ情報がセッションの進行度を示すセッション進行度と関連付けて記憶されている場合、該記憶されたユーザ情報に関連づけられたセッション進行度に応じた応答データを受信し、該応答データを該ユーザ情報とともに該リクエストデータの送信元のクライアント装置に転送する、
    前記プログラム。
JP2013259060A 2013-12-16 2013-12-16 セッション管理システム、セッション管理装置、及びプログラム Expired - Fee Related JP6156116B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2013259060A JP6156116B2 (ja) 2013-12-16 2013-12-16 セッション管理システム、セッション管理装置、及びプログラム
US14/462,042 US9609068B2 (en) 2013-12-16 2014-08-18 Session management system, session management apparatus, and non-transitory computer readable medium
CN201410554258.6A CN104717197B (zh) 2013-12-16 2014-10-17 会话管理系统、会话管理设备和会话管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013259060A JP6156116B2 (ja) 2013-12-16 2013-12-16 セッション管理システム、セッション管理装置、及びプログラム

Publications (2)

Publication Number Publication Date
JP2015115039A JP2015115039A (ja) 2015-06-22
JP6156116B2 true JP6156116B2 (ja) 2017-07-05

Family

ID=53528724

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013259060A Expired - Fee Related JP6156116B2 (ja) 2013-12-16 2013-12-16 セッション管理システム、セッション管理装置、及びプログラム

Country Status (1)

Country Link
JP (1) JP6156116B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7009595B2 (ja) * 2020-11-25 2022-01-25 キヤノン株式会社 情報処理装置、制御方法、およびそのプログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6374300B2 (en) * 1999-07-15 2002-04-16 F5 Networks, Inc. Method and system for storing load balancing information with an HTTP cookie
JP4219967B1 (ja) * 2008-01-15 2009-02-04 株式会社Cskホールディングス 接続管理装置及び接続管理プログラム

Also Published As

Publication number Publication date
JP2015115039A (ja) 2015-06-22

Similar Documents

Publication Publication Date Title
CN109691057B (zh) 经由私人内容分发网络可交换地取回敏感内容
US9053306B2 (en) Authentication system, authentication server, service providing server, authentication method, and computer-readable recording medium
JP4729651B2 (ja) 認証装置,認証方法およびその方法を実装した認証プログラム
EP3251048B1 (en) Executing an operation over file repositories located in different authentication domains using a representational state transfer (rest)-compliant client
JP5511463B2 (ja) 画像形成装置、画像処理システム、画像処理システムを制御する方法、およびプログラム
CN110574350B (zh) 执行优先生成第二因素认证的方法和系统
JP2011039682A (ja) 情報処理システム及びその制御方法、並びにプログラム
US9609068B2 (en) Session management system, session management apparatus, and non-transitory computer readable medium
JP2015069347A (ja) ネットワークシステム、管理サーバシステム、制御方法及びプログラム
KR20210112359A (ko) 브라우저 쿠키 보안
JP4942597B2 (ja) 画像入出力装置、画像処理システム、及び、画像処理制御方法
JP5465621B2 (ja) ストリームデータ配信システム及びその方法
JP5383923B1 (ja) 情報処理装置、情報処理システム、情報処理方法およびプログラム
US10521168B2 (en) Encrypted document printing utilizing multiple networks
JP6156116B2 (ja) セッション管理システム、セッション管理装置、及びプログラム
JP6244771B2 (ja) 情報処理システム、処理装置、分散処理方法、及び、プログラム
JP5400096B2 (ja) 属性情報開示システムおよび属性情報開示方法
JP4305146B2 (ja) 通信制御装置、アプリケーションサーバ、およびプログラム
JP6107641B2 (ja) セッション管理システム、サービス提供装置、及びプログラム
JP6102725B2 (ja) セッション管理システム、動作モード管理装置、及びプログラム
JP6953759B2 (ja) 認証装置、認証方法およびプログラム
JP2008047003A (ja) 情報伝達システム、情報伝達計算機及びプログラム
JP2015191508A (ja) シングルサインオンシステム、シングルサインオン方法
JP5749222B2 (ja) アクセス許可制御システム、アクセス許可制御方法
JP2008217376A (ja) コンテンツ共有方法及びシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160218

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170407

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170509

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170522

R150 Certificate of patent or registration of utility model

Ref document number: 6156116

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees