説明

セッション管理システム、セッション管理装置、サーバ装置およびセッション管理方法

【課題】セッション情報のリアルタイム性を保持し、クライアント端末の要求に対する処理性能を向上させることを課題とする。
【解決手段】認証制御システム10は、業務サーバ20に対して通信要求を行ったクライアント端末30から認証要求を受け付けた場合に、クライアント端末30の通信を許可するか否かの認証を行う。そして、認証制御システム10は、クライアント端末30の通信を許可すると認証した場合に、クライアント端末30と業務サーバ20との通信セッションに関する情報であるセッション情報をセッション管理テーブルに格納する。続いて、クライアント端末30の通信を許可すると認証した後に、業務サーバ20からセッション情報の評価要求があった場合に、セッション情報を業務サーバ20に送信する。さらに、記憶されたセッション情報と複数の業務サーバ20が記憶するセッション情報とが最新のものとなるように同期を要求する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、セッション管理システム、セッション管理装置、サーバ装置およびセッション管理方法に関する。
【背景技術】
【0002】
クライアント端末から業務サーバへのアクセスについて、認証制御システムが認証処理を行ってアクセスを一度許可した場合には、その後、認証処理を行うことなく、クライアント端末が業務サーバにアクセスできるシステムは、シングルサインオンシステムと呼ばれる。このようなシングルサインオンシステムでは、認証制御システムが認証処理を行ってアクセスを許可した場合には、アクセスが許可されたセッションに関する情報であるセッション情報(セッションの識別情報、アクセスされた時刻情報など)を業務サーバが保持する。その後、認証制御システムは、業務サーバへのアクセスを許可されたクライアント端末から業務サーバにアクセスがあった場合には、保持しているセッション情報を評価して、認証処理が必要であるか否かを判定する。シングルサインオンシステムに複数の業務サーバが含まれる場合には、セッションに関する情報を複数の業務サーバ同士で同期して、複数の業務サーバのそれぞれは、同期したセッション情報の評価に基づいて認証処理が必要であるか判定する。
【0003】
また、複数の業務サーバ同士でセッション情報を同期する技術として、クライアント端末が複数のシステムにログインしている場合に、クライアント端末からアクセスを受け付けてセッション情報が変更されると、アクセスを受け付けた業務サーバが、他の業務サーバにセッション情報を送信して、業務サーバ間でセッション情報の同期を行う技術がある。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2006−31064号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上述した従来の技術では、クライアント端末からアクセスを受け付けるたびに、業務サーバ間で通信し、セッション情報を同期する処理を行っているので、クライアント端末からのアクセス回数の増大により、セッション情報を同期するための通信回数が増大するという課題があった。
【課題を解決するための手段】
【0006】
第一の案では、第1の装置が、前記第1の装置に行なわれた第1のアクセスに用いられたセッションを識別する識別情報を、前記第1のアクセスのアクセス時刻から第1の所定時間経過するまで保持する保持手段、を含み、第2の装置が、前記第1の所定時間よりも短い時間である第2の所定時間内に、前記第1のアクセスと同一セッションを用いて前記第2の装置に行なわれた複数のアクセスのうち、最後に行なわれた第2のアクセスについて、アクセス時刻を示す時刻情報を保持する保持手段、を含み、前記第1の装置は、さらに、前記第2の装置の前記保持手段に保持された時刻情報を取得する取得手段、を含み、前記第1の装置に含まれる前記保持手段は、保持した前記識別情報を、さらに、前記取得手段が取得した前記時刻情報に示されるアクセス時刻から前記第1の所定時間経過するまで保持する。
【発明の効果】
【0007】
一態様では、クライアント端末から業務サーバへのアクセスが増大した場合にも、セッション情報の同期のための通信回数の増大を抑制することができる。
【図面の簡単な説明】
【0008】
【図1】図1は、実施例1に係るセッション管理システムの構成を示す図である。
【図2】図2は、認証制御システムがセッション情報を評価する処理を説明する図である。
【図3】図3は、セッション情報をキャッシュする業務サーバがセッション情報を評価する処理を説明する図である。
【図4】図4は、実施例1に係る認証制御システムの構成を示すブロック図である。
【図5】図5は、リポジトリサーバのセッション管理テーブルの一例を示す図である。
【図6】図6は、リポジトリサーバの業務サーバ管理テーブルの一例を示す図である。
【図7】図7は、実施例1に係る業務サーバの構成を示すブロック図である。
【図8】図8は、業務サーバのセッション管理テーブルの一例を示す図である。
【図9】図9は、業務サーバがセッション情報をキャッシュしていない場合に、クライアント端末がコンテンツを要求した場合の処理の図である。
【図10】図10は、業務サーバがセッション情報をキャッシュしている場合に、クライアント端末がコンテンツを要求した場合の処理の図である。
【図11】図11は、セッション情報の同期処理を説明する図である。
【図12】図12は、複数の業務サーバに対するセッション情報の同期処理を説明する図である。
【図13】図13は、同期処理の流れを説明するタイムチャートである。
【図14】図14は、セッション情報を同期する処理を行わない場合の認証処理の流れを説明するタイムチャートである。
【図15】図15は、サインオフ処理を説明する図である。
【図16】図16は、各サーバでのセッション情報を管理する全体の処理の流れを説明するタイムチャートである。
【図17】図17は、実施例1に係る業務サーバの全体の処理動作を示すフローチャートである。
【図18】図18は、実施例1に係るリポジトリサーバの同期処理の監視動作を示すフローチャートである。
【図19】図19は、実施例1に係るリポジトリサーバの同期処理の動作を示すフローチャートである。
【図20】図20は、各サーバを構成するコンピュータのハードウェア構成を示す図である。
【発明を実施するための形態】
【0009】
以下に添付図面を参照して、この発明に係るセッション管理システム、セッション管理装置、サーバ装置およびセッション管理方法の実施例を詳細に説明する。
【実施例1】
【0010】
以下の実施例では、実施例1に係るセッション管理システムの構成および処理の流れを順に説明し、最後に実施例1による効果を説明する。
【0011】
[セッション管理システムの構成]
まず、図1を用いて、実施例1に係るセッション管理システム1の構成を説明する。図1に示すように、このセッション管理システム1は、認証制御システム10、複数の業務サーバ20A、20B、クライアント端末30を有する。
【0012】
認証制御システム10は、リポジトリサーバ10Aおよび認証サーバ10Bを有する。リポジトリサーバ10Aは、認証に使用される認証情報およびセッション情報を管理する。また、認証サーバ10Bは、クライアント端末30の認証要求を受け付けて、認証処理を行う。なお、認証制御システム10の詳しい構成および処理については、図4などを用いて後述する。
【0013】
業務サーバ20A、20Bは、クライアント端末30からコンテンツの要求を受け付け、セッションの情報をキャッシュしていない場合には、認証制御システム10へセッション情報の評価要求を行い、リポジトリサーバ10Aからセッションの情報を受信する。また、業務サーバ20A、20Bは、クライアント端末30からコンテンツの要求を受け付け、セッションの情報をキャッシュしている場合には、キャッシュされたセッションの情報に応じて、レスポンスをする。なお、業務サーバ20の詳しい構成および処理については、図7などを用いて後述する。
【0014】
クライアント端末30は、業務サーバ20A、20Bにコンテンツの要求を送信し、業務サーバ20A、20Bからコンテンツを受信する。また、クライアント端末30は、サインオン時に、認証サーバ10Bに認証要求を送信し、サインオフ時には、認証サーバ10Bにサインオフ要求を送信する。
【0015】
ここで、図2の例を用いて、認証制御システムがセッション情報を評価する処理を具体的に説明する。図2の例では、クライアント端末30から業務サーバ20Aへのアクセスは一度許可されており、アクセスが許可されたセッションに関するセッション情報を認証制御システム10のリポジトリサーバ10Aが記憶している。
【0016】
図2に示すように、業務サーバ20Aは、セッションの情報をキャッシュしていない場合に、クライアント端末30からコンテンツの要求があると、認証制御システム10に対してセッションの評価要求を行う。そして、認証制御システム10は、業務サーバ20Aからセッションの評価要求を受け付けると、セッション情報を用いてセッションを評価し、認証処理が必要であるか否かを判定する。この結果、認証制御システムは、セッション情報から認証処理が必要でないと判定し、セッションの評価結果を業務サーバ20Aに送信する。その後、業務サーバ20Aは、認証制御システム10からセッションの評価結果を受信し、クライアント端末30にコンテンツを返信する。なお、評価要求と評価結果とは、認証サーバを中継しても良い。
【0017】
また、業務サーバ20Aは、セッションの情報をキャッシュしている場合に、クライアント端末30からコンテンツの要求があると、業務サーバ20Aがセッション情報を評価する。ここで、図3の例を用いて、業務サーバ20Aがセッション情報を評価する処理を具体的に説明する。図3の例では、クライアント端末30から業務サーバ20Aへのアクセスは一度許可されており、アクセスが許可されたセッションに関するセッション情報を認証制御システムのリポジトリサーバ10Aおよび業務サーバ20Aが記憶している。
【0018】
また、上述したように、業務サーバ20Aが自装置にキャッシュされたセッション情報を評価する処理を説明する。業務サーバ20Aは、クライアント端末30からコンテンツの要求を受信すると、自装置にキャッシュされたセッション情報を評価し、認証処理が必要であるか否かを判定する。その後、業務サーバ20Aは、認証処理が必要でないと判定し、クライアント端末30にコンテンツを返信する。なお、業務サーバ20Aは、コンテンツの要求を受信した場合には、キャッシュされたセッション情報の一つの情報である最新のアクセスがあった時刻を示す最終アクセス時刻を更新している。
【0019】
ここで、図4を用いて、認証制御システム10の詳しい構成について説明する。図4は、実施例1に係る認証制御システムの構成を示すブロック図である。図4に示すように、認証制御システム10は、リポジトリサーバ10Aおよび認証サーバ10Bを有する。リポジトリサーバ10Aは、通信制御I/F11、制御部12、記憶部13を有し、業務サーバ20および認証サーバ10Bとネットワークなどを介して接続されている。認証サーバ10Bは、通信制御I/F14および制御部15を有する。以下にこれらの各部の処理を説明する。
【0020】
通信制御I/F11は、接続される業務サーバ20および認証サーバ10Bとの間でやりとりする各種情報に関する通信を制御する。具体的には、通信制御I/F11は、業務サーバ20にセッション情報を送信し、認証サーバ10Bから認証結果を受信する。
【0021】
記憶部13は、制御部12による各種処理に必要なデータおよびプログラムを格納し、セッション管理テーブル13aおよび業務サーバ管理テーブル13bを有する。セッション管理テーブル13aは、複数の業務サーバ20とクライアント端末30との通信セッションに関する情報であるセッション情報を記憶する。
【0022】
具体的には、セッション管理テーブル13aは、図5に示すように、セッション情報として、「セッションID」、「最終アクセス時刻」、「キャッシュ無効時刻」を記憶する。ここで、セッションIDとは、セッションを一意に特定するIDであり、最終アクセス時刻とは、クライアント端末30が業務サーバ20に最後にアクセスした時刻であり、キャッシュ無効時刻とは、セッションが無効になる時刻である。
【0023】
業務サーバ管理テーブル13bは、複数の業務サーバ20に関する情報を記憶する。具体的には、業務サーバ管理テーブル13bは、図6に示すように、「検索キー」、「処理状態」、「前回更新時刻」、「セッションID」を記憶する。ここで、検索キーとは、業務サーバ20を特定するための業務サーバのIDであり、処理状態とは、業務サーバ20に対して更新処理中か判断するフラグである。また、前回更新時刻とは、業務サーバ20に対して前回更新処理を行った時刻であり、セッションIDとは、業務サーバ20にアクセスしたクライアント端末30のセッションIDである。
【0024】
制御部12は、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有し、これらによって種々の処理を実行しており、セッション情報格納部12a、セッション情報送信部12b、セッション情報更新部12c、同期要求部12d、消去要求部12eを有する。
【0025】
認証サーバ10Bがクライアント端末30との通信を許可すると認証した場合には、セッション情報格納部12aは、クライアント端末30と業務サーバ20との通信セッションに関する情報であるセッション情報をセッション管理テーブル13aに格納する。
【0026】
セッション情報送信部12bは、認証サーバ10Bによってクライアント端末30の通信を許可すると認証した場合に、業務サーバ20からのセッション情報の評価要求に対して、セッション情報を業務サーバ20に送信する。
【0027】
同期要求部12dは、セッション管理テーブル13aに記憶されたセッション情報と複数の業務サーバ20が記憶するセッション情報とが最新のものとなるように同期を要求する同期要求を定期的に各業務サーバ20にそれぞれ送信する。なお、同期処理の詳しい処理については、後に図11などを用いて詳述する。
【0028】
セッション情報更新部12cは、同期要求部12dによって送信された同期要求の返信として、業務サーバ20から最新のセッション情報を受信した場合には、最新のセッション情報をセッション管理テーブル13aに記憶されたセッション情報を更新する。
【0029】
消去要求部12eは、通信終了要求であるサインオフ要求を受け付けた場合には、各業務サーバ20に対してセッション情報を消去する要求を送信する。なお、サインオフ時の詳しい処理については、後に図15を用いて詳述する。
【0030】
続いて、認証サーバ10Bの構成について説明する。認証サーバ10Bの通信制御I/F14は、接続されるクライアント端末30およびリポジトリサーバ10Aとの間でやりとりする各種情報に関する通信を制御する。具体的には、通信制御I/F14は、クライアント端末30から認証要求を受信し、リポジトリサーバ10Aに認証結果を送信する。
【0031】
制御部15は、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有し、これらによって種々の処理を実行しており、認証部15aを有する。認証部15aは、業務サーバ20に対して通信要求を行ったクライアント端末30から認証要求を受け付けた場合に、クライアント端末30の通信を許可するか否かの認証を行う。
【0032】
次に、図7を用いて、業務サーバ20の詳しい構成について説明する。図7は、実施例1に係る業務サーバの構成を示すブロック図である。図7に示すように、業務サーバ20は、通信制御I/F21、制御部22、記憶部23を有し、認証制御システム10およびクライアント端末30とネットワークなどを介して接続されている。以下にこれらの各部の処理を説明する。
【0033】
通信制御I/F21は、接続される認証制御システム10およびクライアント端末30との間でやりとりする各種情報に関する通信を制御する。具体的には、通信制御I/F21は、認証制御システム10からセッション情報およびセッション情報の同期要求を受信し、クライアント端末30からコンテンツの要求を受信し、クライアント端末30にコンテンツを送信する。
【0034】
記憶部23は、制御部22による各種処理に必要なデータおよびプログラムを格納し、セッション管理テーブル23aを有する。セッション管理テーブル23aは、クライアント端末30との通信セッションに関する情報であるセッション情報を記憶する。
【0035】
具体的には、セッション管理テーブル23aは、図8に示すように、セッション情報として、「セッションID」、「最終アクセス時刻」、「キャッシュ無効時刻」を記憶する。ここで、セッションIDとは、セッションを一意に特定するIDであり、最終アクセス時刻とは、クライアント端末30が業務サーバ20に最後にアクセスした時刻であり、キャッシュ無効時刻とは、セッションが無効になる時刻である。
【0036】
制御部22は、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有し、これらによって種々の処理を実行しており、セッション情報格納部22a、セッション情報更新部22b、セッション情報消去部22cを有する。
【0037】
セッション情報格納部22aは、リポジトリサーバ10Aから送信されたセッション情報を受信すると、セッション管理テーブル23aにセッション情報をキャッシュする。また、セッション情報格納部22aは、クライアント端末30からアクセスがあった場合には、セッション情報管理テーブル23aを更新する。
【0038】
セッション情報更新部22bは、リポジトリサーバ10Aから同期要求を受け付けた場合には、同期要求に含まれたセッション情報と、セッション管理テーブル23aに記憶されたセッション情報とを比較する。そして、セッション情報更新部22bは、同期要求に含まれたセッション情報が最新のセッション情報であると判定された場合には、セッション管理テーブル23aに記憶されたセッション情報を同期要求に含まれたセッション情報に記憶されたセッション情報に更新する。
【0039】
セッション情報消去部22cは、リポジトリサーバ10Aからセッション情報を消去する要求を受信した場合には、セッション管理テーブル23aに格納されたセッション情報を消去する。なお、サインオフ時の詳しい処理については、後に図15を用いて詳述する。
【0040】
ここで、図9を用いて、業務サーバ20がセッション情報をキャッシュしていない場合に、クライアント端末30がコンテンツを要求した場合の処理を説明する。図9は、業務サーバがセッション情報をキャッシュしていない場合に、クライアント端末がコンテンツを要求した場合の処理の図である。また、図9では、クライアント端末30に対して、認証制御システム10が認証処理を既に行っており、業務サーバ20へのアクセスが許可されている。例えば、初めてクライアント端末30からの業務サーバ20Aへリクエストがあった場合、業務サーバ20Aは、セッションの情報をキャッシュしていないため、認証制御システム10へセッションの評価要求を行う。
【0041】
すなわち、図9に示すように、業務サーバ20Aは、コンテンツの要求を受け付けた場合に(図9の(1)参照)、セッションの情報をキャッシュしていないので、セッション情報の評価要求を認証制御システム10へ行う(図9の(2)参照)。そして、リポジトリサーバ10Aは、セッション情報の評価要求に対して、セッション情報を送信する(図9の(3)参照)。ここでは、クライアント端末30の通信を許可する評価結果であったものとする。
【0042】
そして、業務サーバ20は、レスポンスを受信し、レスポンスに含まれるセッション情報を抽出し、セッション情報をキャッシュする(図9の(4)参照)。なお、セッション情報管理テーブル23aがいっぱいの場合、セッションの情報はキャッシュしない。また、業務サーバ20上でキャッシュした情報は、アイドル監視時間の間有効とする。ここで、アイドル監視時間とは、クライアント端末30から業務サーバ20への通信があったかを監視する時間間隔である。アイドル監視時間の間、業務サーバ20に対して、クライアント端末30からコンテンツの要求が無い場合は、認証が自動的に無効になる。業務サーバ20では、アイドル監視時間を、業務サーバ20にキャッシュされた情報がキャッシュ無効時刻を経過していないか監視する時間間隔として使用している。その後、業務サーバ20は、クライアント端末30の通信を許可する認証結果であることから、コンテンツをクライアント端末30に送信する(図9の(5)参照)。
【0043】
次に、図10を用いて、業務サーバがセッション情報をキャッシュしている場合に、クライアント端末がコンテンツを要求した場合の処理を説明する。図10は、業務サーバがセッション情報をキャッシュしている場合に、クライアント端末がコンテンツを要求した場合の処理の図である。
【0044】
例えば、業務サーバ20A上にセッションの情報をキャッシュした後のコンテンツの要求に対しては、キャッシュした情報を用いて、業務サーバ20Aがセッションの状態の評価を行い、その結果を踏まえ、レスポンスを返却する。図10に示すように、業務サーバ20Aはクライアント端末30からコンテンツの要求を受信すると(図10の(1)参照)、クライアント端末30とのセッション情報をキャッシュしているか判定する。この結果、クライアント端末30とのセッション情報をキャッシュしている場合には、最終アクセス時刻を更新して(図10の(2)参照)、コンテンツをクライアント端末30に返信する(図10の(3)参照)。
【0045】
これにより、クライアント端末30のアクセスがあるごとに認証制御システム10へセッション情報の評価要求を行う場合と比較して、レスポンスの性能が向上する。また、この際、業務サーバ20A上のセッションの情報のキャッシュ時間、およびキャッシュしているセッションの情報の中の一つである最終アクセス時刻を更新することにより、業務サーバ20A上でキャッシュしているセッションの情報のリアルタイム性を保持できる。
【0046】
次に、図11を用いて、セッション情報の同期処理について説明する。図11は、セッション情報の同期処理を説明する図である。クライアント端末30から業務サーバ20へのアクセスがあった後、認証制御システム10のリポジトリサーバ10Aは、セッションの情報を同期するためのリクエスト(以下、「同期リクエスト」という)を業務サーバ20Aに送信する(図11の(1)参照)。ここで、同期リクエストは、アイドル監視時間より短い時間(以下、「同期リクエスト送信時間」という)で、定期的に業務サーバ20Aに送信する。同期リクエストには、リクエストを送信する業務サーバ20Aにアクセスしている利用者のセッションの情報を含ませる。
【0047】
そして、同期リクエストを受信した業務サーバは、キャッシュしているセッションの情報と、同期リクエスト内に含まれるセッションの情報の最終アクセス時刻を比較し、比較結果に応じて以下の処理を行った後、リポジトリサーバ10Aへレスポンスを返信する(図11の(2)参照)。
【0048】
つまり、業務サーバ20Aは、比較の結果、キャッシュしているセッションの情報の最終アクセス時刻が新しい場合には、リポジトリサーバ10Aへのレスポンスに、キャッシュしているセッション情報を含ませて、レスポンスを送信する。このとき、業務サーバ20A上のセッションの情報のキャッシュ時間、およびキャッシュしている最終アクセス時刻は更新しない。そして、レスポンスを受信したリポジトリサーバ10Aは、レスポンス内に含まれるセッション情報の最終アクセス時刻およびアイドル監視時間の更新を行う。
【0049】
また、業務サーバ20Aは、比較の結果、キャッシュしているセッションの情報の最終アクセス時刻が古い場合には、キャッシュしている最終アクセス時刻を、同期リクエスト内に含まれるセッションの情報の最終アクセス時刻に更新する。このとき、セッションのキャッシュ無効時刻も併せて更新する。ここで、セッションのキャッシュ無効時刻とは、同期リクエスト内の最終アクセス時間からアイドル監視時間が経過するとセッションが無効となる時刻である。
【0050】
また、業務サーバ20Aからレスポンスを受信したリポジトリサーバ10Aは、レスポンス内に含まれるセッション情報のみ更新を行う。ここで、レスポンスに含まれるセッションの情報は、業務サーバ20Aでキャッシュしている方が新しいセッションの情報のみとなる。更新を行うセッションの情報は、最終アクセス時刻と、アイドル監視時間になる。上記処理により、業務サーバ20Aとリポジトリサーバ10Aで保持している最終アクセス時刻が同じ値になり、セッションの情報のリアルタイム性を保持することができる。また、業務サーバ20Aとリポジトリサーバ10Aの負荷を軽減させるために、業務サーバ20A上に同期対象となるセッションの情報がキャッシュされていない場合には、リポジトリサーバは業務サーバ20Aに同期リクエストは送信しない。
【0051】
次に、図12を用いて、複数の業務サーバに対するセッション情報の同期処理を説明する。図12は、複数の業務サーバに対するセッション情報の同期処理を説明する図である。図12に示すように、業務サーバが複数存在する場合は、クライアントからのリクエストを受信した全ての業務サーバを対象に図11で説明した処理と同じ処理を行う。
【0052】
すなわち、図12に示すように、リポジトリサーバ10Aは、セッション情報の同期リクエストを業務サーバ20Aに送信する(図12の(1)参照)。そして、業務サーバ20Aは、キャッシュしているセッション情報の方が同期リクエストに含まれるセッション情報よりも古い場合には、キャッシュしているセッション情報を更新する(図12の(2)参照)。そして、業務サーバ20Aは、キャッシュしているセッション情報の方が同期リクエストに含まれるセッション情報よりも新しい場合には、キャッシュしているセッション情報をリポジトリサーバ10Aに送信する(図12の(3)参照)。その後、リポジトリサーバ10Aは、業務サーバ20Aから受信したセッション情報を基に、管理しているセッション情報を更新する(図12の(4)参照)。
【0053】
続いて、リポジトリサーバ10Aは、セッション情報の同期リクエストを業務サーバ20Bに送信する(図12の(5)参照)。そして、業務サーバ20Bは、キャッシュしているセッション情報の方が同期リクエストに含まれるセッション情報よりも古い場合には、キャッシュしているセッション情報を更新する(図12の(6)参照)。そして、業務サーバ20Bは、キャッシュしているセッション情報の方が同期リクエストに含まれるセッション情報よりも新しい場合には、キャッシュしているセッション情報をリポジトリサーバ10Aに送信する(図12の(7)参照)。その後、リポジトリサーバ10Aは、業務サーバ20Bから受信したセッション情報を基に、管理しているセッション情報を更新する(図12の(8)参照)。
【0054】
このように、リポジトリサーバ10Aにおけるセッションの情報の更新は、複数の業務サーバ20A、20Bのレスポンスの中から、最新の情報のものを用いて行う。これにより、複数の業務サーバ20A、20Bが存在している場合でも、セッションの情報のリアルタイム性を保持することが可能になる。
【0055】
次に、図13を用いて、同期処理の流れを説明する。図13は、同期処理の流れを説明するタイムチャートである。図13では、クライアント端末30に対して、認証制御システム10が認証処理を既に行っており、業務サーバ20へのアクセスが許可されている。図13に示すように、クライアント端末30からアクセスを受け付けた業務サーバ20Aは、リポジトリサーバ10A(認証制御システム10)にセッション情報の評価要求を送信した後、リポジトリサーバ10Aからレスポンスを受信し、レスポンスに含まれるセッション情報をキャッシュする(図13の(1)参照)。キャッシュしたセッション情報は、最終アクセス時間からアイドル監視時間の間有効とする(図13では「キャッシュ」と記載)。また、リポジトリサーバ10Aは、業務サーバ20Aからの初回の認証要求から所定の時間(図13では、「同期リクエスト送信時間」と記載)ごとに、同期リクエストを送信する。
【0056】
そして、上記と同一のクライアント端末30からアクセスを受け付けた業務サーバ20Bは、リポジトリサーバ10A(認証制御システム)にセッション情報の評価要求を送信した後、リポジトリサーバ10Aからレスポンスを受信する。そして、業務サーバ20Bは、業務サーバ20Aと同様に、レスポンスに含まれるセッション情報をキャッシュする(図13の(2)参照)。ここで、リポジトリサーバ10Aは、業務サーバ20Bがクライアント端末30からアクセスを受けているので、管理するセッション情報の最終アクセス時刻を更新する。
【0057】
そして、リポジトリサーバ10Aは、業務サーバ20Aの同期リクエスト送信時間が経過すると、業務サーバ20Aに同期リクエストを送信する。そして、業務サーバ20Aは、リポジトリサーバ10Aのセッション情報の最終アクセス時刻が新しいので、最終アクセス時刻およびキャッシュ無効時刻を更新する(図13の(3)参照)。
【0058】
続いて、リポジトリサーバ10Aは、業務サーバ20Bの同期リクエスト送信時間が経過すると、業務サーバ20Bに同期リクエストを送信する。そして、業務サーバ20Bは、リポジトリサーバ10Aのセッション情報の最終アクセス時刻とキャッシュするセッション情報の最終アクセス時刻が同じなので、セッション情報の更新は行わない(図13の(4)参照)。
【0059】
そして、リポジトリサーバ10Aは、同様に、業務サーバ20Aの同期リクエスト送信時間が経過すると、業務サーバ20Aに同期リクエストを送信する(図13の(5)参照)。その後、業務サーバ20Bにクライアント端末30からアクセスがあり、業務サーバ20Bがキャッシュするセッション情報が更新されたものとする。そして、リポジトリサーバ10Aは、業務サーバ20Bの同期リクエスト送信時間が経過すると、業務サーバ20Bに同期リクエストを送信する。ここで、業務サーバ20Bは、キャッシュしているセッション情報の最終アクセス時刻の方が同期リクエストに含まれるセッション情報よりも新しいので、セッション情報をレスポンスとしてリポジトリサーバ10Aに送信する。そして、リポジトリサーバ10Aは、レスポンスに含まれたセッション情報を基に、管理するセッション情報を記憶する(図13の(6)参照)。
【0060】
その後、業務サーバ20Aは、キャッシュ無効時刻を経過した後に、クライアント端末30からアクセスを受けた場合に、キャッシュが無効となっているため、初回アクセス時と同様に、リポジトリサーバ10Aにセッションの評価要求を行う。ここで、リポジトリサーバ10Aが管理するセッション情報は、業務サーバ20Bから通知されたセッション情報に更新している。このため、リポジトリサーバ10Aはアイドル監視時間内のリクエストとなり、認証が発生せずに、アクセスを許可するレスポンスを業務サーバ20Bに送信することができる(図13の(7)参照)。
【0061】
このように、認証制御システム10側からセッション情報を同期するリクエストを各業務サーバ20A、20Bへ定期的に送信し、認証制御システム10および各業務サーバ20A、20Bのセッション情報の内容を最新のものにしている。これに対して、セッション情報を同期する処理を行わない場合には、クライアント端末からコンテンツの要求を受信した業務サーバは、最終アクセス時刻を正しく更新できるが、それ以外の業務サーバは最終アクセス時刻を更新できない状態となり、業務サーバ間でキャッシュしているセッションの情報の整合性が取れなくなる。その結果、シングルサインオンシステム全体として、セッション情報のリアルタイム性を保持できない。
【0062】
ここで、セッション情報を同期する処理を行わない場合について、図14を用いて具体的に説明する。図14の例では、業務サーバ20Aおよび業務サーバ20Bが存在する。また、業務サーバ20Aおよび業務サーバ20Bは、セッション情報をそれぞれキャッシュする。さらに、図14の例では、クライアント端末30に対して、認証制御システム10が認証処理を既に行っており、業務サーバ20A、20Bへのアクセスが許可されている。図14に示すように、業務サーバ20Bは、クライアント端末30から初回アクセスがあった場合に、認証制御システムにセッション情報の評価要求を送信する。その後、業務サーバ20Bは、認証制御システムからのレスポンスを受信すると、セッション情報をキャッシュする(図14(1)参照)。
【0063】
また、業務サーバ20Aも同様に、クライアント端末30から初回アクセスがあった場合に、認証制御システム10にセッション情報の評価要求を送信する。その後、業務サーバ20Aは、認証制御システム10からのレスポンスを受信すると、セッション情報をキャッシュする(図14(2)参照)。
【0064】
その後、業務サーバ20Bは、クライアント端末30からアクセスがあった場合に、保持しているキャッシュが有効であるため、業務サーバ20Bでセッションの評価を行うとともに、キャッシュしているセッション情報を更新する。ここで、業務サーバ20Bは、セッション情報の最終アクセス時刻を更新することで、セッションの有効期限が更新される(図14(3)参照)。
【0065】
この際、図14の例では、セッション情報を同期する処理を行わないので、クライアント端末30からリクエストを受け付けた業務サーバ20Bは、リクエストを受け付けたことを業務サーバ20Aに通知しない。このため、業務サーバ20Bは、キャッシュしているセッション情報の最終アクセス時刻を更新できるが、業務サーバ20Aは、最終アクセス時刻を更新できない状態となる(図14の(4)参照)。この結果、業務サーバ20Aは、業務サーバ20Bよりも早くセッション情報の有効期限が切れてしまう。
【0066】
その後、業務サーバ20Aは、業務サーバ20Bよりも早くセッション情報の有効期限が切れてしまい、有効期限が切れた後に、クライアント端末30からアクセスがあった場合に、認証制御システム10にセッション情報の評価要求を送信することとなる。そのとき、認証制御システム10で保持しているセッション情報の最終アクセス時刻も更新されていないため、本来認証が不要なタイミングで、認証が発生してしまう。このように、セッション情報を同期する処理を行わない場合には、シングルサインオンシステム全体として、セッション情報のリアルタイム性を保持できない。これに対して、実施例1に係るセッション管理システム1では、認証制御システム10側からセッション情報を同期するリクエストを各業務サーバ20A、20Bへ定期的に送信し、認証制御システム10および各業務サーバ20A、20Bのセッション情報の内容を最新のものに更新しているので、システム全体として、セッション情報のリアルタイム性を保持できる。
【0067】
次に、図15を用いて、サインオフ処理を説明する。図15は、サインオフ処理を説明する図である。図15に示すように、リポジトリサーバ10Aは、クライアントからのサインオフリクエストがあった場合や、管理者による強制的なサインオフがあった場合に(図15の(1)、(1)’参照)、セッション情報のキャッシュをクリアする要求であるクリア要求を業務サーバ20Aに送信する(図15の(2)参照)。
【0068】
そして、業務サーバ20Aは、クリア要求を受信すると、セッション情報をクリアし(図15の(3)参照)、クリアした結果をリポジトリサーバ10Aに送信する(図15の(4)参照)。また、リポジトリサーバ10Aは、同様に、セッション情報のキャッシュをクリアする要求であるクリア要求を業務サーバ20Bに送信する(図15の(5)参照)。そして、業務サーバ20Bは、クリア要求を受信すると、セッション情報をクリアし(図15の(6)参照)、クリアした結果をリポジトリサーバ10Aに送信する(図15の(7)参照)。その後、リポジトリサーバ10Aは、自装置で保管するセッション情報をクリアし(図15の(8)参照)、サインオフが完了した結果をクライアント端末30または強制的なサインオフを行った管理者に送信する(図15の(9)、(9)’参照)。なお、サインオフ対象のセッションの情報をキャッシュしていない業務サーバ20Cには、このクリア要求は送信しない。
【0069】
次に、図16を用いて、セッション管理システム1全体でのセッションを管理するセッション管理テーブルの更新処理を説明する。図16は、各サーバでのセッション情報を管理する全体の処理の流れを説明するタイムチャートである。図16では、クライアント端末30に対して、認証制御システム10が認証処理を既に行っており、業務サーバ20へのアクセスが許可されている。図16に示すように、クライアント端末30からアクセスを受け付けた業務サーバ20Bは、リポジトリサーバ10A(認証制御システム10)にセッション情報の評価要求を送信した後、リポジトリサーバ10Aからレスポンスを受信し、レスポンスに含まれるセッション情報をキャッシュする(図16の(1)参照)。ここで、リポジトリサーバ10Aは、セッション管理テーブル13aおよび業務サーバ管理テーブル13bを更新し、業務サーバ20Bに対する同期リクエスト送信時間を設定する。
【0070】
その後、クライアント端末30からアクセスを受け付けた業務サーバ20Aは、リポジトリサーバ10A(認証制御システム10)にセッション情報の評価要求を送信した後、リポジトリサーバ10Aからレスポンスを受信し、レスポンスに含まれるセッション情報をキャッシュする(図16の(2)参照)。ここで、リポジトリサーバ10Aは、セッション管理テーブル13aおよび業務サーバ管理テーブル13bを更新し、業務サーバ20Aに対する同期リクエスト送信時間を設定する。
【0071】
そして、業務サーバ20Bにクライアント端末30からアクセスがあり、業務サーバ20Bがキャッシュするセッション情報を更新する(図16の(3)参照)。そして、リポジトリサーバ10Aは、業務サーバ20Bの同期リクエスト送信時間が経過すると、業務サーバ20Bに同期リクエストを送信する。ここで、業務サーバ20Bは、キャッシュしているセッション情報の最終アクセス時刻の方が同期リクエストに含まれるセッション情報よりも新しいので、セッション情報をレスポンスとしてリポジトリサーバ10Aに送信する。そして、リポジトリサーバ10Aは、レスポンスに含まれたセッション情報を基に、管理するセッション情報を更新する(図16の(4)参照)。
【0072】
続いて、リポジトリサーバ10Aは、業務サーバ20Aの同期リクエスト送信時間が経過すると、業務サーバ20Aに同期リクエストを送信する。そして、業務サーバ20Aは、リポジトリサーバ10Aのセッション情報の最終アクセス時刻が新しいので、最終アクセス時刻およびキャッシュ無効時刻を更新する(図16の(5)参照)。
【0073】
その後、業務サーバ20Aにクライアント端末30からアクセスがある。同期リクエストで業務サーバ20Aのキャッシュ無効時刻は更新されているため、このとき、セッションの評価要求は発生せず、業務サーバ20Aがキャッシュするセッション情報を更新する(図16の(6)参照)。
【0074】
[セッション管理システムによる処理]
次に、図17〜図19を用いて、実施例1に係るセッション管理システム1による処理を説明する。図17は、実施例1に係る業務サーバの全体の処理動作を示すフローチャートである。図18は、実施例1に係るリポジトリサーバの同期処理の監視動作を示すフローチャートである。図19は、実施例1に係るリポジトリサーバの同期処理の動作を示すフローチャートである。
【0075】
図17に示すように、業務サーバ20は、リクエストを受け付けると(ステップS101)、リクエストがサインオフリクエストであるか判定する(ステップS102)。この結果、業務サーバ20は、リクエストがサインオフリクエストであると判定した場合には、セッションを削除し(ステップS103)、削除結果をリポジトリサーバ10Aに通知する(ステップS104)。
【0076】
また、業務サーバ20は、リクエストがサインオフリクエストでないと判定した場合には、リクエストが同期リクエストであるか判定する(ステップS105)。この結果、業務サーバ20は、リクエストが同期リクエストであると判定した場合には、キャッシュしているセッション情報の最終アクセス時刻が同期リクエストに含まれるセッション情報の最終アクセス時刻よりも古いか判定する(ステップS106)。この結果、業務サーバ20は、古いと判定された場合には、セッション情報を更新する(ステップS108)。また、業務サーバ20は、古くないと判定された場合には、セッションの最終アクセス時間をレスポンスに含めてリポジトリサーバ10Aに送信する(ステップS107)。
【0077】
また、業務サーバ20は、リクエストが同期リクエストでないと判定した場合には、保護対象コンテンツへのアクセスであるか判定する(ステップS109)。この結果、業務サーバ20は、保護対象コンテンツへのアクセスでないと判定された場合には、認証処理が不要であるため、コンテンツをクライアント端末30に返信する(ステップS110)。また、業務サーバ20は、保護対象コンテンツへのアクセスであると判定した場合には、認証済みであるか判定する(ステップS111)。この結果、業務サーバ20は、認証済みでないと判定した場合には、認証サーバ10Bへ認証を要求する(ステップS112)。
【0078】
その後、業務サーバ20は、認証済みであると判定した場合には、セッション情報の検索を行い(ステップS113)、セッション情報がセッション管理テーブル23aに記憶されているか判定する(ステップS114)。この結果、業務サーバ20は、セッション情報がセッション管理テーブル23aに記憶されていると判定した場合には、キャッシュ無効時刻を過ぎているか判定する(ステップS115)。そして、業務サーバ20は、キャッシュ無効時刻を過ぎていないと判定した場合には、セッション情報を更新し(ステップS117)、クライアント端末30にコンテンツを返信する(ステップS122)。
【0079】
また、業務サーバ20は、キャッシュ無効時刻を過ぎていると判定した場合には、セッション情報を削除する(ステップS116)。また、業務サーバ20は、セッション情報がセッション管理テーブル23aに記憶されていないと判定した場合には、セッション情報の評価要求をしてセッション情報を取得する(ステップS118)。そして、業務サーバ20は、セッション情報が有効であるか判定し(ステップS119)、有効であれば、セッション情報を登録し(ステップS121)、クライアント端末30にコンテンツを返信する(ステップS122)。また、業務サーバ20は、セッション情報が有効でないと判定した場合には、認証サーバ10Bへ認証要求を行う(ステップS120)。
【0080】
次に、図18を用いて、リポジトリサーバ10Aの処理を説明する。図18に示すように、リポジトリサーバ10Aは、業務サーバ管理テーブル13bからデータを一つ取得し(ステップS201)、取得できるデータが存在するか判定する(ステップS202)。
そして、リポジトリサーバ10Aは、データが存在する場合には、処理中のデータであるか判定する(ステップS203)。そして、リポジトリサーバ10Aは、処理中のデータでない場合には、前回更新時から同期リクエスト送信時間が経過しているか判定する(ステップS204)。この結果、前回更新時から同期リクエスト送信時間が経過している場合には、後に図19を用いて詳述する同期処理を行う独立した別プロセスを生成し(ステップS205)、一時的に動作を停止するスリープ状態に移行した後(ステップS206)、S201に戻る。また、S202において、取得できるデータが存在しない場合、S203において、処理中のデータである場合、および、S204において、同期リクエスト送信時間が経過していない場合には、スリープ状態に移行した後(ステップS206)、S201に戻る。
【0081】
次に、図19を用いて、リポジトリサーバ10Aの同期処理の流れを説明する。図19に示すように、リポジトリサーバ10Aは、業務サーバ管理テーブル13bの処理状態を処理中に変更し(ステップS301)、セッション情報を収集する(ステップS302)。そして、リポジトリサーバ10Aは、同期対象セッションが業務サーバ20にあるか判定し(ステップS303)、同期対象セッションがない場合には、業務サーバ管理テーブルから削除する(ステップS304)。
【0082】
そして、リポジトリサーバ10Aは、同期対象セッションがある場合には、同期リクエストを各業務サーバ20に送信し(ステップS305)、セッション情報への反映を行う(ステップS306)。そして、リポジトリサーバ10Aは、業務サーバ管理テーブル13bの処理状態を処理済みに変更し(ステップS307)、処理を終了する。
【0083】
[実施例1の効果]
上述してきたように、認証制御システム10は、業務サーバ20に対して通信要求を行ったクライアント端末30から認証要求を受け付けた場合に、クライアント端末30の通信を許可するか否かの認証を行う。そして、認証制御システム10は、クライアント端末30の通信を許可すると認証した場合に、クライアント端末30と業務サーバ20との通信セッションに関する情報であるセッション情報をセッション情報管理テーブル13aに格納する。その後、認証制御システム10は、業務サーバ20からセッション情報の評価要求を受信した場合に、セッション情報を業務サーバ20に送信する。さらに、認証制御システム10は、記憶されたセッション情報と複数の業務サーバ20が記憶するセッション情報とが最新のものとなるように同期を要求する。この結果、認証制御システム10は、複数の業務サーバ20A、20Bが存在する場合であっても、セション管理システム1全体としてセッション情報のリアルタイム性を保持し、クライアント端末30の要求に対する処理性能を向上させることが可能である。
【0084】
また、実施例1によれば、認証制御システム10は、クライアント端末30から業務サーバ20への通信があったかを監視する処理を行うアイドル監視時間よりも短い時間間隔で、セッション情報管理テーブル13aに記憶されたセッション情報と業務サーバ20が記憶するセッション情報との同期を要求する同期要求を業務サーバ20に送信する。このため、認証制御システム10は、アイドル監視時間経過時にセッション情報が無効化される前に、セッション情報が最新のものとなるように同期を行うことができる。このため、認証制御システム10は、各業務サーバ20A、20Bとの間で適切にセッション情報を同期させ、最新の同期情報を記憶させることができ、セション管理システム1全体としてセッション情報のリアルタイム性を保持し、クライアント端末30の要求に対する処理性能を向上させることが可能である。
【0085】
また、実施例1によれば、認証制御システム10は、送信した同期要求の返信として、業務サーバ20から最新のセッション情報を受信した場合には、最新のセッション情報を基に、セッション情報管理テーブル13aに記憶されたセッション情報を更新する。このため、認証制御システム10は、各業務サーバ20A、20Bとの間で適切にセッション情報を同期させ、最新の同期情報を記憶させることができ、セション管理システム1全体としてセッション情報のリアルタイム性を保持し、クライアント端末30の要求に対する処理性能を向上させることが可能である。
【0086】
また、実施例1によれば、認証制御システム10は、通信終了要求を受け付けた場合には、各業務サーバ20に対してセッション情報を消去する要求を送信する。このため、認証制御システム10は、セッション情報を適切に消去することが可能である。
【0087】
ところで、図4に示したリポジトリサーバ10Aの各構成要素、認証サーバ10Bの各構成要素、図7に示した業務サーバ20の各構成要素は機能概念的なものである。このため、図4や図7に示した各構成要素は、必ずしも図示の如く構成されていることを要しない。すなわち、各構成要素の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、図4のリポジトリサーバ10Aに含まれる記憶部13の機能をその他のサーバに持たせても良い。
【0088】
なお、図4、図7に示した各装置の機能をハードウェアもしくはソフトウェアのどちらでも実装することもできる。ここでは一例として、図4に示したリポジトリサーバ10Aを構成するコンピュータのハードウェア構成を、図20にて示す。
【0089】
図20に示すように、このコンピュータ200は、各種演算処理を実行するCPU(Central Processing Unit)210と、ユーザからのデータの入力を受け付ける入力装置220と、モニタ230を有する。また、コンピュータ200は、記憶媒体からプログラム等を読取る媒体読み取り装置240と、ネットワークを介して他のコンピュータとの間でデータの授受を行うネットワークインターフェース装置250を有する。また、コンピュータ200は、各種情報を一時記憶するRAM(Random Access Memory)260と、ハードディスク装置270を有する。各装置210〜270は、バス280に接続される。
【0090】
そして、ハードディスク装置270には、図4に示したセッション情報格納部12a、セッション情報送信部12b、セッション情報更新部12c、同期要求部12d、消去要求部12eと同様の機能を有するセッション管理プログラム270aを記憶する。また、ハードディスク装置270は、図4に示したセッション管理テーブル13aおよび業務サーバ管理テーブル13bに対応するセッション管理データ270bを記憶する。また、RAM260上にセッション管理データ260bを保持させ、CPU210が必要に応じてRAM260上に保持されたセッション管理データ260bを読み出すように構成してもよい。
【0091】
CPU210がセッション管理プログラム270aをハードディスク装置270から読み出してRAM260に展開することで、セッション管理プログラム270aは、セッション管理プロセス260aとして機能する。そして、セッション管理プロセス260aは、セッション管理データ270bをRAM260に読み出し、各種のセッション管理処理を実行する。
【0092】
なお、上記セッション管理プログラム270aは、必ずしもハードディスク装置270に格納されている必要はない。例えば、CD−ROM等の記憶媒体に記憶されたセッション管理プログラム270aを、コンピュータ200が読み出して実行するようにしてもよい。また、公衆回線、インターネット、LAN(Local Area Network)、WAN(Wide Area Network)等にこのセッション管理プログラム270aを記憶させておき、コンピュータ200がこれらからセッション管理プログラム270aを読み出して実行するようにしてもよい。
【符号の説明】
【0093】
1 セッション管理システム
10 認証制御システム
10A リポジトリサーバ
10B 認証サーバ
11 通信制御I/F
12 制御部
12a セッション情報格納部
12b セッション情報送信部
12c セッション情報更新部
12d 同期要求部
12e 消去要求部
13 記憶部
13a セッション管理テーブル
13b 業務サーバ管理テーブル
14 通信制御I/F
15 制御部
15a 認証部
20 業務サーバ
21 通信制御I/F
22 制御部
22a セッション情報格納部
22b セッション情報更新部
22c セッション情報消去部
23 記憶部
23a セッション管理テーブル
30 クライアント端末

【特許請求の範囲】
【請求項1】
第1の装置及び第2の装置を含むセッション管理システムであって、
前記第1の装置が、
前記第1の装置に行なわれた第1のアクセスに用いられたセッションを識別する識別情報を、前記第1のアクセスのアクセス時刻から第1の所定時間経過するまで保持する保持手段、を含み、
前記第2の装置が、
前記第1の所定時間よりも短い時間である第2の所定時間内に、前記第1のアクセスと同一セッションを用いて前記第2の装置に行なわれた複数のアクセスのうち、最後に行なわれた第2のアクセスについて、アクセス時刻を示す時刻情報を保持する保持手段、を含み、
前記第1の装置は、さらに、
前記第2の装置の前記保持手段に保持された時刻情報を取得する取得手段、を含み、
前記第1の装置に含まれる前記保持手段は、
保持した前記識別情報を、さらに、前記取得手段が取得した前記時刻情報に示されるアクセス時刻から前記第1の所定時間経過するまで保持すること
を特徴とするセッション管理システム。
【請求項2】
クライアント装置、第1の装置、第2の装置、及び第3の装置を含むセッション管理システムであって、
前記クライアント装置が、
前記第1の装置及び前記第2の装置へのアクセス処理を行なう処理手段、を含み、
前記第1の装置が、
前記第1の装置に行なわれた第1のアクセスに用いられたセッションを識別する識別情報を、前記第1のアクセスのアクセス時刻から所定時間保持する保持手段、を含み、
前記第2の装置が、
前記第1のアクセスよりも後に、前記第1のアクセスと同一セッションを用いて前記第2の装置に行なわれた第2のアクセスについてのアクセス時刻を示す時刻情報を、前記第3の装置に送信する送信手段、を含み、
前記第3の装置が、
前記第2の装置から受信した時刻情報を、前記第1の装置に通知する通知手段、を含み、
前記第1の装置に含まれる前記保持手段は、
保持した前記識別情報を、さらに、前記第2の装置から通知された前記時刻情報に示されるアクセス時刻から前記所定時間保持すること
を特徴とするセッション管理システム。
【請求項3】
前記第1の装置が、
前記第1の装置に行なわれた第3のアクセスに対して、前記第3のアクセスに用いられたセッションを識別する識別情報が前記保持手段に保持されている場合に、応答を行なう応答手段
をさらに含むことを特徴とする請求項2に記載のセッション管理システム。
【請求項4】
前記第1の装置が、
前記第1のアクセスについてのアクセス時刻を示すアクセス時刻情報を、前記第3の装置に送信する送信手段を、さらに含み、
前記第3の装置に含まれる前記通知手段が、
前記第2の装置から受信した時刻情報を、前記第1の装置から受信したアクセス時刻情報に示されるアクセス時刻から前記所定時間経過する前に、前記第1の装置に通知すること
を特徴とする請求項2又は請求項3に記載のセッション管理システム。
【請求項5】
第1のアクセスに用いられたセッションを識別する識別情報を前記第1のアクセスのアクセス時刻から所定時間経過するまで保持する第1の装置、及び第2の装置と通信可能なセッション管理装置であって、
前記第1の装置から、前記第1のアクセスのアクセス時刻を示す第1の時刻情報を取得する第1の取得手段と、
前記第2の装置から、前記第1のアクセスよりも後に、前記第1のアクセスと同一セッションを用いて前記第2の装置に行なわれた第2のアクセスについてのアクセス時刻を示す第2の時刻情報を取得する第2の取得手段と、
前記第2の取得情報を、前記第1の時刻情報に示されるアクセス時刻から前記所定時刻経過する前に、前記第1の装置に通知する通知手段と
を含むことを特徴とするセッション管理装置。
【請求項6】
クライアント装置から、同一のセッションでアクセス可能なサーバ装置群に含まれるサーバ装置であって、
前記サーバ装置に行なわれた第1のアクセスに用いられたセッションを識別する識別情報を第1の所定時間保持する保持手段と、
前記第1の所定時間よりも短い時間である第2の所定時間の間隔で、他のサーバ装置から、前記他のサーバ装置に対して前記第1のアクセスと同じセッションを用いて前記第2の所定時間内に行なわれた複数のアクセスのうちの第2のアクセスのアクセス時刻を示す時刻情報を取得する取得手段と、
前記保持手段は、さらに、
取得した前記時刻情報が、前記第1のアクセスのアクセス時刻よりも後の時刻である場合に、前記第1のアクセスのアクセス時刻から前記所定時間経過するまで前記識別情報を保持すること
を特徴とするサーバ装置。
【請求項7】
第1の装置及び第2の装置を含むセッション管理システムがセッションを管理するセッション管理方法であって、
前記第1の装置が、
前記第1の装置に行なわれた第1のアクセスに用いられたセッションを識別する識別情報を、前記第1のアクセスのアクセス時刻から第1の所定時間経過するまで保持し
前記第2の装置が、
前記第1の所定時間よりも短い時間である第2の所定時間内に、前記第1のアクセスと同一セッションを用いて前記第2の装置に行なわれた複数のアクセスのうち、最後に行なわれた第2のアクセスについて、アクセス時刻を示す時刻情報を保持し、
前記第1の装置が、
前記所定時間よりも短い時間の間隔で、前記第2の装置に保持された時刻情報を取得し、
前記第1の装置が保持した前記識別情報を、さらに、取得した前記時刻情報に示されるアクセス時刻から前記第1の所定時間経過するまで保持すること
を特徴とするセッション管理方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate


【公開番号】特開2012−146083(P2012−146083A)
【公開日】平成24年8月2日(2012.8.2)
【国際特許分類】
【出願番号】特願2011−3330(P2011−3330)
【出願日】平成23年1月11日(2011.1.11)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】