(57)【要約】【課題】アプリケーションの継続処理を安全に行うことを可能とする。【解決手段】アプリケーションを使用した際の操作内容を登録した操作履歴データベースと、操作内容の少なくとも一部を特定する継続管理情報を登録した継続管理データベースと、にアクセス可能であるコンピュータに、アプリケーションの使用を中断した後にアプリケーションの使用を継続する際に、ユーザのアプリケーションに対する操作内容を取得する第１のステップ（Ｓ３０−４）と、第１のステップ（Ｓ３０−４）で取得された操作内容と継続管理情報が特定する操作内容とが一致した場合、操作履歴データベースに登録された操作内容の履歴に基づいて、アプリケーションの状態を中断前の状態に復元する第２のステップ（Ｓ３０−１０）と、を含む処理を行わせる。【選択図】図９
2009193188.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションを使用した際の操作内容を登録した操作履歴データベースと、前記操作内容の少なくとも一部を特定する継続管理情報を登録した継続管理データベースと、にアクセス可能であるコンピュータに、
前記アプリケーションの使用を中断した後に前記アプリケーションの使用を継続する際に、
ユーザの前記アプリケーションに対する操作内容を取得する第１のステップと、
前記第１のステップで取得された操作内容と前記継続管理情報が特定する操作内容とが一致した場合、前記操作履歴データベースに登録された操作内容の履歴に基づいて、前記アプリケーションの状態を中断前の状態に復元する第２のステップと、
を含む処理を行わせることを特徴とする継続管理プログラム。
【請求項２】
請求項１に記載の継続管理プログラムにおいて、
前記第１のステップで取得された操作内容と前記継続管理情報が特定する操作内容とが一致しなかった場合、前記アプリケーションの使用を中断した状態を継続することを特徴とする継続管理プログラム。
【請求項３】
請求項１に記載の継続管理プログラムにおいて、
前記第１のステップで取得された操作内容と前記継続管理情報が特定する操作内容とが一致しなかった場合、前記アプリケーションの状態を、一部の機能を制限して中断前の状態に復元することを特徴とする継続管理プログラム。
【請求項４】
請求項１に記載の継続管理プログラムにおいて、
前記コンピュータに、
前記アプリケーションの中断の指示を受け付けた場合に、前記アプリケーションにおける処理を制限する第３のステップをさらに実行させ、
前記第１のステップで取得された操作内容と前記継続管理情報が特定する操作内容とが一致した場合、前記第３のステップで行われた制限を解除することを特徴とする継続管理プログラム。
【請求項５】
請求項１に記載の継続管理プログラムにおいて、
前記継続管理情報は、前記操作履歴データベースに登録された操作内容の少なくとも一部にハッシュ関数を適用して得られたハッシュ値であり、
前記第２のステップでは、前記第１のステップで取得された操作内容に前記ハッシュ関数を適用して得られたハッシュ値と前記継続管理情報とが一致した場合、前記操作履歴データベースに登録された操作内容の履歴に基づいて、前記アプリケーションの状態を中断前の状態に復元することを特徴とする継続管理プログラム。
【請求項６】
請求項１に記載の継続管理プログラムにおいて、
前記継続管理情報は、前記操作内容の少なくとも一部であって複数の操作内容を特定する情報であり、
前記第２のステップでは、前記第１のステップで取得した複数の操作内容と前記継続管理情報が特定する複数の操作内容とが一致した場合には、前記操作履歴データベースに登録された操作内容の履歴に基づいて、前記アプリケーションの状態を中断前の状態に復元することを特徴とする継続管理プログラム。
【請求項７】
請求項１又は３に記載の継続管理プログラムにおいて、
前記第２のステップでは、前記アプリケーションの状態を中断直前の状態に復元することを特徴とする継続管理プログラム。
【請求項８】
請求項１から４のいずれか一項に記載の継続管理プログラムにおいて、
前記継続管理データベースは、ユーザ及びアプリケーションの組み合わせ毎に継続管理情報が登録されており、
前記第２のステップでは、ユーザ及びアプリケーション毎に、前記第１のステップで取得された操作内容と前記継続管理情報が特定する操作内容とが一致したか否かを判断することを特徴とする継続管理プログラム。
【請求項９】
アプリケーションを使用した際の操作内容を登録した操作履歴データベースと、前記操作内容の少なくとも一部を特定する継続管理情報を登録した継続管理データベースと、にアクセス可能であり、
前記アプリケーションの使用を中断した後に前記アプリケーションの使用を継続する際に、
ユーザの前記アプリケーションに対する操作内容を取得する第１の手段と、
前記第１の手段で取得された操作内容と前記継続管理情報が特定する操作内容とが一致した場合、前記操作履歴データベースに登録された操作内容の履歴に基づいて、前記アプリケーションの状態を中断前の状態に復元する第２の手段と、
を備えることを特徴とする継続管理装置。
【請求項１０】
ユーザのアプリケーションに対する操作を受け付ける第１の手段と、
前記第１の手段において受け付けられた操作内容を送信する第２の手段と、
を備えるクライアントと、
アプリケーションを使用した際の操作内容を登録した操作履歴データベースと、前記操作内容の少なくとも一部にハッシュ関数を適用して得られたハッシュ値である継続管理情報を登録した継続管理データベースと、にアクセス可能であり、
アプリケーションの使用を中断した後に前記アプリケーションの使用を継続する際に、
前記第２の手段から送信された前記操作内容を取得する第３の手段と、
前記第３の手段で取得された操作内容に前記ハッシュ関数を適用して得られたハッシュ値と前記継続管理情報とが一致した場合、前記操作履歴データベースに登録された操作内容の履歴に基づいて、前記アプリケーションの状態を中断前の状態に復元する第４の手段と、
を備えるサーバと、
を含むことを特徴とする継続管理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、継続管理プログラム、継続管理装置及び継続管理システムに関する。
【背景技術】
【０００２】
ユーザがコンピュータ上でアプリケーションを使用中に離席するような場合、アプリケーションの操作が途中のままで離席し、席に戻ってから操作を継続したいことがある。例えば、ウェブのアプリケーションにおいて処理中の作業内容や既に入力した情報の処理が完了していないで処理を中断した後、処理を継続して行いたい場合等が挙げられる。
【０００３】
このような処理はユーザの利便性を高める反面、セキュリティ上で問題がある。アプリケーションが起動したまま、ログインされた状態で放置されることとなり、第三者に操作途中のアプリケーションを不正に操作される危険性がある。したがって、離席時にはログアウトを行うべきであるが、ログアウトすると作業状態を継続することができなくなり、ユーザにとっての利便性が低下する。
【０００４】
上記問題に対して、コンピュータのオペレーションシステムが提供するスクリーンロック機能等により、クライアントのデスクトップをロックすることで、アプリケーションにログインした状態でのセキュリティを保持する技術が知られている。しかしながら、スクリーンロック機能は短時間の中断に対しては有効であるが、長時間の中断には適していない。なぜなら、アプリケーションを使用しないまま起動しておくことによって、外部からのセキュリティ攻撃を受ける可能性があるからである。また、ＩＳＯ１４００１のようなエネルギー消費の問題としても無駄が生じてしまう。
【０００５】
長時間の中断に対してはオペレーションシステムを休止状態とすることが、アプリケーションにログインした状態でクライアントの電源をオフできる点でセキュリティ的及びエネルギー的に優れている。
【０００６】
しかしながら、セッションタイムアウト機能を有するウェブ上のアプリケーション等では、スクリーンロックやシステム休止処理では、ログイン状態が一定時間以上継続した場合にセッションタイムアウトが発生し、タイムアウト後にアプリケーションを使用する際にはログイン処理からやり直す必要が発生する。
【０００７】
また、ユーザのパスワード等が漏洩した場合、正規でないユーザが漏洩したパスワードを取得し、そのパスワードを使ってスクリーンロックやシステム休止状態が解除され、中断されていたアプリケーションの処理が継続されてしまうおそれがある。このことは、自動ログイン機能を用いている場合にも同様である。
【０００８】
このような問題に対して、ウェブブラウザ画面上でフォームを操作することでアクセス可能な動的コンテンツに対するアクセスにおいて、アクセス履歴を恒久的に保存し、操作履歴に基づいて動的コンテンツを再現する技術が開示されている（特許文献１）。
【０００９】
また、セッションタイムアウト対策として、ユーザにタイムアウトの警告を行い、ユーザがタイムアウトまでの時間を変更することを可能として、不意にタイムアウトが生ずることを防ぐ技術が開示されている（特許文献２）。
【００１０】
さらに、複数のウェブアプリケーション間で処理結果を引き継ぐことを実現する技術が開示されている（特許文献３）。
【００１１】
【特許文献１】特開２００１−６０１７９号公報
【特許文献２】特開２００３−１４１０７４号公報
【特許文献３】特開２００６−１７８８８７号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
本発明の目的は、使用者がアプリケーションの使用を中断した場合において、第三者がアプリケーションを不正に使用することを抑制し、且つ、使用者が所定のパスワードを入力することなくアプリケーションの状態を中断前の状態に復元する継続管理プログラム、継続管理装置及び継続管理システムを提供することである。
【課題を解決するための手段】
【００１３】
本発明の一態様は、アプリケーションを使用した際の操作内容を登録した操作履歴データベースと、前記操作内容の少なくとも一部を特定する継続管理情報を登録した継続管理データベースと、にアクセス可能であるコンピュータに、前記アプリケーションの使用を中断した後に前記アプリケーションの使用を継続する際に、ユーザの前記アプリケーションに対する操作内容を取得する第１のステップと、前記第１のステップで取得された操作内容と前記継続管理情報が特定する操作内容とが一致した場合、前記操作履歴データベースに登録された操作内容の履歴に基づいて、前記アプリケーションの状態を中断前の状態に復元する第２のステップと、を含む処理を行わせることを特徴とする継続管理プログラムである。
【００１４】
本発明の別の態様は、アプリケーションを使用した際の操作内容を登録した操作履歴データベースと、前記操作内容の少なくとも一部を特定する継続管理情報を登録した継続管理データベースと、にアクセス可能であり、前記アプリケーションの使用を中断した後に前記アプリケーションの使用を継続する際に、ユーザの前記アプリケーションに対する操作内容を取得する第１の手段と、前記第１の手段で取得された操作内容と前記継続管理情報が特定する操作内容とが一致した場合、前記操作履歴データベースに登録された操作内容の履歴に基づいて、前記アプリケーションの状態を中断前の状態に復元する第２の手段と、を備えることを特徴とする継続管理装置である。
【００１５】
本発明の別の態様は、ユーザのアプリケーションに対する操作を受け付ける第１の手段と、前記第１の手段において受け付けられた操作内容を送信する第２の手段と、を備えるクライアントと、アプリケーションを使用した際の操作内容を登録した操作履歴データベースと、前記操作内容の少なくとも一部にハッシュ関数を適用して得られたハッシュ値である継続管理情報を登録した継続管理データベースと、にアクセス可能であり、アプリケーションの使用を中断した後に前記アプリケーションの使用を継続する際に、前記第２の手段から送信された前記操作内容を取得する第３の手段と、前記第３の手段で取得された操作内容に前記ハッシュ関数を適用して得られたハッシュ値と前記継続管理情報とが一致した場合、前記操作履歴データベースに登録された操作内容の履歴に基づいて、前記アプリケーションの状態を中断前の状態に復元する第４の手段と、を備えるサーバと、を含むことを特徴とする継続管理システムである。
【００１６】
ここで、前記第１のステップで取得された操作内容と前記継続管理情報が特定する操作内容とが一致しなかった場合、前記アプリケーションの使用を中断した状態を継続してもよい。
【００１７】
また、前記第１のステップで取得された操作内容と前記継続管理情報が特定する操作内容とが一致しなかった場合、前記アプリケーションの状態を、一部の機能を制限して中断前の状態に復元してもよい。
【００１８】
また、前記コンピュータに、前記アプリケーションの中断の指示を受け付けた場合に、前記アプリケーションにおける処理を制限する第３のステップをさらに実行させ、前記第１のステップで取得された操作内容と前記継続管理情報が特定する操作内容とが一致した場合、前記第３のステップで行われた制限を解除してもよい。
【００１９】
また、前記継続管理情報は、前記操作履歴データベースに登録された操作内容の少なくとも一部にハッシュ関数を適用して得られたハッシュ値であり、前記第２のステップでは、前記第１のステップで取得された操作内容に前記ハッシュ関数を適用して得られたハッシュ値と前記継続管理情報とが一致した場合、前記操作履歴データベースに登録された操作内容の履歴に基づいて、前記アプリケーションの状態を中断前の状態に復元してもよい。
【００２０】
また、前記継続管理情報は、前記操作内容の少なくとも一部であって複数の操作内容を特定する情報であり、前記第２のステップでは、前記第１のステップで取得した複数の操作内容と前記継続管理情報が特定する複数の操作内容とが一致した場合には、前記操作履歴データベースに登録された操作内容の履歴に基づいて、前記アプリケーションの状態を中断前の状態に復元してもよい。
【００２１】
また、前記第２のステップでは、前記アプリケーションの状態を中断直前の状態に復元してもよい。
【発明の効果】
【００２２】
請求項１，９及び１０の発明によれば、使用者がアプリケーションの使用を中断した場合において、第三者がアプリケーションを不正に使用することを抑制し、且つ、使用者が所定のパスワードを入力することなくアプリケーションの状態を中断前の状態に復元することができる。
【００２３】
請求項２の発明によれば、ユーザの操作内容が、継続管理情報が特定する操作内容に一致しなかった場合には、アプリケーションの状態を中断前の状態に復元しないようにすることができる。
【００２４】
請求項３の発明によれば、ユーザの操作内容が、継続管理情報が特定する操作内容に一致しなかった場合には、アプリケーションの機能の一部を制限することができる。
【００２５】
請求項４の発明によれば、アプリケーションの処理の中断時にその処理の少なくとも一部を制限し、ユーザの操作内容が、継続管理情報が特定する操作内容に一致した場合にはその制限を解除することができる。
【００２６】
請求項５の発明によれば、中断処理前の操作内容に基づいて一旦中断されたアプリケーションの状態を復元するかを判断する際に、実際の操作の再現ではなく、中断前の操作内容から生成されたハッシュ値を用いることができる。
【００２７】
請求項６記載の発明によれば、複数の操作履歴の組み合わせに基づいて一旦中断されたアプリケーションの状態を復元するかを判断することができる。
【００２８】
請求項７に記載の発明によれば、前記アプリケーションの状態を中断直前の状態に復元することができる。
【００２９】
請求項８に記載の発明によれば、複数のユーザ及び複数のアプリケーションに対して、ユーザ及びアプリケーションの組み合わせ毎に登録されている継続管理情報に基づいてアプリケーションの状態を復元するかを判断することができる。
【発明を実施するための最良の形態】
【００３０】
＜第１の実施の形態＞
本発明の第１の形態における情報処理システムは、図１に例示するように、クライアントコンピュータ（以下、クライアントと略する）１００とサーバコンピュータ（以下、サーバと略する）２００とを含んで構成される。
【００３１】
本実施の形態では、サーバ２００においてアプリケーションを実行し、サーバ２００に対してユーザがクライアント１００を用いてアクセスして処理を行う例を説明する。ただし、このようなシステム構成に限定されるものではなく、クライアント１００にサーバ２００の機能を組み込んでアプリケーションを実行する態様等であってもよい。
【００３２】
本発明の実施の形態におけるクライアント１００は、図２に例示するように、中央処理部１０ａ、記憶部１２ａ、操作部１４ａ、表示部１６ａ及びインターフェース部１８ａを含んで構成される。これらの構成部は、バスやネットワーク等の情報伝達手段によって相互に情報伝達可能に接続される。
【００３３】
中央処理部１０ａは、ＣＰＵ（中央制御装置）を含んで構成される。中央処理部１０ａは、記憶部１２ａ、操作部１４ａ及びインターフェース部１８ａから情報を受け取り、その情報に対してプログラムに従って演算等の処理を施し、表示部１６ａ及びインターフェース部１８ａへ出力することによって情報処理を行う。本実施の形態では、中央処理部１０ａは、サーバ２００で実行されるウェブアプリケーションプログラムから情報を受けて機能するクライアントアプリケーションプログラムを実行する。
【００３４】
記憶部１２ａは、半導体メモリ、ハードディスク装置、光ディスク装置等の情報記憶装置を含んで構成される。記憶部１２ａは、クライアント１００で実行されるプログラムやクライアント１００での処理に供されるデータを格納及び保持する。
【００３５】
操作部１４ａは、キーボード等の文字データ入力装置、マウス等のポインティングデバイス等の情報入力装置を含んで構成される。操作部１４ａは、編集作業を行うユーザによって操作され、編集処理に対するユーザからの指示や処理のためのデータ（ログイン情報やユーザの操作情報等）を受け付けるために用いられる。
【００３６】
表示部１６ａは、ディスプレイ等の表示装置を含んで構成される。表示部１６ａは、アプリケーションでの処理を行う際にユーザに処理対象となるユーザインターフェース画像や情報を呈示するために用いられる。例えば、ユーザに対してユーザインターフェース画像を呈示し、アプリケーションに対する操作命令や処理に必要な情報の入力を促すために用いられる。
【００３７】
インターフェース部１８ａは、クライアント１００をＬＡＮ、ＷＡＮ、インターネット等の通信手段を介して他の装置へ情報伝達可能に接続するための装置を含んで構成される。本実施の形態において、クライアント１００は、インターフェース部１８ａを用いて通信手段を介して少なくともサーバ２００と情報伝達可能に接続される。インターフェース部１８ａは、例えば、ＴＣＰ／ＩＰ等の既存のプロトコルに則って情報伝達を実現する装置としてもよい。
【００３８】
本発明の実施の形態におけるサーバ２００は、図３に例示するように、中央処理部１０ｂ、記憶部１２ｂ、操作部１４ｂ、表示部１６ｂ及びインターフェース部１８ｂを含んで構成される。これらの構成部は、バスやネットワーク等の情報伝達手段によって相互に情報伝達可能に接続される。
【００３９】
中央処理部１０ｂは、ＣＰＵ（中央制御装置）を含んで構成される。中央処理部１０ｂは、記憶部１２ｂ、操作部１４ｂ及びインターフェース部１８ｂから情報を受け取り、その情報に対してプログラムに従って演算等の処理を施し、表示部１６ｂ及びインターフェース部１８ｂへ出力することによって情報処理を行う。本実施の形態では、中央処理部１０ｂは、ウェブアプリケーションプログラムを実行し、クライアント１００から受けた情報に応じて処理を行い、その結果をクライアント１００へ送信する処理を実現する。
【００４０】
記憶部１２ｂは、半導体メモリ、ハードディスク装置、光ディスク装置等の情報記憶装置を含んで構成される。記憶部１２ｂは、サーバ２００で実行されるプログラムやサーバ２００での処理に供されるデータを格納及び保持する。
【００４１】
操作部１４ｂは、キーボード等の文字データ入力装置、マウス等のポインティングデバイス等の情報入力装置を含んで構成される。操作部１４ｂは、アプリケーションの初期設定や処理に必要なデータやパラメータを受け付けるために用いられる。
【００４２】
表示部１６ｂは、ディスプレイ等の表示装置を含んで構成される。表示部１６ｂは、アプリケーションでの処理を行う際にシステム管理者等に情報を呈示するために用いられる。例えば、システム管理者にアプリケーションの動作状況や継続処理の実行内容等を呈示する。
【００４３】
インターフェース部１８ｂは、サーバ２００をＬＡＮ、ＷＡＮ、インターネット等の通信手段を介して他の装置へ情報伝達可能に接続するための装置を含んで構成される。本実施の形態において、サーバ２００は、インターフェース部１８ｂを用いて通信手段を介して少なくともクライアント１００と情報伝達可能に接続される。インターフェース部１８ｂは、例えば、ＴＣＰ／ＩＰ等の既存のプロトコルに則って情報伝達を実現する装置としてもよい。
【００４４】
図４は、本実施の形態における情報処理システムを機能ブロック図として例示したものである。サーバ２００は、ユーザからの指示に従ってアプリケーションプログラムを実行する。さらに、ユーザがアプリケーションでの処理を中断した場合に、処理を継続するための中断・継続処理を実行する。具体的には、サーバ２００は、実処理部２０２、操作履歴処理部２０４、継続認証処理部２０６及び中断処理部２０８として機能する。クライアント１００は、サーバ２００によって情報伝達手段を介して提供されるアプリケーションのサービスをユーザに提供するためのブラウザ１０２として機能する。
【００４５】
以下、クライアント１００及びサーバ２００において図４の機能ブロック図に示す機能を実現する際の処理について説明する。以下の処理は、クライアント１００においてクライアントプログラムを実行し、サーバ２００においてサーバプログラムを実行することによって実現される。
【００４６】
＜通常処理＞
まず、アプリケーションでの通常の処理の一例について説明する。通常処理の一例は、図５のフローチャートに沿って実行される。
【００４７】
ステップＳ１０では、ログイン処理が行われる。クライアント１００は、操作部１４ａによってユーザからログイン要求を受け付けると、インターフェース部１８ａを介してログイン要求をサーバ２００へ送信する。サーバ２００は、インターフェース部１８ｂを介して、ログイン要求を受信し、それに応じてログインに必要な情報を受け付けるためのユーザインターフェース画面等のログイン処理用データをクライアント１００へ送信する。
【００４８】
クライアント１００は、インターフェース部１８ａを介してユーザインターフェース画面等のログイン処理用データを受信すると、表示部１６ａにユーザインターフェース画面を表示し、ユーザにログインのためのログイン情報の入力を促す。クライアント１００は、ユーザインターフェース画面に応じてユーザが操作部１４ａを用いて入力するログイン情報の入力を受け付け、インターフェース部１８ａを介してログイン情報をサーバ２００へ送信する。ログイン情報とは、例えば、ユーザのユーザＩＤやパスワード等が挙げられる。
【００４９】
サーバ２００は、インターフェース部１８ｂを介してログイン情報を受信すると、ログイン用データベースに予め登録されているユーザ情報と照合し、ログインを許可するか否かを決定する。例えば、ログイン情報に含まれるユーザＩＤ及びパスワードがアプリケーションへのログインの認証のためにログイン用データベースに保持されているユーザＩＤ及びパスワードと一致すればログインを許可する。
【００５０】
以下の説明では、ログインが許可されたものとする。なお、ログイン処理は、一般的なログイン処理であればよく、これに限定されるものではない。
【００５１】
ステップＳ１２では、ユーザからの操作が受け付けられる。サーバ２００からインターフェース部１８ｂを介してアプリケーションの処理に必要な情報がクライアント１００に送信される。クライアント１００ではインターフェース部１８ａを介してその情報を受信し、それに応じて表示部１６ａ等にウェブ画面や操作画面が表示される。さらに、操作部１４ａ等からユーザの操作が受け付けられる。ユーザの操作内容はインターフェース部１８ａを介してサーバ２００へ送信される。ステップＳ１０及びＳ１２の処理は、実処理部２０２の機能の一部である。
【００５２】
ステップＳ１４では、サーバ２００において操作履歴の記録処理が行われる。このステップＳ１４の処理が操作履歴処理部２０４に相当する。サーバ２００は、インターフェース部１８ｂを介してクライアント１００から送信された操作内容を受信すると、その操作内容を操作履歴データベースとして保存する。
【００５３】
操作履歴データベースは、図６に例示するように、ユーザを特定するユーザ特定情報（ユーザＩＤ等），アプリケーションの種類，更新日時に関連付けて操作内容を記憶部１２ｂに格納及び保持することによって構築される。本実施の形態では、操作履歴は、サーバ２００で実行されるアプリケーションの種類の各々についてユーザ毎に更新日時を付けて登録される。
【００５４】
例えば、ユーザＩＤ“α”で特定されるユーザによってアプリケーション“ａ”に対して２００７年１２月２６日の１２時００分００秒に操作“Ａ”が行われた場合、図６の操作履歴データベースの例の第一行目に示すように操作履歴が登録される。同様に、ユーザＩＤ“α”で特定されるユーザによってアプリケーション“ａ”に対して２００７年１２月２６日の１２時０４分００秒に操作“Ｂ”が行われ、１２時０５分００秒に操作“Ｃ”が行われた場合、図６の操作履歴データベースの例の第三行目及び第四行目に示すように操作履歴が登録される。
【００５５】
なお、操作履歴として登録される操作内容はアプリケーションでの処理を再現できるものとする。例えば、サーバ２００からクライアント１００へウェブサービスの提供がなされている場合の操作内容としては、ＵＲＬの入力及びそのＵＲＬで指定されたウェブサイトへの処理の移行、ハイパーリンクの指定及びその実行、キーワードの入力及びそのキーワードに関連する情報の検索の実行、ウェブで提供されるサービスに対するデータの入力及びそのサービスの実行等が挙げられる。このような場合、操作内容には、ユーザからの指示された処理の種類、その処理ために必要なデータが含まれる。例えば、ＵＲＬの入力及びそのＵＲＬで指定されたウェブサイトへの処理の移行が指示された場合、ＵＲＬ及びそのＵＲＬへの移行という処理内容が操作内容として登録される。
【００５６】
また、サーバ２００からクライアント１００へ一般的なアプリケーションサービスの提供がなされている場合の操作内容の例としては、文書の入力及びその文書に対する書式設定、保存等のワードプロセッサーにおける操作、データの入力及びそのデータに対する関数の入力・実行等の計算ソフトウェアにおける操作、画像データの入力及びその加工処理等の画像編集ソフトウェアにおける操作等が挙げられる。
【００５７】
もちろん、操作内容はこれらの例に限定されるものではなく、コンピュータを用いて行う処理に必要な操作又は処理に必要なデータを含むものであればよい。
【００５８】
ステップＳ１６では、ステップＳ１４で受信した操作内容が中断後の継続要求であるか否かが判定される。サーバ２００の中央処理部１０ｂは、ステップＳ１４で受信した操作内容が継続要求であった場合には処理をステップＳ３０に移行させ、そうでなかった場合にはステップＳ１８へ移行させる。
【００５９】
ここでは、操作内容が継続要求でなかったものとしてステップＳ１８に処理を移行させる。
【００６０】
ステップＳ１８では、処理を終了するか、処理を中断するかの判断が行われる。サーバ２００は、ステップＳ１４において受信した操作内容がアプリケーションでの処理を終了する命令（ログオフ命令，ログアウト命令等）又は処理を中断する命令を含むか否かを判定する。操作内容が処理を終了する命令を含む場合には、ログオフ処理又はログアウト処理を行った後に、アプリケーションでの処理を終了する。操作内容が処理を中断する命令を含む場合には、ステップＳ２０に処理を移行させてアプリケーションでの処理の中断処理を実行し、その後、ログオフ処理又はログアウト処理を行ってアプリケーションでの処理を終了する。この中断処理については後述する。それら以外の場合にはステップＳ２２に処理を移行させる。
【００６１】
ここでは、アプリケーションの終了又は中断処理が指定されていないかったものとしてステップＳ２２に処理を移行させる。
【００６２】
ステップＳ２２では、ステップＳ１４で受信した操作内容に応じた処理がサーバ２００において行われる。サーバ２００は、ステップＳ１４で受信した操作内容に応じたアプリケーションの処理を行い、インターフェース部１８ｂを介して処理結果等の情報をクライアント１００へ送信する。
【００６３】
その後、処理はステップＳ１２に戻され、ステップＳ２２における処理結果を受けてアプリケーションで処理が継続される。以上の処理がアプリケーションの通常処理であり、ステップＳ１４を除く処理が実処理部２０２の機能の一部である。
【００６４】
＜中断処理＞
以下、ユーザからアプリケーションの中断が指示された場合の処理について説明する。アプリケーションの中断命令を含む操作内容がクライアント１００からサーバ２００へ送信された場合、ステップＳ１８の判定においてステップＳ２０へ処理が移行される。ステップＳ２０は、図７に例示するように、サブルーチン化されている。ステップＳ２０での処理が中断処理部２０８の機能を実現する。
【００６５】
ステップＳ２０−２では、継続管理情報が作成される。サーバ２００の処理部１０ｂは記憶部１２ｂに登録されている操作履歴データベースにアクセスし、現在処理対象となっているユーザのユーザＩＤ及びアプリケーションに関連付けられている操作履歴情報を抽出する。そして、抽出された操作履歴情報から所定の条件に基づいて継続認証用の履歴を選択して継続管理情報として継続管理データベースに登録する。
【００６６】
継続管理データベースは、サーバ２００の記憶部１２ｂに格納及び保持することができる。また、継続管理データベースは、ユーザを特定するユーザ特定情報（ユーザＩＤ等），アプリケーションの種類，操作履歴名，更新日時及び継続管理情報を対応付けた情報として登録される。
【００６７】
抽出された操作履歴情報から継続管理情報を選択する際の所定の条件としては、例えば、（１）中断処理に移行する直前に行われた所定回数分の操作内容や（２）ログイン処理の直後に行われた所定回数分の操作内容とする。また、（３）抽出された操作履歴情報をクライアント１００へ送信し、継続管理情報とする操作履歴をユーザに選択させてもよい。ただし、これらに限定されるものではなく、中断処理後にアプリケーションでの処理を継続する際にユーザが継続管理情報に登録された操作履歴を再現できるものであればよい。
【００６８】
例えば、図６に示す操作履歴データベースにおいて、ユーザＩＤ“α”で示されるユーザがアプリケーション“ａ”において中断処理を指示した場合、中断処理に移行する直前に行われた３回数分の操作内容を継続管理情報として選択するものとした場合、操作内容“Ａ”，“Ｂ”，“Ｃ”が継続管理情報として選択される。したがって、図８に例示するように、継続管理情報が継続管理データベースに登録される。
【００６９】
また、すでに中断処理の対象となったユーザ及びアプリケーションの種類に対して継続管理情報が登録されていた場合には、既に登録されている継続管理情報を新たに選択された継続管理情報によって更新すればよい。
【００７０】
なお、操作履歴名は、継続管理情報が特定できるものであればよく、例えば、ユーザＩＤ及びアプリケーションの種類を組み合わせた文字列とすればよい。
【００７１】
ステップＳ２０−４では、新たに定められた継続管理情報をユーザに通知する。サーバ２００の中央処理部１０ｂは、インターフェース部１８ｂを介してステップＳ２０−２で決定された継続管理情報をクライアント１００へ送信する。クライアント１００の中央処理部１０ａは、インターフェース部１８ａを介してサーバ２００から送られてきた継続管理情報を受信し、表示部１６ａ等を用いてその継続管理情報に含まれる操作を再度行うことによって継続処理を行うことができることをユーザに呈示する。
【００７２】
例えば、ユーザＩＤ“α”で示されるユーザがアプリケーション“ａ”において中断処理を指示し、図８のように継続管理データベースが登録されている場合、サーバ２００からクライアント１００に対して操作内容“Ａ”，“Ｂ”，“Ｃ”が継続管理情報として送信される。クライアント１００では、表示部１６ａに「操作“Ａ”，“Ｂ”，“Ｃ”を行うことによって、現状状態から処理を継続することができます。」等の表示をユーザに呈示する。
【００７３】
ステップＳ２０−４での処理が終了すると、メインルーチンに戻り、ログオフ又はログアウト処理が行われた後にアプリケーションを終了する。
【００７４】
＜継続処理認証・継続処理＞
次に、アプリケーションを中断後、継続して使用する場合の処理について説明する。継続処理は、図５のフローチャートに沿って実行される。
【００７５】
ステップＳ１０では、ログイン処理が行われる。また、ステップＳ１２では、ユーザからの操作が受け付けられる。さらに、ステップＳ１４では、サーバ２００において操作履歴の記録処理が行われる。これらのステップでの処理は上記Ｓ１０〜Ｓ１４と同様であるので説明を省略する。
【００７６】
ステップＳ１６では、処理を終了するか、処理を中断するか、処理を継続するかの判断が行われる。ここでは、操作内容が継続要求であったものとしてステップＳ３０に処理を移行させる。
【００７７】
以下、ステップＳ３０での処理について説明する。ステップＳ３０は、図９に例示するように、サブルーチン化されている。ステップＳ３０での処理が継続認証処理部２０６の機能を実現する。継続認証は、上記中断処理において継続管理情報として登録された操作内容をユーザが再度行うことによって、その操作が継続管理情報と一致するか否かによって行われる。
【００７８】
ステップＳ３０−２では、サーバ２００から継続処理認証のために必要な操作の入力が要求される。サーバ２００の中央処理部１０ｂは、インターフェース部１８ｂを介して、継続管理情報に対応する操作を促すユーザインターフェース画面等を含む認証情報入力要求情報をクライアント１００へ送信する。
【００７９】
ステップＳ３０−４では、ユーザの操作の入力を受け付ける。クライアント１００の中央処理部１０ａは、インターフェース部１８ａを介して認証情報入力要求情報を受信すると、継続管理情報との照合・認証のために必要な操作の入力を促すユーザインターフェース画面を表示部１６ａに表示させる。これに応じて、ユーザは操作部１４ａを用いて、中断処理時に呈示された継続管理情報に含まれる操作内容を再現する。
【００８０】
クライアント１００の中央処理部１０ａは、操作部１４ａを用いて入力されるユーザの操作内容を受けると、インターフェース部１８ａを介してサーバ２００へ送信する。
【００８１】
ステップＳ３０−６では、ステップＳ３０−４において受け付けられたユーザの操作内容と継続管理情報との照合が行われる。サーバ２００の中央処理部１０ｂは、インターフェース部１８ｂを介してクライアント１００から送信されてきた操作内容を受信し、記憶部１２ｂの継続管理データベースを参照して、ステップＳ１０においてログインしたユーザのユーザＩＤ及び処理中のアプリケーションに対応付けられている継続管理情報を読み出し、受信した操作内容と一致するか否かを判定する。
【００８２】
継続管理情報と操作内容が一致する場合にはステップＳ３０−８に処理を移行させ、そうでない場合にはステップＳ３０−１２に処理を移行させる。ステップＳ３０−８では、継続管理情報に含まれている操作内容をさらに確認する必要があるか否かが判定され、継続処理認証のためにユーザのさらなる操作が必要な場合にはステップＳ３０−４に処理を戻し、そうでない場合にはステップＳ３０−１０に処理を移行させる。
【００８３】
例えば、ユーザＩＤ“α”で示されるユーザがアプリケーション“ａ”において中断した処理から継続したい場合、図６に示す操作履歴データベースでは操作内容“Ａ”，“Ｂ”，“Ｃ”が継続管理情報として登録されている。したがって、ユーザが操作“Ａ”，“Ｂ”，“Ｃ”を順に再現して行った場合に継続処理が認証される。
【００８４】
この場合、まずクライアント１００から操作“Ａ”が入力されたか否かが判定される。ステップＳ３０−４において操作“Ａ”が行われた場合にはステップＳ３０−８に処理を移行させ、そうでない場合にはステップＳ３０−１２に処理が移行される。ステップＳ３０−８に処理が移行された場合、継続処理の認証のためにはさらに操作“Ｂ”及び“Ｃ”が必要であるので、ステップＳ３０−４に処理が戻される。
【００８５】
その後、ステップＳ３０−４において操作“Ｂ”が受け付けられると、それに基づいてステップＳ３０−６での照合が行われ、ステップＳ３０−８でもう一度ステップＳ３０−４に処理が戻される。さらにステップＳ３０−４において操作“Ｃ”が受け付けられると、それに基づいてステップＳ３０−６での照合が行われ、ステップＳ３０−１０に処理が移行される。
【００８６】
一方、継続管理情報に登録されている操作内容“Ａ”，“Ｂ”，“Ｃ”の順にユーザの操作がなされなかった場合にはステップＳ３０−１２に処理が移行される。
【００８７】
ステップＳ３０−１０では、継続管理情報に基づく継続処理の認証ができたものと判断され、アプリケーションの継続処理が行われる。サーバ２００の中央処理部１０ｂは、記憶部１２ｂに保持されている操作履歴データベースを参照して、継続管理情報の更新日時よりも以前の操作内容を読み出し、その操作内容に基づいてアプリケーションでの状態を復元する。これによって、アプリケーションを中断した時点の状態からアプリケーションを継続使用することが可能となる。このとき、操作履歴としてアプリケーションでの処理を再現できる操作内容を保存してあるので、アプリケーションの状態を中断した時点での状態に復元する。
【００８８】
アプリケーションの状態が復元された後、処理はメインルーチンのステップＳ１２に戻される。その後は、上記通常処理と同様に処理が行われる。
【００８９】
ステップＳ３０−１２では、継続処理が認証できなかった場合の処理が行われる。サーバ２００の中央処理部１０ｂは、インターフェース部１８ｂを介して継続処理の認証ができなかったことを示す情報をクライアント１００へ送信する。クライアント１００の中央処理部１０ａは、インターフェース部１８ａを介してその情報を受信し、その内容を表示部１６ａに表示させてユーザに示す。
【００９０】
その後、処理はメインルーチンのステップＳ１２に戻され、上記通常処理と同様に処理が行われる。すなわち、アプリケーションの新規操作として処理が継続される。
【００９１】
また、ステップＳ３０−１２では、処理中のユーザに対するアクセス権を制限する等の処理を行ってもよい。すなわち、継続処理を要求したユーザが継続処理の認証に失敗した場合、現在アプリケーションを使用中のユーザに対するアクセス権を制限する。
【００９２】
また、中断処理を行った後、所定の時間が経過した場合には操作履歴や継続管理情報を消去するものとしてもよい。この場合も、中断処理から所定の時間が経過した後は継続処理ができなくなる。なお、中断処理から消去までの時間はユーザ毎に設定できるものとしてもよい。
【００９３】
また、本実施の形態では、ログオフ又はログアウト後も操作履歴や継続管理情報を保持する態様としたが、ログオフ又はログアウト後は操作履歴や継続管理情報を消去する処理としてもよい。この場合、ユーザがログオフ又はログアウト処理をすることなく、アプリケーションを所定時間以上放置していた場合等に継続処理認証及び継続処理を行うものとする。
【００９４】
＜変形例１＞
上記実施の形態では、中断処理時にユーザに継続管理情報に登録されている操作内容を通知し、継続処理の認証の際にはユーザにそれらの操作内容を行わせる方法としたがこれに限定されるものではない。
【００９５】
本変形例では、中断処理時に継続管理情報に対してハッシュ関数を適用して得られたハッシュ値をユーザに対してパスワードとして通知する。すなわち、図１０に例示するように、中断処理時のフローチャートのステップＳ２０−４ａにおいて継続管理情報に所定のハッシュ関数を適用してハッシュ値を算出し、ステップＳ２０−４ｂにおいて算出されたハッシュ値をパスワードとしてユーザに通知する。
【００９６】
なお、中断処理時において、継続管理情報として操作内容の代わりにハッシュ値を登録しておいてもよい。本変形例で用いるハッシュ関数は、一般的なハッシュ関数とすることができ、例えば、ＭＤ２，ＭＤ４，ＳＨＡ，ＨＡＶＡＬ等とすることができる。
【００９７】
また、パスワードをユーザに通知する方法は上記実施の形態におけるステップＳ２０−４と同様であるので説明を省略する。
【００９８】
継続処理認証時には、図１１に例示するように、ステップＳ３０−２ａにおいて中断時に通知したパスワードの入力をユーザに要求し、ステップＳ３０−４ａにおいてパスワードの入力を受け付け、ステップＳ３０−６ｂにおいて受け付けられたパスワードと継続管理データベースに登録されている継続管理情報との照合が行われる。ステップＳ３０−６ａでは、処理中のユーザを特定するユーザＩＤ及び処理中のアプリケーションに関連付けられている継続管理情報を読み出し、その継続管理情報に対してステップＳ２０−４ａにおいて適用したハッシュ関数を適用し、算出されたハッシュ関数とステップＳ３０−４ａにおいて受け付けたパスワードが一致すれば継続処理を認証し、一致しなければ継続処理を認証しない。
【００９９】
なお、中断処理時に、継続管理情報としてハッシュ値を登録しておいた場合には、ステップＳ３０−６ａではハッシュ値の算出処理を行うことなく、ステップＳ３０−４ａにおいて受け付けられたパスワードと、継続管理情報として登録されているハッシュ値と、を比較し、認証処理を行えばよい。
【０１００】
認証が成功した場合、ステップＳ３０−１０においてアプリケーションの継続処理が行われる。また、認証が成功しなかった場合、ステップＳ３０−１２において継続処理が認証できなかった場合の処理が行われる。これらの処理は上記実施の形態と同様であるので説明を省略する。
【０１０１】
なお、本変形例では継続管理情報から生成されたハッシュ値をパスワードとして用いたが、ユーザ毎の秘密情報をパスワードの代わりとして用いてもよい。中断処理時にユーザに対して秘密情報の種類及びその内容を入力させ、継続処理の認証時にはユーザに秘密情報の種類を示してその内容を再入力させ、中断時に入力された内容と継続処理認証時に入力された内容が一致すれば継続処理を認証し、一致しなければ継続処理を認証しないものとする。
【０１０２】
また、本変形例においても、ステップＳ３０−１２では、処理中のユーザに対するアクセス権を制限する等の処理を行ってもよい。すなわち、継続処理を要求したユーザが継続処理の認証に失敗した場合、現在アプリケーションを使用中のユーザに対して当該アプリケーションで使用できる機能を制限する。また、アクセス権を制限することなく、アプリケーションを初期状態に戻す処理を行ってもよい。
【０１０３】
また、中断処理を行った後、所定の時間が経過した場合には操作履歴や継続管理情報（ハッシュ値とした場合も含む）を消去するものとしてもよい。この場合も、中断処理から所定の時間が経過した後は継続処理ができる。なお、中断処理から消去までの時間はユーザ毎に設定できるものとしてもよい。
【０１０４】
また、本変形例においても、ログオフ又はログアウト後も操作履歴や継続管理情報を保持する態様としたが、ログオフ又はログアウト後は操作履歴や継続管理情報を消去する処理としてもよい。この場合、ユーザがログオフ又はログアウト処理をすることなく、アプリケーションを所定時間以上放置していた場合等に継続処理認証及び継続処理を行うものとする。
【図面の簡単な説明】
【０１０５】
【図１】本発明の実施の形態及び変形例における継続管理システムの構成を例示する図である。
【図２】本発明の実施の形態及び変形例におけるクライアントの構成を例示する図である。
【図３】本発明の実施の形態及び変形例におけるサーバの構成を例示する図である。
【図４】本発明の実施の形態及び変形例における継続管理システムの機能ブロックを例示する図である。
【図５】本発明の実施の形態における処理の一例を示すフローチャートである。
【図６】本発明の実施の形態における操作履歴データベースの構成例を示す図である。
【図７】本発明の実施の形態における中断処理サブルーチンの一例を示すフローチャートである。
【図８】本発明の実施の形態における継続管理データベースの構成例を示す図である。
【図９】本発明の実施の形態における継続処理サブルーチンの一例を示すフローチャートである。
【図１０】変形例における中断処理サブルーチンの一例を示すフローチャートである。
【図１１】変形例における継続処理サブルーチンの一例を示すフローチャートである。
【符号の説明】
【０１０６】
１０ａ，１０ｂ  中央処理部、１２ａ，１２ｂ  記憶部、１４ａ，１４ｂ  操作部、１６ａ，１６ｂ  表示部、１８ａ，１８ｂ  インターフェース部、１００  クライアント、１０２  ブラウザ、２００  サーバ、２０２  実処理部、２０４  操作履歴処理部、２０６  継続認証処理部、２０８  中断処理部。
【図１】
2009193188.tif 000003
【図２】
2009193188.tif 000004
【図３】
2009193188.tif 000005
【図４】
2009193188.tif 000006
【図５】
2009193188.tif 000007
【図６】
2009193188.tif 000008
【図７】
2009193188.tif 000009
【図８】
2009193188.tif 000010
【図９】
2009193188.tif 000011
【図１０】
2009193188.tif 000012
【図１１】
2009193188.tif 000013