説明

ライセンス管理システムおよびライセンス管理プログラム

【課題】 ライセンス形態の変更をライセンス管理処理に容易に反映させることができるようにすると共に、アプリケーションプログラムの不正使用防止を強化する。
【解決手段】ライセンスプログラム30は、アプリケーションプログラム40のライセンス確認処理を行う機能と、アプリケーションプログラム40の呼出を唯一行う機能とを備えている。ライセンスプログラム30は、アプリケーション制御プログラム27からもアプリケーションプログラム40からも分離された独立のプログラムである。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、アプリケーションプログラムなどのソフトウェアのライセンス(使用許諾)管理処理を行うライセンス管理システムおよびライセンス管理プログラムに関する。
【背景技術】
【0002】
従来、ライセンス管理用コンピュータおよびアプリケーション実行用コンピュータを備えたコンピュータネットワークシステムにおいて、アプリケーションプログラムのライセンス管理処理は次のような方法により行われる(詳しくは特許文献1参照)。
【0003】
すなわち、ライセンス管理用コンピュータは、アプリケーションプログラムに関するライセンス情報およびライセンス照合プログラムを保持している。ライセンス情報には、例えば、(1)アプリケーションプログラムの識別情報、(2)ライセンシの識別情報、またはライセンシが使用するアプリケーション実行用コンピュータの識別情報、および(3)アプリケーションプログラムの使用を許可するユーザ数などが含まれている。ライセンス照合プログラムは、アプリケーション実行用コンピュータからの問い合わせに応じて、ライセンス情報の照合を行うプログラムである。
【0004】
一方、アプリケーション実行用コンピュータはアプリケーションプログラムを保持している。このアプリケーションプログラムにはアプリケーションプログラム本体および問い合わせプログラムが含まれている。問い合わせプログラムは、アプリケーションプログラムについてのライセンスの有無をライセンス管理用コンピュータに問い合わせるプログラムである。
【0005】
ユーザ(ライセンシ)がアプリケーション実行用コンピュータを操作し、アプリケーションプログラムの実行を指示すると、アプリケーション実行用コンピュータは、アプリケーションプログラムを呼び出し、まず、問い合わせプログラムに従い、アプリケーションプログラムについてのライセンスの有無をライセンス管理用コンピュータに問い合わせる。このとき、アプリケーションプログラムの識別情報およびライセンシの識別情報などがアプリケーション実行用コンピュータからライセンス管理用コンピュータに送信される。続いて、ライセンス管理用コンピュータは、ライセンス照合プログラムに従い、アプリケーション実行用コンピュータから送信されたアプリケーションプログラムの識別情報およびライセンシの識別情報などを、ライセンス管理用コンピュータに保持されているライセンス情報と照合する。この結果、アプリケーションプログラムのライセンスの有無が判明する。アプリケーションプログラムのライセンスがある場合には、その旨がライセンス管理用コンピュータからアプリケーション実行用コンピュータに送信され、これに応じ、アプリケーション実行用コンピュータにおいてアプリケーションプログラム本体の実行が開始される。一方、アプリケーションプログラムのライセンスがない場合(ライセンスの制限に違反している場合を含む。以下同じ。)には、その旨がライセンス管理用コンピュータからアプリケーション実行用コンピュータに送信され、これに応じ、アプリケーション実行用コンピュータにおいてアプリケーションプログラム本体の実行が阻止される。
【0006】
他方、アプリケーションプログラムのライセンス管理処理方法には、ライセンス管理用コンピュータがアプリケーション実行用コンピュータにライセンス情報を事前に配布し、アプリケーションプログラムの実行時にアプリケーション実行用コンピュータ側でライセンス情報の照合を行うものもある(詳しくは特許文献2参照)。この方法では、アプリケーション実行用コンピュータに保持されたアプリケーションプログラムに、アプリケーションプログラム本体およびライセンス照合プログラムが含まれている。そして、ユーザ(ライセンシ)がアプリケーション実行用コンピュータを操作し、アプリケーションプログラムの実行を指示すると、アプリケーション実行用コンピュータは、アプリケーションプログラムを呼び出し、まず、ライセンス照合プログラムに従い、ライセンス情報の照合を行い、ライセンスがある場合に限り、続いてアプリケーションプログラム本体の実行を開始する。
【特許文献1】特開平10−111797号公報
【特許文献2】特開2001−5659号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
ところで、ライセンスには様々な形態がある。例えば、アプリケーションプログラムの使用を許可するユーザ数に制限(ユーザ数制限)が加えられたライセンス、使用を許可する期間に制限(期間制限)が加えられたライセンス、あるいは使用を許可する機能の範囲に制限(機能制限)が加えられたライセンスなどである。
【0008】
このようなライセンスの形態は種々の要因によりしばしば変更される場合がある。例えばライセンサまたはライセンシの事情によりライセンス契約内容が変更され、これに伴って、期間制限のみが加えられたライセンスから、ユーザ数制限のみが加えられたライセンスに変更される場合がある。
【0009】
上述した特許文献1に記載されたライセンス管理処理方法では、ライセンスの形態が変更される度に、ライセンス管理用コンピュータに保持されているライセンス照合プログラムを変更する必要が生じる場合がある。このライセンス照合プログラムの変更は容易でない。
【0010】
例えばライセンス管理用コンピュータが多数のアプリケーションプログラムを集中管理しており、1つのライセンス照合プログラムにより多数のアプリケーションプログラムについてのライセンス照合を行う場合には、多数のアプリケーションプログラムのライセンス形態をそれぞれ考慮してライセンス照合プログラムの変更作業を行わなければならない。このため、ライセンス照合プログラムの変更は困難である。
【0011】
また、ライセンス照合プログラムがライセンス管理用コンピュータのプラットフォーム(例えばオペレーションシステム)と密接な関係がある場合には、ライセンス照合プログラムを変更するためにプラットフォームの一部を変更する必要が生じうる。このような場合には、ライセンス照合プログラムの変更は一層困難になる。
【0012】
また、上述した特許文献2に記載されたライセンス管理処理方法では、ライセンスの形態が変更される度に、アプリケーションプログラムの全部を再インストールしなければならないといった不都合が生じるおそれがある。
【0013】
すなわち、ライセンスの形態の変更により、アプリケーション実行用コンピュータに保持されているアプリケーションプログラムに含まれるライセンス照合プログラムを変更する必要が生じる場合がある。ライセンス照合プログラムはアプリケーションプログラムの一部であるため、ライセンス照合プログラムを変更するためには、アプリケーションプログラム全体をアプリケーション実行用コンピュータに再インストールしなければならない。この結果、ユーザに過大な負担が生じるおそれがある。
【0014】
他方、上述した特許文献1または2に記載されたライセンス管理処理方法では、ユーザにライセンスがない場合でも、ユーザがプラットフォームを操作してアプリケーションプログラムを呼び出すことができる。もちろん、この場合には、アプリケーションプログラムの呼出直後に実行されるライセンス照合プログラムにより、ライセンスのないことが判明するので、アプリケーションプログラム本体の実行は阻止される。しかし、アプリケーションプログラム本体の不正使用防止を強化するために、ライセンスがない場合にはプラットフォームによるアプリケーションプログラムの呼出すら許さないことが望まれる。
【0015】
本発明は例えば上述したような問題に鑑みなされたものであり、本発明の第1の課題は、例えばアプリケーションプログラムまたはプラットフォームなどの他のプログラムを全くまたは大幅に変更することなく、ライセンス形態の変更をライセンス管理処理に容易に反映させることができるライセンス管理システムおよびライセンス管理プログラムを提供することにある。
【0016】
本発明の第2の課題は、ライセンスがない場合にプラットフォームによるアプリケーションプログラムの呼出を阻止することができ、アプリケーションプログラムの不正使用防止を強化することができるライセンス管理システムおよびライセンス管理プログラムを提供することにある。
【課題を解決するための手段】
【0017】
上記課題を解決するために、第1の発明は、プラットフォーム上でそれぞれ動作可能なライセンス確認装置および情報処理装置を備えたライセンス管理システムであって、前記ライセンス確認装置はプラットフォーム上で単独に取り扱うことが可能な装置であり、前記情報処理装置のライセンスの有無を確認するライセンス確認手段と、前記プラットフォームからの呼出に応じて前記ライセンス確認手段を起動させる第1の起動手段と、前記ライセンス確認手段により前記ライセンスがあることが確認された場合に、前記情報処理装置を呼び出す呼出手段とを備え、前記情報処理装置は、特定の情報処理を実行する情報処理手段と、前記ライセンス確認装置からの呼出のみに応じて前記情報処理手段を起動させる第2の起動手段とを備えている。
【0018】
上記課題を解決するために、第2の発明は、上記第1の発明において、前記ライセンス確認装置がライセンスの対象を識別するための第1の識別情報を有し、前記情報処理装置が自己を識別するための第2の識別情報を有し、前記ライセンス確認装置または前記情報処理装置は前記第1の識別情報と前記第2の識別情報とを互いに照合することにより前記情報処理装置が前記ライセンスの対象であることを認識する認識手段を備えている。
【0019】
上記課題を解決するために、第3の発明は、プラットフォーム上で単独に取り扱うことが可能なライセンス確認装置としてコンピュータを機能させるためのライセンス管理プログラムであって、前記コンピュータを、前記プラットフォーム上で動作可能であり特定の情報処理を実行する情報処理装置のライセンスを確認するライセンス確認手段と、前記プラットフォームからの呼出に応じて前記ライセンス確認手段を起動させる起動手段と、前記ライセンス確認手段により前記ライセンスがあることが確認された場合に、前記情報処理装置を呼び出す呼出手段として機能させる。
【発明の効果】
【0020】
上記第1ないし第3の発明によれば、ライセンス形態に変更の必要が生じた場合には、ライセンス管理システムが現在有しているライセンス確認装置を、形態変更後のライセンスの有無を確認することができるライセンス確認手段を備えた新たなライセンス確認装置に置き換えるだけで、ライセンス形態の変更をライセンス管理処理に容易に反映させることができる。すなわち、ライセンス形態の変更をライセンス管理処理に反映させるために、情報処理装置(例えばアプリケーションプログラム)もプラットフォームも全くまたは大幅に変更しなくてよい。これにより、多様なライセンス形態またはライセンス形態の頻繁な変更に容易に対応することが可能なライセンス管理システムを実現することができる。
【0021】
また、上記第1ないし第3の発明によれば、プラットフォーム上に情報処理装置が存在していても、ライセンス確認装置が存在していなければ、ユーザはプラットフォームを操作して情報制御装置を呼び出すことができない。したがって、ライセンスを有しない者にはライセンス確認装置を取得させないようにすれば、ライセンスがない者がプラットフォームを操作して情報処理装置を呼び出すことを阻止することができ、情報処理装置の不正使用防止を強化することができる。
【0022】
また、第2の発明によるライセンス管理システムでは、ライセンス確認装置がライセンスの対象を識別するための第1の識別情報を有し、情報処理装置が自己を識別するための第2の識別情報を有し、ライセンス確認装置または情報処理装置が第1の識別情報と第2の識別情報とを互いに照合し、これにより情報処理装置がライセンスの対象であることを認識する。これにより、ライセンス確認装置による情報処理装置のライセンス確認処理、またはライセンス確認装置による情報処理装置の呼出を容易かつ正確に行うことが可能になる。
【発明を実施するための最良の形態】
【0023】
以下、図面を参照しつつ、本発明の実施の形態について説明する。
【0024】
(システムの構成)
図1はコンピュータネットワークシステムを示している。図1中のコンピュータネットワークシステム1はプログラム提供用コンピュータ2およびライセンス管理システムとしてのアプリケーション実行用コンピュータ3を備え、両者は例えばインターネットなどのコンピュータネットワーク4を介して互いに接続されている。
【0025】
プログラム提供用コンピュータ2は、例えばアプリケーションプログラム提供者の事業所に設置されており、アプリケーションプログラム40およびライセンスプログラム30のユーザへの提供などを行う。
【0026】
一方、アプリケーション実行用コンピュータ3は、例えばアプリケーションプログラム利用者(以下、「ユーザ」という。)の事業所に設置されており、アプリケーションプログラム提供者から提供されたライセンスプログラム30で定義された処理を実行することによりライセンス管理装置として機能する。さらに、アプリケーション実行用コンピュータ3は、アプリケーションプログラム40で定義された処理を実行することにより情報処理装置として機能する。すなわち、後述するように、アプリケーション実行用コンピュータ3は、アプリケーションプログラム40で定義された処理を実行する前にライセンスプログラム30で定義された処理を実行し、ユーザにアプリケーションプログラム40のライセンス(使用許諾)があるかどうかを確認する。そして、ライセンスがある場合に限り、アプリケーション実行用コンピュータ3はアプリケーションプログラム40で定義された処理を実行する。
【0027】
アプリケーション実行用コンピュータ3は、通信部21、情報読取部22、表示部23、操作部24、記憶部25および制御部26を備えている。
【0028】
通信部21は、アプリケーション実行用コンピュータ3をコンピュータネットワーク4に接続し、アプリケーション実行用コンピュータ3とプログラム提供用コンピュータ2との間の通信を制御する。通信部21は例えばインターネット回線接続用の通信回路である。
【0029】
情報読取部22は、光ディスク51、53、USB(Universal Serial Bus)メモリ52、54などの記録媒体に記録された情報を読み取る。情報読取部22は例えば光ディスクドライブまたはUSB接続回路である。
【0030】
表示部23は例えば液晶ディスプレイである。操作部24は複数の操作スイッチを備えている。
【0031】
記憶部25にはアプリケーション制御プログラム27が予め記憶されている。また、記憶部25には、アプリケーションプログラムインストール処理によりアプリケーションプログラム40が記憶され、ライセンスプログラムインストール処理によりライセンスプログラム30および照合結果情報50が記憶される。記憶部25は例えば書換可能な記録媒体であり、より具体的にはハードディスクまたはフラッシュメモリである。
【0032】
アプリケーション制御プログラム27は、アプリケーションプログラム40およびライセンスプログラム30のインストール・アンインストール、ライセンスプログラム30の呼出・終了、およびアプリケーションプログラム40の終了などを制御するコンピュータプログラムであり、アプリケーションプラットフォームに当たる。例えば、アプリケーション制御プログラム27はオペレーションシステムの一部である。
【0033】
制御部26は、アプリケーション制御プログラム27、ライセンスプログラム30およびアプリケーションプログラム40で定義された処理を実行する。制御部26は、例えばCPU(Central Processing Unit)、ROM(Read Only Memory)およびRAM(Random Access Memory)などにより構成されている。ROMには、アプリケーション制御プログラム27を起動させるコンピュータプログラム(例えばブートローダなど)が記憶されている。RAMは、CPUがアプリケーション制御プログラム27、ライセンスプログラム30およびアプリケーションプログラム40で定義された処理を実行するときの作業メモリとして用いられる。
【0034】
(ライセンスプログラム)
図2はライセンスプログラム30の構成を示している。ライセンスプログラム30は、アプリケーション制御プログラム27(プラットフォーム)上で独立に取り扱われる。例えば、ライセンスプログラム30は、独立したファイルまたは独立した一連のファイル群として、アプリケーション制御プログラム27(プラットフォーム)などにより取り扱われる。ライセンスプログラム30は、アプリケーション制御プログラム27からもアプリケーションプログラム40からも分離された独立のプログラムである。ライセンスプログラム30は、アプリケーション制御プログラム27ともアプリケーションプログラム40とも別に、単独でインストールおよびアンインストールすることができる。また、ライセンスプログラム30は、アプリケーション制御プログラム27から呼び出すことができる。
【0035】
ライセンスプログラム30は、制御部26をライセンス確認装置として機能させるコンピュータプログラムである。詳細には、ライセンスプログラム30は、制御部26にアプリケーション認識処理、ライセンス確認処理およびアプリケーション呼出処理を実行させることにより、制御部26を認識手段、ライセンス確認手段、呼出手段としてそれぞれ機能させる。
【0036】
アプリケーション認識処理は、ライセンスプログラム30が有するアプリケーション識別子33とアプリケーションプログラム40が有するアプリケーション識別子43とを互いに照合することにより、アプリケーションプログラム40がライセンスの対象であることを認識する処理である。ライセンス確認処理は、アプリケーションプログラム40のライセンスがユーザにあるかどうかを確認する処理である。アプリケーション呼出処理は、ユーザにライセンスのあることが確認された場合に限り、アプリケーションプログラム40の呼出を行う処理である。
【0037】
また、ライセンスプログラム30は、起動インターフェース31、ライセンスプログラム本体32およびアプリケーション識別子33を備えている。
【0038】
起動インターフェース31はライセンスプログラム本体32を起動させるコンピュータプログラムであり、制御部26を第1の起動手段として機能させるものである。起動インターフェース31はアプリケーション制御プログラム27により呼び出すことができる。
【0039】
ライセンスプログラム本体32は、アプリケーション認識プログラム32A、ライセンス確認処理プログラム32Bおよびアプリケーション呼出プログラム32Cをそれぞれサブプログラムとして備えている。アプリケーション認識プログラム32Aは、アプリケーション認識処理を制御部26に実行させるコンピュータプログラムである。ライセンス確認処理プログラム32Bは、ライセンス確認処理を制御部26に実行させるコンピュータプログラムである。アプリケーション呼出プログラム32Cは、アプリケーション呼出処理を制御部26に実行させるコンピュータプログラムである。
【0040】
アプリケーション認識プログラム32Aは、ライセンスプログラム本体32の起動直後に起動する。アプリケーション認識プログラム32Aは、照合結果情報50が記憶部25に記憶されているか否かを調べ、照合結果情報50が記憶部25に記憶されていない場合には、ライセンスプログラム30が有するアプリケーション識別子33とアプリケーションプログラム40が有するアプリケーション識別子43とを互いに照合し、アプリケーション識別子33とアプリケーション識別子43とが一致するか否かを示す情報を照合結果情報50として記憶部25に記憶し、終了する処理を制御部26に実行させる。この場合、ライセンスプログラム本体32は、ライセンス確認処理プログラム32Bもアプリケーション呼出プログラム32Cも起動せずに終了する。アプリケーション認識プログラム32Aは、照合結果情報50が記憶部25に記憶されている場合には、照合結果情報50を読み取り、アプリケーション識別子33とアプリケーション識別子43とが一致するか否かを調べ、アプリケーション識別子33とアプリケーション識別子43とが一致する場合には、ライセンス確認処理プログラム32Bおよびアプリケーション呼出プログラム32Cを起動し、一方、アプリケーション識別子33とアプリケーション識別子43とが一致しない場合には、ライセンス確認処理プログラム32Bもアプリケーション呼出プログラム32Cも起動せずに終了する処理を制御部26に実行させる。
【0041】
アプリケーション識別子33は、ライセンスの対象であるアプリケーションプログラムを識別するための第1の識別情報である。例えば、アプリケーション識別子33はライセンスの対象であるアプリケーションプログラム固有の番号である。
【0042】
(アプリケーションプログラム)
図3はアプリケーションプログラム40の構成を示している。アプリケーションプログラム40は、例えば、独立したファイルまたは独立した一連のファイル群として、アプリケーション制御プログラム27(プラットフォーム)などにより取り扱われる。また、アプリケーションプログラム40は、単独でインストールおよびアンインストールすることができる。しかし、アプリケーションプログラム40は、アプリケーション制御プログラム27により呼び出すことはできない。アプリケーションプログラム40を呼び出すことができるのは、ライセンスプログラム30のみである。
【0043】
アプリケーションプログラム40は、アプリケーション実行コンピュータ3を情報処理装置として機能させるコンピュータプログラムであり、接続インターフェース41、アプリケーションプログラム本体42およびアプリケーション識別子43を備えている。
【0044】
接続インターフェース41はアプリケーションプログラム本体42を起動させるコンピュータプログラムであり、制御部26を第2の起動手段として機能させるものである。接続インターフェース41を呼び出すことができるのはライセンスプログラム30のアプリケーション呼出プログラム32Cのみである。例えば、接続インターフェース41はライセンスプログラム30およびアプリケーションプログラム40を製造したアプリケーションベンダが独自に定義したものであり、このためアプリケーション制御プログラム27はアプリケーションプログラム40を直接呼び出すことができない。
【0045】
アプリケーションプログラム本体42は特定の情報処理を制御部26に実行させることにより、制御部26を情報処理手段として機能させる。
【0046】
アプリケーション識別子43は、アプリケーションプログラム40を識別するための第2の識別情報である。例えば、アプリケーション識別子43はアプリケーションプログラム40固有の番号である。
【0047】
(アプリケーションプログラムインストール処理)
図4はアプリケーションプログラムインストール処理を示している。アプリケーションプログラムインストール処理は、アプリケーションプログラム40をアプリケーション実行用コンピュータ3にインストールする処理である。
【0048】
ユーザがアプリケーション実行用コンピュータ3の操作部24を操作し、アプリケーションプログラムインストール処理を開始する旨の指示をアプリケーション実行用コンピュータ3に入力すると、アプリケーション実行用コンピュータ3の制御部26はアプリケーションプログラムインストール処理を開始する。
【0049】
図4に示すように、アプリケーションプログラムインストール処理において、まず、アプリケーション実行用コンピュータ3の制御部26は、アプリケーション制御プログラム27に従い、インストール情報入力画面を表示部23に表示する(ステップS11)。
【0050】
プログラム提供用コンピュータ2のアプリケーションプログラム格納部11には、アプリケーションプログラム40のインストールパッケージが格納されている。このインストールパッケージには、アプリケーションプログラム40が含まれている。ユーザが、操作部24を操作し、アプリケーションプログラム40のインストールパッケージの格納場所を指し示す情報(例えばURL(Uniform Resource Locator))、およびインストールを開始する旨の指示をアプリケーション実行用コンピュータ3に入力すると、制御部26は、アプリケーション制御プログラム27に従い、これらの入力情報を受け取る(ステップS12:YES)。
【0051】
続いて、アプリケーション実行用コンピュータ3の制御部26は、アプリケーション制御プログラム27に従い、通信部21を制御し、アプリケーション実行用コンピュータ3とプログラム提供用コンピュータ2との間の通信を確立する。そして、制御部26は、アプリケーション制御プログラム27に従い、アプリケーションプログラム40のインストールパッケージの格納場所を指し示す情報を用いてプログラム提供用コンピュータ2のアプリケーションプログラム格納部11に格納されたアプリケーションプログラム40のインストールパッケージにアクセスし、このインストールパッケージの読取を開始する(ステップS13)。これにより、アプリケーションプログラム40のインストールパッケージが、プログラム提供用コンピュータ2からアプリケーション実行用コンピュータ3にダウンロードされる。
【0052】
続いて、アプリケーション実行用コンピュータ3の制御部26は、アプリケーション制御プログラム27に従い、ダウンロードされたインストールパッケージに含まれるアプリケーションプログラム40を記憶部25に記憶する(ステップS14)。例えばアプリケーションプログラム40は、記憶部25に予め設定された所定のディレクトリ(フォルダ)内に配置される。
【0053】
続いて、アプリケーション実行用コンピュータ3の制御部26は、アプリケーション制御プログラム27に従い、インストール完了画面を表示部23に表示する(ステップS15)。
【0054】
(ライセンスプログラムインストール処理)
図5はライセンスプログラムインストール処理を示している。ライセンスプログラムインストール処理は、ライセンスプログラム30をアプリケーション実行用コンピュータ3にインストールする処理である。
【0055】
ユーザがアプリケーション実行用コンピュータ3の操作部24を操作し、ライセンスプログラムインストール処理を開始する旨の指示をアプリケーション実行用コンピュータ3に入力すると、アプリケーション実行用コンピュータ3の制御部26は、ライセンスプログラムインストール処理を開始する。
【0056】
図5に示すように、ライセンスプログラムインストール処理において、アプリケーション実行用コンピュータ3の制御部26は、まず、アプリケーション制御プログラム27に従い、インストール情報入力画面を表示部23に表示する(ステップS21)。
【0057】
プログラム提供用コンピュータ2のライセンスプログラム格納部12には、ライセンスプログラム30のインストールパッケージが格納されている。このインストールパッケージには、ライセンスプログラム30が含まれている。ユーザが、操作部24を操作し、ライセンスプログラム30のインストールパッケージの格納場所を指し示す情報(例えばURL)、およびインストールを開始する旨の指示をアプリケーション実行用コンピュータ3に入力すると、制御部26は、アプリケーション制御プログラム27に従い、これらの入力情報を受け取る(ステップS22:YES)。
【0058】
続いて、アプリケーション実行用コンピュータ3の制御部26は、アプリケーション制御プログラム27に従い、通信部21を制御し、アプリケーション実行用コンピュータ3とプログラム提供用コンピュータ2との間の通信を確立する。そして、制御部26は、アプリケーション制御プログラム27に従い、ライセンスプログラム30のインストールパッケージの格納場所を指し示す情報を用いてプログラム提供用コンピュータ2のライセンスプログラム格納部12に格納されたライセンスプログラム30のインストールパッケージにアクセスし、このインストールパッケージの読取を開始する(ステップS23)。これにより、ライセンスプログラム30のインストールパッケージが、プログラム提供用コンピュータ2からアプリケーション実行用コンピュータ3にダウンロードされる。
【0059】
続いて、アプリケーション実行用コンピュータ3の制御部26は、アプリケーション制御プログラム27に従い、ダウンロードされたインストールパッケージに含まれるライセンスプログラム30を記憶部25に記憶する(ステップS24)。
【0060】
続いて、アプリケーション実行用コンピュータ3の制御部26は、アプリケーション制御プログラム27に従い、ライセンスプログラム30を呼び出す(ステップS25)。これにより、ライセンスプログラム30が起動する。
【0061】
ライセンスプログラム30が起動すると、アプリケーション実行用コンピュータ3の制御部26は、ライセンスプログラム30に従い、まず、起動インターフェース31を起動する。そして、制御部26は、起動インターフェース31に従い、ライセンスプログラム本体32を起動する(ステップS26)。
【0062】
続いて、アプリケーション実行用コンピュータ3の制御部26は、ライセンスプログラム本体32に従い、アプリケーション認識プログラム32Aを起動する。そして、制御部26は、アプリケーション認識プログラム32Aに従い、照合結果情報50が記憶部25に記憶されているかどうかを調べる。
【0063】
照合結果情報50は、ライセンスプログラム30に含まれるライセンスプログラム本体32の一部であるアプリケーション認識プログラム32Aにより生成されるものである。したがって、ライセンスプログラムインストール処理を初めて行うときには、照合結果情報50はまだ生成されておらず、それゆえ照合結果情報50は記憶部25に記憶されていない。
【0064】
照合結果情報50が記憶部25に記憶されていないときには、アプリケーション実行用コンピュータ3の制御部26は、アプリケーション認識プログラム32Aに従い、ライセンスプログラム30が有するアプリケーション識別子33と、アプリケーションプログラム40が有するアプリケーション識別子43とを照合し(ステップS27)、アプリケーション識別子33とアプリケーション識別子43とが一致するか否かを示す情報を照合結果情報50として記憶部25に記憶する(ステップS28)。以上より、アプリケーション認識プログラム32Aは終了し、これによりライセンスプログラム本体32は終了する。
【0065】
続いて、アプリケーション実行用コンピュータ3の制御部26は、アプリケーション制御プログラム27に従い、インストール完了画面を表示部23に表示する(ステップS29)。
【0066】
(アプリケーションプログラム実行処理)
図6はアプリケーションプログラム実行処理を示している。アプリケーションプログラム実行処理は、アプリケーションプログラム40を実行する処理である。
【0067】
ユーザが、アプリケーション実行用コンピュータ3の操作部24を操作し、アプリケーションプログラム40を実行する旨の指示をアプリケーション実行用コンピュータ3に入力すると、アプリケーション実行用コンピュータ3の制御部26は、アプリケーションプログラム実行処理を開始する。
【0068】
図6に示すように、アプリケーションプログラム実行処理において、アプリケーション実行用コンピュータ3の制御部26は、まず、アプリケーション制御プログラム27に従い、ライセンスプログラム30を呼び出す(ステップS31)。これにより、ライセンスプログラム30が起動する。
【0069】
ライセンスプログラム30が起動すると、制御部26は、ライセンスプログラム30に従い、まず、起動インターフェース31を起動する。そして、制御部26は、起動インターフェース31に従い、ライセンスプログラム本体32を起動する(ステップS32)。
【0070】
続いて、アプリケーション実行用コンピュータ3の制御部26は、ライセンスプログラム本体32に従い、アプリケーション認識プログラム32Aを起動する。そして、制御部26は、アプリケーション認識プログラム32Aに従い、照合結果情報50が記憶部25に記憶されているかどうかを調べる。照合結果情報50は、上述したライセンスプログラムインストール処理において生成され、記憶部25に記憶される。したがって、ライセンスプログラムインストール処理を経てライセンスプログラム30がインストールされた場合には、照合結果情報50が記憶部25に記憶されている。
【0071】
照合結果情報50が記憶部25に記憶されている場合には、アプリケーション実行用コンピュータ3の制御部26は、アプリケーション認識プログラム32Aに従い、照合結果情報50を読み取り、アプリケーション識別子33とアプリケーション識別子43とが一致するかどうかを調べる(ステップS33)。照合結果情報50にはアプリケーション識別子33とアプリケーション識別子43とが一致するかどうかを示す情報が記録されている。したがって、アプリケーション識別子33とアプリケーション識別子43との照合を行うことなく、照合結果情報50を読み取るだけで、アプリケーション識別子33とアプリケーション識別子43とが一致するかどうかを迅速に調べることができる。
【0072】
この結果、アプリケーション識別子33とアプリケーション識別子43とが一致する場合には(ステップS34:YES)、アプリケーション実行用コンピュータ3の制御部26は、ライセンスプログラム本体32に従い、ライセンス確認処理プログラム32Bを起動する。そして、制御部26は、ライセンス確認処理プログラム32Bに従い、ライセンス確認処理を行う(ステップS35)。
【0073】
ライセンス確認処理は例えば次のように行われる。すなわち、プログラム提供用コンピュータ2のライセンス情報格納部13には、アプリケーションプログラム40に関するライセンス情報が格納されている。一方、ライセンス確認プログラム32Bの中にもアプリケーションプログラム40に関するライセンス情報が記録されている。さらに、ライセンス確認プログラム32Bの中には、プログラム提供用コンピュータ2のライセンス情報格納部13に格納された、アプリケーションプログラム40に関するライセンス情報の格納場所を指し示す情報(例えばURL)が記録されている。アプリケーション実行用コンピュータ3の制御部26は、ライセンス確認処理プログラム32Bに従い、通信部21を制御し、アプリケーション実行用コンピュータ3とプログラム提供用コンピュータ2との間の通信を確立する。そして、制御部26は、ライセンス確認処理プログラム32Bに従い、ライセンスプログラム30に関するライセンス情報の格納場所を指し示す情報を用いて、プログラム提供用コンピュータ2のライセンス情報格納部13に格納された、アプリケーションプログラム40に関するライセンス情報にアクセスし、このライセンス情報を読み取る。続いて、制御部26は、ライセンス確認処理プログラム32Bに従い、この読み取ったライセンス情報と、ライセンス確認プログラム32Bの中に記録されたアプリケーションプログラム40に関するライセンス情報とを照合し、アプリケーションプログラム40に関するライセンスがユーザにあるか否かを判断する。
【0074】
この判断の結果、アプリケーションプログラム40に関するライセンスがユーザにある場合には(ステップS36:YES)、アプリケーション実行用コンピュータ3の制御部26は、ライセンスプログラム本体32に従い、アプリケーション呼出プログラム32Cを起動する。そして、制御部26は、アプリケーション呼出プログラム32Cに従い、アプリケーションプログラム40を呼び出す(ステップS37)。これにより、アプリケーションプログラム40が起動する。なお、例えばアプリケーション呼出プログラム32Cには、アプリケーションプログラム40を配置するために予め設定された記憶部25内の所定のディレクトリ(フォルダ)名が記録されており、アプリケーション呼出プログラム32Cはこの所定のディレクトリ名を参照して、アプリケーションプログラム40の呼出を行う。
【0075】
アプリケーションプログラム40が起動すると、アプリケーション実行用コンピュータ3の制御部26は、アプリケーションプログラム40に従い、まず、接続インターフェース41を起動する。そして、制御部26は、接続インターフェース41に従い、アプリケーションプログラム本体42を起動する(ステップS38)。
【0076】
続いて、制御部26は、アプリケーションプログラム本体42に従い、特定の情報処理を実行する(ステップS39)。
【0077】
一方、ステップS34において、アプリケーション識別子33とアプリケーション識別子43とが一致しない場合(ステップS34:NO)、アプリケーション実行用コンピュータ3の制御部26は、ライセンスプログラム本体32に従い、ライセンス確認処理プログラム32Bもアプリケーション呼出プログラム32Cも起動せずに、ライセンスプログラム本体32を終了させる。これにより、アプリケーションプログラム40は起動しない。
【0078】
また、ステップS36において、アプリケーションプログラム40に関するライセンスがユーザにないと判断された場合には(ステップS36:NO)、アプリケーション実行用コンピュータ3の制御部26は、ライセンスプログラム本体32に従い、アプリケーション呼出プログラム32Cを起動せずに、ライセンスプログラム本体32を終了させる。これにより、アプリケーションプログラム40は実行されない。
【0079】
(ライセンスプログラムのアンインストールおよび再インストール)
他方、アプリケーション実行用コンピュータ3にインストールされたライセンスプログラム30は、アンインストールすることができる。すなわち、ユーザがアプリケーション実行用コンピュータ3の操作部24を操作し、ライセンスプログラムをアンインストールする旨の指示をアプリケーション実行用コンピュータ3に入力すると、アプリケーション実行用コンピュータ3の制御部26は、アプリケーション制御プログラム27に従い、ライセンスプログラム30および照合結果情報50を記憶部25から消去する。また、ライセンスプログラム30をアプリケーション実行用コンピュータ3からアンインストールした後に、上記ライセンスプログラムインストール処理を行うことにより、ライセンスプログラム30をアプリケーション実行用コンピュータ3に再びインストールすることができる。
【0080】
以上より、アプリケーション実行用コンピュータ3では、ライセンスプログラム30がアプリケーション制御プログラム27(オペレーションシステム)上で独立に取り扱われる。そして、ライセンスプログラム30は、アプリケーション制御プログラム27ともアプリケーションプログラム40とも別に、単独でインストールおよびアンインストールすることができる。これにより、アプリケーションプログラム40およびライセンスプログラム30をそれぞれアプリケーション実行用コンピュータ3にインストールした後に、アプリケーションプログラム40に関するライセンス形態が変更された場合には、形態変更後のライセンスの有無を確認することができるライセンス確認処理プログラムを備えた新たなライセンスプログラム30を再インストールするだけで、ユーザ(ライセンシ)によるアプリケーションプログラム40の使用を継続させることができる。すなわち、アプリケーションプログラム40に関するライセンス形態が変更された場合に、アプリケーションプログラム40の再インストールは不要であり、かつアプリケーション制御プログラム27の変更も必要ない。
【0081】
したがって、アプリケーション実行用コンピュータ3によれば、多様なライセンス形態またはライセンス形態の頻繁な変更に容易に対応することができる。これにより、ユーザに対してはアプリケーションプログラム40の使用に関する利便性の向上や負担の軽減を図ることができ、アプリケーションプログラム提供者に対してはアプリケーションプログラム40の提供サービスの自由度や品質を向上させることができる。
【0082】
また、アプリケーション実行用コンピュータ3では、ライセンスプログラム30のみがアプリケーションプログラム40を呼び出すことができる。これにより、アプリケーションプログラム40がアプリケーション実行用コンピュータ3にインストールされていても、ライセンスプログラム30がアプリケーション実行用コンピュータ3にインストールされていなければ、ユーザがアプリケーション実行用コンピュータ3を操作してアプリケーションプログラム40を呼び出すことができない。
【0083】
したがって、ライセンスを有しない者にはライセンスプログラム30を取得させないようにすれば、ライセンスがない者がアプリケーション実行用コンピュータ3を操作してアプリケーションプログラム40を呼び出すことを阻止することができ、アプリケーションプログラム40の不正使用防止を強化することができる。
【0084】
また、アプリケーション実行用コンピュータ3では、ライセンスプログラム30がアプリケーション識別子33を有し、アプリケーションプログラム40がアプリケーション識別子43を有し、ライセンスプログラム30がアプリケーション識別子33とアプリケーション識別子43とを互いに照合し、これによりアプリケーション実行用コンピュータ3にインストールされたアプリケーションプログラム40がライセンスの対象であることを認識する。これにより、ライセンスプログラム30によるアプリケーションプログラム40のライセンス確認処理、またはライセンスプログラム30によるアプリケーションプログラム40の呼出を容易かつ正確に行うことが可能になる。
【0085】
なお、上述した実施形態では、アプリケーションプログラム40およびライセンスプログラム30をアプリケーション実行用コンピュータ3にインストールするときに、これらのプログラムをプログラム提供用コンピュータ2からアプリケーション実行用コンピュータ3にダウンロードする場合を例にあげた。しかし、本発明はこれに限らない。例えば、図1に示すように、アプリケーションプログラム40をアプリケーション実行用コンピュータ3にインストールするときに、アプリケーションプログラム40が記録された光ディスク51またはUSBメモリ52からアプリケーション実行用コンピュータ3にアプリケーションプログラム40を転送してもよい。また、ライセンスプログラム30をアプリケーション実行用コンピュータ3にインストールするときには、ライセンスプログラム30が記録された他の光ディスク53または他のUSBメモリ54からアプリケーション実行用コンピュータ3にライセンスプログラム30を転送してもよい。
【0086】
また、上述した実施形態では、ライセンスプログラムインストール処理においてライセンスプログラム30によりアプリケーション識別子33とアプリケーション識別子43とを照合する場合を例にあげた。しかし、本発明はこれに限らない。例えばアプリケーションプログラムによりこれらの照合を行ってもよい。この場合には、図5に示すライセンスプログラムインストール処理のステップS27において、アプリケーション実行用コンピュータ3の制御部26は、ライセンスプログラム30に従ってアプリケーションプログラム40を呼び出し、ライセンスプログラム30に従ってアプリケーション識別子33をアプリケーションプログラム40に通知し、アプリケーション識別子33とアプリケーション識別子43との照合をアプリケーションプログラム40に依頼する。
【0087】
また、アプリケーションプログラム40により行われる情報処理は特に限定されない。また、アプリケーション実行用コンピュータ3は、パーソナルコンピュータに限らず、複写機、プリンタ、複合機、映像機器、家電機器、医療機器その他コンピュータが組み込まれた種々の装置ないしシステムでもよい。
【0088】
また、本発明は、請求の範囲および明細書全体から読み取るこのできる発明の要旨または思想に反しない範囲で適宜変更可能であり、そのような変更を伴うライセンス管理システムおよびライセンス管理プログラムもまた本発明の技術思想に含まれる。
【図面の簡単な説明】
【0089】
【図1】本発明のライセンス管理システムの実施形態であるアプリケーション実行用コンピュータを含むコンピュータネットワークシステムを示すブロック図である。
【図2】ライセンスプログラムの構造を示すブロック図である。
【図3】アプリケーションプログラムの構造を示すブロック図である。
【図4】アプリケーションプログラムインストール処理を示すフローチャートである。
【図5】ライセンスプログラムインストール処理を示すフローチャートである。
【図6】アプリケーションプログラム実行処理を示すフローチャートである。
【符号の説明】
【0090】
3 アプリケーション実行用コンピュータ(ライセンス管理システム)
27 アプリケーション制御プログラム(プラットフォーム)
30 ライセンスプログラム
31 起動インターフェース
32 ライセンスプログラム本体
32A アプリケーション認識プログラム
32B ライセンス確認処理プログラム
32C アプリケーション呼出プログラム
33 アプリケーション識別子(第1の識別情報)
40 アプリケーションプログラム
41 接続インターフェース
42 アプリケーションプログラム本体
43 アプリケーション識別子(第2の識別情報)

