(57)【特許請求の範囲】
【請求項１】
契約ライセンス数の範囲内で、ジョブ実行装置によるアプリケーションの使用を許可するライセンス管理システムであって、
契約ライセンスを管理するライセンスサーバと、前記ジョブ実行装置からのライセンス認証要求を受け付ける移譲ライセンスサーバとを備えており、
前記ジョブ実行装置と前記移譲ライセンスサーバはインターネットに接続され、前記ライセンスサーバはインターネットにファイヤウォールを介して接続されたＬＡＮに接続されており、
前記ライセンスサーバは、前記ジョブ実行装置に対するアプリケーションのライセンス発行要求があると、当該アプリケーションの契約ライセンス数及び発行済みライセンス数を記憶するデータベースを参照し、ライセンス発行が可能か否かを判定するライセンス管理部と、該ライセンス管理部がライセンス発行を可能と判定すると、前記ジョブ実行装置のライセンス認証に用いる移譲ライセンス鍵を生成し、該生成した移譲ライセンス鍵を前記移譲ライセンスサーバに転送するライセンス鍵生成部とを備え、
前記移譲ライセンスサーバは、前記ジョブ実行装置からライセンス認証要求を受け付けると、前記転送された移譲ライセンス鍵を記憶する記憶装置を参照してライセンス認証を行うライセンス認証部と、前記ジョブ実行装置による移譲ライセンス鍵の使用状況を監視し記憶するライセンス監視部とを備えることを特徴とするライセンス管理システム。
【請求項２】
前記ライセンス管理部は、要求するライセンス数を含むライセンス発行要求についてライセンス発行が可能と判定すると、該要求されたライセンス数を現在の発行済みライセンス数に加算して前記データベースを更新する、請求項１に記載のライセンス管理システム。
【請求項３】
前記移譲ライセンス鍵が前記要求されたライセンス数を含み、前記ライセンス認証部は、該要求されたライセンス数の範囲で、前記ジョブ実行装置に対してアプリケーションの使用を許可する、請求項２に記載のライセンス管理システム。
【請求項４】
前記ライセンスサーバは、前記ライセンス監視部が記憶する移譲ライセンス鍵の使用状況を参照して、移譲ライセンスの使用状況を監視する移譲ライセンス監視部を更に備える、請求項１〜３の何れか一に記載のライセンス管理システム。
【請求項５】
前記移譲ライセンス鍵が有効期限情報を含み、前記移譲ライセンス監視部は、前記有効期限が経過すると、前記ライセンス監視部が記憶する移譲ライセンス鍵の使用状況を参照して、当該移譲ライセンス鍵が使用中であるか否かを判断する、請求項４に記載のライセンス管理システム。
【請求項６】
前記移譲ライセンス監視部は、前記移譲ライセンス鍵が使用中でないと判断すると、当該使用中でない移譲ライセンス鍵に対応するライセンス数を減算して前記データベースを更新する、請求項５に記載のライセンス管理システム。
【請求項７】
前記移譲ライセンスサーバ及びジョブ実行装置が第１のネットワークに接続され、前記ライセンスサーバ及び前記ライセンス発行要求を送信するユーザ端末が第２のネットワークに接続されている、請求項１〜６の何れか一に記載のライセンス管理システム。
【請求項８】
契約ライセンスを管理するライセンスサーバと、ジョブ実行装置からのライセンス認証要求を受け付ける移譲ライセンスサーバとを用い、契約ライセンス数の範囲内で、ジョブ実行装置によるアプリケーションの使用を許可するライセンス管理方法であって、
前記ジョブ実行装置と前記移譲ライセンスサーバはインターネットに接続され、前記ライセンスサーバはインターネットにファイヤウォールを介して接続されたＬＡＮに接続されており、
前記ライセンスサーバが、前記ジョブ実行装置に対するアプリケーションのライセンス発行要求を受信すると、当該アプリケーションの契約ライセンス数及び発行済みライセンス数を記憶するデータベースを参照し、ライセンス発行が可能か否かを判定するステップと、
前記ライセンスサーバが、前記判定ステップでライセンス発行を可能と判定すると、前記ジョブ実行装置のライセンス認証に用いる移譲ライセンス鍵を生成し、該生成した移譲ライセンス鍵を前記移譲ライセンスサーバに転送するステップと、
前記移譲ライセンスサーバが、前記ジョブ実行装置からライセンス認証要求を受け付けると、前記ライセンスサーバから転送された移譲ライセンス鍵を記憶する記憶装置を参照してライセンス認証を行うステップと、
前記移譲ライセンスサーバが、前記ライセンス認証を行ったジョブ実行装置による移譲ライセンス鍵の使用状況を監視し記憶するステップとを有することを特徴とするライセンス管理方法。
【請求項９】
前記ライセンス発行が可能か否かを判定するステップで、要求するライセンス数を含むライセンス発行要求についてライセンス発行が可能と判定すると、該要求されたライセンス数を現在の発行済みライセンス数に加算して前記データベースを更新する、請求項８に記載のライセンス管理方法。
【請求項１０】
前記移譲ライセンス鍵が前記要求されたライセンス数を含み、前記ライセンス発行が可能か否かを判定するステップでは、前記要求されたライセンス数の範囲で、前記ジョブ実行装置に対してアプリケーションの使用を許可する、請求項９記載のライセンス管理方法。
【請求項１１】
前記ライセンスサーバが、前記移譲ライセンス鍵の使用状況を参照してライセンスの使用状況を監視するステップを更に有する、請求項８〜１０の何れか一に記載のライセンス管理方法。
【請求項１２】
前記移譲ライセンス鍵が有効期限情報を含み、前記移譲ライセンスの使用状況を監視するステップでは、前記有効期限が経過すると、移譲ライセンス鍵の使用状況を参照して、当該ライセンスが使用中であるか否かを判断する、請求項１１に記載のライセンス管理方法。
【請求項１３】
前記移譲ライセンスの使用状況を監視するステップでは、前記移譲ライセンス鍵が使用中でないと判断すると、当該使用中でない移譲ライセンス鍵に対応するライセンス数を減算して前記データベースを更新する、請求項１２に記載のライセンス管理方法。
【請求項１４】
前記移譲ライセンスサーバ及びジョブ実行装置が第１のネットワークに接続され、前記ライセンスサーバ及び前記ライセンス発行要求を送信するユーザ端末が第２のネットワークに接続されている、請求項８〜１３の何れか一に記載のライセンス管理方法。
【請求項１５】
ジョブ実行装置と移譲ライセンスサーバはインターネットに接続されている構成において、
前記ジョブ実行装置からのライセンス認証を行う前記移譲ライセンスサーバを用い、契約ライセンス数の範囲内で、前記ジョブ実行装置によるアプリケーションの使用を許可するライセンス管理システムに使用される、インターネットにファイヤウォールを介して接続されたＬＡＮに接続されたライセンスサーバであって、
前記ジョブ実行装置に対するアプリケーションのライセンス発行要求があると、当該アプリケーションの契約ライセンス数及び発行済みライセンス数を記憶するデータベースを参照し、ライセンス発行が可能か否かを判定するライセンス管理部と、該ライセンス管理部がライセンス発行を可能と判定すると、前記ジョブ実行装置のライセンス認証に用いる移譲ライセンス鍵を生成し、該生成した移譲ライセンス鍵を前記移譲ライセンスサーバに転送するライセンス鍵生成部とを備えることを特徴とするライセンスサーバ。
【請求項１６】
前記移譲ライセンス鍵の使用状況を記憶する移譲ライセンスサーバの記憶装置を参照し、前記移譲ライセンスの使用状況を監視する移譲ライセンス監視部を更に備える、請求項１５に記載のライセンスサーバ。
【請求項１７】
ジョブ実行装置はインターネットに接続され、ライセンスサーバはインターネットにファイヤウォールを介して接続されたＬＡＮに接続されている構成において、
契約ライセンスを管理する前記ライセンスサーバを用い、契約ライセンス数の範囲内で前記ジョブ実行装置によるアプリケーションの使用を許可するライセンス管理システムに使用される、インターネットに接続された移譲ライセンスサーバであって、
前記ジョブ実行装置からライセンス認証要求を受け付けると、前記ライセンスサーバから転送された移譲ライセンス鍵であって、前記契約ライセンス数の範囲内で発行された移譲ライセンス鍵を記憶する記憶装置を参照してライセンス認証を行うライセンス認証部と、前記ジョブ実行装置による移譲ライセンス鍵の使用状況を監視し記憶するライセンス監視部とを備えることを特徴とする移譲ライセンスサーバ。
【請求項１８】
ジョブ実行装置と移譲ライセンスサーバはインターネットに接続されている構成において、
前記ジョブ実行装置からのライセンス認証を行う前記移譲ライセンスサーバを用い、契約ライセンス数の範囲内で前記ジョブ実行装置によるアプリケーションの使用を許可するライセンス管理システムに使用される、インターネットにファイヤウォールを介して接続されたＬＡＮに接続されたライセンスサーバのためのプログラムであって、前記ライセンスサーバに、
前記ジョブ実行装置に対するアプリケーションのライセンス発行要求があると、当該アプリケーションの契約ライセンス数及び発行済みライセンス数を記憶するデータベースを参照し、ライセンス発行が可能か否かを判定する処理と、該判定処理でライセンス発行を可能と判定すると、前記ジョブ実行装置のライセンス認証に用いる移譲ライセンス鍵を生成し、該生成した移譲ライセンス鍵を前記移譲ライセンスサーバに転送する処理とを実行させることを特徴とするプログラム。
【請求項１９】
前記ライセンスサーバに、前記移譲ライセンス鍵の使用状況を記憶する移譲ライセンスサーバの記憶装置を参照し、前記移譲ライセンスの使用状況を監視する処理を更に実行させる、請求項１８に記載のプログラム。
【請求項２０】
ジョブ実行装置はインターネットに接続され、ライセンスサーバはインターネットにファイヤウォールを介して接続されたＬＡＮに接続されている構成において、
契約ライセンスを管理する前記ライセンスサーバを用い、契約ライセンス数の範囲内で前記ジョブ実行装置によるアプリケーションの使用を許可するライセンス管理システムに使用される、インターネットに接続された移譲ライセンスサーバのためのプログラムであって、前記移譲ライセンスサーバに、
前記ジョブ実行装置からライセンス認証要求を受け付けると、前記ライセンスサーバから転送された移譲ライセンス鍵であって、前記契約ライセンス数の範囲内で発行された移譲ライセンス鍵を記憶する記憶装置を参照してライセンス認証を行う処理と、前記ジョブ実行装置による移譲ライセンス鍵の使用状況を監視し記憶する処理とを実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ライセンス管理システム、方法、ライセンスサーバ、移譲ライセンスサーバ、及び、プログラムに関し、更に詳しくは、アプリケーションのライセンスを使用する実行装置を固定しないフローティングライセンスを管理するライセンス管理システム及び方法に関する。また、本発明は、そのようなライセンス管理システム及び方法で使用されるライセンスサーバ、移譲ライセンスサーバ、及び、プログラムに関する。
【背景技術】
【０００２】
フローティングライセンスと呼ばれる、アプリケーションのライセンスを使用するジョブ実行装置を固定しないライセンスがある（例えば特許文献１参照）。フローティングライセンス方式では、アプリケーションの同時実行数を、ユーザによって購入されたライセンス数に制限する。この方式では、購入されたライセンスの総数は、ライセンスサーバによって管理されており、ジョブ実行装置は、アプリケーション・ジョブの実行に際して、ライセンスサーバに、必要な数のライセンスを要求する。ライセンスサーバは、ライセンスの総数から割当て済みのライセンス数を引いた空きライセンス数を確認し、割当て可能なライセンスが残っているときには、ジョブ実行装置に、アプリケーション・ジョブの実行を許可する。
【０００３】
【特許文献１】特開２００５−１８６３２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ここで、ライセンスサーバを一般のインターネットに直接接続すると、外部からの不正アクセスにより、ライセンスを無断使用されるおそれがある。このため、通常、ライセンスサーバは、インターネットからＦＷ（ファイヤーウォール）でネットワーク的に遮断されたＬＡＮ（ローカル・エリア・ネットワーク）上に設置されている。また、通常、ジョブ実行装置は、ライセンスサーバに直接アクセス可能とするために、同じＬＡＮに接続されている。
【０００５】
ところで、近年、インターネットを介してＬＡＮの外部に設置されたインターネット上の計算機資源を、動的にジョブ実行装置として活用することが求められている。インターネット上のジョブ実行装置でアプリケーションを実行する場合には、そのジョブ実行装置に、ライセンスサーバのＩＰアドレスに相当する情報を登録し、ＦＷに、ライセンス認証に用いる通信プロトコルのポートを開ける設定を施す必要がある。しかし、動的に割り当てられる計算機資源上に、ライセンスサーバのＩＰアドレスや認証に用いるプロトコルのポート番号などの情報を置くことは、一時的であったとしても、ライセンス管理上好ましくない。また、並列計算などのアプリケーションで、多数のジョブ実行装置が単一のライセンスサーバへライセンス確認のための通信を行うと、ネットワークやライセンスサーバの負荷が上昇するという問題もある。
【０００６】
本発明は、上記従来技術の問題点を解消し、ライセンスサーバが設置されたネットワーク外のジョブ実行装置のライセンス認証を、安全に行うことができるライセンス管理システム、方法、及び、プログラムを提供することを目的とする。
【０００７】
また、本発明は、ライセンス認証時に、ライセンスサーバに過大な負荷がかかる事態を回避できるライセンス管理システム、方法、及び、プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明のライセンス管理システムは、契約ライセンス数の範囲内で、ジョブ実行装置によるアプリケーションの使用を許可するライセンス管理システムであって、契約ライセンスを管理するライセンスサーバと、前記ジョブ実行装置からのライセンス認証要求を受け付ける移譲ライセンスサーバとを備えており、前記ジョブ実行装置と前記移譲ライセンスサーバはインターネットに接続され、前記ライセンスサーバはインターネットにファイヤウォールを介して接続されたＬＡＮに接続されており、前記ライセンスサーバは、前記ジョブ実行装置に対するアプリケーションのライセンス発行要求があると、当該アプリケーションの契約ライセンス数及び発行済みライセンス数を記憶するデータベースを参照し、ライセンス発行が可能か否かを判定するライセンス管理部と、該ライセンス管理部がライセンス発行を可能と判定すると、前記ジョブ実行装置のライセンス認証に用いる移譲ライセンス鍵を生成し、該生成した移譲ライセンス鍵を前記移譲ライセンスサーバに転送するライセンス鍵生成部とを備え、前記移譲ライセンスサーバは、前記ジョブ実行装置からライセンス認証要求を受け付けると、前記転送された移譲ライセンス鍵を記憶する記憶装置を参照してライセンス認証を行うライセンス認証部と、前記ジョブ実行装置による移譲ライセンス鍵の使用状況を監視し記憶するライセンス監視部とを備えることを特徴とする。
【０００９】
本発明のライセンス管理方法は、契約ライセンスを管理するライセンスサーバと、ジョブ実行装置からのライセンス認証要求を受け付ける移譲ライセンスサーバとを用い、契約ライセンス数の範囲内で、ジョブ実行装置によるアプリケーションの使用を許可するライセンス管理方法であって、前記ジョブ実行装置と前記移譲ライセンスサーバはインターネットに接続され、前記ライセンスサーバはインターネットにファイヤウォールを介して接続されたＬＡＮに接続されており、前記ライセンスサーバが、前記ジョブ実行装置に対するアプリケーションのライセンス発行要求を受信すると、当該アプリケーションの契約ライセンス数及び発行済みライセンス数を記憶するデータベースを参照し、ライセンス発行が可能か否かを判定するステップと、前記ライセンスサーバが、前記判定ステップでライセンス発行を可能と判定すると、前記ジョブ実行装置のライセンス認証に用いる移譲ライセンス鍵を生成し、該生成した移譲ライセンス鍵を前記移譲ライセンスサーバに転送するステップと、前記移譲ライセンスサーバが、前記ジョブ実行装置からライセンス認証要求を受け付けると、前記ライセンスサーバから転送された移譲ライセンス鍵を記憶する記憶装置を参照してライセンス認証を行うステップと、前記移譲ライセンスサーバが、前記ライセンス認証を行ったジョブ実行装置による移譲ライセンス鍵の使用状況を監視し記憶するステップとを有することを特徴とする。
【００１０】
本発明のライセンス管理システム及び方法では、ライセンス発行が可能であるときには、ライセンスサーバは、移譲ライセンス鍵を生成してこれを移譲ライセンスサーバに転送し、移譲ライセンスサーバは、転送された移譲ライセンス鍵を用いてジョブ実行装置の認証を行う。このようにすることで、複数のジョブ実行装置を用いてアプリケーションを実行する際に、ライセンスサーバにライセンス認証が集中することを防ぐことができる。また、ジョブ実行装置に、ライセンスサーバに直接アクセスさせる必要がないため、ジョブ実行装置にライセンスサーバのアドレスを保存しておく必要がなく、ジョブ実行装置とライセンスサーバとの間で直接にライセンス認証を行う場合に比して、安全性を高めることができる。
【００１１】
本発明のライセンス管理システムでは、前記ライセンス管理部は、要求するライセンス数を含むライセンス発行要求についてライセンス発行が可能と判定すると、該要求されたライセンス数を現在の発行済みライセンス数に加算して前記データベースを更新する構成を採用できる。また、本発明のライセンス管理方法では、前記ライセンス発行が可能か否かを判定するステップで、要求するライセンス数を含むライセンス発行要求についてライセンス発行が可能と判定すると、該要求されたライセンス数を現在の発行済みライセンス数に加算して前記データベースを更新する構成を採用できる。この場合、ライセンスサーバは、要求されたライセンス分の移譲ライセンス鍵を発行し、その分のライセンスを発行済みとして管理することで、ライセンスの現在の使用状況を管理できる。
【００１２】
本発明のライセンス管理システムでは、前記移譲ライセンス鍵が前記要求されたライセンス数を含み、前記ライセンス認証部は、該要求されたライセンス数の範囲で、前記ジョブ実行装置に対してアプリケーションの使用を許可する構成を採用できる。また、本発明のライセンス管理方法は、前記移譲ライセンス鍵が前記要求されたライセンス数を含み、前記ライセンス発行が可能か否かを判定するステップでは、前記要求されたライセンス数の範囲で、前記ジョブ実行装置に対してアプリケーションの使用を許可する構成を採用できる。移譲ライセンスサーバは、例えばライセンス数を“５”とする移譲ライセンス鍵を用いて、５台のジョブ実行装置に対して、ライセンス認証を行う。このようにすることで、同じ移譲ライセンス鍵を用いて複数のジョブ実行装置の認証を行うことができる。
【００１３】
本発明のライセンス管理システムでは、前記ライセンスサーバは、前記ライセンス監視部が記憶する移譲ライセンス鍵の使用状況を参照して、移譲ライセンスの使用状況を監視する移譲ライセンス監視部を更に備える構成を採用できる。また、本発明のライセンス管理方法は、前記ライセンスサーバが、前記移譲ライセンス鍵の使用状況を参照してライセンスの使用状況を監視するステップを更に有する構成を採用できる。この場合、ライセンスサーバは、転送した移譲ライセンス鍵の使用状況を監視することができる。
【００１４】
本発明のライセンス管理システムでは、前記移譲ライセンス鍵が有効期限情報を含み、前記移譲ライセンス監視部は、前記有効期限が経過すると、前記ライセンス監視部が記憶する移譲ライセンス鍵の使用状況を参照して、当該移譲ライセンス鍵が使用中であるか否かを判断する構成を採用できる。また、本発明のライセンス管理方法は、前記移譲ライセンス鍵が有効期限情報を含み、前記移譲ライセンスの使用状況を監視するステップでは、前記有効期限が経過すると、移譲ライセンス鍵の使用状況を参照して、当該ライセンスが使用中であるか否かを判断する構成を採用できる。有効期限は、例えば、移譲ライセンス鍵の生成から、ジョブ実行装置によってライセンスが使用されるまでの猶予時間として設定する。有効期限の経過後に、移譲ライセンス鍵が使用されたか否かを調べることにより、ライセンスサーバは、転送した移譲ライセンス鍵が実際に使用されたか否かを調べることができる。
【００１５】
本発明のライセンス管理システムでは、前記移譲ライセンス監視部は、前記移譲ライセンス鍵が使用中でないと判断すると、当該使用中でない移譲ライセンス鍵に対応するライセンス数を減算して前記データベースを更新する構成を採用できる。本発明のライセンス管理方法は、前記移譲ライセンスの使用状況を監視するステップでは、前記移譲ライセンス鍵が使用中でないと判断すると、当該使用中でない移譲ライセンス鍵に対応するライセンス数を減算して前記データベースを更新する構成を採用できる。この場合、ライセンスサーバは、使用されていない移譲ライセンス鍵を速やかに回収することができる。
【００１６】
本発明のライセンス管理システム及び方法では、前記移譲ライセンスサーバ及びジョブ実行装置が第１のネットワークに接続され、前記ライセンスサーバ及び前記ライセンス発行要求を送信するユーザ端末が第２のネットワークに接続されていることが好ましい。第１のネットワークは、例えばインターネットとして構成され、第２のネットワークは、例えばインターネットにファイヤーウォールを介して接続されたＬＡＮとして構成される。ＬＡＮ上のユーザ端末から、ＬＡＮ外（インターネット上）のジョブ実行装置を用いてアプリケーションを実行する際に、ジョブ実行装置からＬＡＮ上のライセンスサーバにアクセスさせずに、インターネット上の移譲ライセンスサーバを用いてジョブ実行装置のライセンス認証を行うことで、ライセンス認証を安全に行うことができる。
【００１７】
本発明のライセンスサーバは、ジョブ実行装置と移譲ライセンスサーバはインターネットに接続されている構成において、前記ジョブ実行装置からのライセンス認証を行う前記移譲ライセンスサーバを用い、契約ライセンス数の範囲内で、前記ジョブ実行装置によるアプリケーションの使用を許可するライセンス管理システムに使用される、インターネットにファイヤウォールを介して接続されたＬＡＮに接続されたライセンスサーバであって、前記ジョブ実行装置に対するアプリケーションのライセンス発行要求があると、当該アプリケーションの契約ライセンス数及び発行済みライセンス数を記憶するデータベースを参照し、ライセンス発行が可能か否かを判定するライセンス管理部と、該ライセンス管理部がライセンス発行を可能と判定すると、前記ジョブ実行装置のライセンス認証に用いる移譲ライセンス鍵を生成し、該生成した移譲ライセンス鍵を前記移譲ライセンスサーバに転送するライセンス鍵生成部とを備えることを特徴とする。
【００１８】
本発明のライセンスサーバは、前記移譲ライセンス鍵の使用状況を記憶する移譲ライセンスサーバの記憶装置を参照し、前記移譲ライセンスの使用状況を監視する移譲ライセンス監視部を更に備える構成を採用できる。
【００１９】
本発明の移譲ライセンスサーバは、ジョブ実行装置はインターネットに接続され、ライセンスサーバはインターネットにファイヤウォールを介して接続されたＬＡＮに接続されている構成において、契約ライセンスを管理する前記ライセンスサーバを用い、契約ライセンス数の範囲内で前記ジョブ実行装置によるアプリケーションの使用を許可するライセンス管理システムに使用される、インターネットに接続された移譲ライセンスサーバであって、前記ジョブ実行装置からライセンス認証要求を受け付けると、前記ライセンスサーバから転送された移譲ライセンス鍵であって、前記契約ライセンス数の範囲内で発行された移譲ライセンス鍵を記憶する記憶装置を参照してライセンス認証を行うライセンス認証部と、前記ジョブ実行装置による移譲ライセンス鍵の使用状況を監視し記憶するライセンス監視部とを備えることを特徴とする。
【００２０】
本発明のプログラムは、ジョブ実行装置と移譲ライセンスサーバはインターネットに接続されている構成において、前記ジョブ実行装置からのライセンス認証を行う前記移譲ライセンスサーバを用い、契約ライセンス数の範囲内で前記ジョブ実行装置によるアプリケーションの使用を許可するライセンス管理システムに使用される、インターネットにファイヤウォールを介して接続されたＬＡＮに接続されたライセンスサーバのためのプログラムであって、前記ライセンスサーバに、前記ジョブ実行装置に対するアプリケーションのライセンス発行要求があると、当該アプリケーションの契約ライセンス数及び発行済みライセンス数を記憶するデータベースを参照し、ライセンス発行が可能か否かを判定する処理と、該判定処理でライセンス発行を可能と判定すると、前記ジョブ実行装置のライセンス認証に用いる移譲ライセンス鍵を生成し、該生成した移譲ライセンス鍵を前記移譲ライセンスサーバに転送する処理とを実行させることを特徴とする。
【００２１】
本発明のプログラムは、前記ライセンスサーバに、前記移譲ライセンス鍵の使用状況を記憶する移譲ライセンスサーバの記憶装置を参照し、前記移譲ライセンスの使用状況を監視する処理を更に実行させる構成を採用できる。
【００２２】
本発明の別の視点のプログラムは、ジョブ実行装置はインターネットに接続され、ライセンスサーバはインターネットにファイヤウォールを介して接続されたＬＡＮに接続されている構成において、契約ライセンスを管理する前記ライセンスサーバを用い、契約ライセンス数の範囲内で前記ジョブ実行装置によるアプリケーションの使用を許可するライセンス管理システムに使用される、インターネットに接続された移譲ライセンスサーバのためのプログラムであって、前記移譲ライセンスサーバに、前記ジョブ実行装置からライセンス認証要求を受け付けると、前記ライセンスサーバから転送された移譲ライセンス鍵であって、前記契約ライセンス数の範囲内で発行された移譲ライセンス鍵を記憶する記憶装置を参照してライセンス認証を行う処理と、前記ジョブ実行装置による移譲ライセンス鍵の使用状況を監視し記憶する処理とを実行させることを特徴とする。
【発明の効果】
【００２３】
本発明のライセンス管理システム、方法、ライセンスサーバ、移譲ライセンスサーバ、及び、プログラムでは、ライセンスを管理するライセンスサーバから移譲ライセンスサーバに移譲ライセンス鍵を転送し、ジョブ実行装置のライセンス認証を、移譲ライセンスサーバを用いて行う。これにより、複数のジョブ実行装置を用いてアプリケーションを実行する際に、ライセンスサーバにライセンス認証が集中することを防ぐことができる。また、ジョブ実行装置にライセンスサーバのアドレスを保存しておく必要がなく、ライセンス認証の安全性を高めることができる。
【発明を実施するための最良の形態】
【００２４】
以下、図面を参照し、本発明の実施の形態を詳細に説明する。図１は、本発明の一実施形態のライセンス管理システムの構成を示している。ライセンス管理システム１０は、ジョブ実行装置１１、移譲ライセンス認証サーバ１３、及び、ライセンスサーバ１６を備える。ジョブ実行装置１１及び移譲ライセンス認証サーバ１３は、それぞれ、インターネット１２に接続される。ライセンスサーバ１６は、ＬＡＮ１５に接続される。ＦＷ１４は、インターネット１２とＬＡＮ１５との間の通信の一部を遮断する。なお、図１では、インターネット１２に移譲ライセンス認証サーバ１３が１台だけ接続されているが、インターネット１２には、複数の移譲ライセンス認証サーバ１３を接続できる。
【００２５】
ジョブ実行装置１１及びユーザ端末１７は、それぞれ、例えばパーソナルコンピュータ等のコンピュータとして構成される。ユーザ端末１７は、ユーザ操作により、或いは、ユーザ端末１７上で実行されるジョブスケジューラにより、ジョブ実行装置１１にジョブを投入する。ライセンスサーバ１６は、ジョブ実行装置１１で実行されるアプリケーションのライセンスを管理する。移譲ライセンス認証サーバ１３は、ライセンスサーバ１６が設置されたＬＡＮ１５よりも外側のインターネット１２上のジョブ実行装置１１のライセンス認証を行う。ライセンスサーバ１６は、移譲ライセンス認証サーバ１３とジョブ実行装置１１との間のライセンス認証に用いられる移譲ライセンス鍵を生成し、これを移譲ライセンス認証サーバ１３に転送する。移譲ライセンス認証サーバ１３は、ライセンスサーバ１６から転送された移譲ライセンス鍵を用いて、ジョブ実行装置１１との間でライセンス認証を行う。
【００２６】
図２は、ライセンスサーバ１６の構成を示している。ライセンスサーバ１６は、ライセンス要求受付部２１、ライセンス管理部２２、ライセンス管理ＤＢ２３、移譲ライセンス生成部２４、及び、移譲ライセンス監視部２５を備える。ライセンスサーバ１６は、具体的には、ＣＰＵ、メモリ、ハードディスク、通信インタフェースを備えたコンピュータシステム上で、所定のプログラムを動作させることにより構築される。
【００２７】
ユーザ端末１７は、ジョブ実行装置１１にジョブを投入する際に、ライセンスサーバ１６にライセンス供与要求を送信する。ライセンス要求受付部２１は、ユーザ端末１７から送信されたライセンス供与要求を受け付け、これをライセンス管理部２２に通知する。ライセンス管理部ＤＢ２３には、供与可能な総ライセンス数や現在使用中のライセンス数が保持されている。ライセンス管理部２２は、ライセンス管理ＤＢ２３を参照し、要求された数のライセンス数が供与可能か否かを判定する。
【００２８】
移譲ライセンス生成部２４は、ライセンスの供与が可能な場合であって、ライセンスを要求するジョブが、ライセンスサーバ１６が接続されているＬＡＮ１５の外（ＦＷ１４よりも外側）のジョブ実行装置１１で実行される場合には、ライセンス認証に使用する移譲ライセンス鍵を生成し、生成した移譲ライセンス鍵を、移譲ライセンス認証サーバ１３に転送する。移譲ライセンス監視部２５は、移譲ライセンス認証サーバ１３における移譲ライセンス鍵の状況を監視し、ライセンス管理部２２を介して、ライセンス管理ＤＢ２３に保存される使用中ライセンスの情報を更新する。
【００２９】
図３は、移譲ライセンス認証サーバ１３の構成を示している。移譲ライセンス認証サーバ１３は、ライセンス要求通信部３１、ライセンス情報管理部３２、ライセンス監視部３３、及び、ライセンスサーバ通信部３４を備える。ライセンス情報管理部３２は、ライセンスサーバ１６から転送された移譲ライセンス鍵を保持する。ライセンス要求通信部３１は、ジョブ実行装置１１上で実行されるアプリケーションから、ライセンス確認要求を受け付ける。
【００３０】
ライセンス監視部３３は、ライセンス要求通信部３１がライセンス確認要求を受け付けると、ライセンス情報管理部３２に保持されたライセンス鍵を用いて、ジョブ実行装置１１上で実行されるアプリケーションに対してライセンス認証を行う。ライセンスサーバ通信部３４は、ライセンスサーバ１６の移譲ライセンス監視部２５との間で通信を行い、移譲ライセンス監視部２５からのライセンス使用状況の問い合わせに応答する。
【００３１】
図４は、ジョブ実行装置１１上で実行されるアプリケーション実行のイメージを示している。アプリケーション・ソフトウェア４０は、アプリケーションの実体であるアプリケーションプログラム４２と、アプリケーション実行のライセンス認証を行なうライセンス認証通信部４１から構成される。アプリケーションプログラム４２は、実行開始時、或いは、ファイル入出力時などのタイミングで、ライセンス認証通信部４１を通して、移譲ライセンス認証サーバ１３と交信し、正当なライセンスが供与されているか確認する。
【００３２】
図５は、移譲ライセンス鍵の具体例を示している。移譲ライセンス鍵５０は、ライセンスの有効期限を示すライセンス許可有効期限フィールドＦ５１と、ライセンス数を示すライセンス数情報フィールドＦ５２と、認証に用いられるライセンス鍵フィールドＦ５３とから構成される。ライセンス鍵フィールドＦ５３は、例えば、移譲ライセンス認証サーバ１３のＩＰアドレスとライセンス許可有効期限フィールドＦ５１の情報とを含めることによって生成することができる。この移譲ライセンス鍵５０は、ジョブ実行装置１１に対して、１回限りのライセンス許可を与えるように構成されている。
【００３３】
図６は、ジョブ実行装置１１においてアプリケーション・ジョブを実行する際のライセンス管理システム１０の動作手順を示している。ライセンス購入者（ユーザ）は、ライセンス管理システムの運用に先立って、購入ライセンスを管理するライセンスサーバ１６を用意すると共に、ライセンスサーバ１６が管理するライセンスを必要とするアプリケーション・ジョブを、ＬＡＮ１５外のインターネット１２上のジョブ実行装置１１で実行するための移譲ライセンス認証サーバ１３を用意する。移譲ライセンス認証サーバ１３を構成するために必要なプログラムは、ライセンスサーバ１６又は図示しない別のサーバから送信することができる。この移譲ライセンス認証サーバ１３のＩＰアドレス又はドメイン名は、確定しているものとする。
【００３４】
ユーザ又はジョブスケジューラ（以下、ライセンス要求者とも呼ぶ）は、ライセンスサーバ１６に対して、必要な数のライセンスを要求する（ステップＳ１１）。具体的には、必要ライセンス数と、移譲ライセンス認証サーバ１３のＩＰアドレスとを因数とするコマンドを、ライセンス要求受付部２１に送信して、ライセンスを要求する。ライセンス管理部２２は、ライセンス管理ＤＢ２３を参照して、ライセンス要求受付部２１が受け付けた数のライセンスが割り当てられるか否かを確認する（ステップＳ１２）。
【００３５】
ライセンス管理部２２は、空きライセンスが不足しており、要求された数のライセンスが確保できないときには、エラーを返して、処理を終了する。ライセンス管理部２２は、要求された数のライセンスが確保できる場合には、移譲ライセンス生成部２４に、移譲ライセンス鍵の発行を要求し、ライセンス管理ＤＢ２３の更新処理を行う（ステップＳ１３）。移譲ライセンス生成部２４は、移譲ライセンス鍵を生成すると、生成した移譲ライセンス鍵を、移譲ライセンス認証サーバ１３に転送する（ステップＳ１４）。移譲ライセンス鍵のライセンス許可有効期限フィールドＦ５１（図５）は、例えば、移譲ライセンス鍵の生成時刻から５分後に設定される。また、ライセンス鍵フィールドＦ５３は、移譲ライセンス認証サーバ１３のＩＰアドレスを含めて生成する。
【００３６】
移譲ライセンス認証サーバ１３は、ステップＳ１４で転送された移譲ライセンス鍵を、ライセンス情報管理部３２に保存する。ライセンス情報管理部３２に移譲ライセンス鍵が保存されることにより、ジョブ実行装置１１のライセンス認証を行う準備が整う。ライセンス要求者は、ジョブ実行装置１１に、アプリケーション・ソフトウェア４０を配布し、ジョブの実行を開始させる。ジョブ実行装置１１は、配布されたアプリケーション・ソフトウェア４０を実行する。このとき、ライセンス認証通信部４１は、コマンドライン又は環境変数から、接続すべき移譲ライセンス認証サーバ１３のＩＰアドレスを取得し、移譲ライセンス認証サーバ１３に、ライセンス取得要求を送信する。
【００３７】
移譲ライセンス認証サーバ１３は、ジョブ実行装置１１上で実行されるアプリケーション・ソフトウェア４０のライセンス認証通信部４１から、ライセンス取得要求を受け取る。ライセンス監視部３３は、ライセンス情報管理部３２に保存された移譲ライセンス鍵を参照して、ライセンス取得要求を送信したジョブ実行装置１１のライセンス認証を実行する。このライセンス認証の機構は、従来から実現されているアプリケーション認証システムと同様である。
【００３８】
移譲ライセンス認証サーバ１３は、ジョブ実行装置１１からのライセンス取得要求が、移譲ライセンス鍵５０（図５）のライセンス鍵フィールドＦ５３に含まれるＩＰアドレスの移譲ライセンス認証サーバに対してされておらず、かつ、ライセンス許可有効期限フィールドＦ５１に示す時刻までにライセンス取得要求がされなかった場合には、認証に失敗したと判断する。ジョブ実行装置１１は、移譲ライセンス認証サーバ１３での認証に成功すると、アプリケーションプログラム４２の実行を開始する。
【００３９】
ライセンス監視部３３は、ジョブ実行装置１１が、ライセンス認証に成功してアプリケーションプログラム４２の実行を開始すると、ライセンスのステータスを使用中とする。ジョブ実行装置１１は、アプリケーションプログラム４２の処理を終了すると、移譲ライセンス認証サーバ１３に、ライセンス開放通知を送信する。ライセンス監視部３３は、ジョブ実行装置１１からライセンス開放通知を受信すると、使用中であったライセンスを開放する。
【００４０】
ライセンスサーバ１６は、生成した移譲ライセンス鍵を移譲ライセンス認証サーバ１３に転送すると、移譲ライセンス監視部２５に、移譲ライセンス認証サーバ１３の情報と、移譲ライセンス鍵の情報とを対応付けて登録し、その組み合わせに対して、ライセンス使用状況を監視するデーモンプロセスを発行して、移譲ライセンスに対して、監視スレッドを起動する。図７は、移譲ライセンスの監視動作の手順を示している。移譲ライセンス監視部２５は、まず、移譲ライセンス鍵に設定した有効期限となるまで待機する（ステップＳ２１）。その後、移譲ライセンス認証サーバ１３のライセンスサーバ通信部３４との間で通信を行い、移譲ライセンス鍵が開放されたか否かを問い合わせる（ステップＳ２２）。
【００４１】
移譲ライセンス監視部２５は、移譲ライセンス鍵がまだ開放されていないとき、つまり、移譲ライセンス鍵のステータスが使用中のときには、所定時間だけ待機し（ステップＳ２３）、所定時間の経過後、ステップＳ２２に戻って、移譲ライセンス鍵が開放されたか否かを問い合わせる。移譲ライセンス監視部２５は、移譲ライセンス鍵が開放された場合には、ライセンス管理部２２にライセンス開放を通知する（ステップＳ２４）。ライセンス管理部２２は、ライセンス開放通知を受け取ると、開放されたライセンスを空きライセンスとしてライセンス管理ＤＢ２３を更新する。
【００４２】
本実施形態では、ライセンスサーバ１６は、ＬＡＮ１５外のジョブ実行装置１１の認証に用いられる移譲ライセンス鍵を生成して、これを移譲ライセンス認証サーバ１３に転送する。ジョブ実行装置１１は、移譲ライセンス認証サーバ１３にアクセスし、移譲ライセンス認証サーバ１３との間でライセンス認証を行う。このように、本実施形態では、ジョブ実行装置１１は、ライセンス認証に際して、ＬＡＮ１５外部からライセンスサーバ１６にアクセスする必要がないため、ジョブ実行装置１１に、ライセンスサーバのＩＰアドレスや認証に用いるプロトコルのポート番号などの情報を置く必要がない。また、移譲ライセンス認証サーバ１３がジョブ実行装置１１のライセンス認証を行うことで、ライセンスサーバ１６にライセンス認証が集中することを防ぐことができる。
【００４３】
本実施形態では、移譲ライセンス鍵には有効期限が設定されており、移譲ライセンス鍵は、所定の時間だけ有効な形で発行される。ライセンスサーバ１６は、図７に示す手順で、有効期限の経過後、移譲ライセンスが使用中であるか否かを確認し、移譲ライセンスが開放された状態であれば、ライセンス管理ＤＢ２３を更新して、移譲された分のライセンスを使用可能な状態に戻す。このようにすることで、例えばジョブ実行装置のトラブル等により、ライセンスが使用されない場合には、有効期限の経過後、速やかにそのライセンスを回収して他のジョブ実行装置で使用可能とすることができ、ライセンスを適切に管理することができる。
【００４４】
なお、上記実施形態では、ユーザ端末１７により、ジョブ実行装置１１にジョブを投入する例を示したが、これには限定されない。例えば、ＬＡＮ１５に、ジョブを投入するスケジューラが稼動する別のコンピュータを接続して、そのコンピュータにより、ジョブを投入してもよい。また、移譲ライセンス認証サーバ１３を、インターネット１２に接続された別のＬＡＮ上に設置し、その移譲ライセンス認証サーバ１３を用いて、そのＬＡＮ上のジョブ実行装置１１のライセンス認証を行う構成としてもよい。ライセンスサーバが複数のアプリケーションのライセンスを管理する場合には、アプリケーションごとにＩＤを割り当てて、そのＩＤと、総ライセンス数及び使用中ライセンス数とを対応付けて管理すればよい。
【００４５】
以上、本発明をその好適な実施形態に基づいて説明したが、本発明のライセンス管理システム、方法、ライセンスサーバ、移譲ライセンスサーバ、及び、プログラムは、上記実施形態例にのみ限定されるものではなく、上記実施形態の構成から種々の修正及び変更を施したものも、本発明の範囲に含まれる。
【図面の簡単な説明】
【００４６】
【図１】本発明の一実施形態のライセンス管理システムの構成を示すブロック図。
【図２】ライセンスサーバ１６の構成を示すブロック図。
【図３】移譲ライセンス認証サーバ１３の構成を示すブロック図。
【図４】ジョブ実行装置１１上で実行されるアプリケーション実行のイメージを示すブロック図。
【図５】移譲ライセンス鍵の具体例を示す図。
【図６】ジョブ実行装置１１においてアプリケーション・ジョブを実行する際のライセンス管理システム１０の動作手順を示すフローチャート。
【図７】移譲ライセンスの監視動作の手順を示すフローチャート。
【符号の説明】
【００４７】
１１：ジョブ実行装置
１２：インターネット
１３：移譲ライセンス認証サーバ
１４：ファイヤーウォール
１５：ＬＡＮ
１６：ライセンスサーバ
１７：ユーザ端末
２１：ライセンス要求受付部
２２：ライセンス管理部２２
２３：ライセンス管理ＤＢ
２４：移譲ライセンス生成部
２５：移譲ライセンス監視部
３１：ライセンス要求通信部
３２：ライセンス情報管理部
３３：ライセンス監視部
３４：ライセンスサーバ通信部
【図１】
0004826175.tif 000002
【図２】
0004826175.tif 000003
【図３】
0004826175.tif 000004
【図４】
0004826175.tif 000005
【図５】
0004826175.tif 000006
【図６】
0004826175.tif 000007
【図７】
0004826175.tif 000008