(57)【特許請求の範囲】
【請求項１】
接続される情報処理装置に対して機能提供を行う複数の機能提供装置と、前記情報処理装置から前記機能提供装置の機能利用を可能とする接続ライセンスを管理するライセンス管理装置とが、所定のデータ伝送路で接続されるライセンス管理システムであって、
前記機能提供装置が、
前記情報処理装置から接続要求を受信すると、接続要求した情報処理装置が接続ライセンス割り当て済みの情報処理装置か否かを判定する接続装置判定手段と、
接続要求した情報処理装置が接続ライセンス割り当て済みの情報処理装置でないと判定した場合、前記ライセンス管理装置に対して、接続ライセンス割り当て判定要求を送信する判定要求送信手段と、を有し、
前記ライセンス管理装置が、
接続要求した情報処理装置に前記接続ライセンスが割り当てられているか否かを判定する接続ライセンス判定手段と、
判定結果を前記機能提供装置へと送信する判定結果送信手段と、を有し、
前記機能提供装置は、
前記接続装置判定手段による判定結果又は前記判定結果送信手段により送信された判定結果に基づき、接続要求した情報処理装置の接続許可を制御することを特徴とするライセンス管理システム。
【請求項２】
前記機能提供装置が、
接続ライセンス割り当て済みの情報処理装置を識別する機器識別情報と、前記情報処理装置の接続日時を示す接続記録情報とが対応づけて設定されたライセンス関連情報を、所定の記憶領域に保持するライセンス関連情報保持手段を有し、
前記接続装置判定手段は、
前記ライセンス関連情報保持手段に保持される前記ライセンス関連情報を参照し、接続要求した情報処理装置の機器識別情報の設定有無に基づき、接続要求した情報処理装置が接続ライセンス割り当て済みの情報処理装置か否かを判定することを特徴とする請求項１に記載のライセンス管理システム。
【請求項３】
前記ライセンス管理装置が、
前記接続ライセンスを識別するライセンス識別情報と前記機器識別情報とが対応づけて設定されたライセンス管理情報を、所定の記憶領域に保持するライセンス管理情報保持手段を有し、
前記接続ライセンス判定手段は、
前記ライセンス管理情報保持手段に保持される前記ライセンス管理情報を参照し、前記機能提供装置から、前記判定要求送信手段により送信された機器識別情報の設定有無に基づき、接続要求した情報処理装置に前記接続ライセンスが割り当てられているか否かを判定することを特徴とする請求項２に記載のライセンス管理システム。
【請求項４】
前記ライセンス管理装置は、
前記接続ライセンス判定手段が、接続要求した情報処理装置に前記接続ライセンスが割り当てられていると判定した場合、
前記判定結果送信手段が、前記判定結果を前記機能提供装置へと送信することを特徴とする請求項３に記載のライセンス管理システム。
【請求項５】
前記ライセンス管理装置が、
前記情報処理装置に割り当てられていない余剰ライセンスの存在有無を確認する余剰ライセンス確認手段と、
前記余剰ライセンスの割り当て結果を前記機能提供装置へと送信する割り当て結果送信手段と、を有し、
前記ライセンス管理装置は、
前記接続ライセンス判定手段が、接続要求した情報処理装置に前記接続ライセンスが割り当てられていないと判定した場合、
前記余剰ライセンス確認手段が、前記ライセンス管理情報保持手段に保持される前記ライセンス管理情報を参照し、前記ライセンス識別情報に基づき、接続要求した情報処理装置に割り当てる前記余剰ライセンスの有無を確認し、
前記割り当て結果送信手段が、確認結果に基づく前記余剰ライセンスの割り当て結果を前記機能提供装置へと送信することを特徴とする請求項３又は４に記載のライセンス管理システム。
【請求項６】
前記ライセンス管理装置は、
前記余剰ライセンス確認手段が、前記余剰ライセンスの存在を確認した場合、
前記機能提供装置から、前記判定要求送信手段により送信された前記機器識別情報と前記余剰ライセンスの前記ライセンス識別情報とを対応づけて、前記ライセンス管理情報に設定し、情報を更新することを特徴とする請求項５に記載のライセンス管理システム。
【請求項７】
前記機能提供装置は、
前記接続装置判定手段が、接続要求した情報処理装置が接続ライセンス割り当て済みの情報処理装置であると判定した場合、
前記ライセンス関連情報の前記接続記録情報を更新し、接続要求した情報処理装置に対して、接続許可を通知することを特徴とする請求項５又は６のいずれか一項に記載のライセンス管理システム。
【請求項８】
前記機能提供装置は、
前記ライセンス管理装置から、前記判定結果送信手段により、接続要求した情報処理装置に前記接続ライセンスが割り当てられている旨の結果が送信された場合、又は、
前記ライセンス管理装置から、前記割り当て結果送信手段により、接続要求した情報処理装置に前記余剰ライセンスが割り当てられた旨の結果が送信された場合、
前記ライセンス関連情報に、接続要求した情報処理装置の機器識別情報及び前記接続記録情報を設定し、接続要求した情報処理装置に対して、接続許可を通知することを特徴とする請求項５ないし７のいずれか一項に記載のライセンス管理システム。
【請求項９】
前記機能提供装置は、
前記ライセンス管理装置から、前記判定結果送信手段により、接続要求した情報処理装置に前記接続ライセンスが割り当てられていない旨の結果が送信された場合、又は、
前記ライセンス管理装置から、前記割り当て結果送信手段により、接続要求した情報処理装置に前記余剰ライセンスが割り当てられなかった旨の結果が送信された場合、
接続要求した情報処理装置に対して、接続不許可を通知することを特徴とする請求項５ないし８のいずれか一項に記載のライセンス管理システム。
【請求項１０】
前記機能提供装置が、
一定期間接続されていない情報処理装置の存在を確認する接続確認手段を有し、
前記接続確認手段は、
前記ライセンス関連情報保持手段に保持される前記ライセンス関連情報を参照し、前記接続記録情報に基づき、前記ライセンス関連情報に設定された情報処理装置のうち、一定期間接続されていない情報処理装置の存在を確認することを特徴とする請求項５ないし９のいずれか一項に記載のライセンス管理システム。
【請求項１１】
前記機能提供装置が、
前記ライセンス管理装置に対して、前記ライセンス関連情報と前記ライセンス管理情報との照合要求を送信する照合要求送信手段を有し、
前記機能提供装置は、
前記接続確認手段が、一定期間接続されていない情報処理装置の存在を確認した場合、
前記ライセンス関連情報から、該当した情報処理装置の機器識別情報及び接続記録情報を削除し、情報を更新し、
前記照合要求送信手段が、更新後の前記ライセンス関連情報を前記ライセンス管理装置へと送信することを特徴とする請求項１０に記載のライセンス管理システム。
【請求項１２】
前記ライセンス管理情報は、前記ライセンス識別情報及び前記機器識別情報に、前記ライセンス関連情報との照合日時を示す照合記録情報がと対応づけて設定されており、
前記ライセンス管理装置が、
前記ライセンス管理情報において、前記ライセンス関連情報に設定された情報処理装置の登録を確認する機器登録確認手段と、
前記照合記録情報の更新結果を前記機能提供装置へと送信する更新結果送信手段と、を有し、
前記ライセンス管理装置は、
前記機器登録確認手段が、前記ライセンス管理情報保持手段に保持される前記ライセンス管理情報を参照し、前記機能提供装置から、前記照合要求送信手段により送信された前記ライセンス関連情報の機器識別情報の設定有無に基づき、前記ライセンス関連情報に設定された情報処理装置の登録を確認し、
前記更新結果送信手段が、確認結果に基づく前記照合記録情報の更新結果を前記機能提供装置へと送信することを特徴とする請求項１１に記載のライセンス管理システム。
【請求項１３】
前記ライセンス管理装置は、
前記機器登録確認手段が、前記ライセンス管理情報において、前記ライセンス関連情報に設定された情報処理装置の登録を確認した場合、
前記ライセンス管理情報における該当した情報処理装置の前記照合記録情報に、照合した現在日時を設定し、情報を更新することを特徴とする請求項１２に記載のライセンス管理システム。
【請求項１４】
前記ライセンス管理装置は、
前記機器登録確認手段が、前記ライセンス管理情報において、前記ライセンス関連情報に設定された情報処理装置の登録を確認できなかった場合、
前記余剰ライセンス確認手段が、前記ライセンス管理情報保持手段に保持される前記ライセンス管理情報を参照し、前記ライセンス識別情報に基づき、登録確認できなかった情報処理装置に割り当てる前記余剰ライセンスの有無を確認し、
前記割り当て結果送信手段が、確認結果に基づく前記余剰ライセンスの割り当て結果を前記機能提供装置へと送信することを特徴とする請求項１２又は１３に記載のライセンス管理システム。
【請求項１５】
前記機能提供装置は、
前記ライセンス管理装置から、前記更新結果送信手段により、前記ライセンス管理情報の前記照合記録情報が更新できなかった旨の結果が送信された場合、又は、
前記ライセンス管理装置から、前記割り当て結果送信手段により、前記余剰ライセンスが割り当てられなかった旨の結果が送信された場合、
前記ライセンス関連情報から、該当した情報処理装置の機器識別情報及び接続記録情報を削除し、情報を更新することを特徴とする請求項１２ないし１４のいずれか一項に記載のライセンス管理システム。
【請求項１６】
前記ライセンス管理装置が、
前記ライセンス関連情報と前記ライセンス管理情報とが、一定期間照合されていない情報処理装置の存在を確認する照合確認手段を有し、
前記照合確認手段は、
前記ライセンス管理情報保持手段に保持されるライセンス管理情報を参照し、前記照合記録情報に基づき、前記ライセンス管理情報に設定された情報処理装置のうち、前記ライセンス関連情報と一定期間照合されていない情報処理装置の存在を確認することを特徴とする請求項１２ないし１５のいずれか一項に記載のライセンス管理システム。
【請求項１７】
前記ライセンス管理装置は、
前記照合確認手段が、一定期間照合されていない情報処理装置の存在を確認した場合、
前記ライセンス管理情報から、該当した情報処理装置の機器識別情報及び照合記録情報を削除し、情報を更新することを特徴とする請求項１６に記載のライセンス管理システム。
【請求項１８】
前記ライセンス管理装置は、
当該システム内の全ての機能提供装置から、前記照合要求送信手段により送信されたライセンス関連情報を受信した場合、
前記ライセンス管理情報から、一定期間照合されていない情報処理装置の機器識別情報及び照合記録情報を削除し、情報を更新することを特徴とする請求項１７に記載のライセンス管理システム。
【請求項１９】
前記ライセンス管理装置は、
前記ライセンス関連情報を受信していない機能提供装置との通信状態を確認し、
所定期間内に、前記機能提供装置との通信状態が回復しない場合、
前記ライセンス管理情報から、一定期間照合されていない情報処理装置の機器識別情報及び照合記録情報を削除し、情報を更新することを特徴とする請求項１７又は１８に記載のライセンス管理システム。
【請求項２０】
情報処理装置からの機能利用を可能とする接続ライセンスを管理するライセンス管理装置と、所定のデータ伝送路で接続され、前記情報処理装置に対して機能提供を行う機能提供装置であって、
前記情報処理装置から接続要求を受信すると、接続要求した情報処理装置が接続ライセンス割り当て済みの情報処理装置か否かを判定する接続装置判定手段と、
接続要求した情報処理装置が接続ライセンス割り当て済みの情報処理装置でないと判定した場合、前記ライセンス管理装置に対して、接続ライセンス割り当て判定要求を送信する判定要求送信手段と、を有し、
前記接続装置判定手段による判定結果、又は、
前記ライセンス管理装置から受信した、接続要求した情報処理装置に前記接続ライセンスが割り当てられているか否かの判定結果に基づき、接続要求した情報処理装置の接続許可を制御することを特徴とする機能提供装置。
【請求項２１】
接続される情報処理装置に対して機能提供を行う複数の機能提供装置と、前記情報処理装置から前記機能提供装置の機能利用を可能とする接続ライセンスを管理するライセンス管理装置とが、所定のデータ伝送路で接続されるライセンス管理システムにおけるライセンス管理方法であって、
前記機能提供装置が、
前記情報処理装置から接続要求を受信すると、接続要求した情報処理装置が接続ライセンス割り当て済みの情報処理装置か否かを判定する接続装置判定手順と、
前記接続装置判定手順で、接続要求した情報処理装置が接続ライセンス割り当て済みの情報処理装置でないと判定した場合、前記ライセンス管理装置に対して、接続ライセンス割り当て判定要求を送信する判定要求送信手段と、を有し、
前記ライセンス管理装置が、
前記機能提供装置からの判定要求に従って、接続要求した情報処理装置に前記接続ライセンスが割り当てられているか否かを判定する接続ライセンス判定手順と、
前記接続ライセンス判定手順による判定結果を前記機能提供装置へと送信する判定結果送信手順と、を有し、
前記機能提供装置は、
前記接続装置判定手順による判定結果、又は、
前記ライセンス管理装置から、前記判定結果送信手順により送信された判定結果に基づき、接続要求した情報処理装置の接続許可を制御することを特徴とするライセンス管理方法。
【請求項２２】
情報処理装置からの機能利用を可能とする接続ライセンスを管理するライセンス管理装置と、所定のデータ伝送路で接続され、前記情報処理装置に対して機能提供を行う機能提供装置におけるライセンス管理プログラムであって、
コンピュータを、
前記情報処理装置から接続要求を受信すると、接続要求した情報処理装置が接続ライセンス割り当て済みの情報処理装置か否かを判定する接続装置判定手段と、
接続要求した情報処理装置が接続ライセンス割り当て済みの情報処理装置でないと判定した場合、前記ライセンス管理装置に対して、接続ライセンス割り当て判定要求を送信する判定要求送信手段として機能させ、
前記接続装置判定手段による判定結果、又は、
前記ライセンス管理装置から受信した、接続要求した情報処理装置に前記接続ライセンスが割り当てられているか否かの判定結果に基づき、接続要求した情報処理装置の接続許可を制御するように実行させるライセンス管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバ機能を有する装置により、システム内における接続機器のライセンスを管理する技術に関するものである。
【背景技術】
【０００２】
例えば、特許文献１には、サーバ内にライセンス管理テーブルを設けて、利用者ごとにサーバが有する各ソフトウェアの使用状況を管理することで、サーバが有するソフトウェアの使用ライセンスを統合的に管理する機能（サービス）を実現する技術が開示されている。
【０００３】
特許文献１では、サーバ上のソフトウェアを、クライアントから使用する際にライセンスが用いられる例が示されているが、同様に、サーバ・クライアント型のシステムでは、クライアントからサーバに対して接続を行う際にライセンス（以下「接続ライセンス」と言う）を用いる場合がある。
【０００４】
接続ライセンスの運用形態には、次のような形態がある。例えば、サーバが接続ライセンスを有し、サーバごとに接続可能なクライアント数を制御する形態や、クライアントが接続ライセンスを有し、サーバが、接続ライセンスを有するクライアントからの接続のみを許可する形態などである。
【０００５】
従来のシステムでは、このような運用形態により、クライアントからの不正接続（不正ライセンスでの接続）を防止している。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来の方法では、サーバが接続ライセンスを有する場合、複数のサーバに接続するクライアントに対して、１つの接続ライセンスを適用することができないという問題がある。例えば、大規模なシステムでは、システム内に複数のサーバが設置され、これらのサーバからクライアントに対して機能を提供する場合がある。このような場合、従来の方法では、クライアントに対して、サーバごとに接続ライセンスが割り当てられていた。つまり、クライアントは、複数のサーバから提供される機能を１つの接続ライセンスで利用できない。
【０００７】
本発明は上記従来技術の問題点を鑑み提案されたものであり、クライアントが、複数のサーバから提供される機能を１つの接続ライセンスで利用可能なライセンス管理システム、機能提供装置、ライセンス管理方法、及びライセンス管理プログラムを提供することにある。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、本発明に係るライセンス管理システムは、接続される情報処理装置に対して機能提供を行う複数の機能提供装置と、前記情報処理装置から前記機能提供装置の機能利用を可能とする接続ライセンスを管理するライセンス管理装置とが、所定のデータ伝送路で接続されるライセンス管理システムであって、前記機能提供装置が、前記情報処理装置から接続要求を受信すると、接続要求した情報処理装置が接続ライセンス割り当て済みの情報処理装置か否かを判定する接続装置判定手段と、接続要求した情報処理装置が接続ライセンス割り当て済みの情報処理装置でないと判定した場合、前記ライセンス管理装置に対して、接続ライセンス割り当て判定要求を送信する判定要求送信手段と、を有し、前記ライセンス管理装置が、接続要求した情報処理装置に前記接続ライセンスが割り当てられているか否かを判定する接続ライセンス判定手段と、判定結果を前記機能提供装置へと送信する判定結果送信手段と、を有し、前記機能提供装置は、前記接続装置判定手段による判定結果又は前記判定結果送信手段により送信された判定結果に基づき、接続要求した情報処理装置の接続許可を制御することを特徴とする。
【０００９】
このような構成によって、本発明に係るライセンス管理システムは、次のようなサーバ連携処理が実行される。まず、クライアントから接続要求を受信したアプリケーションサーバ（クライアントに対して機能を提供するサーバ装置）は、要求クライアントが接続ライセンス割り当て済みのクライアントか否かを判定する。アプリケーションサーバは、要求クライアントが接続ライセンス割り当て済みのクライアントでなければ、ライセンスサーバ（接続ライセンスを管理するサーバ装置）に対して、接続ライセンス割り当て判定要求を行う。その結果、ライセンスサーバは、要求クライアントに接続ライセンスが割り当てられているか否かを判定し、判定結果をアプリケーションサーバへと応答する。これにより、アプリケーションサーバは、判定結果に基づき、要求クライアントの接続許可を制御する。
【００１０】
これによって、本発明に係るライセンス管理システムでは、クライアントに割り当てる接続ライセンスの管理処理が、機能提供装置とライセンス管理装置との間（サーバ間）で連携して実行される。その結果、クライアントは、複数のサーバから提供される機能を１つの接続ライセンスで利用することができる。
【００１１】
上記目的を達成するため、本発明に係るライセンス管理方法は、接続される情報処理装置に対して機能提供を行う複数の機能提供装置と、前記情報処理装置から前記機能提供装置の機能利用を可能とする接続ライセンスを管理するライセンス管理装置とが、所定のデータ伝送路で接続されるライセンス管理システムにおけるライセンス管理方法であって、前記機能提供装置が、前記情報処理装置から接続要求を受信すると、接続要求した情報処理装置が接続ライセンス割り当て済みの情報処理装置か否かを判定する接続装置判定手順と、前記接続装置判定手順で、接続要求した情報処理装置が接続ライセンス割り当て済みの情報処理装置でないと判定した場合、前記ライセンス管理装置に対して、接続ライセンス割り当て判定要求を送信する判定要求送信手段と、を有し、前記ライセンス管理装置が、前記機能提供装置からの判定要求に従って、接続要求した情報処理装置に前記接続ライセンスが割り当てられているか否かを判定する接続ライセンス判定手順と、前記接続ライセンス判定手順による判定結果を前記機能提供装置へと送信する判定結果送信手順と、を有し、前記機能提供装置は、前記接続装置判定手順による判定結果、又は、前記ライセンス管理装置から、前記判定結果送信手順により送信された判定結果に基づき、接続要求した情報処理装置の接続許可を制御することを特徴とする。
【００１２】
このような手順によって、本発明に係るライセンス管理方法は、クライアントから接続要求を受信したアプリケーションサーバ（クライアントに対して機能を提供するサーバ装置）が、要求クライアントが接続ライセンス割り当て済みのクライアントか否かを判定し、要求クライアントが接続ライセンス割り当て済みのクライアントでなければ、ライセンスサーバ（接続ライセンスを管理するサーバ装置）に対して、接続ライセンス割り当て判定要求を行い、ライセンスサーバが、要求クライアントに接続ライセンスが割り当てられているか否かを判定し、判定結果をアプリケーションサーバへと応答し、アプリケーションサーバが、判定結果に基づき、要求クライアントの接続許可を制御すると言う動作を実現する。
【００１３】
これによって、本発明に係るライセンス管理方法では、クライアントが、複数のサーバから提供される機能を１つの接続ライセンスで利用可能な環境を提供できる。
【発明の効果】
【００１４】
本発明によれば、クライアントに割り当てる接続ライセンスの管理処理を、機能提供装置とライセンス管理装置との間（サーバ間）で連携して実行することで、クライアントが、複数のサーバから提供される機能を１つの接続ライセンスで利用可能なライセンス管理システム、機能提供装置、ライセンス管理方法、及びライセンス管理プログラムを提供することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の第１の実施形態に係るライセンス管理システムの構成例を示す図である。
【図２】本発明の第１の実施形態に係るライセンスサーバのハードウェア構成例を示す図である。
【図３】本発明の第１の実施形態に係るライセンス管理システムの機能構成例を示す図である。
【図４】本発明の第１の実施形態に係るライセンス関連情報（キャッシュ情報）のデータ例を示す図である。
【図５】本発明の第１の実施形態に係るライセンス管理情報のデータ例を示す図である。
【図６】本発明の第１の実施形態に係るクライアント接続時のライセンス管理処理手順例を示すフローチャートである。
【図７】本発明の第１の実施形態に係るライセンス管理における定期処理手順例（その１）を示すフローチャートである。
【図８】本発明の第１の実施形態に係るライセンス管理における定期処理手順例（その２）を示すフローチャートである。
【図９】本発明の第１の実施形態に係るライセンス管理の動作例（その１）を示す図である。
【図１０】本発明の第１の実施形態に係るライセンス管理の動作例（その２）を示す図である。
【図１１】本発明の第１の実施形態に係るライセンス管理の動作例（その３）を示す図である。
【図１２】本発明の第１の実施形態に係るライセンス管理の動作例（その４）を示す図である。
【図１３】本発明の第１の実施形態に係るライセンス管理の動作例（その５）を示す図である。
【図１４】本発明の第１の実施形態に係るライセンス管理の動作例（その６）を示す図である。
【図１５】サーバ間で通信障害が発生した場合のライセンス管理の動作例を示す図である。
【図１６】アプリケーションサーバが故障した場合の動作例を示す図である。
【図１７】本発明の第２の実施形態に係るライセンス管理システムの機能構成例を示す図である。
【図１８】本発明の第２の実施形態に係るライセンス管理の動作例を示す図である。
【図１９】本発明の変形例に係るライセンス管理の動作例を示す図である。
【発明を実施するための形態】
【００１６】
以下、本発明の好適な実施の形態（以下「実施形態」と言う）について、図面を用いて詳細に説明する。
【００１７】
［第１の実施形態］
＜システム構成＞
図１は、本実施形態に係るライセンス管理システム１の構成例を示す図である。
図１には、ライセンスサーバ１００、複数のアプリケーションサーバ２００１〜２００ｎ（以下総称する場合「アプリケーションサーバ２００」と言う）、及び複数のクライアント３００１〜３００ｎ（以下総称する場合「クライアント３００」と言う）が、ネットワークなどのデータ伝送路Ｎ（例えば「ＬＡＮ：Local Area Network」）で接続されるシステム構成例が示されている。
【００１８】
ライセンスサーバ１００は、クライアント３００に対する接続ライセンスを一括管理するサーバ装置（ライセンス管理装置）である。ここで言う「接続ライセンス」とは、アプリケーションサーバ２００がクライアント３００に対する機能提供の許可／不許可を判断するために用いる認証情報である。よって、ライセンスサーバ１００では、機能提供が許可されたクライアント３００に対して、接続ライセンス（認証情報）を割り当てる（発行する）。また、アプリケーションサーバ２００は、搭載アプリケーションの実行により、クライアント３００に対して機能を提供するサーバ装置（機能提供装置）である。両サーバ１００，２００は、例えば、ＰＣ（Personal Computer）などの情報処理装置である。また、クライアント３００は、アプリケーションサーバ２００に接続し、機能の提供を受ける機器である。
【００１９】
本実施形態では、アプリケーションサーバ２００からクライアント３００に対して提供される機能に、蓄積印刷機能（プルプリントサービス）を例に説明する。よって、クライアント３００は、例えば、ＭＦＰ（Multifunction Peripheral）などの画像処理装置とする。
【００２０】
蓄積印刷機能は、アプリケーションサーバ２００とクライアント３００との間で、次のような連携処理が実行されることで実現される機能である。まず、クライアント３００は、利用者からのジョブ実行要求（実行対象ジョブの指定を含む）を受信する。クライアント３００は、要求に従って、印刷ジョブを蓄積しているアプリケーションサーバ２００から、要求時に指定された印刷ジョブを取得する。これにより、クライアント３００は、取得した印刷ジョブを実行する。
【００２１】
また、本実施形態では、１台のクライアント３００が、複数のアプリケーションサーバ２００に接続可能である。つまり、本実施形態では、クライアント３００が、複数のアプリケーションサーバ２００から提供される機能を利用可能である。
【００２２】
そこで、本実施形態に係るライセンス管理システム１では、ライセンスサーバ１００を設けて、クライアント３００に割り当てる接続ライセンスを一括管理し、ライセンスサーバ１００と各アプリケーションサーバ２００との間（サーバ間）で、接続ライセンスの管理処理を連携処理する。
【００２３】
以上のように、本実施形態に係るライセンス管理システム１は、上記システム構成により、クライアント３００が、複数のアプリケーションサーバ２００から提供される機能を１つの接続ライセンスで利用可能な環境を提供することができる。
【００２４】
なお、上記には、蓄積印刷機能を例に、本実施形態に係るライセンス管理システム１の動作について説明を行ったため、クライアント３００を画像処理装置として説明を行ったが、この限りでない。アプリケーションサーバ２００から機能の提供を受ける装置には、利用者端末などの情報処理装置などがある。
【００２５】
＜ハードウェア構成＞
次に、本実施形態に係るライセンスサーバ１００やアプリケーションサーバ２００のハードウェア構成について説明する。なお、両サーバ１００，２００は、ともに同一構成の情報処理装置である。よって、以下には、ライセンスサーバ１００を例に情報処理装置のハードウェア構成について説明する。
【００２６】
図２は、本実施形態に係る情報処理装置のハードウェア構成例を示す図である。
図２に示すように、ライセンスサーバ１００は、入力装置１０１、表示装置１０２、ドライブ装置１０３、ＲＡＭ（Random Access Memory）１０４、ＲＯＭ（Read Only Memory）１０５、ＣＰＵ（Central Processing Unit）１０６、インタフェース装置１０７、及びＨＤＤ（Hard Disk Drive）１０８などを備え、それぞれがバスＢで相互に接続されている。
【００２７】
入力装置１０１は、キーボードやマウスなどを含み、ライセンスサーバ１００に各操作信号を入力するのに用いられる。表示装置１０２は、ディスプレイなどを含み、ライセンスサーバ１００による処理結果を表示する。
【００２８】
インタフェース装置１０７は、ライセンスサーバ１００をデータ伝送路Ｎに接続するインタフェースである。これにより、ライセンスサーバ１００は、インタフェース装置１０７を介して、アプリケーションサーバ２００やクライアント３００とデータ通信を行うことができる。
【００２９】
ＨＤＤ１０８は、プログラムやデータを格納している不揮発性の記憶装置である。格納されるプログラムやデータには、装置全体を制御する情報処理システム（例えば「Ｗｉｎｄｏｗｓ（商標又は登録商標）」や「ＵＮＩＸ（商標又は登録商標）」などの基本ソフトウェアであるＯＳ（Operating System））、及びシステム上において各種機能（例えば「ジョブ管理機能」）を提供するアプリケーションなどがある。また、ＨＤＤ１０８は、格納しているプログラムやデータを、所定のファイルシステム及び／又はＤＢ（Data Base）により管理している。
【００３０】
ドライブ装置１０３は、着脱可能な記録媒体１０３ａとのインタフェースである。これにより、ライセンスサーバ１００は、ドライブ装置１０３を介して、記録媒体１０３ａの読み取り及び／又は書き込みを行うことができる。記録媒体１０３ａには、例えば、フロッピー（商標又は登録商標）ディスク、ＣＤ（Compact Disk）、及びＤＶＤ（Digital Versatile Disk）、ならびに、ＳＤメモリカード（SD Memory Card）やＵＳＢメモリ（Universal Serial Bus Memory）などがある。
【００３１】
ＲＯＭ１０５は、電源を切っても内部データを保持することができる不揮発性の半導体メモリ（記憶装置）である。ＲＯＭ１０５には、ライセンスサーバ１００の起動時に実行されるＢＩＯＳ（Basic Input/Output System）、情報処理システム設定、及びネットワーク設定などのプログラムやデータが格納されている。ＲＡＭ１０４は、プログラムやデータを一時保持する揮発性の半導体メモリ（記憶装置）である。ＣＰＵ１０６は、上記記憶装置（例えば「ＨＤＤ」や「ＲＯＭ」など）から、プログラムやデータをＲＡＭ上に読み出し、処理を実行することで、装置全体の制御や搭載機能を実現する処理装置である。
【００３２】
以上のように、本実施形態に係るライセンスサーバ１００では、上記ハードウェア構成により、ライセンス管理機能を提供することができる。
【００３３】
＜ライセンス管理機能＞
本実施形態に係るライセンス管理機能について説明する。
本実施形態に係るライセンス管理システム１では、次のようなサーバ連携処理が実行される。まず、クライアント３００から接続要求を受信したアプリケーションサーバ２００は、接続ライセンスが割り当てられたクライアント３００に関する情報（接続ライセンスのキャッシュ情報）を参照し、要求クライアント３００が、接続ライセンス割り当て済みのクライアント３００か否かを判定する。アプリケーションサーバ２００は、要求クライアント３００が、接続ライセンス割り当て済みのクライアント３００でなければ、ライセンスサーバ１００に対して、接続ライセンス割り当て判定要求を行う。その結果、ライセンスサーバ１００は、判定要求に従って、接続ライセンスを管理する管理情報を参照し、要求クライアント３００に接続ライセンスが割り当てられているか否かを判定する。ライセンスサーバ１００は、判定結果をアプリケーションサーバ２００へと応答する。これにより、アプリケーションサーバ２００は、判定結果に基づき、要求クライアント３００の接続許可を制御する。本実施形態に係るライセンス管理システム１は、このようなライセンス管理機能を有している。
【００３４】
従来の方法では、クライアント３００に機能を提供するアプリケーションサーバ２００が接続ライセンスを有する場合、複数のアプリケーションサーバ２００に接続するクライアント３００に対して、１つの接続ライセンスを適用することができない。
【００３５】
例えば、大規模なシステムでは、システム内に複数のアプリケーションサーバ２００が設置され、これらのアプリケーションサーバ２００からクライアント３００に対して機能を提供する場合がある。このような場合、従来の方法では、クライアント３００に対して、アプリケーションサーバ２００ごとに接続ライセンスが割り当てられていた。つまり、クライアント３００は、複数のアプリケーションサーバ２００から提供される機能を１つの接続ライセンスで利用できない。
【００３６】
そこで、本実施形態に係るライセンス管理システム１では、クライアント３００に割り当てる接続ライセンスの管理処理を、アプリケーションサーバ２００とライセンスサーバ１００との間（サーバ間）で連携して実行する仕組みとした。
【００３７】
これにより、本実施形態に係るライセンス管理システム１では、クライアント３００は、複数のアプリケーションサーバ２００から提供される機能を１つの接続ライセンスで利用することができる。
【００３８】
以下に、本実施形態に係るライセンス管理機能の構成とその動作について説明する。
図３は、本実施形態に係るライセンス管理システム１の機能構成例を示す図である。
図３に示すように、本実施形態に係るライセンス管理システム１の機能構成は、アプリケーションサーバ２００が有する機能とライセンスサーバ１００が有する機能に大別される。
【００３９】
《アプリケーションサーバ》
アプリケーションサーバ２００は、通信部２１、情報管理部２２、判定部２３、定期処理制御部２４、及びライセンス関連情報保持部３１などを有している。
【００４０】
通信部２１は、システム１に接続される他の機器とデータ通信を行う機能部である。システム１に接続される他の機器とは、ライセンスサーバ１００やクライアント３００などである。通信部２１は、例えば、予め設定しておいた通信対象機器のネットワーク設定情報（ＩＰアドレス：Internet Protocol Address）に従って、インタフェース装置１０７を制御し、ライセンスサーバ１００やクライアント３００などとデータ通信を行う。
【００４１】
上記データ通信には、例えば、ライセンスサーバ１００への処理要求の送信（通知）やクライアント３００からの接続要求の受信などがある。
【００４２】
情報管理部２２は、アプリケーションサーバ２００に対して接続要求を行ったクライアント３００のうち、接続ライセンスが割り当てられたクライアント３００に関する情報（以下「ライセンス関連情報」と言う）を管理する機能部である。ライセンス関連情報は、ライセンス関連情報保持部３１で保持される。なお、ライセンス関連情報保持部３１は、例えば、アプリケーションサーバ２００が備える記憶装置（ＲＡＭ）の所定の記憶領域にあたる。
【００４３】
情報管理部２２は、他の機能部から受け付けたデータ操作要求に従って、ライセンス関連情報保持部３１にアクセスし、要求された各種データ操作を行うことで、情報を管理する。各種データ操作には、例えば、データ設定（書き込み）、検索、取得、変更（更新）、削除（消去）などがある。
【００４４】
ここで、ライセンス関連情報について説明する。
図４は、本実施形態に係るライセンス関連情報（キャッシュ情報）３１Ｄのデータ例を示す図である。
図４に示すように、ライセンス関連情報３１Ｄは、クライアント識別と接続記録との情報項目が対応づけられたデータである。
【００４５】
［クライアント識別］項目は、クライアント３００を識別する情報（以下「クライアント識別情報」と言う）が設定される情報項目である。項目値は、例えば、クライアント３００にユニークに割り当てられた機器名やＩＰアドレスなどのデータである。［接続記録］項目は、クライアント３００の接続記録（接続記録情報）が設定される情報項目である。項目値は、例えば、日時などのデータである。
【００４６】
情報管理部２２は、上記項目値の設定を、次のように行う。情報管理部２２は、アプリケーションサーバ２００に対して接続要求を行ったクライアント３００のうち、接続ライセンスが割り当てられたクライアント３００の機器名を［クライアント識別］項目に設定する。また、情報管理部２２は、クライアント３００が接続した最終日時を［接続記録］項目に設定する。このとき、情報管理部２２は、要求クライアント３００のクライアント識別情報に基づき、［クライアント識別］項目に対応づけて、［接続記録］項目に最終日時のデータを設定する。
【００４７】
また、情報管理部２２は、上記項目値の検索、取得、更新、又は削除を、次のように行う。情報管理部２２は、要求クライアント３００のクライアント識別情報に基づき、ライセンス関連情報３１Ｄを参照し、該当データを検索、取得、更新、又は削除する。
【００４８】
判定部２３は、クライアント３００に対する各種判定処理を行う機能部である。各種判定処理には、次のようなものがある。
判定部２３は、通信部２１を介して接続要求を受信したクライアント３００（アプリケーションサーバに対して接続要求を行ったクライアント）が、接続ライセンス割り当て済みのクライアント３００か否かを判定する。判定部２３は、要求クライアント３００のクライアント識別情報に基づき、情報管理部２２を介して、ライセンス関連情報３１Ｄを参照し、該当データを検索する。その結果、判定部２３は、検索結果から該当データが確認されると（ライセンス関連情報内に該当データが存在すると）、要求クライアント３００が、接続ライセンス割り当て済みのクライアント３００であると判定する。この場合、判定部２３は、通信部２１を介して、要求クライアント３００に対し、接続許可を送信（通知）する。また、判定部２３は、接続許可された要求クライアント３００のクライアント識別情報を情報管理部２２に渡し、ライセンス関連情報３１Ｄにおいて要求クライアント３００に対応する接続記録情報の更新を要求する。
【００４９】
一方、判定部２３は、検索結果から該当データが確認されなければ（ライセンス関連情報内に該当データが存在しなければ）、要求クライアント３００が、接続ライセンス割り当て済みのクライアント３００でないと判定する。この場合、判定部２３は、通信部２１を介して、ライセンスサーバ１００に対し、要求クライアント３００の接続ライセンス割り当て判定要求を送信（通知）する。その結果、判定部２３は、ライセンスサーバ１００から応答された処理結果に基づき、ライセンスサーバ１００において、要求クライアント３００が、接続ライセンス割り当て済みのクライアント３００か否か、又は、新規の接続ライセンスが割り当てられたクライアント３００か否かを判定する。
【００５０】
このとき、判定部２３は、接続ライセンス割り当て済み又は新規の接続ライセンスが割り当てられたと判定されると、要求クライアント３００のクライアント識別情報を情報管理部２２に渡し、ライセンス関連情報３１Ｄの更新を要求する。これにより、例えば、ライセンス関連情報３１Ｄには、接続ライセンス割り当て済みを判定されたクライアント３００の接続記録情報が更新される。また、ライセンス関連情報３１Ｄには、新規の接続ライセンスが割り当てられたと判定されたクライアント３００のクライアント識別情報及び接続記録情報が設定される。
【００５１】
このように、本実施形態に係るアプリケーションサーバ２００では、ライセンス関連情報３１Ｄに要求クライアント３００が設定されていなければ、ライセンスサーバ１００に対して接続ライセンス割り当て済みの判定処理を要求し、応答された処理結果に基づき、ライセンス関連情報３１Ｄに要求クライアント３００を設定・登録する。また、アプリケーションサーバ２００では、このようにして更新されたライセンス関連情報３１Ｄに設定されたクライアント（登録クライアント）３００のデータから、要求クライアント３００の接続許可を発行する。つまり、ライセンス関連情報３１Ｄは、ライセンスサーバ１００で管理している接続ライセンスのキャッシュ情報の役割を有している。
【００５２】
よって、本実施形態に係るライセンス管理システム１では、ライセンス関連情報（キャッシュ情報）３１Ｄに要求クライアント３００が設定されていない場合を除き、アプリケーションサーバ２００が、クライアント３００からの接続要求を受ける度に、ライセンスサーバ１００に問い合わせを行わなくて済む。これにより、本実施形態では、接続要求受信時における通信負荷の軽減や接続処理時間の短縮を実現できる。
【００５３】
また、判定部２３は、後述する定期処理制御部２４からの判定要求に従って、ライセンス関連情報（キャッシュ情報）３１Ｄに設定されたクライアント３００（登録クライアント：キャッシュされたクライアント）のうち、一定期間、接続されていないクライアント３００を判定する。判定部２３は、情報管理部２２を介して、ライセンス関連情報（キャッシュ情報）３１Ｄを参照し、接続記録情報を取得する。判定部２３は、取得した接続記録情報の日時データ、予め設定しておいた一定期間を示す期間情報、及び現在日時に基づき、接続された最終日時が一定期間を超過しているか否かを確認する。その結果、判定部２３は、期間超過が確認されると（ライセンス関連情報内に該当データが存在すると）、接続記録情報に対応づけられたクライアント識別情報から、該当クライアント３００を特定し、特定したクライアント３００を、一定期間、接続されていないクライアント３００として判定する。
【００５４】
一方、判定部２３は、期間超過が確認されなければ（ライセンス関連情報内に該当データが存在しなければ）、ライセンス関連情報（キャッシュ情報）３１Ｄに設定されたクライアント（登録クライアント）３００に、一定期間、接続されていないクライアント３００は存在しないと判定する。
【００５５】
なお、判定部２３は、上記判定結果を、要求元の定期処理制御部２４に応答する。
【００５６】
定期処理制御部２４は、ライセンス関連情報（キャッシュ情報）３１Ｄの管理処理を定期的に行う機能部である。定期処理制御部２４は、ライセンス関連情報（キャッシュ情報）３１Ｄの管理処理が定期的に実行されるように制御する。管理処理には、次のようなものがある。
【００５７】
定期処理制御部２４は、上述したように、判定部２３に対して、ライセンス関連情報（キャッシュ情報）３１Ｄにおいて、一定期間接続されていないクライアント３００の判定を要求する。その結果、定期処理制御部２４は、判定部２３から応答された判定結果に基づき、該当クライアント３００のクライアント識別情報を情報管理部２２に渡し、ライセンス関連情報（キャッシュ情報）３１Ｄの更新を要求する。これにより、例えば、ライセンス関連情報（キャッシュ情報）３１Ｄからは、一定期間、接続されていないクライアント３００の設定データが削除される。
【００５８】
また、定期処理制御部２４は、情報管理部２２を介して取得したライセンス関連情報（キャッシュ情報）３１Ｄをライセンスサーバ１００に送信し、ライセンスサーバ１００が有する接続ライセンスを管理する管理情報（以下「ライセンス管理情報」と言う）との照合を要求する。その結果、定期処理制御部２４は、ライセンスサーバ１００から応答された処理結果に基づき、ライセンスサーバ１００において、クライアント３００の管理情報の更新に失敗したか否か、又は、クライアント３００の接続ライセンス新規割り当てに失敗したか否かを判定する。
【００５９】
このとき、定期処理制御部２４は、管理情報の更新に失敗又は接続ライセンスの新規割り当てに失敗したと判定されると、該当クライアント３００のクライアント識別情報を情報管理部２２に渡し、ライセンス関連情報（キャッシュ情報）３１Ｄの更新を要求する。これにより、例えば、ライセンス関連情報（キャッシュ情報）３１Ｄからは、管理情報の更新に失敗又は接続ライセンスの新規割り当てに失敗したクライアント３００の設定データが削除される。
【００６０】
このように、本実施形態に係るライセンス管理システム１では、アプリケーションサーバ２００か有するライセンス関連情報（キャッシュ情報）３１Ｄと、ライセンスサーバ１００が有する接続ライセンスを管理する管理情報（以下「ライセンス管理情報」と言う）との整合処理が行われる。
【００６１】
《ライセンスサーバ》
ライセンスサーバ１００は、通信部４１、情報管理部４２、判定部４３、定期処理制御部４４、及びライセンス管理情報保持部５１などを有している。
【００６２】
通信部４１は、アプリケーションサーバ２００とデータ通信を行う機能部である。通信部４１は、例えば、予め設定しておいたアプリケーションサーバ２００のネットワーク設定情報（ＩＰアドレス）に従って、インタフェース装置１０７を制御し、アプリケーションサーバ２００とデータ通信を行う。
【００６３】
上記データ通信には、例えば、アプリケーションサーバ２００からの処理要求の受信や処理結果の送信（応答）などがある。
【００６４】
情報管理部４２は、上記ライセンス管理情報を管理する機能部である。ライセンス管理情報は、ライセンス管理情報保持部５１で保持される。なお、ライセンス管理情報保持部５１は、例えば、ライセンスサーバ１００が備える記憶装置（ＨＤＤ）の所定の記憶領域にあたる。
【００６５】
情報管理部４２は、他の機能部から受け付けたデータ操作要求に従って、ライセンス管理情報保持部５１にアクセスし、要求された各種データ操作を行うことで、情報を管理する。各種データ操作には、例えば、データ設定（書き込み）、検索、取得、変更（更新）、削除（消去）などがある。
【００６６】
ここで、ライセンス管理情報について説明する。
図５は、本実施形態に係るライセンス管理情報５１Ｄのデータ例を示す図である。
図５に示すように、ライセンス管理情報５１Ｄは、ライセンス識別、クライアント識別、及び照合記録の情報項目が対応づけられたデータである。
【００６７】
［ライセンス識別］項目は、接続ライセンスを識別する情報（以下「ライセンス識別情報」と言う）が設定される情報項目である。項目値は、例えば、接続ライセンスにユニークに割り当てられたＩＤなどのデータである。［クライアント識別］項目は、クライアント３００のクライアント識別情報が設定される情報項目である。項目値は、例えば、接続ライセンスが割り当てられたクライアント３００の機器名やＩＰアドレスなどのデータである。［照合記録］項目は、クライアント３００に対応するライセンス関連情報（キャッシュ情報）３１Ｄとの照合記録（照合記録情報）が設定される情報項目である。項目値は、例えば、ライセンス関連情報（キャッシュ情報）３１Ｄとの照合処理の実行日時などのデータである。
【００６８】
このように、ライセンス管理情報５１Ｄでは、各情報項目の対応付けにより、接続ライセンスと、割り当てられたクライアント３００とが管理される。
【００６９】
情報管理部４２は、上記［ライセンス識別］項目の項目値の設定を、次のように行う。情報管理部４２は、予め用意された接続ライセンスのＩＤを［ライセンス識別］項目に設定する。よって、本実施形態に係るライセンス管理システム１では、設定されたライセンス識別情報の数が、クライアント３００への割り当て上限値（クライアントに対して接続を許可する許可数の上限値）となる。
【００７０】
また、情報管理部４２は、上記［クライアント識別］項目及び上記［接続記録］項目の項目値の検索、取得、更新、又は削除を、次のように行う。情報管理部４２は、アプリケーションサーバ２００からの処理要求時に受信した情報に含まれるクライアント識別情報に基づき、ライセンス管理情報５１Ｄを参照し、該当データを検索、取得、更新、又は削除する。
【００７１】
判定部４３は、アプリケーションサーバ２００からの処理要求に従って、クライアント３００に対する各種判定処理を行う機能部である。各種判定処理には、次のようなものがある。
判定部４３は、アプリケーションサーバ２００から、要求クライアント３００の接続ライセンス割り当て判定要求を受信すると、要求クライアント３００に接続ライセンスが割り当てられているか否かを判定する。判定部４３は、要求クライアント３００のクライアント識別情報に基づき、情報管理部４２を介して、ライセンス管理情報５１Ｄを参照し、該当データを検索する。その結果、判定部４３は、検索結果から該当データが確認されると（ライセンス管理情報内に該当データが存在すると）、要求クライアント３００に接続ライセンスが割り当てられている（割り当て済みである）と判定する。
【００７２】
一方、判定部４３は、検索結果から該当データが確認されなければ（ライセンス管理情報内に該当データが存在しなければ）、要求クライアント３００に接続ライセンスが割り当てられていないと判定する。このとき、判定部４３は、ライセンス管理情報５１Ｄを参照し、クライアント３００に割り当てられていない接続ライセンス（以下「余剰ライセンス」と言う）が存在するか否かを判定する。その結果、判定部４３は、余剰ライセンスの存在が確認されると、要求クライアント３００のクライアント識別情報を情報管理部４２に渡し、余剰ライセンスのライセンス識別情報とクライアント識別情報とを対応づけたライセンス管理情報５１Ｄの更新を要求する。これにより、要求クライアント３００には、新規の接続ライセンスが割り当てられる。
【００７３】
判定部４３は、通信部４１を介して、処理要求元のアプリケーションサーバ２００に対し、上記判定処理の結果（割り当て済み／新規割り当て成功／失敗）を送信（応答）する。
【００７４】
また、判定部４３は、アプリケーションサーバ２００から、ライセンス関連情報（キャッシュ情報）３１Ｄの照合要求を受信すると、受信したライセンス関連情報（キャッシュ情報）３１Ｄに設定されたクライアント（登録クライアント）３００が、ライセンス管理情報内にエントリ（登録）されているか否かを判定する。判定部４３は、ライセンス関連情報（キャッシュ情報）３１Ｄのクライアント識別情報に基づき、情報管理部４２を介して、ライセンス管理情報５１Ｄを参照し、該当データを検索する。その結果、判定部４３は、検索結果から該当データが確認されると（ライセンス管理情報内に該当データが存在すると）、ライセンス関連情報（キャッシュ情報）３１Ｄに設定されたクライアント（登録クライアント）３００が、既にエントリされているクライアント３００であると判定する。この場合、判定部４３は、ライセンス関連情報（キャッシュ情報）３１Ｄのクライアント識別情報を情報管理部４２に渡し、ライセンス関連情報（キャッシュ情報）３１Ｄにおいて既にエントリされているクライアント３００に対応する照合記録情報の更新を要求する。これにより、例えば、ライセンス管理情報５１Ｄには、既にエントリされているクライアント３００の照合記録情報が設定され、エントリされているクライアント３００のライセンス管理情報５１Ｄが最新の状態に更新される。
【００７５】
一方、判定部４３は、検索結果から該当データが確認されなければ（ライセンス管理情報内に該当データが存在しなければ）、ライセンス関連情報（キャッシュ情報）３１Ｄに設定されたクライアント（登録クライアント）３００が、エントリされていないクライアント３００であると判定する。
【００７６】
このときも、判定部４３は、ライセンス管理情報５１Ｄを参照し、余剰ライセンスが存在するか否かを判定する。その結果、判定部４３は、余剰ライセンスの存在が確認されると、エントリされていないクライアント３００のクライアント識別情報を情報管理部４２に渡し、ライセンス管理情報５１Ｄの更新を要求する。これにより、例えば、ライセンス管理情報５１Ｄには、エントリされていないクライアント３００のクライアント識別情報に、余剰ライセンスのライセンス識別情報が対応づけて設定され、エントリされていないクライアント３００に、新規の接続ライセンスが割り当てられ、ライセンス管理情報５１Ｄにエントリ（登録）される。
【００７７】
判定部４３は、通信部４１を介して、処理要求元のアプリケーションサーバ２００に対し、上記照合処理の結果（管理情報更新成功／失敗／新規割り当て成功／失敗）を送信（応答）する。
【００７８】
このように、本実施形態に係るライセンス管理システム１では、アプリケーションサーバ２００か有するライセンス関連情報（キャッシュ情報）３１Ｄと、ライセンスサーバ１００が有するライセンス管理情報５１Ｄとの整合処理が行われる。
【００７９】
また、判定部４３は、後述する定期処理制御部４４からの判定要求に従って、ライセンス管理情報５１Ｄにエントリされているクライアント３００のうち、アプリケーションサーバ２００から照合要求時に受信したライセンス関連情報（キャッシュ情報）３１Ｄに基づき、一定期間、データ照合されていないクライアント３００を判定する。判定部４３は、情報管理部４２を介して、ライセンス管理情報５１Ｄを参照し、照合記録情報を取得する。判定部４３は、取得した照合記録情報の日時データ、予め設定しておいた一定期間を示す期間情報、及び現在日時に基づき、照合された最終日時が一定期間を超過しているか否かを確認する。その結果、判定部４３は、期間超過が確認されると（ライセンス管理情報内に該当データが存在すると）、照合記録情報に対応づけられたクライアント識別情報から、該当クライアント３００を特定し、特定したクライアント３００を、一定期間、データ照合されていないクライアント３００として判定する。
【００８０】
一方、判定部４３は、期間超過が確認されなければ（ライセンス管理情報内に該当データが存在しなければ）、ライセンス管理情報５１Ｄに設定されたクライアント（登録クライアント）３００に、一定期間、データ照合されていないクライアント３００は存在しないと判定する。
【００８１】
なお、判定部４３は、上記判定結果を、要求元の定期処理制御部４４に応答する。
【００８２】
定期処理制御部４４は、ライセンス管理情報５１Ｄの管理処理を定期的に行う機能部である。定期処理制御部４４は、ライセンス管理情報５１Ｄの管理処理が定期的に実行されるように制御する。管理処理には、次のようなものがある。
【００８３】
定期処理制御部４４は、上述したように、判定部４３に対して、ライセンス管理情報５１Ｄにおいて、一定期間、データ照合されていないクライアント３００の判定を要求する。その結果、定期処理制御部４４は、判定部４３から応答された判定結果に基づき、該当クライアント３００のクライアント識別情報を情報管理部４２に渡し、ライセンス管理情報５１Ｄの更新を要求する。これにより、例えば、ライセンス管理情報５１Ｄからは、一定期間、データ照合されていないクライアント３００の設定データ（［クライアント識別］項目及び［照合記録］項目の項目値）が削除され、クライアント３００に割り当てられた接続ライセンスが、クライアント３００に対応するライセンス関連情報（キャッシュ情報）３１Ｄの照合履歴に応じて開放される。
【００８４】
以上のように、本実施形態に係るライセンス管理機能は、上記各機能部が連携動作することにより実現される。なお、本実施形態に係るライセンス管理機能は、システム１を構成する各機器に搭載（インストール）されるプログラム（ライセンス管理機能を実現するソフトウェア）が、処理装置（例えば「ＣＰＵ」）により、記憶装置（例えば「ＨＤＤ」や「ＲＯＭ」など）からメモリ（ＲＡＭ）上に読み出され、各機器において、以下の処理が実行されることで実現される。
【００８５】
本実施形態に係るライセンス管理機能の詳細な動作（機能部群の連携動作）について、処理手順を示すフローチャートを用いて説明する。
【００８６】
《クライアント接続時の主な処理》
図６は、本実施形態に係るクライアント接続時のライセンス管理処理手順例を示すフローチャートである。（Ａ）には、アプリケーションサーバ２００の処理手順例が示されており、（Ｂ）には、アプリケーションサーバ２００の処理に対応して実行されるライセンスサーバ１００の処理手順例が示されている。
【００８７】
図６（Ａ）に示すように、アプリケーションサーバ２００は、通信部２１を介して、クライアント３００から接続要求を受信と（ステップＳ１０１：ＹＥＳ）、情報管理部２２を介して、情報保持部３１にアクセスし、ライセンス関連情報（キャッシュ情報）３１Ｄを参照する（ステップＳ１０２）。
【００８８】
アプリケーションサーバ２００は、判定部２３により、要求クライアント３００が接続ライセンス割り当て済みのクライアント３００か否かを判定する（ステップＳ１０３）。このとき、判定部２３は、接続要求時に受信した要求クライアント３００のクライアント識別情報に基づき、ライセンス関連情報３１Ｄを検索し、該当データの有無確認から、上記判定を行う。
【００８９】
アプリケーションサーバ２００は、判定部２３により、要求クライアント３００が接続ライセンス割り当て済みのクライアント３００であると判定されると（ステップＳ１０３：ＹＥＳ）、情報管理部２２により、要求クライアント３００に対応するライセンス関連情報３１Ｄを更新する（ステップＳ１０７）。このとき、判定部２３は、要求クライアント３００のクライアント識別情報を情報管理部２２に渡し、更新要求する。その結果、情報管理部２２は、ライセンス関連情報３１Ｄの該当クライアント識別情報に対応する接続記録情報を更新する（接続記録情報を現在日時で更新する）。
【００９０】
これにより、アプリケーションサーバ２００では、既に接続ライセンスが割り当てられている要求クライアント３００のキャッシュ情報が更新される。
【００９１】
その後、アプリケーションサーバ２００は、通信部２１を介して、要求クライアント３００に対し、接続許可を通知する（ステップＳ１０８）。
【００９２】
一方、アプリケーションサーバ２００は、判定部２３により、要求クライアント３００が接続ライセンス割り当て済みのクライアント３００でないと判定されると（ステップＳ１０３：ＮＯ）、通信部２１を介して、ライセンスサーバ１００に対し、要求クライアント３００に対する接続ライセンスの割り当て状況を問い合わせる（ステップＳ１０４）。このとき、判定部２３は、通信部２１を介して、ライセンスサーバ１００に対し、要求クライアント３００の接続ライセンス割り当て判定要求を送信する。
【００９３】
これにより、ライセンスサーバ１００では、図６（Ｂ）に示すような処理が実行される。
ライセンスサーバ１００は、通信部４１を介して、アプリケーションサーバ２００から判定要求を受信と（ステップＳ２０１：ＹＥＳ）、情報管理部４２を介して、情報保持部５１にアクセスし、ライセンス管理情報５１Ｄを参照する（ステップＳ２０２）。
【００９４】
ライセンスサーバ１００は、判定部４３により、要求クライアント３００に接続ライセンスが割り当てられているか否かを判定する（ステップＳ２０３）。このとき、判定部４３は、判定要求時に受信した要求クライアント３００のクライアント識別情報に基づき、ライセンス管理情報５１Ｄを検索し、該当データの有無確認から、上記判定を行う。
【００９５】
ライセンスサーバ１００は、判定部４３により、要求クライアント３００に接続ライセンスが割り当てられていると判定されると（ステップＳ２０３：ＹＥＳ）、通信部４１を介して、アプリケーションサーバ２００に対し、判定部４３の処理結果（割り当て済みの判定結果）を送信する（ステップＳ２０６）。
【００９６】
一方、ライセンスサーバ１００は、判定部４３により、要求クライアント３００に接続ライセンスが割り当てられていないと判定されると（ステップＳ２０３：ＮＯ）、ライセンス管理情報５１Ｄに設定された接続ライセンス（登録ライセンス）のうち、余剰ライセンスが存在するか否かを判定する（ステップＳ２０４）。このとき、判定部４３は、ライセンス管理情報５１Ｄを参照し、クライアント３００に割り当てられていない接続ライセンスの存在確認から、上記判定を行う。
【００９７】
ライセンスサーバ１００は、判定部４３により、ライセンス管理情報５１Ｄに設定された接続ライセンス（登録ライセンス）のうち、余剰ライセンスが存在すると判定されると（ステップＳ２０４：ＹＥＳ）、情報管理部４２により、余剰ライセンスに対応するライセンス管理情報５１Ｄを更新し、要求クライアント３００に、新規の接続ライセンスを割り当てる（ステップＳ２０５）。このとき、判定部４３は、要求クライアント３００のクライアント識別情報を情報管理部４２に渡し、更新要求する。その結果、情報管理部４２は、ライセンス管理情報５１Ｄの該当ライセンス識別情報にクライアント識別情報を対応づけて設定し、ライセンス管理情報５１Ｄを更新する。
【００９８】
その後、ライセンスサーバ１００は、通信部４１を介して、アプリケーションサーバ２００に対し、情報管理部４２の処理結果（新規割り当て成功の処理結果）を送信する（ステップＳ２０６）。
【００９９】
また、ライセンスサーバ１００は、判定部４３により、ライセンス管理情報５１Ｄに設定された接続ライセンス（登録ライセンス）のうち、余剰ライセンスが存在しないと判定されると（ステップＳ２０４：ＮＯ）、通信部４１を介して、アプリケーションサーバ２００に対し、情報管理部４２の処理結果（新規割り当て失敗の処理結果）を送信する（ステップＳ２０６）。
【０１００】
これにより、アプリケーションサーバ２００では、要求クライアント３００に対する接続ライセンスの割り当て状況を、ライセンスサーバ１００に問い合わせると、上記処理結果を受信する（ステップＳ１０５：ＹＥＳ）。
【０１０１】
図６（Ａ）の説明に戻る。その後、アプリケーションサーバ２００は、判定部２３により、要求クライアント３００が接続ライセンス割り当て済みのクライアント３００か、又は、要求クライアント３００に新規の接続ライセンスの割り当てに成功したか否かを判定する（ステップＳ１０６）。このとき、判定部２３は、ライセンスサーバ１００から応答された処理結果に基づき、上記判定を行う。
【０１０２】
アプリケーションサーバ２００は、判定部２３により、要求クライアント３００が接続ライセンス割り当て済みのクライアント３００である、又は、要求クライアント３００に新規の接続ライセンスの割り当てに成功したと判定されると（ステップＳ１０６：ＹＥＳ）、情報管理部２２により、要求クライアント３００に対応するライセンス関連情報３１Ｄを更新する（ステップＳ１０７）。このとき、判定部２３は、要求クライアント３００のクライアント識別情報を情報管理部２２に渡し、更新要求する。その結果、情報管理部２２は、ライセンス関連情報３１Ｄにクライアント識別情報及び接続記録情報（現在日時）を対応づけて設定し、ライセンス関連情報３１Ｄを更新する。
【０１０３】
これにより、アプリケーションサーバ２００には、新規接続ライセンスが割り当てられた要求クライアント３００のキャッシュ情報が設定・登録される。また、アプリケーションサーバ２００には、既に接続ライセンスが割り当てられている要求クライアント３００のキャッシュ情報が再設定・登録される。
【０１０４】
その後、アプリケーションサーバ２００は、通信部２１を介して、要求クライアント３００に対し、接続許可を通知する（ステップＳ１０８）。
【０１０５】
一方、アプリケーションサーバ２００は、判定部２３により、要求クライアント３００が接続ライセンス割り当て済みのクライアント３００でない、又は、要求クライアント３００に新規の接続ライセンスの割り当てに失敗したと判定されると（ステップＳ１０６：ＮＯ）、通信部２１を介して、要求クライアント３００に対し、接続不許可（接続拒否）を通知する（ステップＳ１０９）。
【０１０６】
アプリケーションサーバ２００は、上記処理を終えると、再びステップＳ１０１の処理に移行し、クライアント３００の接続要求待ち（ステップＳ１０１：ＮＯ）となる。
【０１０７】
《アプリケーションサーバの定期処理》
図７は、本実施形態に係るライセンス管理における定期処理手順例（その１）を示すフローチャートである。（Ａ）には、アプリケーションサーバ２００の処理手順例が示されており、（Ｂ）には、アプリケーションサーバ２００の処理に対応して実行されるライセンスサーバ１００の処理手順例が示されている。
【０１０８】
図７（Ａ）に示すように、アプリケーションサーバ２００は、定期処理制御部２４からの処理要求に応じて、情報管理部２２が、情報保持部３１にアクセスし、ライセンス関連情報３１Ｄの接続記録情報を参照する（ステップＳ３０１）。
【０１０９】
アプリケーションサーバ２００は、判定部２３により、ライセンス関連情報３１Ｄに設定されたクライアント（登録クライアント）３００のうち、一定期間接続されていないクライアント３００が存在するか否かを判定する（ステップＳ３０２）。このとき、判定部２３は、参照した接続記録情報の日時データ、予め設定しておいた一定期間を示す期間情報、及び現在日時に基づく、接続日時の一定期間超過の確認結果から、上記判定を行う。
【０１１０】
アプリケーションサーバ２００は、判定部２３により、ライセンス関連情報３１Ｄに設定されたクライアント（登録クライアント）３００のうち、一定期間接続されていないクライアント３００が存在すると判定されると（ステップＳ３０２：ＹＥＳ）、定期処理制御部２４により、情報管理部２２を介して、該当クライアント３００に対応するライセンス関連情報３１Ｄを削除する（ステップＳ３０３）。このとき、定期処理制御部２４は、該当クライアント３００のクライアント識別情報を情報管理部２２に渡し、削除要求する。その結果、情報管理部２２は、ライセンス関連情報３１Ｄのクライアント識別情報及び接続記録情報を削除する。
【０１１１】
これにより、アプリケーションサーバ２００では、一定期間、接続されていない登録クライアント３００のキャッシュ情報が削除される。
【０１１２】
一方、アプリケーションサーバ２００は、判定部２３により、ライセンス関連情報３１Ｄに設定されたクライアント（登録クライアント）３００のうち、一定期間接続されていないクライアント３００が存在しないと判定された場合（ステップＳ３０２：ＮＯ）、上記ステップＳ３０３に示す削除処理を行わない。
【０１１３】
なお、上記ステップＳ３０２の判定処理は、ライセンス関連情報３１Ｄに設定されたクライアント（登録クライアント）３００それぞれに対して行われる。
【０１１４】
その後、アプリケーションサーバ２００は、定期処理制御部２４により、通信部２１を介して、ライセンスサーバ１００に対し、ライセンス関連情報３１Ｄを送信する（ステップＳ３０４）。このとき、定期処理制御部２４は、通信部２１を介して、ライセンスサーバ１００に対し、最新のライセンス関連情報３１Ｄの照合要求を送信する。
【０１１５】
これにより、ライセンスサーバ１００では、図７（Ｂ）に示すような処理が実行される。
ライセンスサーバ１００は、通信部４１を介して、アプリケーションサーバ２００からライセンス関連情報３１Ｄを受信すると（ステップＳ４０１：ＹＥＳ）、情報管理部４２を介して、情報保持部５１にアクセスし、ライセンス管理情報５１Ｄを参照する（ステップＳ４０２）。
【０１１６】
ライセンスサーバ１００は、判定部４３により、受信したライセンス関連情報３１Ｄに設定されたクライアント（登録クライアント）３００が、ライセンス管理情報５１Ｄにエントリ（登録）されているか否かを判定する（ステップＳ４０３）。このとき、判定部４３は、照合要求時に受信したライセンス関連情報３１Ｄのクライアント識別情報に基づき、ライセンス管理情報５１Ｄを検索し、該当データの有無確認から、上記判定を行う。
【０１１７】
ライセンスサーバ１００は、判定部４３により、受信したライセンス関連情報３１Ｄに設定されたクライアント（登録クライアント）３００が、ライセンス管理情報５１Ｄにエントリされていると判定されると（ステップＳ４０３：ＹＥＳ）、情報管理部４２により、該当クライアント３００に対応するライセンス管理情報５１Ｄを更新する（ステップＳ４０４）。このとき、判定部４３は、ライセンス関連情報３１Ｄに設定された該当クライアント３００のクライアント識別情報を情報管理部４２に渡し、更新要求する。その結果、情報管理部４２は、ライセンス管理情報５１Ｄの該当クライアント識別情報に対応する照合記録情報を更新する（照合記録情報を現在日時で更新する）。
【０１１８】
その後、ライセンスサーバ１００は、通信部４１を介して、アプリケーションサーバ２００に対し、情報管理部４２の処理結果（照合記録更新の処理結果）を送信する（ステップＳ４０７）。
【０１１９】
一方、ライセンスサーバ１００は、判定部４３により、受信したライセンス関連情報３１Ｄに設定されたクライアント（登録クライアント）３００が、ライセンス管理情報５１Ｄにエントリされていないと判定されると（ステップＳ４０３：ＮＯ）、ライセンス管理情報５１Ｄに設定された接続ライセンス（登録ライセンス）のうち、余剰ライセンスが存在するか否かを判定する（ステップＳ４０５）。このとき、判定部４３は、ライセンス管理情報５１Ｄを参照し、クライアント３００に割り当てられていない接続ライセンスの存在確認から、上記判定を行う。
【０１２０】
ライセンスサーバ１００は、判定部４３により、ライセンス管理情報５１Ｄに設定された接続ライセンス（登録ライセンス）のうち、余剰ライセンスが存在すると判定されると（ステップＳ４０５：ＹＥＳ）、情報管理部４２により、余剰ライセンスに対応するライセンス管理情報５１Ｄを更新し、該当クライアント３００に、新規の接続ライセンスを割り当てる（ステップＳ４０６）。このとき、判定部４３は、要求クライアント３００のクライアント識別情報を情報管理部４２に渡し、更新要求する。その結果、情報管理部４２は、ライセンス管理情報５１Ｄの該当ライセンス識別情報にクライアント識別情報を対応づけて設定し、ライセンス管理情報５１Ｄを更新する。このとき、情報管理部４２は、クライアント識別情報を対応づけて照合記録情報（現在日時）も設定する。
【０１２１】
その後、ライセンスサーバ１００は、通信部４１を介して、アプリケーションサーバ２００に対し、情報管理部４２の処理結果（新規割り当て成功の処理結果）を送信する（ステップＳ４０７）。
【０１２２】
また、ライセンスサーバ１００は、判定部４３により、ライセンス管理情報５１Ｄに設定された接続ライセンス（登録ライセンス）のうち、余剰ライセンスが存在しないと判定されると（ステップＳ４０５：ＮＯ）、通信部４１を介して、アプリケーションサーバ２００に対し、情報管理部４２の処理結果（新規割り当て失敗の処理結果）を送信する（ステップＳ４０７）。
【０１２３】
これにより、アプリケーションサーバ２００では、最新のライセンス関連情報３１Ｄを、ライセンスサーバ１００に送信すると、上記処理結果を受信する（ステップＳ３０５：ＹＥＳ）。
【０１２４】
図７（Ａ）の説明に戻る。その後、アプリケーションサーバ２００は、判定部２３により、照合記録の更新に失敗したか、又は、新規の接続ライセンスの割り当てに失敗したか否かを判定する（ステップＳ３０６）。このとき、判定部２３は、ライセンスサーバ１００から応答された処理結果に基づき、上記判定を行う。
【０１２５】
アプリケーションサーバ２００は、判定部２３により、照合記録の更新に失敗した、又は、新規の接続ライセンスの割り当てに失敗したと判定されると（ステップＳ３０６：ＹＥＳ）、定期処理制御部２４により、情報管理部２２を介して、該当クライアント３００に対応するライセンス関連情報３１Ｄを削除する（ステップＳ３０７）。このとき、定期処理制御部２４は、該当クライアント３００のクライアント識別情報を情報管理部２２に渡し、削除要求する。その結果、情報管理部２２は、ライセンス関連情報３１Ｄのクライアント識別情報及び接続記録情報を削除する。
【０１２６】
これにより、アプリケーションサーバ２００では、照合記録更新に失敗した登録クライアント３００のキャッシュ情報が削除される。また、アプリケーションサーバ２００では、新規接続ライセンスの割り当てに失敗した登録クライアント３００のキャッシュ情報が削除される。
【０１２７】
一方、アプリケーションサーバ２００は、判定部２３により、照合記録の更新に成功した、又は、新規の接続ライセンスの割り当てに成功したと判定された場合（ステップＳ３０６：ＮＯ）、上記ステップＳ３０７に示す削除処理を行わない。
【０１２８】
アプリケーションサーバ２００は、上記処理を定期的に実行することで、ライセンスサーバ１００が有するライセンス管理情報５１Ｄとライセンス関連情報３１Ｄとを整合させる。なお、図７（Ａ）に示す定期処理は、アプリケーションサーバ２００が、クライアント３００が設定されたライセンス関連情報３１Ｄを保持している場合に実行される処理である。
【０１２９】
《ライセンスサーバの定期処理》
図８は、本実施形態に係るライセンス管理における定期処理手順例（その２）を示すフローチャートである。図８には、ライセンスサーバ１００単独で実行される定期処理手順例が示されている。
【０１３０】
図８に示すように、ライセンスサーバ１００は、定期処理制御部４４からの処理要求に応じて、情報管理部４２が、情報保持部５１にアクセスし、ライセンス管理情報５１Ｄの照合記録情報を参照する（ステップＳ５０１）。
【０１３１】
ライセンスサーバ１００は、判定部４３により、ライセンス管理情報５１Ｄに設定されたクライアント（登録クライアント）３００のうち、アプリケーションサーバ２００から照合要求時に受信したライセンス関連情報３１Ｄに基づき、一定期間、データ照合されていないクライアント３００が存在するか否かを判定する（ステップＳ５０２）。このとき、判定部４３は、参照した照合記録情報の日時データ、予め設定しておいた一定期間を示す期間情報、及び現在日時に基づく、照合日時の一定期間超過の確認結果から、上記判定を行う。
【０１３２】
ライセンスサーバ１００は、判定部４３により、ライセンス管理情報５１Ｄに設定されたクライアント（登録クライアント）３００のうち、一定期間、データ照合されていないクライアント３００が存在すると判定されると（ステップＳ５０２：ＹＥＳ）、定期処理制御部４４により、情報管理部４２を介して、該当クライアント３００に対応するライセンス管理情報５１Ｄを削除し、該当クライアント３００に割り当てた接続ライセンスを開放する（ステップＳ５０３）。このとき、定期処理制御部４４は、該当クライアント３００のクライアント識別情報を情報管理部４２に渡し、削除要求する。その結果、情報管理部４２は、ライセンス管理情報５１Ｄの該当ライセンス識別情報に対応づけて設定されたクライアント識別情報及び照合記録情報を削除する。
【０１３３】
これにより、ライセンスサーバ１００では、自身が有するライセンス管理情報５１Ｄと、アプリケーションサーバ２００が有するライセンス関連情報（キャッシュ情報）３１Ｄとが、一定期間、データ照合されていない登録クライアント３００に割り当てられていた接続ライセンスが開放される。
【０１３４】
一方、ライセンスサーバ１００は、判定部４３により、ライセンス管理情報５１Ｄに設定されたクライアント（登録クライアント）３００のうち、一定期間、データ照合されていないクライアント３００が存在しないと判定された場合（ステップＳ５０２：ＮＯ）、上記ステップＳ５０３に示す削除処理を行わない。
【０１３５】
なお、上記ステップＳ５０２の判定処理は、ライセンス管理情報５１Ｄに設定されたクライアント（登録クライアント）３００それぞれに対して行われる。
【０１３６】
ここからは、上記処理手順により実現される、本実施形態に係るライセンス管理システム１の動作について、６つの例を挙げて説明する。
【０１３７】
《動作例１》
図９は、本実施形態に係るライセンス管理の動作例（その１）を示す図である。図９には、アプリケーションサーバ（１）２００１に、接続ライセンスが割り当てられていないクライアント（Ａ）３００ａが接続要求したときの動作例が示されている。
【０１３８】
図９に示すように、クライアント（Ａ）３００ａがアプリケーションサーバ（１）２００１に接続要求を行うと［１］、アプリケーションサーバ（１）２００１は、ライセンス関連情報３１Ｄを参照し、クライアント（Ａ）３００ａが登録されていないことを確認する。次に、アプリケーションサーバ（１）２００１は、ライセンスサーバ１００に対して、接続ライセンスの割り当て判定を要求する［２］。
【０１３９】
ライセンスサーバ１００は、ライセンス管理情報５１Ｄを参照し、クライアント（Ａ）３００ａに接続ライセンスが割り当てられていないことを確認する。次に、ライセンスサーバ１００は、ライセンス管理情報５１Ｄに基づく余剰ライセンスの確認を行い、クライアント（Ａ）３００ａに対し、余剰している新規接続ライセンスを割り当て、ライセンス管理情報５１Ｄを更新する［３］。
【０１４０】
その後、アプリケーションサーバ（１）２００１は、ライセンスサーバ１００から処理結果（新規接続ライセンスの割り当て成功）が応答されると［４］、処理結果に基づき、新規接続ライセンスが割り当てられたクライアント（Ａ）３００ａをライセンス関連情報３１Ｄに登録し、情報更新する［５］。
【０１４１】
これにより、アプリケーションサーバ（１）２００１からは、クライアント（Ａ）３００ａに対して、接続許可が通知される。
【０１４２】
このようにして、本実施形態に係るライセンス管理システム１では、新規クライアント３００の接続が許可される。
【０１４３】
《動作例２》
図１０は、本実施形態に係るライセンス管理の動作例（その２）を示す図である。図１０には、ライセンスサーバ１００で、クライアント（Ａ）３００ａの接続ライセンスが管理されている場合に、アプリケーションサーバ（１）２００１に、接続ライセンスが割り当てられたクライアント（Ａ）３００ａが接続要求したときの動作例が示されている。
【０１４４】
図１０に示すように、クライアント（Ａ）３００ａがアプリケーションサーバ（１）２００１に接続要求を行うと［１］、アプリケーションサーバ（１）２００１は、ライセンス関連情報３１Ｄを参照し、クライアント（Ａ）３００ａが登録されていることを確認する。
【０１４５】
これにより、アプリケーションサーバ（１）２００１からは、クライアント（Ａ）３００ａに対して、接続許可が通知される。
【０１４６】
このようにして、本実施形態に係るライセンス管理システム１では、登録クライアント３００の接続が許可される。また、ライセンス管理システム１では、既にクライアント（Ａ）３００ａがアプリケーションサーバ２００に登録（キャッシュ）されているため、ライセンスサーバ１００に対して、接続ライセンス割り当て判定要求を行わない。これにより、ライセンス管理システム１では、接続時の処理時間が短縮される。
【０１４７】
《動作例３》
図１１は、本実施形態に係るライセンス管理の動作例（その３）を示す図である。図１１には、ライセンスサーバ１００で、クライアント（Ａ）３００ａの接続ライセンスが管理されている場合に、アプリケーションサーバ（２）２００２に、接続ライセンスが割り当てられているクライアント（Ａ）３００ａが接続要求したときの動作例が示されている。
【０１４８】
図１１に示すように、クライアント（Ａ）３００ａがアプリケーションサーバ（２）２００２に接続要求を行うと［１］、アプリケーションサーバ（２）２００２は、ライセンス関連情報３１Ｄを参照し、クライアント（Ａ）３００ａが登録されていないことを確認する。次に、アプリケーションサーバ（２）２００２は、ライセンスサーバ１００に対して、接続ライセンスの割り当て判定を要求する［２］。
【０１４９】
ライセンスサーバ１００は、ライセンス管理情報５１Ｄを参照し、クライアント（Ａ）３００ａに接続ライセンスが割り当てられていることを確認する。
【０１５０】
その後、アプリケーションサーバ（２）２００２は、ライセンスサーバ１００から処理結果（接続ライセンスが割り当て済み）が応答されると［３］、処理結果に基づき、既に接続ライセンスが割り当てられたクライアント（Ａ）３００ａをライセンス関連情報３１Ｄに登録し、情報更新する［４］。
【０１５１】
これにより、アプリケーションサーバ（２）２００２からは、クライアント（Ａ）３００ａに対して、接続許可が通知される。
【０１５２】
このようにして、本実施形態に係るライセンス管理システム１では、クライアント３００の接続先が変更（アプリケーションサーバ２００の接続が変更）されても、１つの接続ライセンスに従って、要求クライアント３００の接続が許可される。
【０１５３】
《動作例４》
図１２は、本実施形態に係るライセンス管理の動作例（その４）を示す図である。図１２には、ライセンスサーバ１００で、クライアント（Ａ）３００ａ，クライアント（Ｂ）３００ｂ，クライアント（Ｄ）３００ｄの接続ライセンスが管理されており、余剰ライセンスがない場合に、アプリケーションサーバ（１）２００１に、接続ライセンスが割り当てられていないクライアント（Ｄ）３００ｄが接続要求したときの動作例が示されている。
【０１５４】
図１２に示すように、クライアント（Ｄ）３００ｄがアプリケーションサーバ（１）２００１に接続要求を行うと［１］、アプリケーションサーバ（１）２００１は、ライセンス関連情報３１Ｄを参照し、クライアント（Ｄ）３００ｄが登録されていないことを確認する。次に、アプリケーションサーバ（１）２００１は、ライセンスサーバ１００に対して、接続ライセンスの割り当て判定を要求する［２］。
【０１５５】
ライセンスサーバ１００は、ライセンス管理情報５１Ｄを参照し、クライアント（Ｄ）３００ｄに接続ライセンスが割り当てられていないことを確認する。次に、ライセンスサーバ１００は、ライセンス管理情報５１Ｄに基づく余剰ライセンスの確認を行い、クライアント（Ｄ）３００ｄに対して割り当てられる余剰ライセンスが存在しないことを確認する。
【０１５６】
その後、アプリケーションサーバ（１）２００１は、ライセンスサーバ１００から処理結果（新規接続ライセンスの割り当て失敗）が応答されると［３］、処理結果に基づき、クライアント（Ｄ）３００ｄに対して、接続不許可を通知する。
【０１５７】
このようにして、本実施形態に係るライセンス管理システム１では、新規クライアント３００の接続時に余剰ライセンスがないと、接続が許可されない（接続拒否される）。
【０１５８】
《動作例５》
図１３は、本実施形態に係るライセンス管理の動作例（その５）を示す図である。図１３には、アプリケーションサーバ（１）２００１に登録されたクライアント（Ｂ）３００ｂが、一定期間、接続されていない場合に、定期処理を行ったときの動作例が示されている。
【０１５９】
図１３に示すように、アプリケーションサーバ（１）２００１は、定期処理において、ライセンス関連情報３１Ｄを参照し、接続記録情報から、クライアント（Ｂ）３００ｂが、一定期間、接続されていないことを確認する。アプリケーションサーバ（１）２００１は、確認結果（一定期間接続なし）に基づき、クライアント（Ｂ）３００ｂに対応するライセンス関連情報３１Ｄ（該当データ）を削除し、情報更新する［１］。その後、アプリケーションサーバ（１）２００１は、更新後のライセンス関連情報３１Ｄを送信し、ライセンスサーバ１００に対して、データ照合を要求する［２］。
【０１６０】
その結果、ライセンスサーバ１００は、ライセンス管理情報５１Ｄを参照し、ライセンス関連情報３１Ｄに設定されたクライアント３００（クライアント（Ｂ）を含まない登録クライアント）の照合記録情報を更新する。
【０１６１】
その後、ライセンスサーバ１００は、定期処理において、ライセンス管理情報５１Ｄを参照し、照合記録情報から、クライアント（Ｂ）３００ｂが、一定期間、データ照合されていないことを確認する。ライセンスサーバ１００は、確認結果（一定期間照合なし）に基づき、クライアント（Ｂ）３００ｂに対応するライセンス管理情報５１Ｄ（該当データ）を削除し、情報更新する［３］。
【０１６２】
このようにして、本実施形態に係るライセンス管理システム１では、アプリケーションサーバ２００が有するライセンス関連情報（キャッシュ情報）３１Ｄと、ライセンスサーバ１００が有するライセンス管理情報５１Ｄとが、一定期間、データ照合されていない登録クライアント３００に割り当てられた接続ライセンスが開放される（余剰ライセンスとなる）。
【０１６３】
《動作例６》
図１４は、本実施形態に係るライセンス管理の動作例（その６）を示す図である。図１４には、アプリケーションサーバ（１）２００１，アプリケーションサーバ（２）２００２に登録されたクライアント（Ｂ）３００ｂが、アプリケーションサーバ（１）２００１に、一定期間、接続されていない場合に、アプリケーションサーバ（１）２００１，アプリケーションサーバ（２）２００２が定期処理を行ったときの動作例が示されている。
【０１６４】
図１４に示すように、アプリケーションサーバ（１）２００１は、定期処理において、ライセンス関連情報３１Ｄを参照し、接続記録情報から、クライアント（Ｂ）３００ｂが、一定期間、接続されていないことを確認する。アプリケーションサーバ（１）２００１は、確認結果（一定期間接続なし）に基づき、クライアント（Ｂ）３００ｂに対応するライセンス関連情報３１Ｄ（該当データ）を削除し、情報更新する［１］。その後、アプリケーションサーバ（１）２００１は、更新後のライセンス関連情報３１Ｄを送信し、ライセンスサーバ１００に対して、データ照合を要求する［２−１］。
【０１６５】
その結果、ライセンスサーバ１００は、ライセンス管理情報５１Ｄを参照し、ライセンス関連情報３１Ｄに設定されたクライアント３００（クライアント（Ｂ）を含まない登録クライアント）の照合記録情報を更新する。
【０１６６】
一方、アプリケーションサーバ（２）２００２は、定期処理において、ライセンス関連情報３１Ｄを参照し、接続記録情報から、クライアント（Ｂ）３００ｂが接続されていることを確認する。そのため、アプリケーションサーバ（２）２００２では、クライアント（Ｂ）３００ｂに対応するライセンス関連情報３１Ｄ（該当データ）が削除されない。その後、アプリケーションサーバ（２）２００２は、遅延なくライセンス関連情報３１Ｄを送信し、ライセンスサーバ１００に対して、データ照合を要求する［２−２］。
【０１６７】
その結果、ライセンスサーバ１００は、ライセンス管理情報５１Ｄを参照し、ライセンス関連情報３１Ｄに設定されたクライアント３００（クライアント（Ｂ）を含む登録クライアント全て）の照合記録情報を更新する。
【０１６８】
これにより、ライセンスサーバ１００では、アプリケーションサーバ（１）２００１に対して、一定期間、接続されていないクライアント（Ｂ）３００ｂであっても、割り当てられた接続ライセンスを開放しない。
【０１６９】
このようにして、本実施形態に係るライセンス管理システム１では、複数のアプリケーションサーバ２００において、あるアプリケーションサーバ２００に一定期間接続されていないクライアント３００であっても、接続している他のアプリケーションサーバ２００からライセンスサーバ１００に対し、遅延なく照合要求が通知されれば、当該クライアント３００に接続ライセンスが割り当てられた状態で管理される。
【０１７０】
＜まとめ＞
以上のように、本実施形態に係るライセンス管理システム１によれば、次のようなサーバ連携処理が実行される。
【０１７１】
まず、クライアント３００から接続要求を受信したアプリケーションサーバ２００は、判定部２３が、情報管理部２２を介して、ライセンス関連情報（キャッシュ情報）３１Ｄを参照し、要求クライアント３００が、接続ライセンス割り当て済みのクライアント３００か否かを判定する。アプリケーションサーバ２００は、要求クライアント３００が、接続ライセンス割り当て済みのクライアント３００でなければ、通信部２１を介して、ライセンスサーバ１００に対し、接続ライセンス割り当て判定要求を行う。
【０１７２】
その結果、ライセンスサーバ１００は、判定要求に従って、判定部４３が、情報管理部４２を介して、ライセンス管理情報５１Ｄを参照し、要求クライアント３００に接続ライセンスが割り当てられているか否かを判定する。ライセンスサーバ１００は、通信部４１を介して、判定結果をアプリケーションサーバ２００へと応答する。
【０１７３】
これにより、アプリケーションサーバ２００は、判定結果に基づき、要求クライアント３００の接続許可を制御する。
【０１７４】
また、本実施形態に係るライセンス管理システム１によれば、アプリケーションサーバ２００が有するライセンス関連情報３１Ｄと、ライセンスサーバ１００が有するライセンス管理情報５１Ｄとの整合処理が定期的に行われる。
【０１７５】
これによって、本実施形態に係るライセンス管理システム１では、クライアント３００に割り当てる接続ライセンスの管理処理が、アプリケーションサーバ２００とライセンスサーバ１００との間（サーバ間）で連携して実行される。その結果、本実施形態では、クライアント３００は、複数のサーバ２００から提供される機能を１つの接続ライセンスで利用することができる。
【０１７６】
［第２の実施形態］
本実施形態では、アプリケーションサーバの故障やサーバ間の通信障害に対応して、ライセンス管理情報の更新を行い、接続ライセンスを一括管理するシステム構成について説明する。なお、以降では、第１の実施形態と同じ事項について、同一参照符号を付し、その説明を省略する。
【０１７７】
《動作例１》
図１５は、サーバ間で通信障害が発生した場合のライセンス管理の動作例を示す図である。図１５には、第１の実施形態において、図１４に示した動作例の中で、アプリケーションサーバ（２）２００２からライセンスサーバ１００に対して、サーバ間の通信障害により照合要求が遅延して通知された場合に、アプリケーションサーバ（１）２００１に、接続ライセンスが割り当てられていないクライアント（Ｄ）３００ｄが接続要求したときの動作例が示されている。
【０１７８】
図１５に示すように、アプリケーションサーバ（１）２００１は、定期処理において、ライセンス関連情報３１Ｄを参照し、接続記録情報から、クライアント（Ｂ）３００ｂが、一定期間、接続されていないことを確認する。アプリケーションサーバ（１）２００１は、確認結果（一定期間接続なし）に基づき、クライアント（Ｂ）３００ｂに対応するライセンス関連情報３１Ｄ（該当データ）を削除し、情報更新する［１］。その後、アプリケーションサーバ（１）２００１は、更新後のライセンス関連情報３１Ｄを送信し、ライセンスサーバ１００に対して、データ照合を要求する［２］。
【０１７９】
その結果、ライセンスサーバ１００は、ライセンス管理情報５１Ｄを参照し、ライセンス関連情報３１Ｄに設定されたクライアント３００（クライアント（Ｂ）を含まない登録クライアント）の照合記録情報を更新する。
【０１８０】
一方、アプリケーションサーバ（２）２００２は、定期処理において、ライセンス関連情報３１Ｄを参照し、接続記録情報から、クライアント（Ｂ）３００ｂが接続されていることを確認する。そのため、アプリケーションサーバ（２）２００２では、クライアント（Ｂ）３００ｂに対応するライセンス関連情報３１Ｄ（該当データ）が削除されない。
【０１８１】
しかし、アプリケーションサーバ（２）２００２は、何らかの原因で、ライセンスサーバ１００に対する照合要求の通知が遅延する（ライセンス関連情報が送信されない）。
【０１８２】
その間に、ライセンスサーバ１００では、定期処理が行われる。ライセンスサーバ１００は、定期処理において、ライセンス管理情報５１Ｄを参照し、照合記録情報から、クライアント（Ｂ）３００ｂが、一定期間、データ照合されていないことを確認する。ライセンスサーバ１００は、確認結果（一定期間照合なし）に基づき、クライアント（Ｂ）３００ｂに対応するライセンス管理情報５１Ｄ（該当データ）を削除し、情報更新する［３］。つまり、ライセンスサーバ１００では、クライアント（Ｂ）３００ｂに割り当てられた接続ライセンスが開放される（余剰ライセンスとなる）。
【０１８３】
また、その間に、クライアント（Ｄ）３００ｄがアプリケーションサーバ（１）２００１に接続要求を行うと［４］、アプリケーションサーバ（１）２００１は、ライセンス関連情報３１Ｄを参照し、クライアント（Ｄ）３００ｄが登録されていないことを確認する。次に、アプリケーションサーバ（１）２００１は、ライセンスサーバ１００に対して、接続ライセンスの割り当て判定を要求する［５］。
【０１８４】
ライセンスサーバ１００は、ライセンス管理情報５１Ｄを参照し、クライアント（Ｄ）３００ｄに接続ライセンスが割り当てられていないことを確認する。次に、ライセンスサーバ１００は、ライセンス管理情報５１Ｄに基づく余剰ライセンスの確認を行い、クライアント（Ｄ）３００ｄに対し、開放された接続ライセンス（余剰ライセンス）を割り当て、ライセンス管理情報５１Ｄを更新する［６］。
【０１８５】
その後、アプリケーションサーバ（１）２００１は、ライセンスサーバ１００から処理結果（新規接続ライセンスの割り当て成功）が応答されると［７］、処理結果に基づき、新規接続ライセンスが割り当てられたクライアント（Ｄ）３００ｄをライセンス関連情報３１Ｄに登録し、情報更新する［８］。
【０１８６】
これにより、アプリケーションサーバ（１）２００１からは、クライアント（Ｄ）３００ｄに対して、接続許可が通知される。
【０１８７】
一方、アプリケーションサーバ（２）２００２において、遅延の原因（通信障害）が解消され、ライセンスサーバ１００に対して、照合要求が通知されると（ライセンス関連情報が送信されると）［９］、ライセンスサーバ１００は、ライセンス管理情報５１Ｄを参照し、ライセンス関連情報３１Ｄに設定されたクライアント３００（クライアント（Ｂ）を含む登録クライアント全て）の照合記録情報を更新する。しかし、ライセンスサーバ１００は、クライアント（Ｂ）３００ｂに対応する照合記録情報の更新に失敗する。
【０１８８】
その結果、アプリケーションサーバ（２）２００２は、ライセンスサーバ１００から処理結果（照合記録の更新失敗）が応答されると［１０］、処理結果に基づき、クライアント（Ｂ）３００ｂに対応するライセンス関連情報３１Ｄ（該当データ）を削除し、情報更新する［１１］。
【０１８９】
これにより、アプリケーションサーバ（２）２００２からは、クライアント（Ｂ）３００ｂに対して、接続不許可が通知される。
【０１９０】
また、データ照合の要求通知が遅延する原因には、サーバ間の通信障害以外にも、アプリケーションサーバ２００のハードウェア／ソフトウェア故障が考えられる。
【０１９１】
《動作例２》
図１６は、アプリケーションサーバ２００が故障した場合のライセンス管理の動作例を示す図である。図１６には、３台のアプリケーションサーバ（１）２００１，（２）２００２，（３）２００３のうち、アプリケーションサーバ（３）２００３が故障している場合の動作例が示されている。
【０１９２】
図１６に示すように、３台のアプリケーションサーバ（１）２００１，（２）２００２，（３）２００３が有する各ライセンス関連情報（キャッシュ情報）３１Ｄには、クライアント（Ａ）〜（Ｅ）が設定されている。
【０１９３】
このとき、アプリケーションサーバ（３）２００３が故障しているとすると、アプリケーションサーバ（３）２００３からは、ライセンスサーバ１００に対して、データ照合の要求が通知されない。つまり、アプリケーションサーバ（３）２００３では、クライアント（Ｃ），（Ｄ），（Ｅ）が設定されたライセンス関連情報３１Ｄが送信されない。
【０１９４】
その結果、ライセンスサーバ１００では、正常動作中のアプリケーションサーバ（１）２００１，（２）２００２から照合要求時に受信するライセンス関連情報３１Ｄに設定されていないクライアント（Ｅ）のみ、ライセンス管理情報５１Ｄとデータ照合が行われないことになる。その結果、ライセンス管理情報５１Ｄでは、クライアント（Ｅ）に対応する照合記録情報が更新されない。
【０１９５】
これにより、ライセンスサーバ１００では、定期処理において、照合記録情報が更新されていないクライアント（Ｅ）に対応するライセンス管理情報５１Ｄ（該当データ）が削除され、クライアント（Ｅ）に割り当てられていた接続ライセンスが開放されることになる。
【０１９６】
上記動作例１，２に示すように、アプリケーションサーバ２００の故障やサーバ間の通信障害などを考慮して、ライセンス管理情報５１Ｄの更新を行わないライセンス管理システム１では、クライアント３００がアプリケーションサーバ２００に接続している状態であっても、ライセンスサーバ１００において、割り当てられている接続ライセンスが開放され、該当クライアント３００の接続が拒否されることになる。
【０１９７】
そこで、本実施形態に係るライセンスサーバ１００では、アプリケーションサーバ２００との通信やデータ照合などの処理結果を記録する機能を有する仕組みとした。
【０１９８】
これにより、本実施形態に係るライセンス管理システム１では、ライセンスサーバ１００が、アプリケーションサーバ２００との通信状態に応じて、接続ライセンスの開放を行う。その結果、ライセンス管理システム１では、アプリケーションサーバ２００に接続しているクライアント３００が、サーバ故障や通信障害に起因して、接続ライセンスが開放され、接続が拒否される現象を防ぐことができる。
【０１９９】
＜ライセンス管理機能＞
図１７は、本実施形態に係るライセンス管理システム１の機能構成例を示す図である。また、図１８は、本実施形態に係るライセンス管理の動作例を示す図である。
図１７に示すように、本実施形態において、第１の実施形態と異なる構成は、ライセンスサーバ１００が、結果情報保持部６１を有している点である。
【０２００】
結果情報保持部６１は、例えば、ライセンスサーバ１００が備える記憶装置（ＲＡＭ）の所定の記憶領域にあたり、図１８に示すような結果情報６１Ｄを保持する。
【０２０１】
結果情報６１Ｄは、通信結果及び照合結果などの情報項目が含まれる。［通信結果］項目は、アプリケーションサーバ２００との通信結果を示す情報（以下「通信結果情報」と言う）が記録される項目であり、項目値には、アプリケーションサーバ２００からのライセンス関連情報３１Ｄの受信結果などがある。［照合結果］項目は、ライセンス関連情報３１Ｄとライセンス管理情報５１Ｄとの照合結果を示す情報（以下「照合結果情報」と言う）が記録される項目であり、ライセンス関連情報３１Ｄに設定されたクライアントごとのライセンス管理情報５１Ｄのエントリ（登録）確認結果などがある。
【０２０２】
図１７の説明に戻る。接続ライセンスの開放は、定期処理制御部４４により行われる。定期処理制御部４４は、定期的に、ライセンス管理情報保持部５１にアクセスし、判定部４３を介して、ライセンス管理情報５１Ｄの照合記録情報が、一定期間内に更新されているか否かの判定結果を得る。定期処理制御部４４は、判定結果から、一定期間内に更新されていない照合記録情報が確認されると、情報管理部４２を介して、照合記録情報が更新されていないクライアント３００に対応するライセンス管理情報５１Ｄ（該当データ）を削除する。これにより、アプリケーションサーバ２００からデータ照合されていない接続ライセンスが開放される。
【０２０３】
そこで、本実施形態に係る定期処理制御部４４では、定期処理において、結果情報保持部６１にアクセスし、結果情報６１Ｄに基づき、情報管理部４２によるライセンス管理情報５１Ｄの更新（該当データの削除）を行う。
【０２０４】
本実施形態に係るライセンスサーバ１００では、アプリケーションサーバ２００から照合要求時のライセンス関連情報３１Ｄの受信結果が、通信部４１により、結果情報６１Ｄの通信結果情報として記録される。また、ライセンスサーバ１００では、ライセンス関連情報３１Ｄとライセンス管理情報５１Ｄとのデータ照合結果が、判定部４３により、結果情報６１Ｄの照合結果情報として記録される。
【０２０５】
定期処理制御部４４は、このようにして記録された結果情報６１Ｄに基づき、システム内の全てのアプリケーションサーバ２００からライセンス関連情報３１Ｄを受信し、ライセンス関連情報３１Ｄとライセンス管理情報５１Ｄとのデータ照合を行ったかを確認する。つまり、定期処理制御部４４では、システム内の全てのアプリケーションサーバ２００が有するライセンス関連情報３１Ｄとライセンス管理情報５１Ｄとのデータ照合を、ライセンス管理情報５１Ｄの更新条件としている。よって、定期処理制御部４４は、更新条件が満たされなければ、照合記録情報が更新されていないクライアント３００に対応するライセンス管理情報５１Ｄ（該当データ）の削除を行わない。
【０２０６】
以下に、本実施形態に係るライセンス管理システム１におけるライセンス管理情報５１Ｄの更新動作例について、図１８を用いて説明する。図１８には、３台のアプリケーションサーバ（１）２００１，（２）２００２，（３）２００３のうち、アプリケーションサーバ（３）２００３が故障している場合の動作例が示されている。
【０２０７】
このような場合、ライセンスサーバ１００では、通信部４１により、アプリケーションサーバ（１）２００１，（２）２００２からライセンス関連情報３１Ｄを受信した旨、及びアプリケーションサーバ（３）２００３からライセンス関連情報３１Ｄを受信していない旨が、結果情報６１Ｄの通信結果情報として記録される。また、ライセンスサーバ１００では、判定部４３により、アプリケーションサーバ（１）２００１，（２）２００２から受信したライセンス関連情報３１Ｄに設定されたクライアント（Ａ），（Ｂ），（Ｃ），（Ｄ）のデータ照合結果が、結果情報６１Ｄの照合結果情報として記録される。このとき、ライセンスサーバ１００では、ライセンス関連情報３１Ｄを受信したアプリケーションサーバ（１）２００１，（２）２００２に設定されたクライアント（Ａ），（Ｂ），（Ｃ），（Ｄ）に対応するライセンス管理情報５１Ｄの照合記録情報が更新される。
【０２０８】
ライセンスサーバ１００では、このように記録された結果情報６１Ｄに基づき、定期処理制御部４４による定期処理が行われる。ライセンスサーバ１００では、アプリケーションサーバ（３）２００３が有するライセンス関連情報３１Ｄとライセンス管理情報５１Ｄとのデータ照合が行われていないことから、クライアント（Ｅ）に対応するライセンス管理情報５１Ｄの照合記録情報が一定期間内に更新されていなくても、該当データの削除を行わない。
【０２０９】
＜変形例＞
また、上記ライセンス管理システム１では、アプリケーションサーバ２００との通信不可状態の経過時間に応じて、ライセンスサーバ１００の定期処理により、照合記録情報が更新されていないクライアント３００に対応するライセンス管理情報５１Ｄ（該当データ）を削除するようにしてもよい。
【０２１０】
図１９は、本実施形態の変形例に係るライセンス管理の動作例を示す図である。
本変形例に係るライセンスサーバ１００は、定期処理制御部４４により、システム内のアプリケーションサーバ２００のうち、通信不可状態であるアプリケーションサーバ２００の回復状態（原因が解消された状態）を確認する。その結果、ライセンスサーバ１００は、予め設定しておいた期間内に、アプリケーションサーバ２００の通信不可状態の回復が確認されなければ、ライセンス管理情報５１Ｄの更新を行う。
【０２１１】
定期処理制御部４４は、結果情報６１Ｄの通信結果情報に基づき、ライセンス関連情報３１Ｄが受信されていないアプリケーションサーバ（３）２００３（通信不可状態のアプリケーションサーバ）を特定する。定期処理制御部４４は、特定したアプリケーションサーバ（３）２００３に対し、通信部４１を介して、所定の情報取得コマンドを発行・送信し、ライセンス関連情報３１Ｄの取得を一定期間試みる。定期処理制御部４４は、その間、アプリケーションサーバ（３）２００３からライセンス関連情報３１Ｄが取得できなければ、ライセンス管理情報５１Ｄの照合記録情報が、一定期間内に更新されているか否かを確認し、照合記録情報が更新されていないクライアント（Ｅ）に対応するライセンス管理情報５１Ｄ（該当データ）の削除する。これにより、アプリケーションサーバ（３）２００３からデータ照合されていない接続ライセンスが開放される。
【０２１２】
＜まとめ＞
以上のように、本実施形態に係るライセンス管理システム１によれば、クライアント３００に割り当てる接続ライセンスの管理処理が、アプリケーションサーバ２００とライセンスサーバ１００との間（サーバ間）で連携して実行される。また、ライセンス管理システム１によれば、ライセンスサーバ１００が、アプリケーションサーバ２００との通信やデータ照合などの処理結果を記録する機能を有し、アプリケーションサーバ２００との通信状態に応じて、接続ライセンスの開放を行う。
【０２１３】
これによって、本実施形態に係るライセンス管理システム１では、第１の実施形態と同様の効果を奏するとともに、アプリケーションサーバ２００の故障やサーバ間の通信障害が発生しても、ライセンスサーバ１００において、接続ライセンスの管理を適切に行うことができる。
【０２１４】
ここまで、上記実施形態の説明を行ってきたが、上記実施形態に係る「ライセンス管理機能」は、図を用いて説明を行った各処理手順を、動作環境（プラットフォーム）にあったプログラミング言語でコード化したプログラムが、システム１を構成する各機器（アプリケーション管理装置やライセンス管理装置など）の処理装置（例えば「ＣＰＵ」）により実行されることで実現される。
【０２１５】
例えば、ライセンスサーバ１００の場合、上記プログラムは、コンピュータが読み取り可能な記録媒体１０３ａに格納することができる。これにより、例えば、上記プログラムは、ドライブ装置１０３を介して、ライセンスサーバ１００にインストールすることができる。また、ライセンスサーバ１００は、インタフェース装置１０７を備えていることから、電気通信回線を用いて上記プログラムをダウンロードし、インストールすることもできる。
【０２１６】
なお、アプリケーションサーバ２００も、同様のハードウェア構成であることから、上述した方法により、上記プログラムをインストールすることができる。
【０２１７】
また、上記実施形態では、ライセンスサーバ１００が、アプリケーションサーバ２００からライセンス関連情報３１Ｄを受信すると、受信したライセンス関連情報３１Ｄとライセンス管理情報５１Ｄとのデータ照合を行い、ライセンス管理情報５１Ｄにエントリ（登録）されたクライアント３００に対応する照合記録情報を更新する処理例を示したが、この限りでない。例えば、ライセンスサーバ１００は、定期処理において、データ照合、照合結果に基づく照合記録情報の更新、及び照合記録情報の更新有無確認などを行うようにしてもよい。この場合、ライセンスサーバ１００では、定期処理前に、アプリケーションサーバ２００から、複数回に渡りライセンス関連情報３１Ｄを取得しても、最新のライセンス関連情報３１Ｄに基づき、ライセンス管理情報５１Ｄとのデータ照合を行うことになる。
【０２１８】
また、上記実施形態では、アプリケーションサーバ２００が、接続要求したクライアント３００が接続ライセンス割り当て済みのクライアント３００か否かを判断する処理例（クライアント単位で接続ライセンスを管理する動作例）について説明を行ったが、この限りでない。例えば、クライアント３００を利用する利用者のアカウント単位で接続ライセンスを管理するようにしてもよい。
【０２１９】
最後に、上記実施形態に挙げた形状や構成に、その他の要素との組み合わせなど、ここで示した要件に、本発明が限定されるものではない。これらの点に関しては、本発明の主旨をそこなわない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。
【符号の説明】
【０２２０】
１      ライセンス管理システム
２１，４１    通信部
２２，４２    情報管理部
２３，４３    判定部
２４，４４    定期処理制御部
３１    ライセンス関連情報保持部（Ｄ：ライセンス関連情報（キャッシュ情報））
５１    ライセンス管理情報保持部（Ｄ：ライセンス管理情報）
６１    結果情報保持部（Ｄ：結果情報）
１００  ライセンスサーバ（ライセンス管理装置：情報処理装置）
１０１  入力装置
１０２  表示装置
１０３  ドライブ装置（ａ：記録媒体）
１０４  ＲＡＭ（揮発性の半導体メモリ）
１０５  ＲＯＭ（不揮発性の半導体メモリ）
１０６  ＣＰＵ（中央処理装置）
１０７  インタフェース装置（ＮＩＣ：Network I/F Card）
１０８  ＨＤＤ（不揮発性の記憶装置）
２００  アプリケーションサーバ（機能提供装置：情報処理装置）
３００  クライアント（画像処理装置及び／又は情報処理装置）
Ｂ      バス
Ｎ      データ伝送路（ネットワーク）
【先行技術文献】
【特許文献】
【０２２１】
【特許文献１】特開２００６−１４６７４０号公報
【図１】
0005633306.tif 000002
【図２】
0005633306.tif 000003
【図３】
0005633306.tif 000004
【図４】
0005633306.tif 000005
【図５】
0005633306.tif 000006
【図６】
0005633306.tif 000007
【図７】
0005633306.tif 000008
【図８】
0005633306.tif 000009
【図９】
0005633306.tif 000010
【図１０】
0005633306.tif 000011
【図１１】
0005633306.tif 000012
【図１２】
0005633306.tif 000013
【図１３】
0005633306.tif 000014
【図１４】
0005633306.tif 000015
【図１５】
0005633306.tif 000016
【図１６】
0005633306.tif 000017
【図１７】
0005633306.tif 000018
【図１８】
0005633306.tif 000019
【図１９】
0005633306.tif 000020