(57)【特許請求の範囲】
【請求項１】
通信ネットワークを介してサーバに接続した複数のクライアントで、前記サーバに格納され、許容ライセンス数が設定されたソフトウェアまたはコンテンツを含むデジタル情報の使用状況を把握し、ライセンスの管理を行うライセンス管理システムであって、
前記クライアントは、
前記サーバに格納され、前記デジタル情報の使用状況を管理する複数の管理レコードから構成された管理ファイルを、前記サーバから前記通信ネットワークを介して読込む読込手段と、
前記読込手段によって読込まれた前記管理ファイルに基づいて前記デジタル情報の使用状況を表示する状況表示手段と、
前記許容ライセンス数及び前記管理ファイルに基づいて前記デジタル情報の使用が可能かを判断し、許可する判断手段と、
前記判断手段によって前記デジタル情報の使用が許可されると、前記クライアントを識別する識別情報を含む前記管理レコードを、前記通信ネットワークを介して前記サーバに格納された前記管理ファイルに追加する管理レコード追加手段と、
前記判断手段によって前記デジタル情報の使用が許可されると、前記デジタル情報の使用を実行する実行手段と、
前記デジタル情報の使用が終了すると、前記通信ネットワークを介して前記管理ファイルから前記デジタル情報の使用を終了した前記クライアントに対応する前記管理レコードを消去する管理レコード消去手段と
を具備することを特徴とするライセンス管理システム。
【請求項２】
前記通信ネットワークに接続した前記サーバは、
前記デジタル情報及び前記管理ファイルを記憶媒体に格納する格納手段と、
前記格納手段によって格納された前記デジタル情報及び前記管理ファイルを、前記通信ネットワークを介して前記クライアントに公開する公開手段と
を具備することを特徴とする請求項１に記載のライセンス管理システム。
【請求項３】
前記管理レコードは、前記クライアントにおける前記デジタル情報の使用時間に対応して決定される時間情報をさらに含み、
前記クライアントは、
前記デジタル情報の使用中に所定の更新時間を検出する更新時間検出手段と、
前記更新時間検出手段によって検出された前記更新時間毎に、前記通信ネットワークを介して前記管理レコードの前記時間情報を更新する時間情報更新手段と、
前記時間情報更新手段によって前記時間情報が更新された前記管理ファイル、及び以前の時間情報更新時に保持された旧管理ファイルを比較し、前記時間情報が更新されていない未更新管理レコードを検出し、検出された前記未更新管理レコードを前記管理ファイルから削除する削除手段と
を具備することを特徴とする請求項１または請求項２に記載のライセンス管理システム。
【請求項４】
前記クライアントは、
前記時間情報更新手段において自己の前記管理レコードが削除されていると、自己の前記管理レコードを前記管理ファイルに追加し、復元する復元手段をさらに備えることを特徴とする請求項３に記載のライセンス管理システム。
【請求項５】
前記識別情報は、
前記クライアントの稼働時間に対応して決定されることを特徴とする請求項１乃至請求項４のいずれか一つに記載のライセンス管理システム。
【請求項６】
サーバに格納され、デジタル情報の使用状況を管理する複数の管理レコードから構成された管理ファイルを、前記サーバから前記通信ネットワークを介して読込む読込手段、前記読込手段によって読込まれた前記管理ファイルに基づいて前記デジタル情報の使用状況を表示する状況表示手段、前記許容ライセンス数及び前記管理ファイルに基づいて前記デジタル情報の使用が可能かを判断し、許可する判断手段、前記判断手段によって前記デジタル情報の使用が許可されると、クライアントを識別する識別情報を含む前記管理レコードを、前記通信ネットワークを介して前記サーバに格納された前記管理ファイルに追加する管理レコード追加手段、前記判断手段によって前記デジタル情報の使用が許可されると前記デジタル情報の使用を実行する実行手段、前記デジタル情報の使用が終了すると、前記通信ネットワークを介して前記管理ファイルから前記デジタル情報の使用を終了した前記クライアントに対応する前記管理レコードを消去する管理レコード消去手段として、前記クライアントを機能させることを特徴とするライセンス管理プログラム。
【請求項７】
前記デジタル情報の使用中に所定の更新時間を検出する更新時間検出手段、前記更新時間検出手段によって検出された前記更新時間毎に、前記通信ネットワークを介して前記管理レコードの前記時間情報を更新する時間情報更新手段、前記時間情報更新手段によって前記時間情報が更新された前記管理ファイル、及び以前の時間情報更新時に保持された旧管理ファイルを比較し、前記時間情報が更新されていない未更新管理レコードを検出し、検出された前記未更新管理レコードを前記管理ファイルから削除する削除手段として、前記クライアントをさらに機能させることを特徴とする請求項６に記載のライセンス管理プログラム。
【請求項８】
前記時間情報更新手段において自己の前記管理レコードが削除されていると、自己の前記管理レコードを前記管理ファイルに追加し、復元する復元手段として、前記クライアントをさらに機能させることを特徴とする請求項７に記載のライセンス管理プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ライセンス管理システム及びライセンス管理プログラムに関するものであり、特に、サーバに接続した複数のクライアントで、サーバに格納されたデジタル情報の使用状況を把握し、ライセンスの管理を行うライセンス管理システム及びライセンス管理プログラムに関するものである。
【０００２】
【従来の技術】
従来から、企業や教育機関などにおいて、複数のコンピュータを設置し、設置したコンピュータを同一の利用目的、例えばプログラム開発や授業などの教育目的のために利用する場合がある。例えば、小学校などの教育機関において、教師及び生徒用のコンピュータを設置し、教育用のソフトウェアを用いた授業を行うことがある。このような場合、各コンピュータは、一つのデータを共有することが容易なＬＡＮなどのネットワークシステムに接続し、ネットワークを管理するサーバと複数のクライアントから構成されるクライアントサーバシステム環境が構築されていることがある。
【０００３】
ネットワークシステムが構築されている場合、クライアントにおいてソフトウェアなどのプログラムを実行するときは、各クライアントにソフトウェアをインストールして、あるいはサーバに格納されたソフトウェアをクライアントが読込んで起動している。このとき、一つのソフトウェアを複数のクライアントにインストールするいわゆる「不正コピー」は、法律によって禁止されているため、例えば、小学校などの教育機関で教育用のソフトウェアを利用するときには、クライアントの台数分と同数のソフトウェアを購入する必要がある。また、ネットワークに接続せずにコンピュータを単独で利用する、いわゆる「スタンドアローン」の状態でも、各コンピュータ毎にソフトウェアを購入することが行なわれている。
【０００４】
そのため、ソフトウェアを販売するソフト会社などは、複数のクライアントやコンピュータを設置する企業や教育機関に対し、予め許容するライセンス数を定めたソフトウェアをパック販売していることもある。
【０００５】
また、最近では、インターネットなどの普及により、ホームページの画面をブラウザプログラムなどによって、「コンテンツ」と呼ばれる情報を閲覧することが行われている。また、このコンテンツを特定のコンピュータからだけ閲覧を可能とするライセンス管理を行うこともある。
【０００６】
【発明が解決しようとする課題】
しかしながら、上述した予め許容するライセンス数を定めたソフトウェアのパック販売では、厳密なライセンス管理をすることが困難であった。すなわち、許容ライセンス数以上のコンピュータにソフトウェアが不正コピーされるのを防止することは、コンピュータ利用者の良識や道徳心に頼る部分が大きく、完全とはいえなかった。ソフトウェアの開発には莫大な費用がかかるため、これらの不正コピーによってソフトウェアの開発会社の蒙る被害は甚大であった。そこで、不正コピーの防止として種々の対策が試みられている。例えば、ソフトウェアを利用する各コンピュータ毎にパスワードやＩＤを発行し、ソフトウェアの使用の度に、あるいはインストールの際にパスワードの入力を要求するものなどがある。しかしながら、これらのパスワードの入力などによる認証は、コンピュータ利用者の面倒な操作や処理を課すことになっていた。
【０００７】
また、これらのソフトウェアには、ＣＤ−ＲＯＭなどの記憶媒体に記憶して供給されるものがある。例えば、小学校などの授業でこれらのソフトウェアを用いようとする場合、授業の度に教師が生徒にコンピュータの台数分だけ配布して、授業の終了後に再び回収する面倒な作業が必要であった。さらに、小学校では生徒たちがＣＤ−ＲＯＭの取扱いに不慣れなこともあり、ＣＤ−ＲＯＭを落としたり、傷つけたりして破損させ、使用ができなくなることがあった。そのため、購入時にはコンピュータの台数分だけ揃っていたソフトウェアの数が次第に少なくなり、授業を行う際に支障をきたすこともあった。
【０００８】
一方、ネットワーク環境にある場合、サーバにソフトウェアを格納し、各クライアントからソフトウェアを起動して利用することが行われている。この場合、各クライアントからの要求に応じてソフトウェアが、無制限に起動されることを防ぐため、サーバにソフトウェアの起動数を制限し、ライセンス管理をするための専用の管理プログラムを置く必要があった。しかしながら、これらの管理プログラムは、サーバに常駐し、常に起動しておく必要があるため、サーバの処理やネットワークの通信処理に負担をかけることがあった。
【０００９】
そこで本発明は、上記実情に鑑み、サーバの処理に負担をかけることなく、クライアントからデジタル情報のライセンス管理を容易に行えるライセンス管理システム及びライセンス  管理プログラムの提供を課題とするものである。
【００１０】
【課題を解決するための手段】
上記の課題を解決するため、請求項１の発明にかかるライセンス管理システムは、通信ネットワークを介してサーバに接続した複数のクライアントで、前記サーバに格納され、許容ライセンス数が設定されたソフトウェアまたはコンテンツを含むデジタル情報の使用状況を把握し、ライセンスの管理を行うライセンス管理システムであって、前記クライアントは、前記サーバに格納され、前記デジタル情報の使用状況を管理する複数の管理レコードから構成された管理ファイルを、前記サーバから前記通信ネットワークを介して読込む読込手段と、前記読込手段によって読込まれた前記管理ファイルに基づいて前記デジタル情報の使用状況を表示する状況表示手段と、前記許容ライセンス数及び前記管理ファイルに基づいて前記デジタル情報の使用が可能かを判断し、許可する判断手段と、前記判断手段によって前記デジタル情報の使用が許可されると、前記クライアントを識別する識別情報を含む前記管理レコードを、前記通信ネットワークを介して前記サーバに格納された前記管理ファイルに追加する管理レコード追加手段と、前記判断手段によって前記デジタル情報の使用が許可されると、前記デジタル情報の使用を実行する実行手段と、前記デジタル情報の使用が終了すると、前記通信ネットワークを介して前記管理ファイルから前記デジタル情報の使用を終了した前記クライアントに対応する前記管理レコードを消去する管理レコード消去手段とを具備するものである。
【００１１】
ここで、通信ネットワークとは、ＬＡＮ、ＷＡＮ、及びインターネットなどの通信回線を介してサーバと複数のクライアントとを接続したものであり、サーバはソフトウェアや、ホームページを構成するコンテンツなどの種々のデジタル情報を公開し、クライアントは該デジタル情報の使用及び閲覧などを行うことが可能なものである。
【００１２】
ここで、デジタル情報とは、例えば、ソフトウェアなどの実行可能なアプリケーションプログラムや、インターネットのホームページ上に公開されるコンテンツなどが含まれる。また、許容ライセンス数とは、予めソフトウェアの実行可能数やコンテンツの閲覧可能数などが、ソフトウェア開発会社、コンテンツ制作会社、及び販売を委託された会社などとの契約によって定められたものである。
【００１３】
さらに、デジタル情報の使用状況を管理する管理ファイルとは、デジタル情報の使用が許可されると追加される複数の管理レコードによって構成され、サーバ内に複数のクライアントからアクセス可能な状態で格納されているものである。
【００１４】
さらに、デジタル情報の使用状況を表示する状況表示手段とは、使用中のデジタル情報の使用数（管理ファイルの管理レコード数）と許容ライセンス数とを示すものであり、例えば、画面上に分数（例えば、５／２５：分子＝使用数・分母＝許容ライセンス数）で表示するものや、これらの情報を、画面上のランプの点灯／消灯で模式的に表示するものなどが挙げられる。
【００１５】
したがって、請求項１の発明のライセンス管理システムによれば、クライアントは、サーバに格納された管理レコードから構成される管理ファイルを読込み、デジタル情報の使用状況を表示する。そして、管理ファイルと許容ライセンス数とに基づいてデジタル情報の使用が判断される。ここで、使用中のデジタル情報の使用数（管理レコード数）が許容ライセンス数よりも小さい場合、デジタル情報の使用を許可する。そして、許可されたクライアントを識別する識別情報を含む管理レコードを作成し、該管理レコードをサーバに格納されている管理ファイルに追加する。その後、クライアントでデジタル情報が使用される。そして、デジタル情報の使用が終了すると、管理ファイルからデジタル情報の使用を終了したクライアントに対応する管理レコードを消去する。これにより、クライアントからデジタル情報の使用状況を把握し、さらに使用状況を管理する管理ファイルの管理レコードを追加及び消去することが可能となる。したがって、複数のクライアントからデジタル情報のライセンス管理を行うことが可能となる。
【００１６】
請求項２の発明にかかるライセンス管理システムは、請求項１に記載のライセンス管理システムにおいて、前記通信ネットワークに接続した前記サーバは、前記デジタル情報及び前記管理ファイルを記憶媒体に格納する格納手段と、前記格納手段によって格納された前記デジタル情報及び前記管理ファイルを、前記通信ネットワークを介して前記クライアントに公開する公開手段とを具備するものである。
【００１７】
したがって、請求項２の発明のライセンス管理システムによれば、請求項１の発明のライセンス管理システムの作用に加え、サーバに格納されたデジタル情報及び管理ファイルが、通信ネットワークを介して公開される。これにより、クライアントからの管理ファイルの読込み、管理レコードの追加、及び消去の各操作が可能となる。このとき、サーバはデジタル情報、及び管理ファイルが格納されているだけで、各操作はクライアントの処理によって実行されている。すなわち、サーバは管理ファイルを格納するファイルサーバとしての機能を有し、システムの運用においてサーバの処理能力に負担を課すことがない。
【００１８】
請求項３の発明にかかるライセンス管理システムは、請求項１または請求項２に記載のライセンス管理システムにおいて、前記管理レコードは、前記クライアントにおける前記デジタル情報の使用時間に対応して決定される時間情報をさらに含み、前記クライアントは、前記デジタル情報の使用中に所定の更新時間を検出する更新時間検出手段と、前記更新時間検出手段によって検出された前記更新時間毎に、前記通信ネットワークを介して前記管理レコードの前記時間情報を更新する時間情報更新手段と、前記時間情報更新手段によって前記時間情報が更新された前記管理ファイル、及び以前の時間情報更新時に保持された旧管理ファイルを比較し、前記時間情報が更新されていない未更新管理レコードを検出し、検出された前記未更新管理レコードを前記管理ファイルから削除する削除手段とを具備するものである。
【００１９】
ここで、時間情報とは、クライアントにおけるデジタル情報の使用時間に対応して決定されるものであり、例えば、デジタル情報の使用が開始された時間を０として、所定の更新時間毎に時間情報の値を１つずつカウントアップして更新されるものである。さらに、未更新管理レコードとは、クライアントに何らかの障害（例えば、停電やシステムの異常停止など）が発生し、管理レコードの時間情報が更新されなかったものである。
【００２０】
したがって、請求項３の発明のライセンス管理システムによれば、請求項１または請求項２の発明のライセンス管理システムの作用に加え、時間情報更新手段によって所定の更新時間ごとに管理レコードの時間情報が更新される。この処理は、クライアントがデジタル情報を使用している時に行われるものであり、時間情報を更新することにより、デジタル情報の使用が継続していることを他のクライアントに知らせることが可能となる。さらに、更新した管理ファイルと、前回更新時に保持された旧管理ファイルとを比較し、未更新管理レコードを検出する。そして、検出された未更新管理レコードを管理ファイルから削除する。これにより、クライアントに異常が発生し、デジタル情報を使用していないにも拘わらず管理レコードによって、許容ライセンス数の一つを不当に占有しているクライアントが検出される。そして、他のクライアントによってこの不当占有の状態が解放される。
【００２１】
請求項４の発明にかかるライセンス管理システムは、請求項３に記載のライセンス管理システムにおいて、前記クライアントは、前記時間情報更新手段において自己の前記管理レコードが削除されていると、自己の前記管理レコードを前記管理ファイルに追加し、復元する復元手段をさらに備えるものである。
【００２２】
ここで、自己の管理レコードが削除されているとは、クライアントを稼動するオペレーティングシステムの設定によりデジタル情報の使用中にスリープ状態などに入ったものなどが挙げられる。この場合、クライアントで異常が発生していないにもかかわらず時間情報の更新を行うことが不可能であるため、スリープ状態が長時間に渡ると、他のクライアントによって自己の管理レコードが管理ファイルから削除されてしまう。そこで、時間情報更新時に読込んでおいた旧管理ファイルを利用して復元し、クライアントがデジタル情報の使用を再開することを可能にするものである。
【００２３】
したがって、請求項４の発明のライセンス管理システムは、請求項３の発明のライセンス管理システムの作用に加え、時間情報の更新の際に、自己の管理レコードが管理ファイルから削除されているのを検出すると、前回更新時に保持しておいた旧管理ファイルの管理レコードを利用して管理ファイルを復元し、デジタル情報の使用を再開する。
【００２４】
請求項５の発明にかかるライセンス管理システムは、請求項１乃至請求項４のいずれか一つに記載のライセンス管理システムにおいて、前記識別情報は、前記クライアントの稼働時間に対応して決定されるものである。
【００２５】
したがって、請求項５の発明のライセンス管理システムによれば、請求項１乃至請求項４のいずれか一つの発明のライセンス管理システムの作用に加え、識別情報がクライアントの稼働時間に基づいて決定される。ここで、稼働時間とは、クライアントが起動した時からの稼動時間であり、例えば、１００分の１秒単位でクライアントを稼動するオペレーティングシステムによってカウントされているものである。これにより、個々のクライアントに予め固有の識別番号やＩＤを発行する必要がなく、管理レコードが作成された時点での稼働時間を識別情報とすることにより、個々のクライアントの識別が可能となる。
【００２６】
請求項６の発明にかかるライセンス管理プログラムは、サーバに格納され、デジタル情報の使用状況を管理する複数の管理レコードから構成された管理ファイルを、前記サーバから前記通信ネットワークを介して読込む読込手段、前記読込手段によって読込まれた前記管理ファイルに基づいて前記デジタル情報の使用状況を表示する状況表示手段、前記許容ライセンス数及び前記管理ファイルに基づいて前記デジタル情報の使用が可能かを判断し、許可する判断手段、前記判断手段によって前記デジタル情報の使用が許可されると、クライアントを識別する識別情報を含む前記管理レコードを、前記通信ネットワークを介して前記サーバに格納された前記管理ファイルに追加する管理レコード追加手段、前記判断手段によって前記デジタル情報の使用が許可されると前記デジタル情報の使用を実行する実行手段、前記デジタル情報の使用が終了すると、前記通信ネットワークを介して前記管理ファイルから前記デジタル情報の使用を終了した前記クライアントに対応する前記管理レコードを消去する管理レコード消去手段として、前記クライアントを機能させるものである。
【００２７】
したがって、請求項６の発明のライセンス管理プログラムによれば、ライセンス管理プログラムを実行させると、クライアントは、サーバに格納され、デジタル情報の使用状況を管理する複数の管理レコードから構成された管理ファイルを、通信ネットワークを介して読込み、読込まれた管理ファイルに基づいてデジタル情報の使用状況を表示する。そして、許容ライセンス数及び管理ファイルに基づいてデジタル情報の使用が可能かを判断し、許可する。その後、デジタル情報の使用が許可されると、クライアントを識別する識別情報を含む管理レコードを、通信ネットワークを介してサーバに格納された管理ファイルに追加し、デジタル情報の使用を実行する。そして、デジタル情報の使用が終了すると、通信ネットワークを介して管理ファイルからデジタル情報の使用を終了したクライアントに対応する管理レコードを消去する。
【００２８】
ここで、ライセンス管理プログラムは、クライアントに予めインストールされて起動するものであっても、あるいはサーバに格納されているものをデジタル情報の使用時に一時的にメモリなどの記憶媒体に読込んで、該メモリから起動するものであってもよい。
【００２９】
請求項７の発明にかかるライセンス管理プログラムは、請求項６に記載のライセンス管理プログラムにおいて、前記デジタル情報の使用中に所定の更新時間を検出する更新時間検出手段、前記更新時間検出手段によって検出された前記更新時間毎に、前記通信ネットワークを介して前記管理レコードの前記時間情報を更新する時間情報更新手段、前記時間情報更新手段によって前記時間情報が更新された前記管理ファイル、及び以前の時間情報更新時に保持された旧管理ファイルを比較し、前記時間情報が更新されていない未更新管理レコードを検出し、検出された前記未更新管理レコードを前記管理ファイルから削除する削除手段として、前記クライアントをさらに機能させるものである。
【００３０】
したがって、請求項７の発明のライセンス管理プログラムによれば、請求項６の発明のライセンス管理プログラムの作用に加え、ライセンス管理プログラムを実行させると、クライアントは、デジタル情報の使用中に所定の更新時間を検出し、検出された更新時間毎に、通信ネットワークを介して管理レコードの時間情報を更新する。さらに、時間情報が更新された管理ファイル、及び以前の時間情報更新時に保持された旧管理ファイルとを比較し、時間情報が更新されていない未更新管理レコードを検出し、検出された未更新管理レコードを管理ファイルから削除する。
【００３１】
請求項８にかかるライセンス管理プログラムは、請求項７に記載のライセンス管理プログラムにおいて、前記時間情報更新手段において自己の前記管理レコードが削除されていると、自己の前記管理レコードを前記管理ファイルに追加し、復元する復元手段として、前記クライアントをさらに機能させるものである。
【００３２】
したがって、請求項８の発明のライセンス管理プログラムによれば、請求項７の発明のライセンス管理プログラムの作用に加え、ライセンス管理プログラムを実行させると、クライアントは、自己の管理レコードが削除されていると、自己の管理レコードを管理ファイルに追加し、復元する。
【００３３】
【発明の実施の形態】
以下、本発明の一実施形態であるライセンス管理システム１について図１乃至図６に基づいて説明する。図１は本発明の一実施形態であるライセンス管理システム１の構成及びサーバ３の機能的構成を示す説明図であり、図２はライセンス管理システム１におけるクライアントＡの機能的構成を示すブロック図であり、図３及び図４はライセンス管理システム１のクライアントＡにおける処理の流れを示すフローチャートであり、図５はアプリケーションＡＰの使用状況を表示する表示画面の一例を示す説明図であり、図６は管理ファイルＣＦを構成する管理レコードＣＲの追加、消去、削除、及び復元を模式的に示す説明図である。
【００３４】
本実施形態のライセンス管理システム１は、図１に示すように、サーバ３と、通信回線Ｌを介してサーバ３に接続した複数のクライアント２とによるＬＡＮ環境によって構成されている。ここで、サーバ３はクライアント２によって起動される許容ライセンス数Ｃが予め設定されたアプリケーションＡＰ、及びアプリケーションＡＰのライセンス管理を行う管理ファイルＣＦを格納する格納手段４と、格納したアプリケーションＡＰ及び管理ファイルＣＦをクライアント２に公開する公開手段５とを有している。
【００３５】
一方、クライアント２は、サーバ３に格納されたアプリケーションＡＰを起動し、実行することが可能であるとともに、アプリケーションＡＰによって定められた許容ライセンス数Ｃ及び読込んだ管理ファイルＣＦに基づいてアプリケーションＡＰのライセンス管理を行うものである。なお、本実施形態のライセンス管理システム１では、サーバ３に接続した複数のクライアント２の中の一つをクライアントＡとし、以降の説明を主にクライアントＡにおける処理の流れについて行うものとする。また、クライアントＡ以外のクライアント２をクライアントＸ（Ｘ１，Ｘ２、Ｘ３・・・）とする。ここで、アプリケーションＡＰが本発明におけるデジタル情報に相当する。
【００３６】
さらに、具体的に説明すると、図２に示すように、クライアントＡは、機能的構成として、サーバ３に格納され、アプリケーションＡＰの使用状況を管理する複数の管理レコードＣＲから構成された管理ファイルＣＦを、通信回線Ｌを介して読込む読込手段１１と、読込まれた管理ファイルＣＦに基づいてアプリケーションＡＰの使用状況を表示する状況表示手段１２と、所定時間毎に管理ファイルＣＦを再読込みし、アプリケーションＡＰの使用状況を更新する更新手段１３と、アプリケーションＡＰの起動要求がされると、許容ライセンス数Ｃ及び管理ファイルＣＦに基づいてアプリケーションＡＰの起動が可能かを判断し、許可する判断手段１４と、クライアントＡを識別する識別情報ＩＤ及びアプリケーションＡＰの使用時間に対応して決定される時間情報Ｔから構成される管理レコードＣＲを、サーバ３に格納された管理ファイルＣＦに追加する管理レコード追加手段１５と、アプリケーションＡＰを実行する実行手段１６と、アプリケーションＡＰの終了が検出されると、サーバ３の管理ファイルＣＦからクライアントＡに対応する管理レコードＣＲを消去する管理レコード消去手段１７とから構成されている。さらに、アプリケーションＡＰの実行中に所定の更新時間ＲＴ及び管理ファイルＣＦの再読込みの所定時間を検出する時間検出手段１８と、検出された所定の更新時間ＲＴ毎にクライアントＡに対応する管理レコードＣＲの時間情報Ｔを更新する時間情報更新手段１９と、時間情報Ｔが更新された管理ファイルＣＦと前回の時間情報Ｔの更新時に保持された旧管理ファイルとを比較し、時間情報Ｔが更新されていない未更新管理レコードＮＣＲを検出し、検出された未更新管理レコードＮＣＲをサーバ３の管理ファイルＣＦから削除する削除手段２０と、クライアントＡに対応する管理レコードＣＲが管理ファイルＣＦから削除されていると、記憶手段２２に保持された管理ファイルＣＦを利用してサーバ３の管理ファイルＣＦに管理レコードＣＲを追加し、復元する復元手段２１とを備えている。ここで、時間検出手段１８が本発明における更新時間検出手段に相当する。
【００３７】
さらに、クライアントＡは、アプリケーションＡＰ、及び管理ファイルＣＦなどの種々のデータ及びプログラムを記憶するための記憶手段２２と、管理レコードＣＲの追加や削除など種々の処理をサーバ３に対して実行するために、通信回線Ｌを介してサーバ３にアクセスするアクセス手段２３と、クライアントＡを操作する操作手段２４と、状況表示手段１２に基づいてアプリケーションＡＰの使用状況などの種々の情報を信号制御し表示するための表示制御手段２５及び表示手段２６とから構成されている。なお、本実施形態のライセンス管理システム１を実施するためのライセンス管理プログラムＬＰＧは、クライアントＡの記憶手段２２に記憶されている。
【００３８】
ここで、クライアントＡとしては、サーバ３に通信回線Ｌを介して接続可能なパーソナルコンピュータが使用され、記憶手段２２としてメモリ及びハードディスクなどの記憶媒体、アクセス手段２３としてＬＡＮボード、操作手段２４としてキーボード及びマウス、表示手段２６としてモニタディスプレイがそれぞれ利用されている。
【００３９】
次に、本実施形態のライセンス管理システム１におけるクライアントＡの処理の流れを図３及び図４のフローチャートに基づいて説明する。ここで、図３及び図４のフローチャートで示すステップＳ１からステップＳ２０における処理が、本発明のライセンス管理プログラムＬＰＧに相当する。
【００４０】
始めに、クライアントＡからサーバ３に格納されている管理ファイルＣＦを読込む（ステップＳ１）。ここで、管理ファイルＣＦは、利用するアプリケーションＡＰの使用状況を表し、他のクライアントＸから送信された複数の管理レコードＣＲから構成されている。
【００４１】
そして、読込まれた管理ファイルＣＦに基づいてアプリケーションＡＰの使用状況を表示する（ステップＳ２）。具体的に説明すると管理ファイルＣＦを構成する管理レコードＣＲの数（すなわち、管理レコード数Ｏ）と、アプリケーションＡＰの許容ライセンス数Ｃとが視覚的に容易に把握できるように表示される。例えば、許容ライセンス数Ｃと同数の点灯状態にあるランプを画面上に表示し、管理レコード数Ｏの数だけ、消灯状態にするものや、分数（Ｏ／Ｃ）などによって表示する（図５（ａ）、（ｂ）参照）ものなどが挙げられる。
【００４２】
その後、ライセンス管理システム１の継続または終了の指示を検出する。ライセンス管理システム１を継続する場合（ステップＳ３においてＹＥＳ）、アプリケーションＡＰの起動要求を検出する（ステップＳ４）。一方、ライセンス管理システム１を終了させる指示が有る場合（ステップＳ３においてＮＯ）、ステップＳ１３の処理に移る。
【００４３】
アプリケーションＡＰの起動要求が検出される場合（ステップＳ４においてＹＥＳ）、読込んだ管理ファイルＣＦの管理レコード数Ｏと、アプリケーションＡＰによって設定された許容ライセンス数Ｃとを比較する（ステップＳ５）。ここで、Ｏ＜Ｃが成立する場合（ステップＳ５においてＹＥＳ）、すなわち、アプリケーションＡＰの起動数が許容ライセンス数Ｃ未満の場合はアプリケーションＡＰの起動を許可し、管理レコードＣＲを作成（ステップＳ６）するとともに、サーバ３の管理ファイルＣＦに管理レコードＣＲを追加する（ステップＳ７）。そして、クライアントＡからアプリケーションＡＰを起動する（ステップＳ８）。ここで、管理レコードＣＲはクライアントＡ，ＸのアプリケーションＡＰの使用開始順にしたがって管理ファイルＣＦに追加される（図６（ａ）参照）。このとき、管理レコード数Ｏの値は一つ増加し、管理ファイルＣＦの情報が更新される。なお、管理レコードＣＲを追加したクライアントＡは、更新された管理ファイルＣＦを、クライアントＡの記憶手段２２に保持する。
【００４４】
ここで、管理レコードＣＲは、図６に示すように、個々のクライアントＡ，Ｘを識別するための識別情報ＩＤと、アプリケーションＡＰの使用時間に対応して決定される時間情報Ｔとから構成されている。なお、識別情報ＩＤは、クライアントＡ，Ｘで稼動するオペレーティングシステムがカウントしているクライアントＡ，Ｘの稼働時間に基づいて決定される。ここで、稼働時間は、１／１００秒単位で時間認識することが可能である。このため、予め個々のクライアントＡ，Ｘに固有の識別番号などを発行する必要がない。さらに、一度システムを終了し、再び、本実施形態のライセンス管理システムを実行しようとした場合には、あらたな識別情報ＩＤが与えられ、別のクライアントＡとして管理ファイルＣＦに追加される。なお、時間情報Ｔは、アプリケーションＡＰの使用時間に対応して決定されるものであり、ここでは使用開始時に初期値としてＴ＝０を与えている。
【００４５】
一方、アプリケーションの起動要求が検出されない場合（ステップＳ４においてＮＯ）、所定の時間（例えば、３秒）ごとにサーバ３から管理ファイルＣＦを読込み（ステップＳ９）、その後、ステップＳ２の処理に戻り、アプリケーションＡＰの使用状況を再表示する（図５（ｂ）参照）。さらに、管理レコード数Ｏと許容ライセンス数Ｃを比較して、Ｏ＜Ｃが成立しない場合（ステップＳ５においてＮＯ）、アプリケーションＡＰの起動が不可と判断し、起動不可の表示を行なう（ステップＳ１０）とともに、ステップＳ３の処理に戻る（図５（ｃ）参照）。
【００４６】
アプリケーションＡＰが起動され、クライアントＡによってアプリケーションＡＰが実行されているとき、アプリケーションＡＰの終了指示の検出を待機する（ステップＳ１１）。アプリケーションＡＰの終了指示が有る場合（ステップＳ１１においてＹＥＳ）、サーバ３の管理ファイルＣＦから、クライアントＡに対応する管理レコードＣＲを検出し、該管理レコードＣＲを管理ファイルＣＦから削除する（ステップＳ１２）。このとき、管理ファイルＣＦから管理レコードＣＲが消去されると、管理レコード数Ｏの値が一つ減らされる。そして、管理ファイルＣＦの再構成が行われる（図６（ｃ）参照）。すなわち、消去された管理レコードＣＲの占めていた部分の隙間を埋めることが行われる。そして、アプリケーションＡＰの終了とともに、本実施形態のライセンス管理システム１を終了する（ステップＳ１３）。
【００４７】
一方、アプリケーションＡＰの終了指示がない場合（ステップＳ１１においてＮＯ）、管理レコードＣＲに含まれる時間情報Ｔを更新するための所定の更新時間ＲＴ（例えば、６分）の経過を検出する（ステップＳ１４）。更新時間ＲＴを経過している場合（ステップＳ１４においてＹＥＳ）、サーバ３に格納されている管理ファイルＣＦを読込み、クライアントＡに対応する自己の管理レコードＣＲが、管理ファイルＣＦに存在しているかを検出する（ステップＳ１５）。管理レコードＣＲが存在している場合（ステップＳ１６においてＹＥＳ）、自己の管理レコードＣＲの時間情報Ｔの値を一つカウントアップする（ステップＳ１７）。一方、対応する自己の管理レコードＣＲがサーバ３の管理ファイルＣＦに存在しない場合（ステップＳ１６においてＮＯ）、クライアントＡの記憶手段２２に保持されていた管理レコードＣＲを利用して管理ファイルＣＦに自己の管理レコードＣＲを追加し、復元する（ステップＳ１８）。その後、ステップＳ１７の処理に戻る。また、所定の更新時間ＲＴを経過していない場合（ステップＳ１４においてＮＯ）、ステップＳ１１の処理に戻る。なお、ステップＳ１６において管理レコードＣＲが存在しない場合の詳細な説明については後述するため、ここでは省略する。
【００４８】
さらに、ステップＳ１６において時間情報Ｔを更新した後、未更新管理レコードＮＣＲの検出を行う（ステップＳ１９）。ここで、未更新管理レコードＮＣＲとは、管理ファイルＣＦを構成する管理レコードＣＲの中で時間情報Ｔの値が、前回の時間情報Ｔの更新時間ＲＴにおいて保持された旧管理ファイルＣＦと比較し、変化していない管理レコードＣＲのことである。すなわち、時間情報Ｔの更新は、各クライアントＡ，Ｘに対して個々に、かつ一定の更新時間間隔で実施されるため、最新の管理ファイルＣＦと以前の旧管理ファイルＣＦとの間には、必ず時間情報Ｔの更新、あるいはアプリケーションＡＰの終了による管理レコードＣＲの削除のいずれか一方が行われ、何らかの変化が発生しているはずである。したがって、時間情報Ｔの更新が行われず、かつ管理レコードＣＲが管理ファイルＣＦに残っている場合は、クライアントＡ，Ｘで何らかの異常が発生したことを示している。したがって、クライアントＡ，Ｘは、アプリケーションＡＰを実行していないにも拘わらず、管理ファイルＣＦの管理レコードＣＲの消去が正常に行われずにアプリケーションＡＰの許容ライセンス数Ｃの一つを、不当に占有した状態となる（図６（ｂ）→（ｄ）参照）。そこで、更新した管理ファイルＣＦと旧管理ファイルＣＦとを比較し、時間情報Ｔに変化のない未更新管理レコードＮＣＲを検出する（ステップＳ１９）。そして、未更新管理レコードＮＣＲを検出した場合（ステップＳ１９においてＹＥＳ）、該未更新管理レコードＮＣＲを管理ファイルＣＦから削除する（ステップＳ２０、図６（ｅ）参照）。その後、ステップＳ１１の処理に戻る。これにより、許容ライセンス数Ｃの一つがクライアントＡ，Ｘによる不当に占有されている状態を解消することができる。一方、未更新管理レコードＮＣＲが検出されない場合（ステップＳ１９においてＮＯ）、この処理はキャンセルされる。
【００４９】
ここで、ステップＳ１７において時間情報更新手段１９によって時間情報Ｔを更新しようとしたときに、更新しようとするクライアントＸに対応する管理レコードＣＲが削除されている場合について説明する。すなわち、他のクライアントＡ，Ｘによって管理レコードＣＲが削除される要因としては、上述したように他のクライアントＸによって自己の管理レコードＣＲが未更新管理レコードＮＣＲとして判断され、削除されてしまったことが想定される。例えば、図６で示したクライアントＸ３において、異常が発生していない場合でも、一定時間入力操作などが行われなかった際にオペレーティングシステムの設定により、省エネルギー対策としていわゆる「スリープ状態」に入ることがある。この場合、クライアントＸ３は、時間情報Ｔを更新することはできないため、所定の更新時間ＲＴを経過すると、管理ファイルＣＦのクライアントＸ３に対応する管理レコードＣＲが他のクライアントＸによって削除されてしまう（図６（ｅ））。そこで、クライアントＸ３がスリープ状態から復帰したときに、アプリケーションＡＰの実行を継続しようとしても、管理レコードＣＲが削除されているためアプリケーションＡＰの実行が行えない。そこで、スリープ前の更新時間ＲＴに保持した旧管理ファイルＣＦの該クライアントＸ３に対応する自己の管理レコードＣＲを使用して、管理ファイルＣＦに自己の管理レコードＣＲを追加し、復元することにより、その時点からアプリケーションＡＰの実行を再開し、継続することができる（図６（ｆ））。
【００５０】
以上説明したように、本実施形態のライセンス管理システム１は、サーバ３に通信回線Ｌを介して接続した複数のクライアント２から、サーバ３に格納されたアプリケーションＡＰのライセンス管理を行うことができる。ここで、本実施形態のライセンス管理システム１において、サーバ３は、アプリケーションＡＰ及び管理ファイルＣＦを格納し、これをクライアント２に公開するファイルサーバとしての機能を有するだけである。したがって、従来のようなサーバ３にライセンス管理のためのプログラムを常駐させる必要がなくなり、サーバ３の処理やネットワークの通信処理に負担をかけることがない。
【００５１】
さらに、管理ファイルＣＦを構成する管理レコードＣＲの時間情報Ｔを所定の更新時間ＲＴごとに更新することによって、サーバ３に接続したすべてのクライアント２が、アプリケーションＡＰの使用状況をリアルタイムで把握することができる。さらに、時間情報Ｔの更新されていない未更新管理レコードＮＣＲの検出が行われることにより、アプリケーションＡＰの許容ライセンス数の一つを不当に占有しているクライアント２に対応する未更新管理レコードＮＣＲを、他のクライアント２がサーバ３の管理ファイルＣＦから削除することができる。これにより許容ライセンス数Ｃの範囲内でアプリケーションＡＰを有効に用いることができる。
【００５２】
加えて、クライアント２がオペレーティングシステムの設定によりスリープ状態に入り、時間情報Ｔの更新がされなかった場合でも、スリープ前の旧管理ファイルＣＦを利用して、削除された管理レコードＣＲを復元し、アプリケーションＡＰの使用を再開することができる。
【００５３】
以上、本発明について好適な実施形態を挙げて説明したが、本発明はこれらの実施形態に限定されるものではなく、以下に示すように、本発明の要旨を逸脱しない範囲において、種々の改良及び設計の変更が可能である。
【００５４】
すなわち、本実施形態のライセンス管理システム１において、図３及び図４のフローチャートに基づいてクライアントＡの処理の流れを示したが、これに限定されるものではない。例えば、時間情報Ｔの更新と、未更新管理レコードＮＣＲの検出及び削除を一つの流れとして行うものを示したが、これに限定されるものではなく、それぞれ異なる時間で行ってもよい。すなわち、時間情報Ｔの更新が二回行われると、未更新管理レコードＮＣＲの検出を一回行うような処理を行ってもよい。これにより、クライアント２がスリープ状態にあり、該スリープ状態から復帰したときの、管理レコードＣＲの復元回数を減らすことができ、クライアント２の処理の負担を軽減することができる。
【００５５】
さらに、本実施形態のライセンス管理システム１では、一つのアプリケーションＡＰのライセンス管理を行うものを示したが、これに限定されるものでなく、複数のアプリケーションＡＰを同時に管理してもよい。具体的には、図５に示したアプリケーションＡＰの起動要求を受付ける画面から、複数のアプリケーションＡＰの起動を可能にし、該画面からそれぞれのアプリケーションＡＰの起動を行えるようにするものである。これにより、ライセンス管理を行うアプリケーションＡＰをまとめて管理することができる。また、図５において示した使用状況を示す表示画面についても、これに限定されるものでなく、例えば、表示から所定時間経過後（例えば、３０秒）に、表示画面を小さくする処理を行ってもよい。これにより、クライアント２にかかるプログラムの処理の負担を軽減することができる。なお、本実施形態のライセンス管理システム１において、アプリケーションＡＰの使用状況を図５で示したように、”ランプの消灯＝使用中・ランプの点灯＝使用可”で表示するものを示したが、これに限定されるものではなく、これを逆の表示、すなわち、”ランプの消灯＝使用可・ランプの点灯＝使用中”の意味を示すようにしてもよい。さらに、分数表示も分子を管理レコード数Ｏで表すものを例示したが、例えば、残ライセンス数（すなわち、許容ライセンス数Ｃ−管理レコード数Ｏ）で表示してもよい。
【００５６】
さらに、本実施形態のライセンス管理システム１において、デジタル情報の例としてプログラムなどのアプリケーションＡＰの実行をライセンス管理するものを示したが、これに限定されるものではなく、例えば、ホームページ画面などを含むコンテンツの閲覧をライセンス管理するものであってもよい。この場合、該コンテンツを閲覧するためのブラウザプログラムをクライアント２またはサーバ３に備える必要がある。また、ライセンス管理プログラムＬＰＧが、予めクライアント２の記憶手段２２に記憶されているものを示したが、これに限定されるものではなく、例えば、サーバ３の格納手段４にライセンス管理プログラムＬＰＧが格納され、システムの利用時だけクライアント２のメモリなどに一時的に読込んだ後に、ライセンス管理プログラムＬＰＧを起動して、ライセンス管理を行うものであってもよい。これにより、複数のクライアント２に、ライセンス管理プログラムＬＰＧをそれぞれインストールする手間を省くことができる。さらに、アプリケーションＡＰなどのデジタル情報も予めクライアント２内に格納し、管理ファイルＣＦだけをサーバ３に格納することも考えられる。
【００５７】
さらに、本実施形態のライセンス管理システム１において、サーバ３及び各クライアント２がＬＡＮのネットワークシステム環境にあるものを示したが、これに限定されるものではなく、例えば、ＷＡＮやインターネットなどの通信ネットワークを利用するものであってもよい。
【００５８】
また、本実施形態のライセンス管理システム１において、常に管理ファイルＣＦがサーバ３の格納手段４に格納されているものを示したが、これに限定されるものではない。すなわち、アプリケーションＡＰがいずれのクライアント２からも実行されていない場合、つまり管理レコード数Ｏ＝０の場合は、管理ファイルＣＦは存在していなくてもよい。この場合、最先のクライアント２から管理レコードＣＲの追加が行われたときに新規に管理ファイルＣＦを作成してもよい。同様に、全てのクライアント２においてアプリケーションＡＰの実行が終了して、管理レコードＣＲが消去された場合には、管理ファイルＣＦも格納手段４から削除することも可能である。
【００５９】
【発明の効果】
以上のように、請求項１の発明のライセンス管理システムは、サーバに通信ネットワークを介して接続した複数のクライアントから、サーバに格納された許容ライセンス数の設定されたデジタル情報を使用し、デジタル情報のライセンスの管理を行うことができる。これにより、サーバの処理能力に負担をかけることなく、クライアントの処理だけでライセンス管理を行うことができる。
【００６０】
請求項２の発明のライセンス管理システムは、請求項１の発明のライセンス管理システムの効果に加え、サーバに格納されたデジタル情報及び管理ファイルをクライアントが公開される。そのため、複数のクライアントは管理ファイルの追加及び消去の処理を行うことができる。したがって、サーバは、管理ファイルなどのデータを格納するファイルサーバの機能を有するだけであり、サーバの処理能力やネットワークの通信処理に負担を課すことがない。
【００６１】
請求項３の発明のライセンス管理システムは、請求項１または請求項２の発明のライセンス管理システムの効果に加え、管理レコードに時間情報を含み、該時間情報に基づいて、未更新管理レコードを検出し、削除することができる。これにより、許容ライセンス数の一つを不当に占有しているクライアントの管理レコードを削除し、許容ライセンス数の範囲内でデジタル情報を有効に使用することができる。
【００６２】
請求項４の発明のライセンス管理システムは、請求項３の発明のライセンス管理システムの効果に加え、クライアントに対応する管理レコードが管理ファイルから削除されているのを検出すると、保持している管理ファイルの内容を利用して、管理レコードを追加し復元することができる。これにより、例えば、クライアントがスリープ状態に入り、スリープ状態から復帰した場合でも、デジタル情報の使用を再開することができる。
【００６３】
請求項５の発明のライセンス管理システムは、請求項１乃至請求項４のいずれか一つの発明のライセンス管理システムの効果に加え、管理レコードに含まれる識別情報がクライアントの稼働時間に基づいて決定されるため、個々のクライアントを識別するためのＩＤなどの認証手段を予め発行する必要がなく、クライアントを識別することができる。
【００６４】
請求項６乃至請求項８の発明のライセンス管理プログラムは、ライセンス管理プログラムを実行することにより、クライアントに、デジタル情報の使用状況を把握させ、ライセンス管理を行うことができる。具体的には、デジタル情報の使用状況を把握し、管理するための管理レコードから構成された管理ファイルに基づいて、管理レコードの追加、消去、削除、及び復元などの各処理が可能となり、管理ファイルに基づいたデジタル情報のライセンス管理が行える。
【図面の簡単な説明】
【図１】本発明の一実施形態であるライセンス管理システムの構成及びサーバの機能的構成を示す説明図である。
【図２】本発明の一実施形態であるライセンス管理システムにおけるクライアントの機能的構成を示すブロック図である。
【図３】本発明の一実施形態であるライセンス管理システムのクライアントにおける処理の流れを示すフローチャートである。
【図４】本発明の一実施形態であるライセンス管理システムのクライアントにおける処理の流れを示すフローチャートである。
【図５】アプリケーションの使用状況を表示する表示画面の一例を示す説明図である。
【図６】管理ファイルを構成する管理レコードの追加、消去、削除、及び復元を模式的に示す説明図である。
【符号の説明】
１  ライセンス管理システム
２，Ａ，Ｘ，Ｘ３  クライアント
３  サーバ
４  格納手段
５  公開手段
１１  読込手段
１２  状況表示手段
１３  更新手段
１４  判断手段
１５  管理レコード追加手段
１６  実行手段
１７  管理レコード消去手段
１８  時間検出手段
１９  時間情報更新手段
２０  削除手段
２１  復元手段
ＡＰ  アプリケーション
Ｃ  許容ライセンス数
ＣＦ  管理ファイル
ＣＲ  管理レコード
ＩＤ  識別情報
ＬＰＧ  ライセンス管理プログラム
ＮＣＲ  未更新管理レコード
Ｏ  管理レコード数
Ｔ  時間情報
【図１】
0003556606.tif 000002
【図２】
0003556606.tif 000003
【図３】
0003556606.tif 000004
【図４】
0003556606.tif 000005
【図５】
0003556606.tif 000006
【図６】
0003556606.tif 000007