説明

ライセンス管理システム、方法、ライセンスサーバ、移譲ライセンスサーバ、及び、プログラム

【課題】 ライセンス認証を安全に行うライセンス管理システムを提供する。
【解決手段】 ライセンスサーバ16は、契約ライセンス数及び使用中ライセンスを管理する。ライセンスサーバ16は、ユーザ端末17により、インターネット12上のジョブ実行装置11に対してジョブが投入されると、ジョブ実行装置11のライセンス認証に用いる移譲ライセンス鍵を、移譲ライセンス認証サーバ13に転送する。移譲ライセンス認証サーバ13は、転送された移譲ライセンス鍵を用いて、ジョブ実行装置11のライセンス認証を行う。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ライセンス管理システム、方法、ライセンスサーバ、移譲ライセンスサーバ、及び、プログラムに関し、更に詳しくは、アプリケーションのライセンスを使用する実行装置を固定しないフローティングライセンスを管理するライセンス管理システム及び方法に関する。また、本発明は、そのようなライセンス管理システム及び方法で使用されるライセンスサーバ、移譲ライセンスサーバ、及び、プログラムに関する。
【背景技術】
【0002】
フローティングライセンスと呼ばれる、アプリケーションのライセンスを使用するジョブ実行装置を固定しないライセンスがある(例えば特許文献1参照)。フローティングライセンス方式では、アプリケーションの同時実行数を、ユーザによって購入されたライセンス数に制限する。この方式では、購入されたライセンスの総数は、ライセンスサーバによって管理されており、ジョブ実行装置は、アプリケーション・ジョブの実行に際して、ライセンスサーバに、必要な数のライセンスを要求する。ライセンスサーバは、ライセンスの総数から割当て済みのライセンス数を引いた空きライセンス数を確認し、割当て可能なライセンスが残っているときには、ジョブ実行装置に、アプリケーション・ジョブの実行を許可する。
【0003】
【特許文献1】特開2005−18632号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
ここで、ライセンスサーバを一般のインターネットに直接接続すると、外部からの不正アクセスにより、ライセンスを無断使用されるおそれがある。このため、通常、ライセンスサーバは、インターネットからFW(ファイヤーウォール)でネットワーク的に遮断されたLAN(ローカル・エリア・ネットワーク)上に設置されている。また、通常、ジョブ実行装置は、ライセンスサーバに直接アクセス可能とするために、同じLANに接続されている。
【0005】
ところで、近年、インターネットを介してLANの外部に設置されたインターネット上の計算機資源を、動的にジョブ実行装置として活用することが求められている。インターネット上のジョブ実行装置でアプリケーションを実行する場合には、そのジョブ実行装置に、ライセンスサーバのIPアドレスに相当する情報を登録し、FWに、ライセンス認証に用いる通信プロトコルのポートを開ける設定を施す必要がある。しかし、動的に割り当てられる計算機資源上に、ライセンスサーバのIPアドレスや認証に用いるプロトコルのポート番号などの情報を置くことは、一時的であったとしても、ライセンス管理上好ましくない。また、並列計算などのアプリケーションで、多数のジョブ実行装置が単一のライセンスサーバへライセンス確認のための通信を行うと、ネットワークやライセンスサーバの負荷が上昇するという問題もある。
【0006】
本発明は、上記従来技術の問題点を解消し、ライセンスサーバが設置されたネットワーク外のジョブ実行装置のライセンス認証を、安全に行うことができるライセンス管理システム、方法、及び、プログラムを提供することを目的とする。
【0007】
また、本発明は、ライセンス認証時に、ライセンスサーバに過大な負荷がかかる事態を回避できるライセンス管理システム、方法、及び、プログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
上記目的を達成するために、本発明のライセンス管理システムは、契約ライセンス数の範囲内で、ジョブ実行装置によるアプリケーションの使用を許可するライセンス管理システムであって、契約ライセンスを管理するライセンスサーバと、前記ジョブ実行装置からのライセンス認証要求を受け付ける移譲ライセンスサーバとを備えており、前記ライセンスサーバは、前記ジョブ実行装置に対するアプリケーションのライセンス発行要求があると、当該アプリケーションの契約ライセンス数及び発行済みライセンス数を記憶するデータベースを参照し、ライセンス発行が可能か否かを判定するライセンス管理部と、該ライセンス管理部がライセンス発行を可能と判定すると、前記ジョブ実行装置のライセンス認証に用いる移譲ライセンス鍵を生成し、該生成した移譲ライセンス鍵を前記移譲ライセンスサーバに転送するライセンス鍵生成部とを備え、前記移譲ライセンスサーバは、前記ジョブ実行装置からライセンス認証要求を受け付けると、前記転送された移譲ライセンス鍵を記憶する記憶装置を参照してライセンス認証を行うライセンス認証部と、前記ジョブ実行装置による移譲ライセンス鍵の使用状況を監視し記憶するライセンス監視部とを備えることを特徴とする。
【0009】
本発明のライセンス管理方法は、契約ライセンスを管理するライセンスサーバと、ジョブ実行装置からのライセンス認証要求を受け付ける移譲ライセンスサーバとを用い、契約ライセンス数の範囲内で、ジョブ実行装置によるアプリケーションの使用を許可するライセンス管理方法であって、前記ライセンスサーバが、前記ジョブ実行装置に対するアプリケーションのライセンス発行要求を受信すると、当該アプリケーションの契約ライセンス数及び発行済みライセンス数を記憶するデータベースを参照し、ライセンス発行が可能か否かを判定するステップと、前記ライセンスサーバが、前記判定ステップでライセンス発行を可能と判定すると、前記ジョブ実行装置のライセンス認証に用いる移譲ライセンス鍵を生成し、該生成した移譲ライセンス鍵を前記移譲ライセンスサーバに転送するステップと、前記移譲ライセンスサーバが、前記ジョブ実行装置からライセンス認証要求を受け付けると、前記ライセンスサーバから転送された移譲ライセンス鍵を記憶する記憶装置を参照してライセンス認証を行うステップと、前記移譲ライセンスサーバが、前記ライセンス認証を行ったジョブ実行装置による移譲ライセンス鍵の使用状況を監視し記憶するステップとを有することを特徴とする。
【0010】
本発明のライセンス管理システム及び方法では、ライセンス発行が可能であるときには、ライセンスサーバは、移譲ライセンス鍵を生成してこれを移譲ライセンスサーバに転送し、移譲ライセンスサーバは、転送された移譲ライセンス鍵を用いてジョブ実行装置の認証を行う。このようにすることで、複数のジョブ実行装置を用いてアプリケーションを実行する際に、ライセンスサーバにライセンス認証が集中することを防ぐことができる。また、ジョブ実行装置に、ライセンスサーバに直接アクセスさせる必要がないため、ジョブ実行装置にライセンスサーバのアドレスを保存しておく必要がなく、ジョブ実行装置とライセンスサーバとの間で直接にライセンス認証を行う場合に比して、安全性を高めることができる。
【0011】
本発明のライセンス管理システムでは、前記ライセンス管理部は、要求するライセンス数を含むライセンス発行要求についてライセンス発行が可能と判定すると、該要求されたライセンス数を現在の発行済みライセンス数に加算して前記データベースを更新する構成を採用できる。また、本発明のライセンス管理方法では、前記ライセンス発行が可能か否かを判定するステップで、要求するライセンス数を含むライセンス発行要求についてライセンス発行が可能と判定すると、該要求されたライセンス数を現在の発行済みライセンス数に加算して前記データベースを更新する構成を採用できる。この場合、ライセンスサーバは、要求されたライセンス分の移譲ライセンス鍵を発行し、その分のライセンスを発行済みとして管理することで、ライセンスの現在の使用状況を管理できる。
【0012】
本発明のライセンス管理システムでは、前記移譲ライセンス鍵が前記要求されたライセンス数を含み、前記ライセンス認証部は、該要求されたライセンス数の範囲で、前記ジョブ実行装置に対してアプリケーションの使用を許可する構成を採用できる。また、本発明のライセンス管理方法は、前記移譲ライセンス鍵が前記要求されたライセンス数を含み、前記ライセンス発行が可能か否かを判定するステップでは、前記要求されたライセンス数の範囲で、前記ジョブ実行装置に対してアプリケーションの使用を許可する構成を採用できる。移譲ライセンスサーバは、例えばライセンス数を“5”とする移譲ライセンス鍵を用いて、5台のジョブ実行装置に対して、ライセンス認証を行う。このようにすることで、同じ移譲ライセンス鍵を用いて複数のジョブ実行装置の認証を行うことができる。
【0013】
本発明のライセンス管理システムでは、前記ライセンスサーバは、前記ライセンス監視部が記憶する移譲ライセンス鍵の使用状況を参照して、移譲ライセンスの使用状況を監視する移譲ライセンス監視部を更に備える構成を採用できる。また、本発明のライセンス管理方法は、前記ライセンスサーバが、前記移譲ライセンス鍵の使用状況を参照してライセンスの使用状況を監視するステップを更に有する構成を採用できる。この場合、ライセンスサーバは、転送した移譲ライセンス鍵の使用状況を監視することができる。
【0014】
本発明のライセンス管理システムでは、前記移譲ライセンス鍵が有効期限情報を含み、前記移譲ライセンス監視部は、前記有効期限が経過すると、前記ライセンス監視部が記憶する移譲ライセンス鍵の使用状況を参照して、当該移譲ライセンス鍵が使用中であるか否かを判断する構成を採用できる。また、本発明のライセンス管理方法は、前記移譲ライセンス鍵が有効期限情報を含み、前記移譲ライセンスの使用状況を監視するステップでは、前記有効期限が経過すると、移譲ライセンス鍵の使用状況を参照して、当該ライセンスが使用中であるか否かを判断する構成を採用できる。有効期限は、例えば、移譲ライセンス鍵の生成から、ジョブ実行装置によってライセンスが使用されるまでの猶予時間として設定する。有効期限の経過後に、移譲ライセンス鍵が使用されたか否かを調べることにより、ライセンスサーバは、転送した移譲ライセンス鍵が実際に使用されたか否かを調べることができる。
【0015】
本発明のライセンス管理システムでは、前記移譲ライセンス監視部は、前記移譲ライセンス鍵が使用中でないと判断すると、当該使用中でない移譲ライセンス鍵に対応するライセンス数を減算して前記データベースを更新する構成を採用できる。本発明のライセンス管理方法は、前記移譲ライセンスの使用状況を監視するステップでは、前記移譲ライセンス鍵が使用中でないと判断すると、当該使用中でない移譲ライセンス鍵に対応するライセンス数を減算して前記データベースを更新する構成を採用できる。この場合、ライセンスサーバは、使用されていない移譲ライセンス鍵を速やかに回収することができる。
【0016】
本発明のライセンス管理システム及び方法では、前記移譲ライセンスサーバ及びジョブ実行装置が第1のネットワークに接続され、前記ライセンスサーバ及び前記ライセンス発行要求を送信するユーザ端末が第2のネットワークに接続されていることが好ましい。第2のネットワークは、例えばインターネットとして構成され、第1のネットワークは、例えばインターネットにファイヤーウォールを介して接続されたLANとして構成される。LAN上のユーザ端末から、LAN外(インターネット上)のジョブ実行装置を用いてアプリケーションを実行する際に、ジョブ実行装置からLAN上のライセンスサーバにアクセスさせずに、インターネット上の移譲ライセンスサーバを用いてジョブ実行装置のライセンス認証を行うことで、ライセンス認証を安全に行うことができる。
【0017】
本発明のライセンスサーバは、ジョブ実行装置からのライセンス認証を行う移譲ライセンスサーバを用い、契約ライセンス数の範囲内で、ジョブ実行装置によるアプリケーションの使用を許可するライセンス管理システムに使用されるライセンスサーバであって、前記ジョブ実行装置に対するアプリケーションのライセンス発行要求があると、当該アプリケーションの契約ライセンス数及び発行済みライセンス数を記憶するデータベースを参照し、ライセンス発行が可能か否かを判定するライセンス管理部と、該ライセンス管理部がライセンス発行を可能と判定すると、前記ジョブ実行装置のライセンス認証に用いる移譲ライセンス鍵を生成し、該生成した移譲ライセンス鍵を前記移譲ライセンスサーバに転送するライセンス鍵生成部とを備えることを特徴とする。
【0018】
本発明のライセンスサーバは、前記移譲ライセンス鍵の使用状況を記憶する移譲ライセンスサーバの記憶装置を参照し、前記移譲ライセンスの使用状況を監視する移譲ライセンス監視部を更に備える構成を採用できる。
【0019】
本発明の移譲ライセンスサーバは、契約ライセンスを管理するライセンスサーバを用い、契約ライセンス数の範囲内でジョブ実行装置によるアプリケーションの使用を許可するライセンス管理システムに使用される移譲ライセンスサーバであって、前記ジョブ実行装置からライセンス認証要求を受け付けると、前記ライセンスサーバから転送された移譲ライセンス鍵であって、前記契約ライセンス数の範囲内で発行された移譲ライセンス鍵を記憶する記憶装置を参照してライセンス認証を行うライセンス認証部と、前記ジョブ実行装置による移譲ライセンス鍵の使用状況を監視し記憶するライセンス監視部とを備えることを特徴とする。
【0020】
本発明のプログラムは、ジョブ実行装置からのライセンス認証を行う移譲ライセンスサーバを用い、契約ライセンス数の範囲内でジョブ実行装置によるアプリケーションの使用を許可するライセンス管理システムに使用されるライセンスサーバのためのプログラムであって、前記ライセンスサーバに、前記ジョブ実行装置に対するアプリケーションのライセンス発行要求があると、当該アプリケーションの契約ライセンス数及び発行済みライセンス数を記憶するデータベースを参照し、ライセンス発行が可能か否かを判定する処理と、該判定処理でライセンス発行を可能と判定すると、前記ジョブ実行装置のライセンス認証に用いる移譲ライセンス鍵を生成し、該生成した移譲ライセンス鍵を前記移譲ライセンスサーバに転送する処理とを実行させることを特徴とする。
【0021】
本発明のプログラムは、前記ライセンスサーバに、前記移譲ライセンス鍵の使用状況を記憶する移譲ライセンスサーバの記憶装置を参照し、前記移譲ライセンスの使用状況を監視する処理を更に実行させる構成を採用できる。
【0022】
本発明の別の視点のプログラムは、契約ライセンスを管理するライセンスサーバを用い、契約ライセンス数の範囲内でジョブ実行装置によるアプリケーションの使用を許可するライセンス管理システムに使用される移譲ライセンスサーバのためのプログラムであって、前記移譲ライセンスサーバに、前記ジョブ実行装置からライセンス認証要求を受け付けると、前記ライセンスサーバから転送された移譲ライセンス鍵であって、前記契約ライセンス数の範囲内で発行された移譲ライセンス鍵を記憶する記憶装置を参照してライセンス認証を行う処理と、前記ジョブ実行装置による移譲ライセンス鍵の使用状況を監視し記憶する処理とを実行させることを特徴とする。
【発明の効果】
【0023】
本発明のライセンス管理システム、方法、ライセンスサーバ、移譲ライセンスサーバ、及び、プログラムでは、ライセンスを管理するライセンスサーバから移譲ライセンスサーバに移譲ライセンス鍵を転送し、ジョブ実行装置のライセンス認証を、移譲ライセンスサーバを用いて行う。これにより、複数のジョブ実行装置を用いてアプリケーションを実行する際に、ライセンスサーバにライセンス認証が集中することを防ぐことができる。また、ジョブ実行装置にライセンスサーバのアドレスを保存しておく必要がなく、ライセンス認証の安全性を高めることができる。
【発明を実施するための最良の形態】
【0024】
以下、図面を参照し、本発明の実施の形態を詳細に説明する。図1は、本発明の一実施形態のライセンス管理システムの構成を示している。ライセンス管理システム10は、ジョブ実行装置11、移譲ライセンス認証サーバ13、及び、ライセンスサーバ16を備える。ジョブ実行装置11及び移譲ライセンス認証サーバ13は、それぞれ、インターネット12に接続される。ライセンスサーバ16は、LAN15に接続される。FW14は、インターネット12とLAN15との間の通信の一部を遮断する。なお、図1では、インターネット12に移譲ライセンス認証サーバ13が1台だけ接続されているが、インターネット12には、複数の移譲ライセンス認証サーバ13を接続できる。
【0025】
ジョブ実行装置11及びユーザ端末17は、それぞれ、例えばパーソナルコンピュータ等のコンピュータとして構成される。ユーザ端末17は、ユーザ操作により、或いは、ユーザ端末17上で実行されるジョブスケジューラにより、ジョブ実行装置11にジョブを投入する。ライセンスサーバ16は、ジョブ実行装置11で実行されるアプリケーションのライセンスを管理する。移譲ライセンス認証サーバ13は、ライセンスサーバ16が設置されたLAN15よりも外側のインターネット12上のジョブ実行装置11のライセンス認証を行う。ライセンスサーバ16は、移譲ライセンス認証サーバ13とジョブ実行装置11との間のライセンス認証に用いられる移譲ライセンス鍵を生成し、これを移譲ライセンス認証サーバ13に転送する。移譲ライセンス認証サーバ13は、ライセンスサーバ16から転送された移譲ライセンス鍵を用いて、ジョブ実行装置11との間でライセンス認証を行う。
【0026】
図2は、ライセンスサーバ16の構成を示している。ライセンスサーバ16は、ライセンス要求受付部21、ライセンス管理部22、ライセンス管理DB23、移譲ライセンス生成部24、及び、移譲ライセンス監視部25を備える。ライセンスサーバ16は、具体的には、CPU、メモリ、ハードディスク、通信インタフェースを備えたコンピュータシステム上で、所定のプログラムを動作させることにより構築される。
【0027】
ユーザ端末17は、ジョブ実行装置11にジョブを投入する際に、ライセンスサーバ16にライセンス供与要求を送信する。ライセンス要求受付部21は、ユーザ端末17から送信されたライセンス供与要求を受け付け、これをライセンス管理部22に通知する。ライセンス管理部DB23には、供与可能な総ライセンス数や現在使用中のライセンス数が保持されている。ライセンス管理部22は、ライセンス管理DB23を参照し、要求された数のライセンス数が供与可能か否かを判定する。
【0028】
移譲ライセンス生成部24は、ライセンスの供与が可能な場合であって、ライセンスを要求するジョブが、ライセンスサーバ16が接続されているLAN15の外(FW14よりも外側)のジョブ実行装置11で実行される場合には、ライセンス認証に使用する移譲ライセンス鍵を生成し、生成した移譲ライセンス鍵を、移譲ライセンス認証サーバ13に転送する。移譲ライセンス監視部25は、移譲ライセンス認証サーバ13における移譲ライセンス鍵の状況を監視し、ライセンス管理部22を介して、ライセンス管理DB23に保存される使用中ライセンスの情報を更新する。
【0029】
図3は、移譲ライセンス認証サーバ13の構成を示している。移譲ライセンス認証サーバ13は、ライセンス要求通信部31、ライセンス情報管理部32、ライセンス監視部33、及び、ライセンスサーバ通信部34を備える。ライセンス情報管理部32は、ライセンスサーバ16から転送された移譲ライセンス鍵を保持する。ライセンス要求通信部31は、ジョブ実行装置11上で実行されるアプリケーションから、ライセンス確認要求を受け付ける。
【0030】
ライセンス監視部33は、ライセンス要求通信部31がライセンス確認要求を受け付けると、ライセンス情報管理部32に保持されたライセンス鍵を用いて、ジョブ実行装置11上で実行されるアプリケーションに対してライセンス認証を行う。ライセンスサーバ通信部34は、ライセンスサーバ16の移譲ライセンス監視部25との間で通信を行い、移譲ライセンス監視部25からのライセンス使用状況の問い合わせに応答する。
【0031】
図4は、ジョブ実行装置11上で実行されるアプリケーション実行のイメージを示している。アプリケーション・ソフトウェア40は、アプリケーションの実体であるアプリケーションプログラム42と、アプリケーション実行のライセンス認証を行なうライセンス認証通信部41から構成される。アプリケーションプログラム42は、実行開始時、或いは、ファイル入出力時などのタイミングで、ライセンス認証通信部41を通して、移譲ライセンス認証サーバ13と交信し、正当なライセンスが供与されているか確認する。
【0032】
図5は、移譲ライセンス鍵の具体例を示している。移譲ライセンス鍵50は、ライセンスの有効期限を示すライセンス許可有効期限フィールドF51と、ライセンス数を示すライセンス数情報フィールドF52と、認証に用いられるライセンス鍵フィールドF53とから構成される。ライセンス鍵フィールドF53は、例えば、移譲ライセンス認証サーバ13のIPアドレスとライセンス許可有効期限フィールドF51の情報とを含めることによって生成することができる。この移譲ライセンス鍵50は、ジョブ実行装置11に対して、1回限りのライセンス許可を与えるように構成されている。
【0033】
図6は、ジョブ実行装置11においてアプリケーション・ジョブを実行する際のライセンス管理システム10の動作手順を示している。ライセンス購入者(ユーザ)は、ライセンス管理システムの運用に先立って、購入ライセンスを管理するライセンスサーバ16を用意すると共に、ライセンスサーバ16が管理するライセンスを必要とするアプリケーション・ジョブを、LAN15外のインターネット12上のジョブ実行装置11で実行するための移譲ライセンス認証サーバ13を用意する。移譲ライセンス認証サーバ13を構成するために必要なプログラムは、ライセンスサーバ16又は図示しない別のサーバから送信することができる。この移譲ライセンス認証サーバ13のIPアドレス又はドメイン名は、確定しているものとする。
【0034】
ユーザ又はジョブスケジューラ(以下、ライセンス要求者とも呼ぶ)は、ライセンスサーバ16に対して、必要な数のライセンスを要求する(ステップS11)。具体的には、必要ライセンス数と、移譲ライセンス認証サーバ13のIPアドレスとを因数とするコマンドを、ライセンス要求受付部21に送信して、ライセンスを要求する。ライセンス管理部22は、ライセンス管理DB23を参照して、ライセンス要求受付部21が受け付けた数のライセンスが割り当てられるか否かを確認する(ステップS12)。
【0035】
ライセンス管理部22は、空きライセンスが不足しており、要求された数のライセンスが確保できないときには、エラーを返して、処理を終了する。ライセンス管理部22は、要求された数のライセンスが確保できる場合には、移譲ライセンス生成部24に、移譲ライセンス鍵の発行を要求し、ライセンス管理DB23の更新処理を行う(ステップS13)。移譲ライセンス生成部24は、移譲ライセンス鍵を生成すると、生成した移譲ライセンス鍵を、移譲ライセンス認証サーバ13に転送する(ステップS14)。移譲ライセンス鍵のライセンス許可有効期限フィールドF51(図5)は、例えば、移譲ライセンス鍵の生成時刻から5分後に設定される。また、ライセンス鍵フィールドF53は、移譲ライセンス認証サーバ13のIPアドレスを含めて生成する。
【0036】
移譲ライセンス認証サーバ13は、ステップS14で転送された移譲ライセンス鍵を、ライセンス情報管理部32に保存する。ライセンス情報管理部32に移譲ライセンス鍵が保存されることにより、ジョブ実行装置11のライセンス認証を行う準備が整う。ライセンス要求者は、ジョブ実行装置11に、アプリケーション・ソフトウェア40を配布し、ジョブの実行を開始させる。ジョブ実行装置11は、配布されたアプリケーション・ソフトウェア40を実行する。このとき、ライセンス認証通信部41は、コマンドライン又は環境変数から、接続すべき移譲ライセンス認証サーバ13のIPアドレスを取得し、移譲ライセンス認証サーバ13に、ライセンス取得要求を送信する。
【0037】
移譲ライセンス認証サーバ13は、ジョブ実行装置11上で実行されるアプリケーション・ソフトウェア40のライセンス認証通信部41から、ライセンス取得要求を受け取る。ライセンス監視部33は、ライセンス情報管理部32に保存された移譲ライセンス鍵を参照して、ライセンス取得要求を送信したジョブ実行装置11のライセンス認証を実行する。このライセンス認証の機構は、従来から実現されているアプリケーション認証システムと同様である。
【0038】
移譲ライセンス認証サーバ13は、ジョブ実行装置11からのライセンス取得要求が、移譲ライセンス鍵50(図5)のライセンス鍵フィールドF53に含まれるIPアドレスの移譲ライセンス認証サーバに対してされておらず、かつ、ライセンス許可有効期限フィールドF51に示す時刻までにライセンス取得要求がされなかった場合には、認証に失敗したと判断する。ジョブ実行装置11は、移譲ライセンス認証サーバ13での認証に成功すると、アプリケーションプログラム42の実行を開始する。
【0039】
ライセンス監視部33は、ジョブ実行装置11が、ライセンス認証に成功してアプリケーションプログラム42の実行を開始すると、ライセンスのステータスを使用中とする。ジョブ実行装置11は、アプリケーションプログラム42の処理を終了すると、移譲ライセンス認証サーバ13に、ライセンス開放通知を送信する。ライセンス監視部33は、ジョブ実行装置11からライセンス開放通知を受信すると、使用中であったライセンスを開放する。
【0040】
ライセンスサーバ16は、生成した移譲ライセンス鍵を移譲ライセンス認証サーバ13に転送すると、移譲ライセンス監視部25に、移譲ライセンス認証サーバ13の情報と、移譲ライセンス鍵の情報とを対応付けて登録し、その組み合わせに対して、ライセンス使用状況を監視するデーモンプロセスを発行して、移譲ライセンスに対して、監視スレッドを起動する。図7は、移譲ライセンスの監視動作の手順を示している。移譲ライセンス監視部25は、まず、移譲ライセンス鍵に設定した有効期限となるまで待機する(ステップS21)。その後、移譲ライセンス認証サーバ13のライセンスサーバ通信部34との間で通信を行い、移譲ライセンス鍵が開放されたか否かを問い合わせる(ステップS22)。
【0041】
移譲ライセンス監視部25は、移譲ライセンス鍵がまだ開放されていないとき、つまり、移譲ライセンス鍵のステータスが使用中のときには、所定時間だけ待機し(ステップS23)、所定時間の経過後、ステップS22に戻って、移譲ライセンス鍵が開放されたか否かを問い合わせる。移譲ライセンス監視部25は、移譲ライセンス鍵が開放された場合には、ライセンス管理部22にライセンス開放を通知する(ステップS24)。ライセンス管理部22は、ライセンス開放通知を受け取ると、開放されたライセンスを空きライセンスとしてライセンス管理DB23を更新する。
【0042】
本実施形態では、ライセンスサーバ16は、LAN15外のジョブ実行装置11の認証に用いられる移譲ライセンス鍵を生成して、これを移譲ライセンス認証サーバ13に転送する。ジョブ実行装置11は、移譲ライセンス認証サーバ13にアクセスし、移譲ライセンス認証サーバ13との間でライセンス認証を行う。このように、本実施形態では、ジョブ実行装置11は、ライセンス認証に際して、LAN15外部からライセンスサーバ16にアクセスする必要がないため、ジョブ実行装置11に、ライセンスサーバのIPアドレスや認証に用いるプロトコルのポート番号などの情報を置く必要がない。また、移譲ライセンス認証サーバ13がジョブ実行装置11のライセンス認証を行うことで、ライセンスサーバ16にライセンス認証が集中することを防ぐことができる。
【0043】
本実施形態では、移譲ライセンス鍵には有効期限が設定されており、移譲ライセンス鍵は、所定の時間だけ有効な形で発行される。ライセンスサーバ16は、図7に示す手順で、有効期限の経過後、移譲ライセンスが使用中であるか否かを確認し、移譲ライセンスが開放された状態であれば、ライセンス管理DB23を更新して、移譲された分のライセンスを使用可能な状態に戻す。このようにすることで、例えばジョブ実行装置のトラブル等により、ライセンスが使用されない場合には、有効期限の経過後、速やかにそのライセンスを回収して他のジョブ実行装置で使用可能とすることができ、ライセンスを適切に管理することができる。
【0044】
なお、上記実施形態では、ユーザ端末17により、ジョブ実行装置11にジョブを投入する例を示したが、これには限定されない。例えば、LAN15に、ジョブを投入するスケジューラが稼動する別のコンピュータを接続して、そのコンピュータにより、ジョブを投入してもよい。また、移譲ライセンス認証サーバ13を、インターネット12に接続された別のLAN上に設置し、その移譲ライセンス認証サーバ13を用いて、そのLAN上のジョブ実行装置11のライセンス認証を行う構成としてもよい。ライセンスサーバが複数のアプリケーションのライセンスを管理する場合には、アプリケーションごとにIDを割り当てて、そのIDと、総ライセンス数及び使用中ライセンス数とを対応付けて管理すればよい。
【0045】
以上、本発明をその好適な実施形態に基づいて説明したが、本発明のライセンス管理システム、方法、ライセンスサーバ、移譲ライセンスサーバ、及び、プログラムは、上記実施形態例にのみ限定されるものではなく、上記実施形態の構成から種々の修正及び変更を施したものも、本発明の範囲に含まれる。
【図面の簡単な説明】
【0046】
【図1】本発明の一実施形態のライセンス管理システムの構成を示すブロック図。
【図2】ライセンスサーバ16の構成を示すブロック図。
【図3】移譲ライセンス認証サーバ13の構成を示すブロック図。
【図4】ジョブ実行装置11上で実行されるアプリケーション実行のイメージを示すブロック図。
【図5】移譲ライセンス鍵の具体例を示す図。
【図6】ジョブ実行装置11においてアプリケーション・ジョブを実行する際のライセンス管理システム10の動作手順を示すフローチャート。
【図7】移譲ライセンスの監視動作の手順を示すフローチャート。
【符号の説明】
【0047】
11:ジョブ実行装置
12:インターネット
13:移譲ライセンス認証サーバ
14:ファイヤーウォール
15:LAN
16:ライセンスサーバ
17:ユーザ端末
21:ライセンス要求受付部
22:ライセンス管理部22
23:ライセンス管理DB
24:移譲ライセンス生成部
25:移譲ライセンス監視部
31:ライセンス要求通信部
32:ライセンス情報管理部
33:ライセンス監視部
34:ライセンスサーバ通信部

