(57)【要約】【課題】アプリケーションにおけるクライアントの利便性を向上させる。【解決手段】サーバ１００が、クライアントからのセッション要求に基づき、セッションの情報を管理するセッション情報オブジェクト１２２、およびクライアントの送信データを管理するデータ情報オブジェクト１２３を記憶部１２０上に生成し、各オブジェクトを一意に識別する識別子と、記憶部１２０上の有効期間を管理する情報を各オブジェクトに付与し、有効期間を超過したオブジェクトを無効化する。サーバ１００とクライアントとの間で送受信される情報は各識別子の情報を含み、サーバ１００はクライアントから受信した識別子に対応するオブジェクトが有効か否かを判別する。セッション情報オブジェクト１２２が無効、かつデータ情報オブジェクト１２３が有効であった場合には、サーバ１００はセッション情報オブジェクト１２２を新たに生成又は更新する。【選択図】図２
2008027202.tif 000002
【特許請求の範囲】
【請求項１】
サーバとクライアントとが通信して実行されるアプリケーションにおいて、前記サーバが、前記クライアントとのセッションを管理するセッション管理方法であって、
前記サーバは、
前記クライアントから受信したセッション要求に基づいて、当該クライアントとのセッションの情報を管理する第一の情報、および当該クライアントから受信したデータを管理する第二の情報を所定の記憶手段に生成し、
前記第一の情報には、当該第一の情報を一意に識別する第一の識別子を付与し、前記第二の情報には、当該第二の情報を一意に識別する第二の識別子、および当該第二の情報に対応する前記第一の情報の前記第一の識別子を付与し、
前記付与した前記第一の識別子および前記第二の識別子を、前記セッション要求のあったクライアントへ送信し、
前記第一の情報および前記第二の情報に対して、それぞれ有効期間を管理する情報を付与し、
前記第一の情報および前記第二の情報に含まれる有効期間を管理する情報を所定の間隔で検証して、有効期間外となった前記第一の情報または前記第二の情報を前記記憶手段から取得不可能にすることで当該第一の情報または当該第二の情報を無効とし、
前記クライアントから受信した情報に含まれる前記第一の識別子および前記第二の識別子に基づいて、前記記憶手段を参照して照合し、それぞれの識別子に対応する有効な前記第二の情報を少なくとも取得することで、前記クライアントを識別し、
前記受信した第一の識別子に対応する第一の情報が無効、かつ前記受信した第二の識別子に対応する第二の情報が有効であった場合に、前記第一の情報を新たに生成または更新し、
前記新たに生成または更新した第一の情報に対応する第一の識別子を新たに生成または更新して前記第一の情報に付与し、
前記新たに生成または更新した第一の情報に有効期間を管理する情報を付与し、
前記新たに生成または更新した第一の識別子を、対応する前記第二の識別子と共に、前記クライアントに送信する
ことを特徴とするセッション管理方法。
【請求項２】
前記サーバは、
前記受信した第一の識別子に対応する第一の情報が無効、かつ前記受信した第二の識別子に対応する第二の情報が有効であった場合に、前記クライアントに対して認証を行い、
前記認証が成功した場合に、前記第一の情報を新たに生成または更新し、
前記新たに生成または更新した第一の情報に対応する第一の識別子を新たに生成または更新して前記第一の情報に付与し、
前記新たに生成または更新した第一の情報に有効期間を管理する情報を付与し、
前記新たに生成または更新した第一の識別子を、対応する前記第二の識別子と共に、前記クライアントに送信する
ことを特徴とする請求項１に記載のセッション管理方法。
【請求項３】
サーバとクライアントとが通信して実行されるアプリケーションにおいて、前記クライアントとのセッションを管理する前記サーバであって、
前記クライアントから受信したセッション要求に基づいて、当該クライアントとのセッションの情報を管理する第一の情報、および当該クライアントから受信したデータを管理する第二の情報を所定の記憶手段に生成する情報生成部と、
前記第一の情報には、当該第一の情報を一意に識別する第一の識別子を付与し、前記第二の情報には、当該第二の情報を一意に識別する第二の識別子、および当該第二の情報に対応する前記第一の情報の前記第一の識別子を付与する識別子生成部と、
前記第一の情報および前記第二の情報に対して、それぞれ有効期間を管理する情報を付与する有効期間管理情報生成部と、
前記付与した前記第一の識別子および前記第二の識別子を、前記セッション要求のあったクライアントへ送信する送受信部と、
前記第一の情報および前記第二の情報に含まれる有効期間を管理する情報を所定の間隔で検証して、有効期間外となった前記第一の情報または前記第二の情報を前記記憶手段から取得不可能にすることで当該第一の情報または当該第二の情報を無効とする情報管理部と、
前記クライアントから受信した情報に含まれる前記第一の識別子および前記第二の識別子に基づいて、前記記憶手段を参照して照合し、それぞれの識別子に対応する有効な前記第二の情報を少なくとも取得することで、前記クライアントを識別するクライアント識別部とを有し、
前記受信した第一の識別子に対応する第一の情報が無効、かつ前記受信した第二の識別子に対応する第二の情報が有効であった場合に、前記情報生成部が前記第一の情報を新たに生成または更新し、
前記識別子生成部が、前記新たに生成または更新した第一の情報に対応する第一の識別子を新たに生成または更新して前記第一の情報に付与し、
前記有効期間管理情報生成部が、前記新たに生成または更新した第一の情報に有効期間を管理する情報を付与し、
前記送受信部が、前記新たに生成または更新した第一の識別子を、対応する前記第二の識別子と共に、前記クライアントに送信する機能
を有することを特徴とするサーバ。
【請求項４】
前記受信した第一の識別子に対応する第一の情報が無効、かつ前記受信した第二の識別子に対応する第二の情報が有効であった場合に、前記クライアントに対して認証を行うクライアント認証部を有し、
前記認証が成功した場合に、前記情報生成部が、前記第一の情報を新たに生成または更新し、
前記識別子生成部が、前記新たに生成または更新した第一の情報に対応する第一の識別子を新たに生成または更新して前記第一の情報に付与し、
前記有効期間管理情報生成部が、前記新たに生成または更新した第一の情報に有効期間を管理する情報を付与し、
前記送受信部が、前記新たに生成または更新した第一の識別子を、対応する前記第二の識別子と共に、前記クライアントに送信する機能
を有することを特徴とする請求項３に記載のサーバ。
【請求項５】
請求項１または請求項２に記載のセッション管理方法を、コンピュータに実行させる
ことを特徴とするセッション管理プログラム。
【請求項６】
請求項５に記載のセッション管理プログラムを記録した、コンピュータに読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーションにおけるセッション管理の技術に関する。
【背景技術】
【０００２】
従来、Ｗｅｂサーバ（以下、「サーバ」と適宜記載）の提供するＷｅｂアプリケーションを用いるＷｅｂクライアント（以下、「クライアント」と適宜記載）は、有線ＬＡＮ（Local Area Network）に接続されたデスクトップＰＣ（Personal Computer）が主であった。しかし近年では、ノートＰＣや携帯電話等のモバイル端末の普及により、これらをクライアントとして、無線ＬＡＮや携帯電話網等を介してＷｅｂアプリケーションを利用する機会が増加している。
【０００３】
サーバおよびクライアントは通常、ＨＴＴＰ（HyperText Transfer Protocol）を用いて通信する。その場合、例えばオンラインショッピングサイト等に代表されるように、クライアントは複数のＷｅｂページに対してページ要求（リクエスト）を行う。
このＨＴＴＰは、ページ要求に対して応答を返すだけのステートレス（stateless）なプロトコルであるため、サーバ側では、クライアントのページ要求毎に、送信してきたクライアントの識別と、クライアントが送信してきたデータの保持とを行う必要がある。そのため、サーバは、識別子を利用してクライアントを識別し、セッション中にクライアントから送信されたデータをメモリ上で保持するというセッション管理機能を持ち、それによってクライアントを識別したデータ保持を行っている。
従来のＷｅｂアプリケーションにおけるセッション管理の処理の流れを、図１０にシーケンス図で示す。なお、公知のセッション管理機能の例としては、マイクロソフト社のＡＳＰ（Active Server Pages）、サン・マイクロシステムズ社のＪＳＰ（Java（登録商標） Server Pages）やサーブレット等で提供される機能が挙げられる。
【０００４】
従来のセッション管理では、サーバは、自身のＷｅｂアプリケーションにログインするクライアントによるログインページ要求（リクエスト）を受信したら、ログインのためのページをクライアントに送信する。その後、サーバはクライアントから認証情報を伴うページ要求を受信したら、クライアントからの認証情報を検証する。そして、メモリ上にセッション管理用のオブジェクト（セッション・データ情報オブジェクト）を生成し、生成したオブジェクトに対応する識別子であるＩＤを付与し、付与したＩＤをレスポンスメッセージのヘッダ部に付加して、要求されたページである「HTML1」をクライアントに送信する。
クライアントは、受信したレスポンスメッセージに含まれる「HTML1」に基づいてブラウザの画面に表示されたフォームに、データを入力して、サーバに次のページ要求を送信する。その際、サーバへのページ要求には、レスポンスメッセージのヘッダ部に付加されていたＩＤが付加される。
【０００５】
サーバは、クライアントから受信したページ要求に含まれるＩＤと、自身のメモリ上のオブジェクトに付与されているＩＤとを照合することで、クライアントを識別し、有効期間内のオブジェクトを取得し、更新日時を更新する。また、クライアントから送信されてきたデータを、ＩＤに対応するオブジェクトに格納して、データを保持する。データを格納した後、サーバはレスポンスメッセージのヘッダ部にＩＤを付加して、要求されたページである「HTML2」をクライアントに送信する。
【０００６】
従来のセッション管理では、セッションの有効期間は、サーバのメモリ上でデータが格納されるオブジェクトの有効期間と同じとなっている。例えば、図１０では、セッションの有効期間を、例として５分に設定している。
この図１０の中程において、サーバが「HTML2」をクライアントに送信（Ｓ１００１）した後、クライアントがページ要求を６分中断（未操作時間６分間）する（Ｓ１００２）と、最後にオブジェクトが取得された時刻（更新日時）の５分後には当該オブジェクトの有効期間を超過するため、サーバは、メモリ上の当該オブジェクトを無効化する（Ｓ１００３）。これにより、クライアントのセッションは終了する（セッションタイムアウト）。オブジェクトが無効化された後は、サーバは、当該オブジェクトが保持するデータを取得できない。つまり、セッションタイムアウトと、クライアントが送信したデータの消失とは同等となっているため、セッションタイムアウト後に、クライアントがページ要求を再開した場合（Ｓ１００４）には、クライアントは再度ログインし直して改めて「HTML1」のフォームに入力し、データの送信を行わなければならない（Ｓ１００５）。
【０００７】
特許文献１は、クライアントにおける利用者の初回ページ要求の後、利用者の操作とは無関係に、一定間隔でページ要求の送受信を繰り返すことでセッションを存続させるようにした技術を開示している。
特許文献２は、セッションを識別するためのセッションＩＤを作成し、そのセッションＩＤを含むＣｏｏｋｉｅ作成要求メッセージをクライアントへ送信する。それにより、セッションＩＤを用いてクライアントを識別する技術を開示している。
【特許文献１】特開２００３−２３３５８５号公報（図５）
【特許文献２】特開２００５−１０９１３号公報（図１）
【発明の開示】
【発明が解決しようとする課題】
【０００８】
従来のセッション管理機能では、ＩＤが盗聴されたときに生じるセッションハイジャック等のセキュリティリスク低減や、サーバのメモリリソース解放のために、セッションの有効期間は数分間と短く設定されている。
【０００９】
特許文献１に記載の技術では、クライアントのブラウザが終了されたり、移動等によってページ要求の送受信が行えない状態になったりした場合には、セッションの有効期間が過ぎれば、サーバに送信したデータは無効化されてしまう。その場合、クライアントは、再度入力フォームにデータを入力しなおして、サーバに送信する必要が生じる。
また、特許文献２に記載の技術では、セッションの有効期間とクライアントの送信データとが１つのオブジェクトで管理されている。この場合、移動等によりクライアントのページ要求がたびたび中断するモバイル環境のように、セッションタイムアウトが頻繁に起こりうる環境では、セッションタイムアウトの度に、サーバのデータが失われてしまうので、クライアントはその都度、入力フォームのデータを入力しなおして、サーバに送信しなければならない。
【００１０】
このようにセッションタイムアウトが度々起こりうる環境では、セッション中にクライアントがサーバに送信したデータは、セッションタイムアウトの度に失われてしまう。そのためクライアントは、その都度入力フォームのデータを送信しなおす必要が生じており、クライアントから見たＷｅｂアプリケーションの利便性は、高いものとはいえなかった。
この課題を解決するために、セッションの有効期間を無期限に長くする方法も考えられるが、この方法では、メモリリソースを無期限に浪費することに加え、Ｗｅｂアプリケーションのセキュリティリスクも高まることから、有効ではない。
【００１１】
そこで、本発明は、前記問題に鑑み、サーバとクライアントとが通信して実行されるアプリケーションにおいて、セキュリティ性を保ちながら、クライアントの利便性を向上させることを課題とする。
【課題を解決するための手段】
【００１２】
前記課題を解決するため、本発明による解決手段の一つは、サーバとクライアントとが通信して実行されるアプリケーションにおいて、サーバが、クライアントからのセッション要求に基づき、セッションの情報を管理する第一の情報と、クライアントからの受信データを管理する第二の情報とを記憶手段上に生成し、それぞれを一意に識別する識別子（第一・第二の識別子）と、記憶手段上での有効期間を管理する情報とを付与する。
サーバは、第一の情報および第二の情報に含まれる有効期間を管理する情報を所定の間隔で検証し、有効期間外となったものを取得不可能とすることで無効化する。
サーバとクライアントとの送受信は、各識別子が付加された情報を含む。サーバは、クライアントから受信した識別子と照合することで、有効な第一の情報または第二の情報を取得し、クライアントを識別する。第一の情報が無効、かつ第二の情報が有効であった場合には、サーバは第一の情報を新たに生成または更新する。
なお、「オブジェクトが有効」とは、「オブジェクトがアプリケーションプログラムにおいて適正に使用可能」を示し、「オブジェクトが無効」とは、「オブジェクトがアプリケーションプログラムにおいて取得不可能（使用不可）」を示す。
【００１３】
これにより、サーバは、第二の情報に保持されているデータを継続して利用し、セッションタイムアウト後でもクライアントが要求した情報を送信できる。その結果、セッションタイムアウトの度に、クライアントが送信したデータを再度入力しなおす必要がなくなり、利便性が向上される。
【００１４】
さらに、第一の情報が無効、かつ第二の情報が有効であった場合に、第一の情報を新たに生成または更新する前に、サーバがクライアントの認証を行うことによって、２つの識別子が盗聴されたときの、セッションハイジャック等の不正アクセスに対するセキュリティリスクを低減できる。
【発明の効果】
【００１５】
本発明によれば、サーバとクライアントとが通信して実行されるアプリケーションにおいて、セキュリティ性を保ちながら、クライアントの利便性を向上させることができる。
【発明を実施するための最良の形態】
【００１６】
本発明を実施するための最良の形態（以下「実施形態」とする）を詳細に説明する。
本実施形態の説明では、サン・マイクロシステムズ社のサーブレットを使用して実装した、ショッピングサイトのＷｅｂアプリケーションを例として用いる。サーブレットでは、セッションの有効期間の管理とデータ保持を行うオブジェクトは、Ｊａｖａ（登録商標）言語で実装されたクラスのオブジェクトとして実現される。
【００１７】
（第１実施形態）
図１は、本発明の実施形態におけるハードウェアおよびネットワークの構成例を示す図である。
本実施形態では、一般的なコンピュータであるクライアント２００のブラウザにＷｅｂアプリケーションを提供するサーバ１００に対し、クライアント２００が、ネットワーク３００を介してページ要求（リクエスト）する。そして、ページ要求処理の途中に、クライアント２００が相当時間、サーバ１００との通信を行わず（例えば移動等）、ページ要求が中断された後、同じクライアント２００がクライアント２００Ａとして、サーバ１００にページ要求を再開する場合を想定する。なお、クライアント２００は、ノートＰＣや携帯端末等でもよい。
【００１８】
図２は、本実施形態において、図１におけるサーバの機能を示すブロック図である。適宜、図１を参照しつつ、図２について説明する。
サーバ１００は、送受信部１１０、記憶部（記憶手段）１２０、制御部１５０から構成される。
送受信部１１０は、例えば通信インタフェース等から構成され、クライアント２００（図１参照）からネットワーク３００（図１参照）を介して送信されてきた情報を取得して制御部１５０へ出力したり、制御部１５０からの情報を取得してネットワーク３００を介してクライアント２００へ情報を送信したりする処理を行う。
【００１９】
記憶部１２０は、演算処理に使用される一時的な記憶領域であるＲＡＭ（Random Access Memory）等のメモリと、ＨＤＤ（Hard Disk Drive）等の補助記憶領域とを備える。
メモリには、オブジェクトの有効期間を格納する有効期間情報１２１と、クライアント２００のセッション（ページ）要求に応じて生成されるオブジェクトとして、セッション情報オブジェクト（第一の情報）１２２およびデータ情報オブジェクト（第二の情報）１２３とを備える。
セッション情報オブジェクト１２２は、クライアント２００とのセッションの情報を管理するオブジェクトである。
データ情報オブジェクト１２３は、クライアント２００から送信されてきたデータを管理するオブジェクトである。
【００２０】
補助記憶領域には、図示しないが、Ｗｅｂアプリケーションプログラム、セッション管理プログラム、制御部１５０の処理結果等が格納される。本実施形態におけるセッション管理プログラムは、Ｗｅｂアプリケーションプログラム起動に伴い起動されるものとし、メモリに読み込まれ、制御部１５０が機能することによってセッション管理プログラムが実行される。
【００２１】
本実施形態では、サーバ１００のＷｅｂアプリケーションプログラムの起動時に、セッションおよびデータのメモリ上での有効期間を、サーバ１００で予め設定する。このとき、セッションの有効期間とは、当該のセッションを管理するオブジェクト（セッション情報オブジェクト１２２）のメモリ上での有効期間であり、この期間を超過すると当該オブジェクトは無効化される。また、データの有効期間とは、クライアントから送信されたデータを管理するオブジェクト（データ情報オブジェクト１２３）がメモリ上で保持される期間であり、この期間を超過すると当該オブジェクトは無効化される。
有効期間として設定された情報は、セッション管理プログラムと共にメモリに読み込まれ、有効期間情報１２１として用いられる。
【００２２】
図３は、有効期間情報に格納される情報の例を示す図である。適宜、図２を参照しつつ、図３について説明する。有効期間情報１２１は、セッション情報オブジェクト１２２（図２参照）の有効期間と、データ情報オブジェクト１２３（図２参照）の有効期間との情報が格納される。本実施形態では、例として、セッション情報オブジェクト１２２の有効期間を１分、データ情報オブジェクト１２３の有効期間（保持期間）を１０分として説明する。
【００２３】
図４は、オブジェクトを模式的に示す図である。適宜、図１，図２を参照しつつ、図４について説明する。
図４（ａ）は、メモリ上有効なセッション情報オブジェクトの集合を表形式で示した図である。セッション情報オブジェクト１２２は、セッションＩＤ、生成日時、更新日時の情報が格納される。このセッション情報オブジェクト１２２は、クライアント２００のセッション毎に生成され、クライアント２００からのページ要求の度に、後記するクライアント識別部１５５によって更新日時が更新される。
【００２４】
図４（ｂ）は、メモリ上有効なデータ情報オブジェクトの集合を表形式で示した図である。データ情報オブジェクト１２３は、データＩＤ、データＩＤに対応するセッションＩＤ、生成日時、更新日時、クライアント２００から送信されてきたデータが格納される。データ情報オブジェクト１２３は、セッション情報オブジェクト１２２と同様に、クライアント２００のページ要求の度に、後記するクライアント識別部１５５によって更新日時が更新される。
なお、図４（ａ）のセッション情報オブジェクト１２２および図４（ｂ）のデータ情報オブジェクト１２３は、どちらも、有効期間情報１２１に設定されている有効期間を超過してもその更新日時が更新されない場合には、当該のオブジェクトは、後記するオブジェクト管理部１５７によって無効化されることとなる。
【００２５】
なお、本実施形態では、「セッション情報オブジェクトが（メモリ上）有効」とは、「セッション情報オブジェクトが当該Ｗｅｂアプリケーションプログラムにおいて適正に使用可能」な状態を示し、「セッション情報オブジェクトが（メモリ上）無効」とは、「セッション情報オブジェクトが当該Ｗｅｂアプリケーションプログラムにおいて使用不可」な状態を示す。また、「データ情報オブジェクトが（メモリ上）有効」とは、「データ情報オブジェクトが当該Ｗｅｂアプリケーションプログラムにおいて適正に使用可能」な状態を示し、「データ情報オブジェクトが（メモリ上）無効」とは、「データ情報オブジェクトが当該Ｗｅｂアプリケーションプログラムにおいて使用不可」な状態を示す。
ここで、使用不可とは、サーバ１００が当該オブジェクトを取得できない状態または取得してもデータを活用できない状態にすることであり、例えば、メモリ上のオブジェクトに対してアクセス不可の設定や削除等を行うことが考えられる。
【００２６】
図２に戻って、制御部１５０は、例えばＣＰＵ（Central Processing Unit）等から構成され、送受信部１１０を制御すると共に、送受信部１１０を介して取得した情報の認証やセッションの管理等を行うものであり、クライアント認証部１５１、オブジェクト生成部（情報生成部）１５２、ＩＤ生成部（識別子生成部）１５３、有効期間管理情報生成部１５４、クライアント識別部１５５、データ格納部１５６、オブジェクト管理部（情報管理部）１５７を備える。
【００２７】
クライアント認証部１５１は、クライアント２００から送信されてきた認証情報を検証し、認証を行う。
オブジェクト生成部１５２は、セッション情報生成部１５２１およびデータ情報生成部１５２２を備え、サーバ１００の記憶部１２０（メモリ）上に、オブジェクトを生成する。具体的には、セッション情報生成部１５２１はクライアント２００のセッションを管理するセッション情報オブジェクト１２２を生成し、データ情報生成部１５２２はクライアント２００から送信されたデータを保持するデータ情報オブジェクト１２３を生成する。
【００２８】
ＩＤ生成部１５３は、セッションＩＤ生成部１５３１およびデータＩＤ生成部１５３２を備え、オブジェクト生成部１５２が生成したそれぞれのオブジェクトに対し、一意に識別するＩＤ（識別子）を生成してそれぞれ付与する。具体的には、セッションＩＤ生成部１５３１は、セッション情報オブジェクト１２２にセッションＩＤ（第一の識別子）を付与し、データＩＤ生成部１５３２は、データ情報オブジェクト１２３にデータＩＤ（第二の識別子）を付与する。生成したＩＤは、Cookie等の技術を利用してクライアント２００との間でやり取りされる。
【００２９】
有効期間管理情報生成部１５４は、セッション有効期間管理情報生成部１５４１およびデータ有効期間管理情報生成部１５４２を備え、オブジェクト生成部１５２が生成したそれぞれのオブジェクトに対し、オブジェクトの有効期間を管理する情報を生成してそれぞれ付与する。具体的には、セッション有効期間管理情報生成部１５４１は、セッション情報オブジェクト１２２に対して、メモリ上に生成された日時、オブジェクトがサーバ１００に取得されたときにクライアント識別部１５５によって更新される更新日時を付与し、データ有効期間管理情報生成部１５４２は、データ情報オブジェクト１２３に、メモリ上に生成された日時、オブジェクトがサーバ１００に取得されたときにクライアント識別部１５５によって更新される更新日時を付与する。なお、オブジェクト生成時には、生成日時と同じ日時が更新日時に設定される。
【００３０】
クライアント識別部１５５は、クライアント２００から送信されたセッションＩＤおよびデータＩＤと、自身の記憶部１２０内のオブジェクトに付与されているセッションＩＤおよびデータＩＤとを比較し、対応付けられたオブジェクトを取得してクライアント２００を識別する。さらに、クライアント識別部１５５は、取得したオブジェクトの更新日時を、オブジェクトがサーバ１００に取得された最新の日時に更新する。
データ格納部１５６は、クライアント２００から送信されたデータをデータ情報オブジェクト１２３に格納する。
【００３１】
オブジェクト管理部１５７は、セッション情報管理部１５７１およびデータ情報管理部１５７２を備え、記憶部１２０のセッション情報オブジェクト１２２およびデータ情報オブジェクト１２３がメモリ上で有効か否かを、有効期間情報１２１の情報と各オブジェクトの更新日時とに基づいて管理する。
具体的には、例えば、有効期間情報１２１に、セッションの有効期間が１分と設定されている場合には、セッション情報管理部１５７１は、セッション情報オブジェクト１２２（図４（ａ）参照）が有効か否かを１分毎に検証する。有効か否かの検証は、有効期間の１分を超過する前にセッション情報オブジェクト１２２の更新日時が更新されているかを判別して行う。有効期間の1分を超過しても更新日時が更新されない場合には、当該のセッション情報オブジェクト１２２を無効化する。
また、データの有効期間が１０分と設定されている場合には、データ情報管理部１５７２は、データ情報オブジェクト１２３（図４（ｂ）参照）が有効か否かを１０分毎に検証する。有効か否かの検証は、有効期間の１０分を超過する前にセッション情報オブジェクト１２２の更新日時が更新されているかを判別して行う。有効期間の１０分を超過しても更新日時が更新されない場合には、当該のデータ情報オブジェクト１２３を無効化する。
なお、無効となったオブジェクトの情報は、サーバ１００が取得できないようになっていればよく、本実施形態では当該オブジェクトを削除する方法を例として説明する。
【００３２】
図５は、本実施形態におけるクライアントとサーバとの間で送受信する情報と、それぞれの処理の流れとを示すシーケンス図である。図５に沿って、適宜図１〜図４を参照しながら説明する。なお、本実施形態では、前記の通り、クライアント２００が、Ｗｅｂアプリケーションを提供するサーバ１００に対し、ネットワーク３００を介してページ要求する。そして、ページ要求処理の途中に移動等で相当時間、サーバ１００との通信を行わずにページ要求を中断した後、クライアント２００Ａとしてサーバ１００にページ要求を再開する場合を想定する。
【００３３】
まず、クライアント２００は、サーバ１００に対して、ログインページを要求し（Ｓ３１）、サーバ１００はそれに基づいて、認証情報を要求するログインページを、送受信部１１０を介してクライアント２００に送信する（Ｓ３２）。このログインページは、例えば、ユーザ情報およびパスワード等の認証情報を入力させる画面等が考えられる。
【００３４】
クライアント２００は、受信したログインページに認証情報を入力し、サーバ１００に送信する（Ｓ３３）。これにより、クライアント２００からサーバ１００に対して、セッション要求として最初のページが要求される。
【００３５】
サーバ１００は、クライアント２００から受信した認証情報を、クライアント認証部１５１により検証する（Ｓ３４）。この検証の方法については、特に限定しないが、例えば、処理を許可する認証情報（ユーザ情報、パスワード等）を予め記憶部１２０に格納しておくことで、格納されている情報との照合により検証を行う方法が考えられる。
【００３６】
検証の結果、認証された、つまりクライアント２００からの認証情報が正当であると確認できた場合、サーバ１００はオブジェクト生成部１５２により、記憶部１２０上に２つのオブジェクト（セッション情報オブジェクト１２２、データ情報オブジェクト１２３）を生成し、ＩＤ生成部１５３によりＩＤ（セッションＩＤ、データＩＤ）を生成してそれぞれのオブジェクトに付与する（Ｓ３５）。また、有効期間管理情報生成部１５４により生成日時および更新日時をそれぞれのオブジェクトに付与する（図４（ａ），（ｂ）参照）。
具体的には、オブジェクト生成部１５２のセッション情報生成部１５２１がセッション情報オブジェクト１２２を生成し、データ情報生成部１５２２がデータ情報オブジェクト１２３を生成する。なお、説明のため、ここで生成されるセッション情報オブジェクト１２２は（Ｐ１）とし、データ情報オブジェクト１２３は（Ｄ１）とする。
そして、セッションＩＤ生成部１５３１が、セッション情報オブジェクト１２２（Ｐ１）用にセッションＩＤを生成して、セッション情報オブジェクト１２２に付与する（「AE032」：図４（ａ）参照）。また、データＩＤ生成部１５３２が、データ情報オブジェクト１２３（Ｄ１）用にデータＩＤを生成して、データ情報オブジェクト１２３に付与する（「DB5847」：図４（ｂ）参照）。なお、説明のため、セッション情報オブジェクト１２２（Ｐ１）に付与されたセッションＩＤを「ＩＤ１」とし、データ情報オブジェクト１２３（Ｄ１）に付与されたデータＩＤを「ＩＤ２」とし、図５にも示す。
データＩＤ生成部１５３２は、セッションＩＤとデータＩＤとを対応付けるために、データ情報オブジェクト１２３に、対応するセッションＩＤの情報を付与する（図４（ｂ）参照）。
さらに、セッション有効期間管理情報生成部１５４１が、セッション情報オブジェクト１２２に生成日時および更新日時を付与する（図４（ａ）参照）。データ有効期間管理情報生成部１５４２は、データ情報オブジェクト１２３に生成日時および更新日時を付与する（図４（ｂ）参照）。
【００３７】
なお、ステップＳ３４における検証の結果、認証されなかった場合には、サーバ１００は、ステップＳ３２の前に戻って、認証されなかったことを示すメッセージをクライアント２００に送信してもよい。
【００３８】
ステップＳ３５において２つのオブジェクトを生成し、ＩＤおよび有効期間の情報を付与したら、サーバ１００は、レスポンスメッセージにセッションＩＤ（ＩＤ１）およびデータＩＤ（ＩＤ２）を付加し、送受信部１１０を介してクライアントに要求されたページを送信する（Ｓ３６：HTML1送信）。「HTML1」は、例えば、商品選択画面等を表示するための情報である。
【００３９】
図６は、本実施形態におけるクライアントとサーバとの間で送受信する情報の例を示す図である。
図６（ａ）は、ステップＳ３６で、サーバからクライアントに送信する情報を例示する図である。ここでは、レスポンスメッセージのSet-Cookieフィールドに、２つのＩＤが付加されている。つまり、図６（ａ）における符号６０１にはセッションＩＤ（「AE032」）が付加されており、符号６０２にはデータＩＤ（「DB5847」）が付加されている。この２つのＩＤの付加された情報が、サーバ１００からクライアント２００に送信される。なお、このセッションＩＤとデータＩＤは、図４の情報と対応している。
【００４０】
なお、ステップＳ３５の、有効期間管理情報生成部１５４が各オブジェクトに生成日時および更新日時（有効期間を管理する情報）を付与する処理は、ステップＳ３６の送信処理の後に行ってもよい。
【００４１】
図５に戻って、ステップＳ３７で、クライアント２００は、サーバ１００から送信されたレスポンスメッセージに含まれる「HTML1」をブラウザ上で画面表示する。そして、クライアント２００は、表示された画面上のフォームに必要なデータ（例えば購入したい商品のコード等）を入力し、サーバ１００に送信することで、次のページを要求する（Ｓ３７）。
【００４２】
図６（ｂ）は、図５のステップＳ３７で、クライアントからサーバに送信する情報を例示する図である。
図６（ｂ）によれば、クライアント２００からサーバ１００に送信するリクエストメッセージのCookieフィールドに、符号６０３でセッションＩＤ、符号６０４でデータＩＤが付加される。これらのＩＤは、ステップＳ３６において、サーバ１００から受信したレスポンスメッセージに含まれていたセッションＩＤ（「AE032」：図６（ａ）符号６０１参照）と、データＩＤ（「DB5847」：図６（ａ）符号６０２参照）と同じものが付加されている。
また、符号６０５に示すメッセージデータ部に、クライアント２００が選択したデータ（例えば、商品コード「book_001」）が付加されている。
【００４３】
図５に戻って、サーバ１００は、クライアント２００からページ要求に相当する情報を受信したら、クライアント２００から送信された情報に含まれる２つのＩＤ（ＩＤ１，ＩＤ２）と、自身の記憶部１２０内のオブジェクトに格納されているＩＤとを、クライアント識別部１５５により照合し、オブジェクトを取得する。さらに、取得したオブジェクトの更新日時を、オブジェクトがサーバ１００に取得された時刻に、クライアント識別部１５５が更新する。
詳しく説明すると、クライアント識別部１５５は、クライアント２００から送信されたＩＤ１（セッションＩＤ）およびＩＤ２（データＩＤ）に基づいて、記憶部１２０（メモリ）内のセッション情報オブジェクト１２２およびデータ情報オブジェクト１２３に格納されているそれぞれのＩＤと一致するオブジェクトを検索して照合する。そして、一致するオブジェクトが存在した場合には、当該オブジェクトを取得する。これにより、クライアント２００がサーバに１００に識別される。検索の結果、クライアント２００から受信した２つのＩＤ（ＩＤ１，ＩＤ２）に対応するオブジェクトが共に有効（即ち、サーバがセッション情報オブジェクト１２２およびデータ情報オブジェクト１２３を取得可能）であった場合には、クライアント識別部１５５が、当該のセッション情報オブジェクト１２２およびデータ情報オブジェクト１２３内の更新日時を更新する（Ｓ３８：ＩＤ照合、オブジェクト取得、更新）。
【００４４】
そして、サーバ１００は、データ格納部１５６により、データ情報オブジェクト１２３にデータ（商品コード「book_001」）を格納する（Ｓ３９）。図４（ｂ）の１行目のオブジェクトには、クライアント２００からサーバ１００へ送信されたデータ「book_001」（図６（ｂ）の符号６０５）が、データとして保持されている。
【００４５】
その後、サーバ１００は、次ページとなる「HTML2」を生成し、クライアント２００に送受信部１１０を介して送信する（Ｓ４０：HTML2送信）。「HTML2」は例えば、購入予定の商品一覧を示し、数量変更や商品確定を行うページである。このとき送信するレスポンスメッセージには、ステップＳ３６と同様に、セッションＩＤ（「AE032」）およびデータＩＤ（「DB5847」）が付加される。
【００４６】
クライアント２００は、サーバ１００から送信された「HTML2」をブラウザ上で画面表示し、情報入力を促す（Ｓ４１）。
クライアント２００は、表示された画面上のフォーム（例えば、数量）の入力途中で、移動等によって２分間処理を中断する。
【００４７】
サーバ１００のオブジェクト管理部１５７は、２種類のオブジェクト（セッション情報オブジェクト１２２、データ情報オブジェクト１２３）がそれぞれ記憶部１２０（メモリ）上で有効であるかどうかを、オブジェクトに付与された更新日時と、有効期間情報１２１に格納されている情報とに基づいて定期的に（セッション情報オブジェクト１２２は１分、データ情報オブジェクト１２３は１０分）検証し、有効期間を超過したオブジェクトを無効化する。
本実施形態では、セッションの有効期間を１分と設定しているため、サーバ１００は、セッション情報オブジェクト１２２について、クライアント２００からの最後のページ要求による更新から１分間、更新日時の更新が無かった場合には、オブジェクト管理部１５７のセッション情報管理部１５７１により、当該オブジェクトを無効化する。ここでは、セッション情報オブジェクト１２２（Ｐ１）を無効化する。それにより、セッションタイムアウトとなり、サーバ１００は無効化したオブジェクトの情報を取得できなくなる。
【００４８】
図７は、図４に例示した情報の、セッション情報オブジェクト１２２（Ｐ１）の有効期間終了に伴うセッションタイムアウト時の状態を模式的に示す図である。図７（ａ）はセッション情報オブジェクトの集合を表形式で示した図であり、図７（ｂ）はデータ情報オブジェクトの集合を表形式で示した図である。
図７（ａ）によれば、セッションＩＤ「AE032」のオブジェクトが、有効期間終了に伴い無効化されたため、削除されている。なお、図７（ｂ）では、データ情報オブジェクト１２３（Ｄ１）は有効期間内のため、無効化されていない。
【００４９】
図５に戻って、クライアント２００Ａは、移動等の後、２分後にフォームへのデータ入力を完了して、入力したデータを含む、次のページ要求をサーバ１００に送信する（Ｓ４２）。なお、このとき、クライアント２００Ａは、ステップＳ３７と同様に、２つのＩＤ（ＩＤ１，ＩＤ２）も付加して送信する。
【００５０】
サーバ１００は、クライアント２００からページ要求を受信したら、クライアント２００Ａから送信された情報に含まれる２つのＩＤ（ＩＤ１，ＩＤ２）と、自身の記憶部１２０内のオブジェクトに付与されているＩＤとを、クライアント識別部１５５により照合する。
サーバ１００では、有効期間終了に伴い、既にセッションはタイムアウトし、セッション情報オブジェクト１２２（Ｐ１）は無効化されている。そのため、まず、サーバ１００は、クライアント２００Ａから受信したＩＤ１に対応するセッション情報オブジェクト１２２が取得できないことを判別する。そして、クライアント２００Ａから受信したＩＤ２に対応するデータＩＤを含むデータ情報オブジェクト１２３を検索し、このデータＩＤに対応するセッションＩＤと、クライアント２００Ａから受信したＩＤ１との照合により、データ情報オブジェクト１２３（Ｄ１）を取得し、クライアント２００Ａを識別する。
これによって、受信したＩＤ２に対応するデータ情報オブジェクト１２３（Ｄ１）は有効、ＩＤ１に対応するセッション情報オブジェクト１２２（Ｐ１）は無効（有効期間超過）ということが分かる。サーバ１００のクライアント識別部１５５は、有効であるデータ情報オブジェクト１２３（Ｄ１）の更新日時を更新する（Ｓ４３：ＩＤ照合、オブジェクト取得、更新）。
【００５１】
サーバ１００は、オブジェクト生成部１５２により、記憶部１２０上に新たなセッションの情報を管理するオブジェクトを生成し、ＩＤ生成部１５３によりセッションＩＤを付与する（Ｓ４４）。具体的には、オブジェクト生成部１５２のセッション情報生成部１５２１がセッション情報オブジェクト１２２（Ｐ２）を生成する。そして、ＩＤ生成部１５３のセッションＩＤ生成部１５３１が、新たに生成されたセッション情報オブジェクト１２２（Ｐ２）用にセッションＩＤ（ＩＤ１´）を生成して、セッション情報オブジェクト１２２（Ｐ２）に付与する。これにより、サーバ１００は、今後のクライアント２００Ａのセッション識別用に、新たに生成されたセッションＩＤ（ＩＤ１´）を使用する。また、サーバ１００は、有効期間管理情報生成部１５４によって、生成日時と更新日時をセッション情報オブジェクト１２２（Ｐ２）に付与する。
【００５２】
サーバ１００のクライアント識別部１５５は、クライアント２００Ａから送信されてきた情報に含まれるデータ（例えば、数量）を、データ情報オブジェクト１２３（Ｄ１）のデータ内に、データ格納部１５６によって格納する（Ｓ４５）。
【００５３】
そして、サーバ１００のクライアント識別部１５５は、データ情報オブジェクト１２３（Ｄ１）に格納されているセッションＩＤを、ステップＳ４４で新たに生成したセッションＩＤに変更する（Ｓ４６）。なお、ステップＳ４５およびＳ４６の処理は順序逆に行ってもよい。
【００５４】
図８は、図４に例示した情報の、セッション終了時の状態を示す図である。図８（ａ）は、セッション情報オブジェクトの集合を表形式で示した図である。図８（ｂ）は、データ情報オブジェクトの集合を表形式で示した図である。
図８（ａ）によれば、セッション情報オブジェクト１２２（Ｐ１）の有効期間終了後にクライアント２００からページ要求を受信したことにより、新たにセッション情報オブジェクト１２２（Ｐ２）が生成されたことを示している。
図８（ｂ）によれば、当該のデータ情報オブジェクト１２３（Ｄ１）のセッションＩＤが、新しく生成された「ZY999」に変更されている。また、符号８０１で示すように、ステップＳ４５で格納された数量のデータが「book_001」の後に「3」として格納されている。
【００５５】
図５に戻って、サーバ１００は、次のページである「HTML3」を、送受信部１１０を介してクライアント２００Ａに送信する（Ｓ４７：HTML3送信）。「HTML3」は、例えば、購入商品、数量、金額等を表示し、決済を行うページである。このとき送信するレスポンスメッセージには、新たに生成されたセッション情報オブジェクト１２２（Ｐ２）のセッションＩＤ（「ZY999」）と、それに対応するデータ情報オブジェクト１２３（Ｄ１）のデータＩＤ（「DB5847」）が付加される。
【００５６】
図６（ｃ）は、ステップＳ４７で、サーバからクライアントに送信する情報（「HTML3」）の例を示す図である。
図６（ｃ）によれば、サーバ１００からクライアント２００Ａに送信するレスポンスメッセージ内の、Set-Cookieフィールドに付加される情報は、図６（ａ）と比較して符号６０６に、新しく生成されたセッションＩＤ（「ZY999」）が付加されている。換言すると、図６（ａ）では「AE032」と付加されていたセッションＩＤが、図６（ｃ）では「ZY999」に変更されて付加されている。
【００５７】
クライアント２００Ａは、サーバ１００から送信された「HTML3」をブラウザ上で画面表示する（Ｓ４８）。以降の処理は、ステップＳ３７またはステップＳ４１の処理と同様のため、説明を省略する。
【００５８】
本実施形態では、データ情報オブジェクト１２３は、有効期間を１０分と設定しているため、最後のページ要求による更新から１０分間更新が無かった場合、サーバ１００は、オブジェクト管理部１５７のデータ情報管理部１５７２により、データ情報オブジェクト１２３（Ｄ１）を無効にする。
【００５９】
データ情報オブジェクト１２３（Ｄ１）が無効となった後に、クライアント２００Ａからページ要求を受信した場合、つまり、ステップＳ４８におけるページ要求が、前回の更新から１０分を超過した後に行われた場合には、受信したデータＩＤ（ＩＤ２）と一致する有効なデータ情報オブジェクト１２３は取得できない。また、受信したデータＩＤが不正なものである可能性も考えられる。そのため、データ情報オブジェクト１２３が無効、またはデータＩＤが不一致の場合には、サーバ１００は、初回ページ要求（Ｓ３２，Ｓ３４〜Ｓ３６）と同じ動作を行うことが望ましい。
【００６０】
以上説明した本実施形態によれば、セッションを管理するオブジェクトと、データを管理するオブジェクトとの２つのオブジェクトを用いる。そして、セッションの有効期間を短くし、データの保持期間をＷｅｂアプリケーションの利便性維持に必要な最低限の時間として設定することで、セッションタイムアウト後に、クライアント２００がサーバ１００にページ要求を送信しても、ページ要求がデータ保持期間内であれば、保持されているデータを用いてクライアント２００はページ要求処理を継続することができる。これにより、クライアント２００に対するＷｅｂアプリケーションの利便性を向上することができる。
【００６１】
また、セッションおよびデータの処理に伴うメモリリソースについても、それぞれ一定時間経過したことによって無効化される。ここで、無効化として当該オブジェクトを削除すると、メモリリソースの負荷が低減され、効率的な利用が可能となる。
【００６２】
（第２実施形態）
図９は、第２実施形態におけるクライアントとサーバとの間で送受信する情報と、それぞれの処理の流れとを示すシーケンス図である。第２実施形態は、第１実施形態と比較して、ステップＳ４３とＳ４４との間に、認証処理が追加されたところ（図９の二重線囲み部分）が異なる。
図９に沿って、適宜図１〜図８を参照しながら説明する。なお、図９では、ステップＳ４３までの処理は、第１実施形態と同様のため、重複図示および説明を適宜省略する。
【００６３】
ステップＳ４３で、サーバ１００は、クライアント２００Ａから送信されてきた情報を受信したら、クライアント２００Ａから送信された情報に含まれる２つのＩＤ（ＩＤ１，ＩＤ２）と、自身の記憶部１２０内のオブジェクトに付与されているＩＤとを、クライアント識別部１５５により照合する。
第１実施形態で説明したとおり、ここでは、受信したＩＤ１に対応するセッション情報オブジェクト１２２（Ｐ１）は無効化されており、ＩＤ２に対応するデータ情報オブジェクト１２３（Ｄ１）は有効であることが分かる。サーバ１００は、有効であったデータ情報オブジェクト１２３（Ｄ１）を取得してクライアントを識別し、更新日時を更新する。
【００６４】
続いて、サーバ１００は、クライアント２００Ａに対して再度認証情報の送信を要求するために、ログインページを送信する（Ｓ４３１）。
クライアント２００Ａは、受信したログインページに認証情報を入力し、サーバ１００に送信する（Ｓ４３２）。これにより、クライアント２００からサーバ１００に対して、次のページが要求される。
【００６５】
サーバ１００は、クライアント２００Ａから受信した認証情報を、クライアント認証部１５１により検証する（Ｓ４３３）。
検証の結果、認証された、つまりクライアント２００Ａからの認証情報が正当であると確認できた場合、サーバ１００は、ステップＳ４４で、記憶部１２０上に、新たなセッションの有効期間を管理するセッション情報オブジェクト１２２（Ｐ２）をオブジェクト生成部１５２により生成する。以降の処理は、第１実施形態と同様である。
【００６６】
なお、ステップＳ４３３における検証の結果、認証されなかった場合、ステップＳ４３１の前に戻って、認証されなかったことを示すメッセージをクライアント２００Ａに送信してもよい。
【００６７】
サーバ１００におけるステップＳ４３１，Ｓ４３３の処理は、第１実施形態のステップＳ３２，Ｓ３４と同様の処理であり、クライアント２００ＡにおけるステップＳ４３２の処理は、第１実施形態のステップＳ３３と同様の処理である。
【００６８】
以上説明した第２実施形態によれば、セッションタイムアウト後に、クライアント２００Ａからページ要求がサーバ１００に対して送信されてきた場合に、サーバ１００がクライアント２００Ａの認証を行うことで、クライアント２００Ａの正当性を確認する。そして、クライアント２００Ａが認証された場合に、サーバ１００は、新しいセッションの有効期間を管理するオブジェクト（セッション情報オブジェクト１２２）を生成する。
これにより、クライアント２００とサーバ１００との間で送受信される情報が盗聴された場合でも、セッションハイジャック等のセキュリティリスクを低減し、第１実施形態と比較してセキュリティ性を向上させることができる。なお、この第２実施形態によれば、ステップＳ４３１〜Ｓ４３３（図９参照）の処理は必要となるが、サーバ１００においてステップＳ３９，Ｓ４５で格納したデータは無駄になることはない。つまり、セッション有効期間終了後であってもデータ有効期間内であれば、ステップＳ３７およびＳ４１，Ｓ４２（図５参照）で入力されサーバ１００に送信されたデータを、クライアント２００Ａが改めて入力し送信しなおす手間は不要となるので、クライアント２００Ａはサーバ１００に送信したデータを引き続き利用することができ、利便性が向上する。
【００６９】
なお、サーバ１００は、前記したステップＳ３２，Ｓ３４〜Ｓ３６，Ｓ３８〜Ｓ４０，Ｓ４３〜Ｓ４７，Ｓ４３１，Ｓ４３３を、一般的なコンピュータに実行させるセッション管理プログラムを実行することでも実現できる。このプログラムは、通信回線を介して配布することも可能であるし、ＣＤ−ＲＯＭや半導体チップ等の記録媒体に書き込んで配布することも可能である。プログラムのインストールに関しても、通信装置を介してネットワーク経由でプログラムをダウンロードしてインストールすることでもよい。
【００７０】
以上、本発明の好適な実施形態について一例を示したが、本発明は前記実施形態に限定されない。
例えば、本実施形態では、サーバにおいて、各オブジェクトの有効期間を有効期間情報として予め設定しておき、設定されたそれぞれの有効期間に基づいて、オブジェクト管理部がセッション情報オブジェクトおよびデータ情報オブジェクトの更新日時を検証することとしたが、これに限らず、セッション情報オブジェクトおよびデータ情報オブジェクトに有効期間を示す情報を備え、クライアントからのページ要求のたびに有効期間を更新することで、有効期間を超過したオブジェクトを無効化してもよい。
また、サーバとクライアントとの間で送受信するＩＤ（識別子）に、有効期間を示す情報を含ませる方法をとることも考えられる。その場合、サーバは、クライアントから送信されてきたＩＤに含まれる有効期間を示す情報を用いて、当該オブジェクトが有効期間内か否かを判別してもよい。
【００７１】
本実施形態では、サーバは各オブジェクトの有効期間終了に伴う無効化の際は当該オブジェクトを削除することとして説明したが、これに限らず、セッション情報オブジェクトの無効化は、削除せずに、サーバが取得できない状態としておいてもよい。そして、データ情報オブジェクトを用いてＩＤが照合された場合には、セッション情報オブジェクトを、取得できない状態から更新し、ＩＤも更新する等して、当該セッションを利用可能とすることとしてもよい。その他、例えばサーバを複数備える構成としてもよく、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
【図面の簡単な説明】
【００７２】
【図１】本発明の実施形態におけるハードウェアおよびネットワークの構成例を示す図である。
【図２】図１におけるサーバの機能を示すブロック図である。
【図３】有効期間情報に格納される情報の例を示す図である。
【図４】オブジェクトを模式的に示す図である。図４（ａ）は、メモリ上有効なセッション情報オブジェクトの集合を表形式で示した図である。図４（ｂ）は、メモリ上有効なデータ情報オブジェクトの集合を表形式で示した図である。
【図５】本実施形態におけるクライアントとサーバとの間で送受信する情報と、それぞれの処理の流れとを示すシーケンス図である。
【図６】本実施形態におけるクライアントとサーバとの間で送受信する情報の例を示す図である。図６（ａ）は、サーバからクライアントに送信する情報である。図６（ｂ）は、クライアントからサーバに送信する情報である。図６（ｃ）は、サーバからクライアントに送信する情報である。
【図７】図４に例示した情報の、セッション情報オブジェクトの有効期間終了に伴うセッションタイムアウト時の状態を模式的に示す図である。図７（ａ）は、セッション情報オブジェクトの集合を表形式で示した図である。図７（ｂ）は、データ情報オブジェクトの集合を表形式で示した図である。
【図８】図４に例示した情報の、セッション終了時の状態を示す図である。図８（ａ）は、セッション情報オブジェクトの集合を表形式で示した図である。図８（ｂ）は、データ情報オブジェクトの集合を表形式で示した図である。
【図９】第２実施形態のクライアントとサーバとの間で送受信する情報と、それぞれの処理の流れとを示すシーケンス図である。
【図１０】従来のＷｅｂアプリケーションにおけるセッション管理の処理の流れを示すシーケンス図である。
【符号の説明】
【００７３】
１００  サーバ
１１０  送受信部
１２０  記憶部（記憶手段）
１２１  有効期間情報
１２２  セッション情報オブジェクト（第一の情報）
１２３  データ情報オブジェクト（第二の情報）
１５０  制御部
１５１  クライアント認証部
１５２  オブジェクト生成部（情報生成部）
１５２１  セッション情報生成部
１５２２  データ情報生成部
１５３  ＩＤ生成部（識別子生成部）
１５３１  セッションＩＤ生成部
１５３２  データＩＤ生成部
１５４  有効期間管理情報生成部
１５４１  セッション有効期間管理情報生成部
１５４２  データ有効期間管理情報生成部
１５５  クライアント識別部
１５６  データ格納部
１５７  オブジェクト管理部（情報管理部）
１５７１  セッション情報管理部
１５７２  データ情報管理部
２００，２００Ａ  クライアント
３００  ネットワーク
【図１】
2008027202.tif 000003
【図２】
2008027202.tif 000004
【図３】
2008027202.tif 000005
【図４】
2008027202.tif 000006
【図５】
2008027202.tif 000007
【図６】
2008027202.tif 000008
【図７】
2008027202.tif 000009
【図８】
2008027202.tif 000010
【図９】
2008027202.tif 000011
【図１０】
2008027202.tif 000012