(57)【要約】【課題】アプリケーションソフトの提供を受けたユーザの端末におけるソフト不正使用を確実に防止すると共にユーザの希望する機能のみを簡単、迅速にユーザに提供する。【解決手段】管理サーバがクライアント装置から認証情報を受信してユーザ認証を行なうステップ、ユーザ認証が肯定的である場合にユニークコードを生成して記憶した後、クライアント装置にユニークコードを送信するステップ、それを受信したクライアント装置がその値を記憶してアプリケーションソフトを実行させ、実行途中の所定タイミングで記憶したユニークコードを認証情報と共に管理サーバに送信するステップ、それを受信した管理サーバが、以前受信して記憶しておいたユニークコードと照合し、一致していなかった場合にアプリケーションソフトの使用禁止を返信するステップを含む。【選択図】図７
2008077253.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションソフトを利用するクライアント装置とその利用形態を管理する管理サーバとをネットワークを介して接続して行なうアプリケーションソフトの利用管理方法であって、
前記管理サーバが前記クライアント装置からユーザ認証用の認証情報を受信し、該認証情報を予め登録された契約情報に照らしてユーザ認証を行なう第１のステップと、
前記ユーザ認証が肯定的であった場合に一意の値であるユニークコードを生成し、該ユニークコードを前記認証情報に対応付けて記憶すると共に認証情報を送信してきたクライアント装置に送信する第２のステップと、
前記送信されたユニークコードを受信したクライアント装置がその値を記憶した上で前記アプリケーションソフトを実行させ、その実行途中における所定のタイミングにて前記記憶したユニークコードをユーザ認証用の認証情報と共に前記管理サーバに送信する第３のステップと、
前記第３のステップにて送信された認証情報とユニークコードとを受信した前記管理サーバが、該ユニークコードを前記第２のステップにて記憶しておいたその認証情報に対応するユニークコードと照合し、二つのユニークコードが一致する場合にはそれらを送信してきたクライアント装置に対し前記アプリケーションソフトの継続使用を許可する指令を、完全には一致しない場合には継続使用を禁止する指令を送信する第４のステップと、を含むことを特徴とするアプリケーションソフトの利用管理方法。
【請求項２】
請求項１に記載のアプリケーションソフトの利用管理方法において、前記第２のステップにおいて前記ユーザ認証が肯定的であった場合には、前記管理サーバ装置は前記契約情報に基づき該ユーザに対して使用が許容される前記アプリケーションソフトの機能を特定する機能コードを更に生成して前記ユニークコードに追加して送信し、
前記第３のステップにおいて前記クライアント装置が前記アプリケーションソフトを実行させる際には、前記機能コードにより使用が許容された機能に限定して実行させることを特徴とするアプリケーションソフトの利用管理方法。
【請求項３】
アプリケーションソフトを使用するクライアント装置と該クライアント装置上における前記アプリケーションソフトの利用形態を管理する管理サーバとをネットワークを介して接続したアプリケーションソフトの利用管理システムであって、
前記管理サーバは、前記クライアント装置の送信したユーザ認証用の認証情報を受信し、該認証情報を予め登録された契約情報に照らしてユーザ認証を行なう認証手段と、前記ユーザ認証が肯定的であった場合に一意の値であるユニークコードを生成し、該ユニークコードを前記認証情報に対応付けて記憶すると共に認証情報を送信してきたクライアント装置に送信するユニークコード生成送信手段と、を備え、
前記クライアント装置は、前記管理サーバより送信されたユニークコードを受信して記憶した上で前記アプリケーションソフトを実行させるソフト実行制御手段と、その実行途中における所定のタイミングにて前記記憶したユニークコードをユーザ認証用の認証情報と共に前記管理サーバに送信するユニークコード間欠送信手段と、を備え、
前記管理サーバは、前記クライアント装置が送信した前記認証情報とユニークコードとを受信して該ユニークコードを前記ユニークコード生成送信手段が記憶しているその認証情報に対応するユニークコードと照合し、二つのユニークコードが一致する場合にはそれらを送信してきたクライアント装置に対し前記アプリケーションソフトの継続使用を許可する指令を、完全には一致しない場合には継続使用を禁止する指令を送信する判定結果送信手段を更に備えることを特徴とするアプリケーションソフトの利用管理システム。
【請求項４】
請求項３に記載のアプリケーションソフトの利用管理システムにおいて、前記管理サーバの前記ユニークコード生成送信手段は、前記ユーザ認証が肯定的であった場合には前記契約情報に基づき該ユーザに対して使用が許容される前記アプリケーションソフトの機能を特定する機能コードを更に生成して前記ユニークコードに追加して送信し、
前記クライアント装置の前記ソフト実行制御手段は、前記アプリケーションソフトを実行させる際には、前記管理サーバより送信された前記機能コードによって使用が許容された機能に限定して実行させることを特徴とするアプリケーションソフトの利用管理システム。
【請求項５】
請求項３又は４に記載のアプリケーションソフトの利用管理システムにおいて、前記アプリケーションソフトは、該アプリケーションソフトにて扱うデータの格納ファイルを自ら作成し、そのファイル名に前記認証情報に含まれる固有の文字を含ませるように構成してあることを特徴とするアプリケーションソフトの利用管理システム。
【請求項６】
請求項５に記載のアプリケーションソフトの利用管理システムにおいて、前記アプリケーションソフトは、前記格納ファイルを該アプリケーションソフトが指定する固定のディレクトリに格納するように構成してあることを特徴とするアプリケーションソフトの利用管理システム。
【請求項７】
請求項５に記載のアプリケーションソフトの利用管理システムにおいて、前記アプリケーションソフトは、前記格納ファイルに格納するデータを暗号化して格納するように構成してあることを特徴とするアプリケーションソフトの利用管理システム。
【請求項８】
ネットワークを介して接続したクライアント装置上におけるアプリケーションソフトの利用形態を管理する管理サーバであって、前記クライアント装置から送信されたユーザ認証用の認証情報を受信し、該認証情報を予め登録された契約情報に照らしてユーザ認証を行なう認証手段と、
前記ユーザ認証が肯定的であった場合に一意の値であるユニークコードと前記契約情報に基づき該ユーザに対して使用が許容される前記アプリケーションソフトの機能を特定する機能コードとを生成し、それらを前記認証情報に対応付けて記憶すると共に認証情報を送信してきたクライアント装置に送信するユニークコード生成送信手段と、
前記ユニークコードの送信後にクライアント装置よりユーザ認証用の認証情報とユニークコードとを受信した場合には、該ユニークコードを前記ユニークコード生成送信手段が記憶しているその認証情報に対応するユニークコードと照合し、二つのユニークコードが一致する場合にはそれらを送信してきたクライアント装置に対し前記アプリケーションソフトの継続使用を許可する指令を、完全には一致しない場合には継続使用を禁止する指令を送信する判定結果送信手段と、を備えることを特徴とする管理サーバ。
【請求項９】
アプリケーションソフトを自己装置上で実行させると共にネットワークを介して接続された管理サーバによりその利用形態の管理を受けるクライアント装置であって、ユーザ認証用の認証情報を前記管理サーバに送信する認証要求手段と、
前記送信に対する応答として管理サーバより送信されてきたユニークコードと前記アプリケーションソフトの有する機能の中で実行が許容される機能を特定する機能コードとを記憶し、該機能コードにて許容された機能に限定して前記アプリケーションソフトを実行させるソフト実行制御手段と、
該アプリケーションソフトの実行途中における所定のタイミングにて前記記憶したユニークコードをユーザ認証用の認証情報と共に前記管理サーバに送信するユニークコード間欠送信手段と、を備えることを特徴とするクライアント装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーションソフトの提供を受けたユーザがそれを利用する際における、その利用の仕方を提供者がネットワークを介して管理する技術に関する。
【背景技術】
【０００２】
コンピュータ上で実行されるアプリケーションソフトはＣＤ−ＲＯＭなどの記録媒体に記録して配布される他、近年ではインターネットなどのネットワークを介した配信によりユーザに提供されて利用される。ところでアプリケーションソフトはデジタルデータであるためコピーにより同一のものを容易に制作できる。そのため不正利用が絶えない。
【０００３】
そうした不正利用を防ぐ手段は数多く提案されている。その一つにユーザによるソフト利用状況をネットワークを介してソフト提供者が監視、管理するアプリケーションソフト利用管理システム又は利用管理方法と呼ばれるものがあり、それについて種々の提案がなされている（例えば、特許文献１〜３参照）。それらの多くは端末でのソフト起動に際してパスワードの入力を受け、それをネットワーク経由でソフト提供者のサーバに伝送して認証を行い、認証された場合にサーバより使用許可を端末に伝達してソフト使用を開始させる方式を採用している。しかし、このような認証方式では同時１ユーザの使用ライセンスしか持たないユーザが同じＩＤ、同じパスワードを使用して同時に複数端末上でソフトを使用できる余地があり、不正防止効果が必ずしも十分とはいえない。
【０００４】
また、近年、ソフトは高度、複雑、大規模化しており、それに伴う開発費の高騰からソフト使用料は高額化傾向にある。一方、ソフトを使用するユーザ側としてはそのソフトの有する全ての高機能を必要とする場合は少なく、自分が必要とする機能のみを安い使用料で利用することを望む場合がある。従来、そうした要望に応えるにはソフト提供者はユーザ毎に機能構成の異なるソフトを制作して提供しなければならず手間がかかる問題があった。また、ユーザ側にしても利用を開始した後に別の機能を追加利用したいと思っても直ぐには利用開始できないという不便さがあった。
【特許文献１】特開２００２−５５７２６号公報
【特許文献２】特開２００２−１６３５７８号公報
【特許文献３】特開２００２−２９７２５４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明は、従来技術のこうした問題点を解決するためになされたもので、その課題は
アプリケーションソフトの提供を受けたユーザのユーザ端末におけるソフト不正利用を防止すると共にユーザの希望する機能を簡単、迅速にユーザに提供できるネットワークを介したアプリケーションソフトの利用管理方法、利用管理システムを提供することにある。
【課題を解決するための手段】
【０００６】
前記課題を達成するための請求項１に記載の発明は、アプリケーションソフトを利用するクライアント装置とその利用形態を管理する管理サーバとをネットワークを介して接続して行なうアプリケーションソフトの利用管理方法であって、管理サーバがクライアント装置からユーザ認証用の認証情報を受信し、その認証情報を予め登録された契約情報に照らしてユーザ認証を行なう第１のステップと、そのユーザ認証が肯定的であった場合に一意の値であるユニークコードを生成し、生成したユニークコードを受信した認証情報に対応付けて記憶すると共に認証情報を送信してきたクライアント装置に送信する第２のステップと、その送信されたユニークコードを受信したクライアント装置がその値を記憶した上でアプリケーションソフトを実行させ、その実行途中における所定のタイミングにて記憶したユニークコードをユーザ認証用の認証情報と共に管理サーバに送信する第３のステップと、その第３のステップにて送信された認証情報とユニークコードとを受信した管理サーバが、そのユニークコードを第２のステップにて記憶しておいたその認証情報に対応するユニークコードと照合し、二つのユニークコードが一致する場合にはそれらを送信してきたクライアント装置に対しアプリケーションソフトの継続使用を許可する指令を、完全には一致しない場合には継続使用を禁止する指令を送信する第４のステップと、を含むことを特徴とするアプリケーションソフトの利用管理方法である。
【０００７】
このような方法によれば、認証を行なう度に新たなユニークコードが生成され認証情報に対応付けて管理サーバに記憶されると共にクライアント装置にも送信される。従って、クライアント装置側から同じ認証情報を使用してアプリケーションソフトの複数立ち上げがされた場合、最後に認証を求めたクライアント装置以外の装置からソフト実行途中に管理サーバに送信されてくるユニークコードは管理サーバの記憶しているものと異なることになる。これによりクライアント装置側において同じ認証情報を使用してアプリケーションソフトの複数立ち上げがされていることを管理サーバは検出することができる。従って、複数立ち上げの検出に基づき異なるユニークコードを送信してきたクライアント装置にソフト使用を禁止させる信号を送信することにより不正利用を阻止することができる。
【０００８】
また、請求項２に記載の発明は、請求項１に記載のアプリケーションソフトの利用管理方法において、第２のステップにおいてユーザ認証が肯定的であった場合には、管理サーバ装置は契約情報に基づきそのユーザに対して使用が許容されるアプリケーションソフトの機能を特定する機能コードを更に生成してユニークコードに追加して送信し、第３のステップにおいてクライアント装置がアプリケーションソフトを実行させる際には、その機能コードにより使用が許容された機能に限定して実行させることを特徴とするアプリケーションソフトの利用管理方法である。
【０００９】
このような方法によれば、契約情報に基づき機能コードを生成させるのみでユーザが使用できる機能を制御することができる。従ってユーザより機能の追加要請を受けた場合には、機能を追加した構成のソフトを制作して提供する必要はなく、機能コードを修正する簡単な処理のみでユーザに希望する機能を迅速に提供できる。
【００１０】
また、請求項３に記載の発明は、アプリケーションソフトを使用するクライアント装置とそのクライアント装置上におけるアプリケーションソフトの利用形態を管理する管理サーバとをネットワークを介して接続したアプリケーションソフトの利用管理システムであって、管理サーバは、クライアント装置の送信したユーザ認証用の認証情報を受信し、その認証情報を予め登録された契約情報に照らしてユーザ認証を行なう認証手段と、そのユーザ認証が肯定的であった場合に一意の値であるユニークコードを生成し、生成したユニークコードを認証情報に対応付けて記憶すると共に認証情報を送信してきたクライアント装置に送信するユニークコード生成送信手段と、を備え、クライアント装置は、管理サーバより送信されたユニークコードを受信して記憶した上でアプリケーションソフトを実行させるソフト実行制御手段と、その実行途中における所定のタイミングにて記憶したユニークコードをユーザ認証用の認証情報と共に管理サーバに送信するユニークコード間欠送信手段と、を備え、管理サーバは、クライアント装置が送信した認証情報とユニークコードとを受信してそのユニークコードをユニークコード生成送信手段が記憶しているその認証情報に対応するユニークコードと照合し、二つのユニークコードが一致する場合にはそれらを送信してきたクライアント装置に対しアプリケーションソフトの継続使用を許可する指令を、完全には一致しない場合には継続使用を禁止する指令を送信する判定結果送信手段を更に備えることを特徴とするアプリケーションソフトの利用管理システムである。
【００１１】
このような構成の利用管理システムは、請求項１に記載の発明と同様の効果を奏する。
【００１２】
また、請求項４に記載の発明は、請求項３に記載のアプリケーションソフトの利用管理システムにおいて、管理サーバのユニークコード生成送信手段は、ユーザ認証が肯定的であった場合には契約情報に基づきそのユーザに対して使用が許容されるアプリケーションソフトの機能を特定する機能コードを更に生成してユニークコードに追加して送信し、クライアント装置のソフト実行制御手段は、アプリケーションソフトを実行させる際には、管理サーバより送信された機能コードによって使用が許容された機能に限定して実行させることを特徴とするアプリケーションソフトの利用管理システムである。
【００１３】
このような構成の利用管理システムは、請求項２に記載の発明と同様の効果を奏する。
【００１４】
また、請求項５に記載の発明は、請求項３又は４に記載のアプリケーションソフトの利用管理システムにおいて、アプリケーションソフトは、そのアプリケーションソフトにて扱うデータの格納ファイルを自ら作成し、そのファイル名に認証情報に含まれる固有の文字を含ませるように構成してあることを特徴とするアプリケーションソフトの利用管理システムである。
【００１５】
アプリケーションソフトで扱うことのできるデータファイルの数に制限のない場合には、そのソフトの価値はユーザが扱うデータファイルの数により大きく変動するため同一利用料金ではユーザ間の公平を確保できない。また、一つのソフトで多数のデータファイルが扱われたのではソフト提供者はソフト提供数を増やすことができず、収益を上げられない。本発明のような方法を採用すればアプリケーションソフトが扱うデータファイルの数を一つに制限できることからユーザ間の公平を確保できる。また、多数のデータファイルにソフトを適用したいユーザは、例えば、その数に見合った利用権をソフト提供者から購入しなければならないので、ソフト提供者にとってはソフト提供数の増加により収益を上げやすくなる利点がある。
【００１６】
また、請求項６に記載の発明は、請求項５に記載のアプリケーションソフトの利用管理システムにおいて、アプリケーションソフトは、扱うデータを格納する格納ファイルを自己が指定する固定のディレクトリに格納するように構成してあることを特徴とするアプリケーションソフトの利用管理システムである。
【００１７】
このような方法を請求５に記載の方法と合わせて採用すれば、アプリケーションソフトを一つのデータファイルにしか適用できないようにする制限効果を高めることができる。
【００１８】
また、請求項７に記載の発明は、請求項５に記載のアプリケーションソフトの利用管理システムにおいて、アプリケーションソフトは、格納ファイルに格納するデータを暗号化して格納するように構成してあることを特徴とするアプリケーションソフトの利用管理システムである。
【００１９】
このような方法の採用もアプリケーションソフトを一つのデータファイルにしか適用できないようにする制限効果を高めることができる。
【００２０】
また、請求項８に記載の発明は、ネットワークを介して接続したクライアント装置上におけるアプリケーションソフトの利用形態を管理する管理サーバであって、クライアント装置から送信されたユーザ認証用の認証情報を受信し、その認証情報を予め登録された契約情報に照らしてユーザ認証を行なう認証手段と、そのユーザ認証が肯定的であった場合に一意の値であるユニークコードと、契約情報に基づきそのユーザに対して使用が許容されるアプリケーションソフトの機能を特定する機能コードとを生成し、それらを認証情報に対応付けて記憶すると共に認証情報を送信してきたクライアント装置に送信するユニークコード生成送信手段と、そのユニークコードの送信後にクライアント装置よりユーザ認証用の認証情報とユニークコードとを受信した場合には、そのユニークコードをユニークコード生成送信手段が記憶しているその認証情報に対応するユニークコードと照合し、二つのユニークコードが一致する場合にはそれらを送信してきたクライアント装置に対しアプリケーションソフトの継続使用を許可する指令を、完全には一致しない場合には継続使用を禁止する指令を送信する判定結果送信手段と、を備えることを特徴とする管理サーバである。
【００２１】
このような構成の管理サーバによれば、クライアント装置側において同じ認証情報を使用してアプリケーションソフトの複数立ち上げがされていることを検出することができる。従って、複数立ち上げの検出に基づき異なるユニークコードを送信してきたクライアント装置にソフト利用を禁止する指令を送信して不正利用を阻止することができる。また、契約情報に基づき機能コードを生成させるのみでユーザが使用できる機能を制御することができる。従ってユーザより機能の追加要請を受けた場合には機能を追加した構成のソフトを制作して提供する必要はなく、機能コードを修正する簡単な処理のみでユーザに希望する機能を迅速に提供できる。
【００２２】
また、請求項９に記載の発明は、アプリケーションソフトを自己装置上で実行させると共にネットワークを介して接続された管理サーバによりその利用形態の管理を受けるクライアント装置であって、ユーザ認証用の認証情報を管理サーバに送信する認証要求手段と、その送信に対する応答として管理サーバより送信されてきたユニークコードとアプリケーションソフトの有する機能の中で実行が許容される機能を特定する機能コードとを記憶し、その機能コードにて許容された機能に限定してアプリケーションソフトを実行させるソフト実行制御手段と、アプリケーションソフトの実行途中における所定のタイミングにて記憶したユニークコードをユーザ認証用の認証情報と共に管理サーバに送信するユニークコード間欠送信手段と、を備えることを特徴とするクライアント装置である。
【００２３】
このような構成のクライアント装置は請求項８に記載の管理サーバと組み合わせて使用することにより請求項１に記載の発明と同様の効果を奏する。
【発明を実施するための最良の形態】
【００２４】
以下、本発明に係るアプリケーションソフトの利用管理方法、アプリケーションソフトの利用管理システムを実施するための一実施形態を図面を参照して説明する。本実施形態のアプリケーションソフトの利用管理システム１は、図１に示すように複数のクライアント装置２と管理サーバ４とをネットワーク３を介して接続して構成されている。
【００２５】
クライアント装置２は、例えば通信機能を備えたコンピュータである。その記憶装置としての磁気ディスク６内には、図２に示すようにアプリケーションソフトのプログラムが記憶されている。このアプリケーションソフトはＣＤ−ＲＯＭのような媒体を介して、あるいはソフト提供者の管理サーバ４からダウンロードする方法で提供される。アプリケーションソフトは不正使用を防止するためインストールしたのみでは動作せず、後述するユーザ認証その他の手続を経て初めて正常動作するようにプログラムに細工が施されている。アプリケーションソフトは、例えば、会計ソフト、在庫管理ソフト、構造計算ソフト、シミュレーションソフト、ＣＡＤソフト等である。
【００２６】
また、記憶装置内にはそうした不正使用を防止するための手続を実行する際に使用するコードであるユニークコード、機能コード、認証情報としてのユーザＩＤ、パスワードを記憶する一時記憶領域７が確保されている。
【００２７】
管理サーバ４はクライアント装置２上で実行されるアプリケーションソフトの利用形態を管理するサーバで、ソフト提供者により管理される。管理サーバ４には図３に示すように、クライアント装置２上のアプリケーションソフトと連携しながらその利用形態を管理する管理ソフトと、多数のユーザとの契約情報を保管する契約情報データベースが記憶されている。契約情報データベースには、ユーザＩＤ、その登録されたパスワード、アプリケーションソフトの有する機能のうちで契約によりそのユーザに使用が許容される機能、アプリケーションソフトを使用できる最終利用期限、課金情報等が保管されている。
【００２８】
ネットワーク３は、管理サーバ４と多数のクライアント装置２とを結ぶ通信回線で、例えばインターネットである。
【００２９】
次に、このような構成の下でクライアント装置２が管理サーバ４による利用管理を受けながら、その上でアプリケーションソフトを動作させる全体の流れについて図４〜図７に示すフローチャートを参照して説明する。
【００３０】
アプリケーションソフトを実行させる場合、ユーザはクライアント装置２上のアプリケーションソフトに起動をかける（図４のステップＳ１）。クライアント装置２はアプリケーションソフトを起動させ、そのプログラムに従ってユーザに対しユーザＩＤとパスワードの入力を要求する（ステップＳ２）。ユーザがユーザＩＤとパスワードを入力すると（ステップＳ３）、クライアント装置２はそれらを一時記憶領域７に記憶した上で管理サーバ４に送信して認証を要求する（ステップＳ５）。
【００３１】
管理サーバ４は管理プログラムを起動させた後、そのプログラムに従いクライアント装置２からデータ受信要求が来るのを待機する（図６のステップＴ１）。データ受信要求を受けた後、続いて送信されてくるユーザＩＤ等の情報を受け取って記憶する（ステップＴ２）。
【００３２】
続いて管理サーバ４は、受け取った情報が認証要求かチェックする（ステップＴ３）。認証要求であった場合（ステップＴ３：ＹＥＳ）、契約情報データベースの中から受信したユーザＩＤに対応した登録パスワードと、アプリケーションソフトを利用できる最終利用期限、課金情報等の契約情報を読み出す（ステップＴ４）。そして、読み出したパスワードと受信したパスワードとの一致、最終利用期限、課金状況などの契約条件のチェックを行なう（ステップＴ５）。
【００３３】
受け取ったパスワードが登録されているパスワードと一致しない、あるいは最終利用期限を超えているなど、契約条件を満たしていない場合（ステップＴ５：ＮＯ）は、その旨とアプリケーションソフト利用禁止を管理サーバ４に送信する（ステップＴ６）。条件が全て満たされている場合（ステップＴ５：ＹＥＳ）はステップＴ７に移る。
【００３４】
ステップＴ７では、管理サーバ４はユニークコードと機能コードを生成する。ユニークコードはクライアント装置２から受けた今回の認証要求を一意に特定する識別情報である。ユニークコードは例えば、数桁の文字、数字、記号等で構成する。
【００３５】
機能コードはアプリケーションソフトの有する機能の中で、契約によりそのユーザに使用が許容される機能を特定するコードである。近年のアプリケーションソフトは高度化され、多数の機能を有する。例えば、会計ソフトで言えば入金伝票処理機能、出金伝票処理機能、給与管理機能、減価償却処理機能、貸借対照表作成機能、消費税管理機能、顧客管理機能等の多数の機能を備える。しかし、それを利用するユーザ側では入金伝票処理機能、出金伝票処理機能は必要であるが給与管理機能や減価償却処理機能は必要ないというように、一部機能の利用しか望まない場合が多い。
【００３６】
その場合、使用しない機能まで含むアプリケーションソフトの使用契約をソフト提供者と結んだのでは使用料が高くなって不経済である。ソフト提供者としては高機能のアプリケーションソフトを安く提供したのでは開発費を回収できない。かといって使用料金を高く設定したのではユーザに利用してもらえず収益を上げられない。そうした問題を解決するため本実施形態のアプリケーションソフトの利用管理システム１では、ユーザは必要とする機能を特定してソフト提供者と予め契約しておき、ソフト提供者はその契約した特定機能のみしかユーザに利用させない構成を採っている。ユーザは必要機能に限定されたソフトを利用することができ、その機能限定ソフトの利用に対してソフト提供者が設定した安い利用料金を支払えば済む。
【００３７】
ユーザが利用する機能を管理するため、ソフト提供者は契約した機能をユーザ別に管理サーバ４内の契約情報データベースに予め登録しておく。機能コードの形式は例えば、数桁の１６進数字とし、各桁の１６進数字を２進数表示した時の各桁に一つの機能を割り当て、その桁の数字が１か０かでその機能の使用許可、不許可を表す構成とする。ステップＴ７では認証要請してきたユーザＩＤに対応した契約機能を契約情報データベースから読み出し、それに基づいて使用許容機能を特定する機能コードを生成する。
【００３８】
続くステップＴ８ではステップＴ７で生成したユニークコードと機能コードとを、ユーザＩＤに対応つけて契約情報データベース内に記憶する。次のステップＴ９では、ステップＴ７で生成したユニークコードと機能コード、及びアプリケーションソフトの使用を許可する旨をクライアント装置２に送信する。なお、アプリケーションソフトの使用が許可される場合には、前記例として挙げた機能コードでは数桁の１６進数字で表される数字の全てがゼロとなることはない。従って、使用許可、不許可を特別のコードあるいは指令で送る代わりに、機能コードの各桁の数字が全てゼロの場合は使用禁止、１桁でもゼロでない数字が含まれている場合は使用可を意味するように決めておいてもよい。
【００３９】
クライアント装置２側ではステップＳ５にてユーザＩＤとパスワードを管理サーバ４に送信した後、それに対する返信をまって待機する（ステップＳ６）。返信が届いたならばそれを受信し（ステップＳ７）、アプリケーションソフトの使用が許可されているか不許可にされているかをチェックする（ステップＳ８）。不許可であった場合（ステップＳ８：ＮＯ）は、実行できない旨とその理由を表示してステップＳ２に戻る。実行許可であった場合（ステップＳ８：ＹＥＳ）は、受け取ったユニークコードと機能コードとを一時記憶領域７に記憶する（ステップＳ１０）。
【００４０】
続くステップＳ１１からはアプリケーションソフトを機能させるフローである。最初のステップＳ１１ではタイマをスタートさせる。このタイマはアプリケーションソフトの実行途中で、クライアント装置２が管理サーバ４に不正使用チェックのための情報を送信するタイミングを決めるタイマである。次にステップＳ１２に移り、アプリケーションソフトの実行を開始する。
【００４１】
アプリケーションソフトの実行は、アプリケーションソフトの有する機能を表すコマンド（命令）一覧の中からユーザが希望するコマンドを選択することで開始される。そのためにクライアント装置２は、ユーザに使用が許可されている機能のコマンド一覧を表示する（図５のステップＳ１３）。使用が許可されている機能は、管理サーバ４から送信されてきた機能コードを解読して判断する。使用が許可されていない機能に対応するコマンドは表示しない。アプリケーションソフトには全ての機能に対応したプログラムが準備されているが、ユーザは契約により使用許可された機能のコマンドしか選択できないためその範囲で作業を行なうことになる。
【００４２】
ユーザが希望するコマンドを選択する（ステップＳ１４）と、そのコマンドに対応したアプリケーションソフトの機能が実行される（ステップＳ１５）。選択されたコマンドの実行が終了すると、ステップＳ１１でスタートさせておいたタイマの計時値をチェックする（ステップＳ１６）。計時値が所定の値を超えていない場合はステップＳ１３に戻り、再びコマンド一覧を表示する。そして次のコマンドの選択を受け（ステップＳ１４）、それを実行する（ステップＳ１５）。このようにしてタイマの計時値が所定の値に達していない間はユーザの選択したコマンドの実行を繰り返す。これによりユーザの希望する作業が実行される。
【００４３】
ステップＳ１６にてタイマの計時値が所定の値を超えていた場合はステップＳ１７に移る。クライアント装置２はステップＳ１０にて記憶したユニークコードとステップＳ４で記憶したユーザＩＤを管理サーバ４に送信する。その後、タイマをリセットした上で再スタートさせておく（ステップＴ１８）。
【００４４】
管理サーバ４は、ステップＴ３にて認証要求でないと判断した場合はステップＴ１０に移り、送信されてきた情報にユニークコードが含まれているかチェックする。受け取った情報にユニークコードが含まれていなかった場合はステップＴ１に戻る。ユニークコードが含まれていた場合はステップＴ１１に移る。
【００４５】
ステップＴ１１では、管理サーバ４は以前のステップＴ８にて記憶しておいたユーザＩＤとユニークコードとの対応関係の中から、今回ユニークコードと一緒に受け取ったユーザＩＤと同じユーザＩＤに対応するユニークコードを読み出す。そして、読み出したユニークコードと今回受信したユニークコードとが一致しているか判定する。
【００４６】
ステップＴ１１において２つユニークコードが一致していた場合（ステップＴ１１：ＹＥＳ）は、問題なし（同時には一ユーザしか利用できない契約の下で一組のユーザＩＤとパスワードで一ユーザのみが使用中。不正使用でない。）と判断して送信してきたクライアント装置２に対しアプリケーションソフト継続使用可の情報を送信する（ステップＴ１２）。反対に２つユニークコードが一致していなかった場合（ステップＴ１１：ＮＯ）は、不正使用（同時には一ユーザしか利用できない契約の下で同じユーザＩＤとパスワードを使用して複数人がアプリケーションソフトを使用中。）と判断して送信してきたクライアント装置２に対しアプリケーションソフト継続使用不可の情報を送信する（ステップＴ１３）。
【００４７】
上記のように２つユニークコードの一致、不一致をチェックすることで、一組のユーザＩＤとパスワードの下で一ユーザのみが使用いるのか、複数人が同時使用しているのかを判断できる理由を図７を参照して説明する。最初に第１のクライアント装置２ａにおいてユーザＩＤ：ＡＡ、パスワード：ＰＰを使用してアプリケーションソフトの利用が開始されたとする。すると図４のステップＳ５における認証要求に応えて管理サーバ４は例えば、ユニークコード：ＵＵを生成する。そしてユーザＩＤ：ＡＡに対応つけてそのユニークコード：ＵＵを図７中の４ａに示すように記憶し（ステップＴ８）、同じユニークコード：ＵＵを認証要求してきた第１のクライアント装置２ａに送信する（ステップＴ９）。
【００４８】
第１のクライアント装置２ａは送信されたユニークコード：ＵＵを受け取りユーザＩＤ：ＡＡと共に記憶する（ステップＳ１０）。その後、第１のクライアント装置２ａはアプリケーションソフトの使用を開始する（ステップＳ１２）。アプリケーションソフトの使用中、第１のクライアント装置２ａは所定の間隔でユーザＩＤ：ＡＡとユニークコード：ＵＵを管理サーバ４に送信する（ステップＳ１７）。管理サーバ４はそれらを受け取り、受け取ったユニークコードと以前にユーザＩＤ：ＡＡに対応つけて記憶しておいたユニークコードとを比較する。この場合、受け取ったユニークコードはＵＵであり、ステップＴ８にてユーザＩＤ：ＡＡに対応つけて記憶しておいたユニークコード：ＵＵと一致しているため不正使用と判断しない。
【００４９】
第１のクライアント装置２ａがアプリケーションソフトを利用している途中で、第２のクライアント装置２ｂから同じユーザＩＤ：ＡＡとパスワード：ＰＰを使用して認証要求が出されたとする（ステップＳ５）。即ち、同じユーザＩＤ：ＡＡとパスワード：ＰＰを使用して複数立ち上げが行なわれたとする。その場合も管理サーバ４は認証要求を受けてステップＴ７にて新たなユニークコード、例えば、ＶＶを生成してユーザＩＤ：ＡＡに対応付けて記憶する（ステップＴ８）。この段階で管理サーバ４が記憶しているユーザＩＤ：ＡＡに対応するユニークコードは、図７中の４ｂに示すようにＵＵからＶＶに書き換わる。その後、管理サーバ４はユニークコード：ＶＶを認証要求してきた第２のクライアント装置２ｂに送信する（ステップＴ９）。
【００５０】
第２のクライアント装置２ｂは送られてきたユニークコード：ＶＶを記憶し（ステップＳ１０）、アプリケーションソフトの使用を開始する（ステップＳ１２）。これにより第１、第２のクライアント装置２ａ、２ｂが同じユーザＩＤ：ＡＡとパスワード：ＰＰを使用して共にアプリケーションソフトを使用している状態となる。
【００５１】
第２のクライアント装置２ｂによるアプリケーションソフトの使用が開始されてから所定時間経過すると、第２のクライアント装置２ｂはユニークコード：ＶＶをユーザＩＤ：ＡＡと共に管理サーバ４に送信する（ステップＳ１７）。この送信されたユニークコード：ＶＶは、管理サーバ４がユーザＩＤ：ＡＡに対応して記憶している図７中の４ｂに示すユニークコード：ＶＶと一致している。そのため管理サーバ４はユニークコード：ＶＶを送信してきた第２のクライアント装置２ｂによるアプリケーションソフトの使用は正当と判断する。
【００５２】
第１、第２のクライアント装置２ａ、２ｂによるアプリケーションソフトの同時使用が継続していると、やがて第１のクライアント装置２ａが自己の記憶しているユニークコード：ＵＵをユーザＩＤ：ＡＡと共に管理サーバ４に送信する（ステップＳ１７）。管理サーバ４は送信されたユニークコード：ＵＵを受け取り、一緒に送信されてきたユーザＩＤ：ＡＡに対して記憶しているユニークコードと比較する。
【００５３】
その時点ではユーザＩＤ：ＡＡに対応つけて管理サーバ４が記憶しているユニークコードは図７中の４ｂに示すようにＶＶに書き換わってしまっているので２つのユニークコードは一致しない。このようにユーザが同一のユーザＩＤ：ＡＡとパスワード：ＰＰを使用してアプリケーションソフトを同時使用すると、クライアント装置が送信したユニークコードが管理サーバ４に記憶されているユニークコードに一致しない状態が生ずる。こうした理由から２つユニークコードの一致、不一致をチェックすることで、一組のユーザＩＤとパスワードの下で一ユーザのみが使用いるのか、複数人が同時使用しているのかを判断することができる。
【００５４】
このような２つユニークコードの一致、不一致のチェックにより不正使用が検出された場合（ステップＴ１１：ＮＯ）には、管理サーバ４はそのユニークコードを送信してきたクライアント装置２に対して継続使用不可の情報を送信する（ステップＴ１３）。
【００５５】
クライアント装置２はユニークコードを送信した（ステップＳ１７）後、それに対する管理サーバ４からの返信を待って待機している（ステップＳ１９）。返信が到着したならばそれを受信してその内容をチェックする（ステップＳ２０）。受信内容が継続使用可であればステップＳ１３に戻りアプリケーションソフトの使用を継続する。継続使用不可であればその旨を表示して（ステップＳ２１）、アプリケーションソフトの利用を停止させる（ステップＳ２２）。これにより先に起動した方のクライアント装置２（上記例の場合は第１のクライアント装置２ａ）によるアプリケーションソフトの使用が強制終了させられる。
【００５６】
このように本実施形態のアプリケーションソフトの利用管理システム１によれば、同時には１ユーザしか使用できない権利を有するユーザが同じユーザＩＤとパスワードを使用してアプリケーションソフトを複数起動させる不正使用を効果的に防止することができる。また、機能コードを用いてユーザが使用できるアプリケーションソフトの機能を制御する。そのためユーザより機能の追加要請を受けた場合、ソフト提供者は契約情報データベース内にその機能名を追加するだけの簡単な操作でもってユーザに追加機能を迅速に提供することができる。
【００５７】
次に、アプリケーションソフトをユーザが使用する場合におけるアプリケーションソフトが扱うデータの格納ファイルの作り方に関しての追加機能を説明する。一般にアプリケーションソフトは多数のデータファイルを扱うことができる。例えば、ワープロソフトや表計算ソフトは扱うことのできるデータファイルの数に制限はない。
【００５８】
ところでユーザ側から見たアプリケーションソフトの価値は、ユーザがそのアプリケーションソフトを幾つのデータファイルに対して使用するかによって大きく異なる。例えば、会計ソフトの場合、ユーザがそのソフトを１店舗の会計処理（一つのデータファイルに対する処理）についてのみ使用する場合と、複数の店舗を有するユーザがそのソフトを各店舗の会計処理（複数のデータファイルに対する処理）に使用する場合とでは、ユーザ側から見たその会計ソフトの価値は大きく異なる。複数店舗に使用するユーザにとってはその会計ソフトは費用／効果が優れたものに写る。反対に１店舗にしか使用しないユーザにとっては費用／効果が優れたものいえず、ソフト使用料が同じでは不満が残る。
【００５９】
反対側のソフト提供者から見ても、複数店舗に使用するユーザには割安料金で使用させ、１店舗にしか使用しないユーザには割高料金で使用させていることになる。即ち、その会計ソフトを何店舗に使用するかに無関係にソフト使用料を一律に設定するのでは公平とはいえない。１店舗にしか使用しないユーザがそうしたことに不満を抱いてその会計ソフトの使用を断念することも考えられ、そうなればソフト提供者は収益をあげられなくなる。
【００６０】
こうした問題の解決策として、アプリケーションソフトが扱うことのできるデータファイルの数を制限できるようにしておくことが考えられる。上記の会計ソフトの例でいえば、一つの会計ソフトで扱うことのできるデータファイル数は１店舗分のみとし、複数店舗のデータファイルを扱うことはできないようにプログラムを構成しておくことである。本実施形態のアプリケーションソフトの利用管理システム１におけるアプリケーションソフトは、そうした考えにより一つのデータファイルしか扱えないように構成しておく。
【００６１】
その具体的手段として、扱うデータファイルの名称をアプリケーションソフトの方で固定の名称に設定する。上記の会計ソフトの例でいえば、会計ソフトで扱う１店舗分のデータファイルを作成する際、そのデータファイルはアプリケーションソフトが作成し、その名称もアプリケーションソフトが決定する。データファイルの名称を一意の名称とするため、データファイルの名称にはユーザの認証情報であるユーザＩＤやパスワードに含まれる固有の文字を含ませる。例えば、ユーザＩＤに拡張子を付けた「ID.xnc」のような名称を付ける。更に、そのデータファイルを格納するディレクトリもアプリケーションソフトが決めるように構成して、複数データファイルの扱いを困難にしておく。
【００６２】
データファイルにアクセスする際には、アプリケーションソフトはディレクトリとして先に決めたディレクトリを指定し、データファイルとしては先に決めた例えば「ID.xnc」を指定してアクセスを行なう。このようにすることでアプリケーションソフトは常に一つの決められたデータファイル（例えば、「ID.xnc」）のみを対象として動作するようになり、先に説明した一つのアプリケーションソフトで任意数のデータファイルを扱うことができるという問題は解消される。
【００６３】
このようにして問題が解消されれば、ソフト提供者は一つのデータファイル（例えば、１店舗分のデータ）しか扱わないユーザに対しては、安い使用料金でアプリケーションソフトを使用させることができ、そうしたユーザにはメリットが大きい。多数のデータファイル（例えば、複数店舗）にアプリケーションソフトを適用したいユーザは、例えば、複数のユーザＩＤを容易して複数分のソフト使用権を契約し、複数分のソフト使用料を支払えばよい。これによりユーザ間の公平が確保されると共に、ソフト提供者も収益をあげることができる。
【００６４】
なお、一つのアプリケーションソフトを複数のデータファイルに適用することの防止効果を更に高めるには、データファイル（例えば、「ID.xnc」）内に記録するデータをユーザＩＤやパスワードを使用して暗号化しておくとよい。アプリケーションソフトにてデータを表示する際には暗号化を解いて表示する。このようにしておけばデータファイル（例えば、「ID.xnc」）内のデータを、他のデータ（例えば、他店舗のデータ）で置き換えるといった操作が困難となり、一つのアプリケーションソフトを複数のデータファイルに適用することの防止効果を一層高めることができる。
【図面の簡単な説明】
【００６５】
【図１】アプリケーションソフトの利用管理システムの全体構成図である。
【図２】クライアント装置の記憶情報を説明する図である。
【図３】管理サーバの記憶情報を説明する図である。
【図４】クライアント装置の処理フローである。
【図５】図４のフローの続き部分である。
【図６】管理サーバの処理フローである。
【図７】複数立ち上げの検出方法を説明する図である。
【符号の説明】
【００６６】
図面中、１はアプリケーションソフトの利用管理システム、２はクライアント装置、３はネットワーク、４は管理サーバを示す。
【図１】
2008077253.tif 000003
【図２】
2008077253.tif 000004
【図３】
2008077253.tif 000005
【図４】
2008077253.tif 000006
【図５】
2008077253.tif 000007
【図６】
2008077253.tif 000008
【図７】
2008077253.tif 000009