【特許請求の範囲】
【請求項1】
契約ライセンス数の範囲内で、ジョブ実行装置によるアプリケーションの使用を許可するライセンス管理システムであって、
契約ライセンスを管理するライセンスサーバと、前記ジョブ実行装置からのライセンス認証要求を受け付ける移譲ライセンスサーバとを備えており、
前記ライセンスサーバは、前記ジョブ実行装置に対するアプリケーションのライセンス発行要求があると、当該アプリケーションの契約ライセンス数及び発行済みライセンス数を記憶するデータベースを参照し、ライセンス発行が可能か否かを判定するライセンス管理部と、該ライセンス管理部がライセンス発行を可能と判定すると、前記ジョブ実行装置のライセンス認証に用いる移譲ライセンス鍵を生成し、該生成した移譲ライセンス鍵を前記移譲ライセンスサーバに転送するライセンス鍵生成部とを備え、
前記移譲ライセンスサーバは、前記ジョブ実行装置からライセンス認証要求を受け付けると、前記転送された移譲ライセンス鍵を記憶する記憶装置を参照してライセンス認証を行うライセンス認証部と、前記ジョブ実行装置による移譲ライセンス鍵の使用状況を監視し記憶するライセンス監視部とを備えることを特徴とするライセンス管理システム。
【請求項2】
前記ライセンス管理部は、要求するライセンス数を含むライセンス発行要求についてライセンス発行が可能と判定すると、該要求されたライセンス数を現在の発行済みライセンス数に加算して前記データベースを更新する、請求項1に記載のライセンス管理システム。
【請求項3】
前記移譲ライセンス鍵が前記要求されたライセンス数を含み、前記ライセンス認証部は、該要求されたライセンス数の範囲で、前記ジョブ実行装置に対してアプリケーションの使用を許可する、請求項2に記載のライセンス管理システム。
【請求項4】
前記ライセンスサーバは、前記ライセンス監視部が記憶する移譲ライセンス鍵の使用状況を参照して、移譲ライセンスの使用状況を監視する移譲ライセンス監視部を更に備える、請求項1〜3の何れか一に記載のライセンス管理システム。
【請求項5】
前記移譲ライセンス鍵が有効期限情報を含み、前記移譲ライセンス監視部は、前記有効期限が経過すると、前記ライセンス監視部が記憶する移譲ライセンス鍵の使用状況を参照して、当該移譲ライセンス鍵が使用中であるか否かを判断する、請求項4に記載のライセンス管理システム。
【請求項6】
前記移譲ライセンス監視部は、前記移譲ライセンス鍵が使用中でないと判断すると、当該使用中でない移譲ライセンス鍵に対応するライセンス数を減算して前記データベースを更新する、請求項5に記載のライセンス管理システム。
【請求項7】
前記移譲ライセンスサーバ及びジョブ実行装置が第1のネットワークに接続され、前記ライセンスサーバ及び前記ライセンス発行要求を送信するユーザ端末が第2のネットワークに接続されている、請求項1〜6の何れか一に記載のライセンス管理システム。
【請求項8】
契約ライセンスを管理するライセンスサーバと、ジョブ実行装置からのライセンス認証要求を受け付ける移譲ライセンスサーバとを用い、契約ライセンス数の範囲内で、ジョブ実行装置によるアプリケーションの使用を許可するライセンス管理方法であって、
前記ライセンスサーバが、前記ジョブ実行装置に対するアプリケーションのライセンス発行要求を受信すると、当該アプリケーションの契約ライセンス数及び発行済みライセンス数を記憶するデータベースを参照し、ライセンス発行が可能か否かを判定するステップと、
前記ライセンスサーバが、前記判定ステップでライセンス発行を可能と判定すると、前記ジョブ実行装置のライセンス認証に用いる移譲ライセンス鍵を生成し、該生成した移譲ライセンス鍵を前記移譲ライセンスサーバに転送するステップと、
前記移譲ライセンスサーバが、前記ジョブ実行装置からライセンス認証要求を受け付けると、前記ライセンスサーバから転送された移譲ライセンス鍵を記憶する記憶装置を参照してライセンス認証を行うステップと、
前記移譲ライセンスサーバが、前記ライセンス認証を行ったジョブ実行装置による移譲ライセンス鍵の使用状況を監視し記憶するステップとを有することを特徴とするライセンス管理方法。
【請求項9】
前記ライセンス発行が可能か否かを判定するステップで、要求するライセンス数を含むライセンス発行要求についてライセンス発行が可能と判定すると、該要求されたライセンス数を現在の発行済みライセンス数に加算して前記データベースを更新する、請求項8に記載のライセンス管理方法。
【請求項10】
前記移譲ライセンス鍵が前記要求されたライセンス数を含み、前記ライセンス発行が可能か否かを判定するステップでは、前記要求されたライセンス数の範囲で、前記ジョブ実行装置に対してアプリケーションの使用を許可する、請求項9記載のライセンス管理方法。
【請求項11】
前記ライセンスサーバが、前記移譲ライセンス鍵の使用状況を参照してライセンスの使用状況を監視するステップを更に有する、請求項8〜10の何れか一に記載のライセンス管理方法。
【請求項12】
前記移譲ライセンス鍵が有効期限情報を含み、前記移譲ライセンスの使用状況を監視するステップでは、前記有効期限が経過すると、移譲ライセンス鍵の使用状況を参照して、当該ライセンスが使用中であるか否かを判断する、請求項11に記載のライセンス管理方法。
【請求項13】
前記移譲ライセンスの使用状況を監視するステップでは、前記移譲ライセンス鍵が使用中でないと判断すると、当該使用中でない移譲ライセンス鍵に対応するライセンス数を減算して前記データベースを更新する、請求項12に記載のライセンス管理方法。
【請求項14】
前記移譲ライセンスサーバ及びジョブ実行装置が第1のネットワークに接続され、前記ライセンスサーバ及び前記ライセンス発行要求を送信するユーザ端末が第2のネットワークに接続されている、請求項8〜13の何れか一に記載のライセンス管理方法。
【請求項15】
ジョブ実行装置からのライセンス認証を行う移譲ライセンスサーバを用い、契約ライセンス数の範囲内で、ジョブ実行装置によるアプリケーションの使用を許可するライセンス管理システムに使用されるライセンスサーバであって、
前記ジョブ実行装置に対するアプリケーションのライセンス発行要求があると、当該アプリケーションの契約ライセンス数及び発行済みライセンス数を記憶するデータベースを参照し、ライセンス発行が可能か否かを判定するライセンス管理部と、該ライセンス管理部がライセンス発行を可能と判定すると、前記ジョブ実行装置のライセンス認証に用いる移譲ライセンス鍵を生成し、該生成した移譲ライセンス鍵を前記移譲ライセンスサーバに転送するライセンス鍵生成部とを備えることを特徴とするライセンスサーバ。
【請求項16】
前記移譲ライセンス鍵の使用状況を記憶する移譲ライセンスサーバの記憶装置を参照し、前記移譲ライセンスの使用状況を監視する移譲ライセンス監視部を更に備える、請求項15に記載のライセンスサーバ。
【請求項17】
契約ライセンスを管理するライセンスサーバを用い、契約ライセンス数の範囲内でジョブ実行装置によるアプリケーションの使用を許可するライセンス管理システムに使用される移譲ライセンスサーバであって、
前記ジョブ実行装置からライセンス認証要求を受け付けると、前記ライセンスサーバから転送された移譲ライセンス鍵であって、前記契約ライセンス数の範囲内で発行された移譲ライセンス鍵を記憶する記憶装置を参照してライセンス認証を行うライセンス認証部と、前記ジョブ実行装置による移譲ライセンス鍵の使用状況を監視し記憶するライセンス監視部とを備えることを特徴とする移譲ライセンスサーバ。
【請求項18】
ジョブ実行装置からのライセンス認証を行う移譲ライセンスサーバを用い、契約ライセンス数の範囲内でジョブ実行装置によるアプリケーションの使用を許可するライセンス管理システムに使用されるライセンスサーバのためのプログラムであって、前記ライセンスサーバに、
前記ジョブ実行装置に対するアプリケーションのライセンス発行要求があると、当該アプリケーションの契約ライセンス数及び発行済みライセンス数を記憶するデータベースを参照し、ライセンス発行が可能か否かを判定する処理と、該判定処理でライセンス発行を可能と判定すると、前記ジョブ実行装置のライセンス認証に用いる移譲ライセンス鍵を生成し、該生成した移譲ライセンス鍵を前記移譲ライセンスサーバに転送する処理とを実行させることを特徴とするプログラム。
【請求項19】
前記ライセンスサーバに、前記移譲ライセンス鍵の使用状況を記憶する移譲ライセンスサーバの記憶装置を参照し、前記移譲ライセンスの使用状況を監視する処理を更に実行させる、請求項18に記載のプログラム。
【請求項20】
契約ライセンスを管理するライセンスサーバを用い、契約ライセンス数の範囲内でジョブ実行装置によるアプリケーションの使用を許可するライセンス管理システムに使用される移譲ライセンスサーバのためのプログラムであって、前記移譲ライセンスサーバに、
前記ジョブ実行装置からライセンス認証要求を受け付けると、前記ライセンスサーバから転送された移譲ライセンス鍵であって、前記契約ライセンス数の範囲内で発行された移譲ライセンス鍵を記憶する記憶装置を参照してライセンス認証を行う処理と、前記ジョブ実行装置による移譲ライセンス鍵の使用状況を監視し記憶する処理とを実行させることを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate