(57)【特許請求の範囲】
【請求項１】
同一の装置内で互いに異なるシステムとして動作する、シンクライアントであるＷｅｂブラウザ、及びリッチクライアントであるプログラム、それぞれと、別のサーバ装置内で動作するアプリケーションプログラムとの間でセッションを確立する、セッション管理装置であって、
前記Ｗｅｂブラウザ及び前記プログラムのいずれか一方から入力されたログイン情報が正当であることを条件にして、前記一方と前記アプリケーションプログラムとの間に第１のセッションを確立する、第１の接続制御部と、
前記第１のセッションが確立されると、前記第１のセッションの維持に必要な情報を保持するセッションオブジェクトを生成し、更に、前記一方に対してセッションＩＤを設定する、セッション制御部と、
前記一方とは別の他方が、前記一方から前記セッションＩＤを受け取り、受け取った前記セッションＩＤを用いて、前記アプリケーションプログラムとのセッションの確立を要求した場合に、前記セッション制御部から前記セッションオブジェクトを取得し、取得した前記セッションオブジェクトを用いて、前記他方と前記アプリケーションプログラムとの間に第２のセッションを確立する、第２の接続制御部と、
を備えていることを特徴とするセッション管理装置。
【請求項２】
前記セッション制御部が、前記第１のセッションがタイムアウトになっていないかどうかを判定し、タイムアウトになっていない場合に、前記セッションオブジェクトの生成と、前記セッションＩＤの設定とを行い、
前記第２の接続制御部が、取得した前記セッションオブジェクトの最終アクセス時刻を更新し、その後、最終アクセス時刻が更新された前記セッションオブジェクトを用いて、前記第２のセッションを確立する、
請求項１に記載のセッション管理装置。
【請求項３】
前記セッション制御部が、前記セッションオブジェクトの生成後、前記一方の操作画面に、利用可能な前記他方を表示させる、請求項１または２に記載のセッション管理装置。
【請求項４】
端末装置と、サーバ装置とを備えたセッション管理システムであって、
前記端末装置は、互いに異なるシステムとして動作する、シンクライアントであるＷｅｂブラウザ、及びリッチクライアントであるプログラムを備え、
前記サーバ装置は、アプリケーションプログラムを実行するアプリケーション実行部と、前記Ｗｅｂブラウザ及び前記プログラムそれぞれとアプリケーションプログラムとの間でセッションを確立するセッション管理部とを備え、
前記セッション管理部は、
前記Ｗｅｂブラウザ及び前記プログラムのいずれか一方から入力されたログイン情報が正当であることを条件にして、前記一方と前記アプリケーションプログラムとの間に第１のセッションを確立する、第１の接続制御部と、
前記第１のセッションが確立されると、前記第１のセッションの維持に必要な情報を保持するセッションオブジェクトを生成し、更に、前記一方に対してセッションＩＤを設定する、セッション制御部と、
前記一方とは別の他方が、前記一方から前記セッションＩＤを受け取り、受け取った前記セッションＩＤを用いて、前記アプリケーションプログラムとのセッションの確立を要求した場合に、前記セッション制御部から前記セッションオブジェクトを取得し、取得した前記セッションオブジェクトを用いて、前記他方と前記アプリケーションプログラムとの間に第２のセッションを確立する、第２の接続制御部と、
を備えていることを特徴とするセッション管理システム。
【請求項５】
同一の装置内で互いに異なるシステムとして動作する、シンクライアントであるＷｅｂブラウザ、及びリッチクライアントであるプログラム、それぞれと、別のサーバ装置内で動作するアプリケーションプログラムとの間でセッションを確立するためのセッション管理方法であって、
（ａ）前記Ｗｅｂブラウザ及び前記プログラムのいずれか一方から入力されたログイン情報が正当であることを条件にして、前記一方と前記アプリケーションプログラムとの間に第１のセッションを確立する、ステップと、
（ｂ）前記（ａ）のステップで前記第１のセッションが確立されると、前記第１のセッションの維持に必要な情報を保持するセッションオブジェクトを生成し、更に、前記一方に対してセッションＩＤを設定する、ステップと、
（ｃ）前記一方とは別の他方が、前記一方から前記セッションＩＤを受け取り、受け取った前記セッションＩＤを用いて、前記アプリケーションプログラムとのセッションの確立を要求した場合に、前記（ｂ）のステップで生成された前記セッションオブジェクトを取得し、取得した前記セッションオブジェクトを用いて、前記他方と前記アプリケーションプログラムとの間に第２のセッションを確立する、ステップと、
を有することを特徴とするセッション管理方法。
【請求項６】
同一の装置内で互いに異なるシステムとして動作する、シンクライアントであるＷｅｂブラウザ、及びリッチクライアントであるプログラム、それぞれと、コンピュータで実行させるアプリケーションプログラムとの間におけるセッションの確立を、前記コンピュータに実行させるためのプログラムであって、
前記コンピュータに、
（ａ）前記Ｗｅｂブラウザ及び前記プログラムのいずれか一方から入力されたログイン情報が正当であることを条件にして、前記一方と前記アプリケーションプログラムとの間に第１のセッションを確立する、ステップと、
（ｂ）前記（ａ）のステップで前記第１のセッションが確立されると、前記第１のセッションの維持に必要な情報を保持するセッションオブジェクトを生成し、更に、前記一方に対してセッションＩＤを設定する、ステップと、
（ｃ）前記一方とは別の他方が、前記一方から前記セッションＩＤを受け取り、受け取った前記セッションＩＤを用いて、前記アプリケーションプログラムとのセッションの確立を要求した場合に、前記（ｂ）のステップで生成された前記セッションオブジェクトを取得し、取得した前記セッションオブジェクトを用いて、前記他方と前記アプリケーションプログラムとの間に第２のセッションを確立する、ステップと、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、シンクライアント及びリッチクライアントのセッション管理を行うための、セッション管理装置、セッション管理システム、セッション管理方法、及びプログラムに関する。
【背景技術】
【０００２】
近年、企業などで利用される情報システムとして、一般に、シンクライアントシステムと、リッチクライアントシステムとが知られている（例えば、特許文献１及び２参照。）。このうち、シンクライアントシステムは、クライアントコンピュータに最低限の機能しか付与せず、サーバ側でアプリケーションソフト及びファイルなどの資源を管理するシステムである。
【０００３】
一方、リッチクライアントシステムは、クライントコンピュータにアプリケーションの実行環境を搭載したシステムである。また、リッチクライアントシステムにおいては、サーバは、必要に応じてクライアントコンピュータにアプリケーションをダウンロードさせる。
【０００４】
このように、シンクライアントシステムとリッチクライアントシステムとは、全く異なるシステムである。このため、同一の企業内に両方のシステムが構築されている場合、実行される業務が同一であっても、別々のセッションによって管理されることになる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−２４２８２６号公報
【特許文献２】特開２００９−０３１８９６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、シンクライアントシステムとリッチクライアントシステムとの両方が構築されている環境下においては、ユーザは、シンクライアントによって業務を行った後、リッチクライアントによって同一の業務を行う場合がある。また、逆に、ユーザが、リッチクライアントによって業務を行った後、シンクライアントによって同一の業務を行う場合もある。
【０００７】
このような場合、一方のシステムで行った業務処理を、そのまま他方のシステムに引き継ぐことができれば便利である。しかしながら、シンクライアントによる処理とリッチクライアントによる処理とは、別々のセッションとして管理されており、ユーザはシステム毎に別々に認証を受ける必要がある。このため、ユーザにおける利便性を高めるため、シンクライアントシステムとリッチクライアントシステムとの間において、シームレスな連携が求められている。
【０００８】
本発明の目的の一例は、上記問題を解消し、互いに異なるシステムとして動作する２つのクライアント間のシームレスな連携を可能にし得る、セッション管理装置、セッション管理システム、セッション管理方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【０００９】
上記目的を達成するため、本発明の一側面におけるセッション管理装置は、互いに異なるシステムとして動作する第１のクライアント及び第２のクライアントそれぞれとアプリケーションプログラムとの間でセッションを確立する、セッション管理装置であって、
前記第１のクライアントから入力されたログイン情報が正当であることを条件にして、前記第１のクライアントと前記アプリケーションプログラムとの間に第１のセッションを確立する、第１の接続制御部と、
前記第１のセッションが確立されると、前記第１のセッションの維持に必要な情報を保持するセッションオブジェクトを生成し、更に、前記第１のクライアントに対してセッションＩＤを設定する、セッション制御部と、
前記第２のクライアントが、前記第１のクライアントから前記セッションＩＤを受け取り、受け取った前記セッションＩＤを用いて、前記アプリケーションプログラムとのセッションの確立を要求した場合に、前記セッション制御部から前記セッションオブジェクトを取得し、取得した前記セッションオブジェクトを用いて、前記第２のクライアントと前記アプリケーションプログラムとの間に第２のセッションを確立する、第２の接続制御部と、を備えていることを特徴とする。
【００１０】
上記目的を達成するため、本発明の一側面におけるセッション管理システムは、端末装置と、サーバ装置とを備えたセッション管理システムであって、
前記端末装置は、互いに異なるシステムとして動作する第１のクライアント及び第２のクライアントを備え、
前記サーバ装置は、アプリケーションプログラムを実行するアプリケーション実行部と、前記第１のクライアント及び前記第２のクライアントそれぞれとアプリケーションプログラムとの間でセッションを確立するセッション管理部とを備え、
前記セッション管理部は、
前記第１のクライアントから入力されたログイン情報が正当であることを条件にして、前記第１のクライアントと前記アプリケーションプログラムとの間に第１のセッションを確立する、第１の接続制御部と、
前記第１のセッションが確立されると、前記第１のセッションの維持に必要な情報を保持するセッションオブジェクトを生成し、更に、前記第１のクライアントに対してセッションＩＤを設定する、セッション制御部と、
前記第２のクライアントが、前記第１のクライアントから前記セッションＩＤを受け取り、受け取った前記セッションＩＤを用いて、前記アプリケーションプログラムとのセッションの確立を要求した場合に、前記セッション制御部から前記セッションオブジェクトを取得し、取得した前記セッションオブジェクトを用いて、前記第２のクライアントと前記アプリケーションプログラムとの間に第２のセッションを確立する、第２の接続制御部と、を備えていることを特徴とする。
【００１１】
また、上記目的を達成するため、本発明の一側面におけるセッション管理方法は、互いに異なるシステムとして動作する第１のクライアント及び第２のクライアントそれぞれとアプリケーションプログラムとの間でセッションを確立するためのセッション管理方法であって、
（ａ）前記第１のクライアントから入力されたログイン情報が正当であることを条件にして、前記第１のクライアントと前記アプリケーションプログラムとの間に第１のセッションを確立する、ステップと、
（ｂ）前記（ａ）のステップで前記第１のセッションが確立されると、前記第１のセッションの維持に必要な情報を保持するセッションオブジェクトを生成し、更に、前記第１のクライアントに対してセッションＩＤを設定する、ステップと、
（ｃ）前記第２のクライアントが、前記第１のクライアントから前記セッションＩＤを受け取り、受け取った前記セッションＩＤを用いて、前記アプリケーションプログラムとのセッションの確立を要求した場合に、前記（ｂ）のステップで生成された前記セッションオブジェクトを取得し、取得した前記セッションオブジェクトを用いて、前記第２のクライアントと前記アプリケーションプログラムとの間に第２のセッションを確立する、ステップと、を有することを特徴とする。
【００１２】
更に、上記目的を達成するため、本発明の一側面におけるプログラムは、互いに異なるシステムとして動作する第１のクライアント及び第２のクライアントそれぞれとアプリケーションプログラムとの間におけるセッションの確立を、コンピュータに実行させるためのプログラムであって、
前記コンピュータに、
（ａ）前記第１のクライアントから入力されたログイン情報が正当であることを条件にして、前記第１のクライアントと前記アプリケーションプログラムとの間に第１のセッションを確立する、ステップと、
（ｂ）前記（ａ）のステップで前記第１のセッションが確立されると、前記第１のセッションの維持に必要な情報を保持するセッションオブジェクトを生成し、更に、前記第１のクライアントに対してセッションＩＤを設定する、ステップと、
（ｃ）前記第２のクライアントが、前記第１のクライアントから前記セッションＩＤを受け取り、受け取った前記セッションＩＤを用いて、前記アプリケーションプログラムとのセッションの確立を要求した場合に、前記（ｂ）のステップで生成された前記セッションオブジェクトを取得し、取得した前記セッションオブジェクトを用いて、前記第２のクライアントと前記アプリケーションプログラムとの間に第２のセッションを確立する、ステップと、を実行させることを特徴とする。
【発明の効果】
【００１３】
以上の特徴により、本発明における、セッション管理装置、セッション管理システム、セッション管理方法、及びプログラムによれば、互いに異なるシステムとして動作する２つのクライアント間のシームレスな連携が可能になる。
【図面の簡単な説明】
【００１４】
【図１】図１は、本発明の実施の形態におけるセッション管理装置及びセッション管理システムの構成を示すブロック図である。
【図２】図２は、本発明の実施の形態におけるセッション管理装置の動作を示すフロー図である。
【図３】図３は、本発明の実施の形態におけるセッション管理装置を実現するコンピュータの一例を示すブロック図である。
【図４】図４は、本発明の実施例におけるセッション管理装置及びセッション管理システムの構成を示すブロック図である。
【発明を実施するための形態】
【００１５】
（実施の形態）
以下、本発明の実施の形態における、セッション管理装置、セッション管理システム、セッション管理方法、及びプログラムについて、図１〜図３を参照しながら説明する。
【００１６】
［装置構成］
最初に、図１を用いて、本実施の形態におけるセッション管理装置３０及びセッション管理システム５０について説明する。図１は、本発明の実施の形態におけるセッション管理装置及びセッション管理システムの構成を示すブロック図である。図２は、本発明の実施の形態におけるセッション管理装置の動作を示すフロー図である。
【００１７】
図１に示すように、セッション管理システム５０は、端末装置１０と、サーバ装置２０とを備えている。このうち、端末装置１０は、クライアントコンピュータであり、互いに異なるシステムとして動作する第１のクライアント１１及び第２のクライアント１２を備えている。
【００１８】
本実施の形態では、第１のクライアント１１は、シンクライアントであり、第２のクライアント１２は、リッチクライアントである。以下の説明では、「シンクライアント１１」、「リッチクライアント１２」と表記する。また、具体的には、シンクライアント１１は、端末装置１０が備えるブラウザで構成されている。一方、リッチクライアント１２は、端末装置１０に組み込まれたプログラムモジュールで構成されている。
【００１９】
ユーザは、シンクライアント１１又はリッチクライアント１２を介して、サーバ装置２０が用意するアプリケーションプログラムを利用し、業務を遂行する。このとき、従来においては、利用されるアプリケーションプログラムが同一であっても、使用するクライアントが異なる場合は、クライアント毎に別々にセッションを確立する必要があるが、本実施の形態では、後述するように、別々にセッションを確立する必要性はない。
【００２０】
サーバ装置２０は、セッション管理部３０と、アプリケーション実行部４０とを備えている。本実施の形態では、セッション管理部３０及びアプリケーション実行部４０は、サーバ装置２０を構成するコンピュータにおいて、プログラムによって構築されている。
【００２１】
セッション管理部３０は、シンクライアント１１及びリッチクライアント１２それぞれとアプリケーションプログラムとの間でセッションを確立する。アプリケーション実行部４０は、各クライアントとの間でセッションが確立されると、セッションが確立されたクライアントに対して、アプリケーションプログラムを実行する。また、本実施の形態においては、セッション管理部３０は、本実施の形態におけるセッション管理装置として機能する。以下の説明では、「セッション管理装置３０」と表記する。
【００２２】
図１に示すように、セッション管理装置３０は、第１の接続制御部３１と、セッション制御部３２と、第２の接続制御部３３とを備えている。第１の接続制御部３１は、シンクライアント１１から入力されたログイン情報が正当であることを条件にして、シンクライアント１１とアプリケーションプログラムとの間に第１のセッションを確立する。
【００２３】
セッション制御部３２は、第１のセッションが確立されると、第１のセッションの維持に必要な情報を保持するセッションオブジェクトを生成し、更に、シンクライアント１１に対してセッションＩＤを設定する。セッションオブジェクトは、具体的には、例えば、ログインユーザ情報（ユーザＩＤ及びパスワード等）、セッション確立時刻、最終アクセス時刻などの情報を含むスレッドである。
【００２４】
また、本実施の形態では、セッション制御部３２は、予め設定されたルールに基づいて、一意なセッションＩＤを採番する。更に、セッション制御部３２は、シンクライアント１１に組み込まれたクッキーにセッションＩＤを設定する。また、シンクライアント１１は、セッションＩＤが設定されると、設定されたセッションＩＤをリッチクライアント１２に渡す。
【００２５】
また、セッション制御部３２は、セッションオブジェクトの生成後、シンクライアント１１の操作画面に、利用可能なリッチクライアント１２を表示させることができる。この場合、ユーザは、表示されているリッチクライアント１２の中から、利用するリッチクライアントを選択することができる。
【００２６】
第２の接続制御部３３は、リッチクライアント１２が、シンクライアント１１から受け取ったセッションＩＤを用いて、アプリケーションプログラムとのセッションの確立を要求すると、セッション制御部３２からセッションオブジェクトを取得する。
【００２７】
具体的には、本実施の形態では、第２の接続制御部３３は、リッチクライアント１２からアクセスされると、セッション制御部３２からセッションＩＤを取得し、取得したセッションＩＤとリッチクライアントが保持するセッションＩＤとが一致するかどうかを判定する。そして、一致する場合は、第２の接続制御部３３は、セッション制御部３２からセッションオブジェクトを取得する。
【００２８】
また、第２の制御部３３は、セッションオブジェクトを取得すると、取得したセッションオブジェクトを用いて、リッチクライアント１２とアプリケーションプログラムとの間に第２のセッションを確立する。このとき、セッションオブジェクトは、上述したように、第１のセッションの維持に必要な情報を保持していることから、第２の制御部３３は、ユーザに、リッチクライアント１２を介してログイン情報を入力させることなく、第２のセッションを確立することができる。
【００２９】
また、本実施の形態においては、セッション制御部３２は、第１のセッションがタイムアウトになっていないかどうかを判定し、タイムアウトになっていない場合にのみ、セッションオブジェクトの生成と、セッションＩＤの設定とを行うのが好ましい。第１のセッションがタイムアウトになっている場合は、セッションオブジェクトを用いて、後述する第２のセッションを設立することができなくなるからである。また、同様の趣旨から、第２の制御部３３は、取得したセッションオブジェクトの最終アクセス時刻を更新するのが好ましい。
【００３０】
［動作］
次に、本実施の形態におけるセッション管理装置３０の動作について図２を用いて説明する。本発明の実施の形態におけるセッション管理装置の動作を示すフロー図である。また、以下の説明においては、適宜図１を参酌する。更に、本実施の形態では、セッション管理装置３０を動作させることによって、本実施の形態におけるセッション管理方法が実施される。よって、本実施の形態におけるセッション管理方法の説明は、以下のセッション管理装置３０の動作説明に代える。
【００３１】
最初に、図２に示すように、第１の接続制御部３１は、第１のクライアントであるシンクライアント１１からのログイン情報の入力を受け付ける（ステップＡ１）。次に、第１の接続制御部３１は、ログイン情報が正当である場合は、シンクライアント１１とアプリケーションプログラムとの間に第１のセッションを確立する（ステップＡ２）。
【００３２】
次に、第１のセッションが確立されると、セッション制御部３２は、第１のセッションがタイムアウトになっているかどうかを判定する（ステップＡ３）。具体的には、セッション制御部３２は、予めセッション毎に作成されている環境ファイルから、タイムアウト値を取得し、取得したタイムアウト値と、シンクライアント１１で最後に行われた操作からの経過時間とを対比し、対比結果に基づいて判定を行う。
【００３３】
ステップＡ３の判定の結果、タイムアウトになっている場合は、セッション制御部３２は、第１のセッションを削除する。これにより、セッション管理装置３０における処理は終了する。一方、ステップＡ３の判定の結果、タイムアウトになっていない場合は、セッション制御部３２は、セッションオブジェクトを生成する（ステップＡ４）。
【００３４】
次に、セッション制御部３２は、一意なセッションＩＤを採番し、更に、シンクライアント１１に組み込まれたクッキーにセッションＩＤを設定し（ステップＡ５）、続いて、シンクライアント１１の操作画面に、利用可能なリッチクライアント１２を表示させる（ステップＡ６）。
【００３５】
ステップＡ６の実行後、第２の接続制御部３３は、リッチクライアント１２からアクセスがあったかどうかを判定する（ステップＡ７）。ステップＡ７の判定の結果、リッチクライアント１２からのアクセスがない場合は、第２の接続制御部３３は、待機状態となる。
【００３６】
一方、ステップＡ７の判定の結果、リッチクライアント１２からのアクセスがあった場合は、第２の接続制御部３２は、セッション制御部３２からセッションＩＤを取得し、取得したセッションＩＤとリッチクライアントが保持するセッションＩＤとが一致するかどうかを判定する（ステップＡ８）。
【００３７】
ステップＡ８の判定の結果、一致しない場合は、第２の接続制御部３３は、再度ステップＡ７を実行する。一方、ステップＡ８の判定の結果、一致する場合は、第２の接続制御部３３は、セッション制御部３２からセッションオブジェクトを取得し、更に、取得したセッションオブジェクトの最終アクセス時刻を更新する（ステップＡ９）。
【００３８】
その後、第２の接続制御部３３は、取得したセッションオブジェクトを用いて、リッチクライアント１２とアプリケーションプログラムとの間に第２のセッションを確立する（ステップＡ１０）。その後、第１のセッション及び第２のセッションが終了すると、セッション管理装置３０における処理は終了する。
【００３９】
以上の説明に示したように、本実施の形態では、第１のセッションの確立時には、ユーザによるログン情報の入力が求められるが、第２のセッションの確立時においては、ログイン情報の入力は求められていない。そして、それにも関わらず、第２のセッションが確立される。つまり、第１のセッションと第２のセッションとは、一つの連続したセッションとみなすことができ、本実施の形態によれば、シンクライアントとリッチクライアントとの間のシームレスな連携が可能となる。
【００４０】
なお、上述した例では、第１のクライアント１１がシンクライアントであり、第２のクライアントがリッチクライアントである例について説明しているが、本実施の形態は、これらが入れ替わった態様であっても良い。即ち、本実施の形態では、第１のクライアント１１がリッチクライアントであり、第２のクライアント１２がとシンクライアントであっても良い。
【００４１】
本実施の形態におけるプログラムは、コンピュータに、図２に示すステップＡ１〜Ａ１０を実行させるプログラムであれば良い。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態におけるセッション管理装置３０とセッション管理方法とを実現することができる。
【００４２】
この場合、コンピュータのＣＰＵ（Central Processing Unit）は、第１の接続制御部３１、セッション制御部３２、及び第２の接続制御部３３として機能し、処理を行なう。また、このようなコンピュータとしては、本実施の形態においては、サーバ装置２０を構成しているサーバコンピュータが挙げられる。
【００４３】
ここで、実施の形態におけるプログラムを実行することによって、セッション管理装置３０を実現するコンピュータについて図３を用いて説明する。図３は、本発明の実施の形態におけるセッション管理装置を実現するコンピュータの一例を示すブロック図である。
【００４４】
図３に示すコンピュータ１１０は、図１に示したサーバ装置２０として機能するサーバコンピュータである。図３に示すように、コンピュータ１１０は、ＣＰＵ１１１と、メインメモリ１１２と、記憶装置１１３と、入力インターフェイス１１４と、表示コントローラ１１５と、データリーダ／ライタ１１６と、通信インターフェイス１１７とを備える。これらの各部は、バス１２１を介して、互いにデータ通信可能に接続される。
【００４５】
ＣＰＵ１１１は、記憶装置１１３に格納された、本実施の形態におけるプログラム（コード）をメインメモリ１１２に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ１１２は、典型的には、ＤＲＡＭ（Dynamic Random Access Memory）等の揮発性の記憶装置である。また、本実施の形態におけるプログラムは、コンピュータ読み取り可能な記録媒体１２０に格納された状態で提供される。なお、本実施の形態におけるプログラムは、通信インターフェイス１１７を介して接続されたインターネット上で流通するものであっても良い。
【００４６】
また、記憶装置１１３の具体例としては、ハードディスクの他、フラッシュメモリ等の半導体記憶装置が挙げられる。入力インターフェイス１１４は、ＣＰＵ１１１と、キーボード及びマウスといった入力機器１１８との間のデータ伝送を仲介する。表示コントローラ１１５は、ディスプレイ装置１１９と接続され、ディスプレイ装置１１９での表示を制御する。データリーダ／ライタ１１６は、ＣＰＵ１１１と記録媒体１２０との間のデータ伝送を仲介し、記録媒体１２０からのプログラムの読み出し、及びコンピュータ１１０における処理結果の記録媒体１２０への書き込みを実行する。通信インターフェイス１１７は、ＣＰＵ１１１と、他のコンピュータとの間のデータ伝送を仲介する。
【００４７】
また、記録媒体１２０の具体例としては、ＣＦ（Compact Flash）及びＳＤ（Secure Digital）等の汎用的な半導体記憶デバイス、フレキシブルディスク（Flexible Disk）等の磁気記憶媒体、又はＣＤ−ＲＯＭ（Compact Disk Read Only Memory）などの光学記憶媒体が挙げられる。
【実施例】
【００４８】
次に、図４を用いてセッション管理装置及びセッション管理システムの実施例について説明する。図４は、本発明の実施例におけるセッション管理装置及びセッション管理システムの構成を示すブロック図である。
【００４９】
図４に示すように、本実施例では、セッション管理装置は、サーバ装置２０に組み込まれたサーブレット（Servlet）１３０によって構築されている。また、サーブレット１３０は、第１の接続制御部として機能するコントロールサーブレット１３１と、セッション制御部として機能するセッションコントローラ１３２と、第２の接続制御部として機能するＷｅｂサービス１３３とを備えている。
【００５０】
コントロールサーブレット１３１、セッションコントローラ１３２、及びＷｅｂサービス１３３は、それぞれ、モジュール化されたＪＡＶＡ（登録商標）プログラムによって構成されている。
【００５１】
また、図４に示すように、本実施例では、アプリケーション実行部は、複数個のアプリケーションプログラムを備えたＥＪＢ（Enterprise Java Beans）１４０によって構築されている。ＥＪＢ１４０に備えられるアプリケーションプログラムとしては、認証アプリケーション、検索アプリケーションなどが挙げられる。
【００５２】
更に、本実施例において、シンクライアント１１は、Ｗｅｂアプリケーションを実行するためのＷｅｂブラウザで構成されており、リッチクライアント１２は、“ClickOnce”などの技術によって端末装置に配布されたプログラムモジュールによって構成されている。
【００５３】
以上の構成により、本実施例においては、ユーザは、先ず、シンクライアント１１として機能するＷｅｂブラウザの画面上で、業務を実行するための特定のサイトにアクセスする。この特定のサイトは、サーバ装置２０によって提供されている。そして、ログイン情報が正当であれば、コントロールサーブレット１３１は、セッションを確立し、切断・タイムアウトされるまで、このセッション（第１のセッション）を維持する。
【００５４】
次に、セッションコントローラ１３２は、第１のセッションがタイムアウトでないかどうかを監視、タイムアウトでない場合は、セッションオブジェクトを生成すると共に、シンクライアント１１のクッキーにセッションＩＤを設定する。また、セッションコントローラ１３２は、このとき、シンクライアント１３２の画面に、使用可能なリッチクライアントの一覧を表示させる。
【００５５】
そして、ユーザが、いずれかのリッチクライアント１２を起動させると、リッチクライアント１２からＷｅｂサービス１３３にセッションＩＤが渡される。次に、Ｗｅｂサービス１３３は、このセッションＩＤと、セッション制御部３２が保持していたセッションＩＤとが一致すると、セッション制御部３２からセッションオブジェクトを取得する。
【００５６】
次に、Ｗｅｂサービス１３３は、セッションオブジェクトの最終アクセス時刻を更新し、更新済みのセッションオブジェクトを用いて、シンクライアントが利用しているアプリケーションプログラムとの間に第２のセッションを確立する。
【００５７】
このように、本実施例において、第２のセッションは、ユーザにログイン情報の入力を求めることなく確立されており、シンクライアントとリッチクライアントとの間では、シームレスな連携が可能となっている。
【００５８】
また、上述した実施の形態及び実施例の一部又は全部は、以下に記載する（付記１）〜（付記１６）によって表現することができるが、以下の記載に限定されるものではない。
【００５９】
（付記１）
互いに異なるシステムとして動作する第１のクライアント及び第２のクライアントそれぞれとアプリケーションプログラムとの間でセッションを確立する、セッション管理装置であって、
前記第１のクライアントから入力されたログイン情報が正当であることを条件にして、前記第１のクライアントと前記アプリケーションプログラムとの間に第１のセッションを確立する、第１の接続制御部と、
前記第１のセッションが確立されると、前記第１のセッションの維持に必要な情報を保持するセッションオブジェクトを生成し、更に、前記第１のクライアントに対してセッションＩＤを設定する、セッション制御部と、
前記第２のクライアントが、前記第１のクライアントから前記セッションＩＤを受け取り、受け取った前記セッションＩＤを用いて、前記アプリケーションプログラムとのセッションの確立を要求した場合に、前記セッション制御部から前記セッションオブジェクトを取得し、取得した前記セッションオブジェクトを用いて、前記第２のクライアントと前記アプリケーションプログラムとの間に第２のセッションを確立する、第２の接続制御部と、
を備えていることを特徴とするセッション管理装置。
【００６０】
（付記２）
前記セッション制御部が、前記第１のセッションがタイムアウトになっていないかどうかを判定し、タイムアウトになっていない場合に、前記セッションオブジェクトの生成と、前記セッションＩＤの設定とを行い、
前記第２の接続制御部が、取得した前記セッションオブジェクトの最終アクセス時刻を更新し、その後、最終アクセス時刻が更新された前記セッションオブジェクトを用いて、前記第２のセッションを確立する、
付記１に記載のセッション管理装置。
【００６１】
（付記３）
前記セッション制御部が、前記セッションオブジェクトの生成後、前記第１のクライアントの操作画面に、利用可能な前記第２のクライアントを表示させる、付記１または２に記載のセッション管理装置。
【００６２】
（付記４）
前記第１のクライアント及び前記第２のクライアントのうち、一方がシンクライアントであり、他方がリッチクライアントである、付記１〜３のいずれかに記載のセッション管理装置。
【００６３】
（付記５）
端末装置と、サーバ装置とを備えたセッション管理システムであって、
前記端末装置は、互いに異なるシステムとして動作する第１のクライアント及び第２のクライアントを備え、
前記サーバ装置は、アプリケーションプログラムを実行するアプリケーション実行部と、前記第１のクライアント及び前記第２のクライアントそれぞれとアプリケーションプログラムとの間でセッションを確立するセッション管理部とを備え、
前記セッション管理部は、
前記第１のクライアントから入力されたログイン情報が正当であることを条件にして、前記第１のクライアントと前記アプリケーションプログラムとの間に第１のセッションを確立する、第１の接続制御部と、
前記第１のセッションが確立されると、前記第１のセッションの維持に必要な情報を保持するセッションオブジェクトを生成し、更に、前記第１のクライアントに対してセッションＩＤを設定する、セッション制御部と、
前記第２のクライアントが、前記第１のクライアントから前記セッションＩＤを受け取り、受け取った前記セッションＩＤを用いて、前記アプリケーションプログラムとのセッションの確立を要求した場合に、前記セッション制御部から前記セッションオブジェクトを取得し、取得した前記セッションオブジェクトを用いて、前記第２のクライアントと前記アプリケーションプログラムとの間に第２のセッションを確立する、第２の接続制御部と、
を備えていることを特徴とするセッション管理システム。
【００６４】
（付記６）
前記セッション制御部が、前記第１のセッションがタイムアウトになっていないかどうかを判定し、タイムアウトになっていない場合に、前記セッションオブジェクトの生成と、前記セッションＩＤの設定とを行い、
前記第２の接続制御部が、取得した前記セッションオブジェクトの最終アクセス時刻を更新し、その後、最終アクセス時刻が更新された前記セッションオブジェクトを用いて、前記第２のセッションを確立する、
付記５に記載のセッション管理装置。
【００６５】
（付記７）
前記セッション制御部が、前記セッションオブジェクトの生成後、前記第１のクライアントの操作画面に、利用可能な前記第２のクライアントを表示させる、付記５または６に記載のセッション管理装置。
【００６６】
（付記８）
前記第１のクライアント及び前記第２のクライアントのうち、一方がシンクライアントであり、他方がリッチクライアントである、付記５〜７のいずれかに記載のセッション管理装置。
【００６７】
（付記９）
互いに異なるシステムとして動作する第１のクライアント及び第２のクライアントそれぞれとアプリケーションプログラムとの間でセッションを確立するためのセッション管理方法であって、
（ａ）前記第１のクライアントから入力されたログイン情報が正当であることを条件にして、前記第１のクライアントと前記アプリケーションプログラムとの間に第１のセッションを確立する、ステップと、
（ｂ）前記（ａ）のステップで前記第１のセッションが確立されると、前記第１のセッションの維持に必要な情報を保持するセッションオブジェクトを生成し、更に、前記第１のクライアントに対してセッションＩＤを設定する、ステップと、
（ｃ）前記第２のクライアントが、前記第１のクライアントから前記セッションＩＤを受け取り、受け取った前記セッションＩＤを用いて、前記アプリケーションプログラムとのセッションの確立を要求した場合に、前記（ｂ）のステップで生成された前記セッションオブジェクトを取得し、取得した前記セッションオブジェクトを用いて、前記第２のクライアントと前記アプリケーションプログラムとの間に第２のセッションを確立する、ステップと、
を有することを特徴とするセッション管理方法。
【００６８】
（付記１０）
前記（ｂ）のステップにおいて、前記第１のセッションがタイムアウトになっていないかどうかを判定し、タイムアウトになっていない場合に、前記セッションオブジェクトの生成と、前記セッションＩＤの設定とを行い、
前記（ｃ）のステップにおいて、取得した前記セッションオブジェクトの最終アクセス時刻を更新し、その後、最終アクセス時刻が更新された前記セッションオブジェクトを用いて、前記第２のセッションを確立する、
付記９に記載のセッション管理方法。
【００６９】
（付記１１）
（ｄ）前記（ｂ）のステップにおける前記セッションオブジェクトの生成後、前記第１のクライアントの操作画面に、利用可能な前記第２のクライアントを表示させるステップを、更に有する付記９または１０に記載のセッション管理方法。
【００７０】
（付記１２）
前記第１のクライアント及び前記第２のクライアントのうち、一方がシンクライアントであり、他方がリッチクライアントである、付記９〜１１のいずれかに記載のセッション管理方法。
【００７１】
（付記１３）
互いに異なるシステムとして動作する第１のクライアント及び第２のクライアントそれぞれとアプリケーションプログラムとの間におけるセッションの確立を、コンピュータに実行させるためのプログラムであって、
前記コンピュータに、
（ａ）前記第１のクライアントから入力されたログイン情報が正当であることを条件にして、前記第１のクライアントと前記アプリケーションプログラムとの間に第１のセッションを確立する、ステップと、
（ｂ）前記（ａ）のステップで前記第１のセッションが確立されると、前記第１のセッションの維持に必要な情報を保持するセッションオブジェクトを生成し、更に、前記第１のクライアントに対してセッションＩＤを設定する、ステップと、
（ｃ）前記第２のクライアントが、前記第１のクライアントから前記セッションＩＤを受け取り、受け取った前記セッションＩＤを用いて、前記アプリケーションプログラムとのセッションの確立を要求した場合に、前記（ｂ）のステップで生成された前記セッションオブジェクトを取得し、取得した前記セッションオブジェクトを用いて、前記第２のクライアントと前記アプリケーションプログラムとの間に第２のセッションを確立する、ステップと、
を実行させるプログラム。
【００７２】
（付記１４）
前記（ｂ）のステップにおいて、前記第１のセッションがタイムアウトになっていないかどうかを判定し、タイムアウトになっていない場合に、前記セッションオブジェクトの生成と、前記セッションＩＤの設定とを行い、
前記（ｃ）のステップにおいて、取得した前記セッションオブジェクトの最終アクセス時刻を更新し、その後、最終アクセス時刻が更新された前記セッションオブジェクトを用いて、前記第２のセッションを確立する、
付記１３に記載のプログラム。
【００７３】
（付記１５）
（ｄ）前記（ｂ）のステップにおける前記セッションオブジェクトの生成後、前記第１のクライアントの操作画面に、利用可能な前記第２のクライアントを表示させるステップを、更に前記コンピュータに実行させる付記１３または１４に記載のプログラム。
【００７４】
（付記１６）
前記第１のクライアント及び前記第２のクライアントのうち、一方がシンクライアントであり、他方がリッチクライアントである、付記１３〜１５のいずれかに記載のプログラム。
【産業上の利用可能性】
【００７５】
本発明によれば、互いに異なるシステムとして動作する２つのクライアント間のシームレスな連携が可能になる。本発明は、複数のクライアントが利用されるＷｅｂシステムなどに有効である。
【符号の説明】
【００７６】
１０  端末装置
１１  シンクライアント（第１のクライアント）
１２  リッチクライアント（第２のクライアント）
２０  サーバ装置
３０  セッション管理装置（セッション管理部）
３１  第１の接続制御部
３２  セッション制御部
３３  第２の接続制御部
４０  アプリケーション実行部
１１０  コンピュータ（サーバコンピュータ）
１１１  ＣＰＵ
１１２  メインメモリ
１１３  記憶装置
１１４  入力インターフェイス
１１５  表示コントローラ
１１６  データリーダ／ライタ
１１７  通信インターフェイス
１１８  入力機器
１１９  ディスプレイ装置
１２０  記録媒体
１２１  バス
１３０  サーブレット
１３１  コントロールサーブレット
１３２  セッションコントローラ
１３３  Ｗｅｂサービス
１４０  ＥＪＢ
【図１】
0005522735.tif 000002
【図２】
0005522735.tif 000003
【図３】
0005522735.tif 000004
【図４】
0005522735.tif 000005