【特許請求の範囲】
【請求項1】
プラットフォーム上でそれぞれ動作可能なライセンス確認装置および情報処理装置を備えたライセンス管理システムであって、
前記ライセンス確認装置は、
プラットフォーム上で単独に取り扱うことが可能な装置であり、
前記情報処理装置のライセンスの有無を確認するライセンス確認手段と、
前記プラットフォームからの呼出に応じて前記ライセンス確認手段を起動させる第1の起動手段と、
前記ライセンス確認手段により前記ライセンスがあることが確認された場合に、前記情報処理装置を呼び出す呼出手段とを備え、
前記情報処理装置は、
特定の情報処理を実行する情報処理手段と、
前記ライセンス確認装置からの呼出のみに応じて前記情報処理手段を起動させる第2の起動手段とを備えていることを特徴とするライセンス管理システム。
【請求項2】
前記ライセンス確認装置はライセンスの対象を識別するための第1の識別情報を有し、前記情報処理装置は自己を識別するための第2の識別情報を有し、前記ライセンス確認装置または前記情報処理装置は前記第1の識別情報と前記第2の識別情報とを互いに照合することにより前記情報処理装置が前記ライセンスの対象であることを認識する認識手段を備えていることを特徴とする請求項1に記載のライセンス管理システム。
【請求項3】
プラットフォーム上で単独に取り扱うことが可能なライセンス確認装置としてコンピュータを機能させるためのライセンス管理プログラムであって、
前記コンピュータを、
前記プラットフォーム上で動作可能であり特定の情報処理を実行する情報処理装置のライセンスを確認するライセンス確認手段と、
前記プラットフォームからの呼出に応じて前記ライセンス確認手段を起動させる起動手段と、
前記ライセンス確認手段により前記ライセンスがあることが確認された場合に、前記情報処理装置を呼び出す呼出手段として機能させることを特徴とするライセンス管理プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2009−211471(P2009−211471A)
【公開日】平成21年9月17日(2009.9.17)
【国際特許分類】
【出願番号】特願2008−54518(P2008−54518)
【出願日】平成20年3月5日(2008.3.5)
【出願人】(000006150)京セラミタ株式会社 (13,173)
【Fターム(参考)】