(57)【要約】  複数の開発ベンダによってそれぞれ開発された複数のソフトウェアプロダクトのパッチ情報をライセンス管理プログラム（４００）がまとめて管理する。また、業務Ｗｅｂサーバ（２０）で動作するパッチ処理部（５３０）がライセンス管理Ｗｅｂサーバ（１０）からパッチに関連する情報を取得してパッチを適用する。また、パッチ処理部（５３０）は、ライセンス管理Ｗｅｂサーバ（１０）からパッチに関連する情報を取得する際に、動作環境をチェックする。
2008146408.tif 000002
【特許請求の範囲】
【請求項１】
複数のユーザに利用されるソフトウェアプロダクトのライセンスを管理するライセンス管理プログラムであって、
ソフトウェアプロダクトの使用を許可されたユーザに関する情報である使用許可ユーザ情報を複数の開発ベンダによりそれぞれ開発された複数のソフトウェアプロダクトについてソフトウェアプロダクトごとに取得するユーザ情報取得手順と、
各ソフトウェアプロダクトが起動される際に前記使用許可ユーザ情報に基づくソフトウェアプロダクトの起動の可否の判定に用いられるライセンスをユーザごとに作成するライセンス作成手順と、
をコンピュータに実行させることを特徴とするライセンス管理プログラム。
【請求項２】
各ソフトウェアプロダクトのパッチおよびパッチ情報を各開発ベンダから取得するパッチ情報取得手順と、
前記パッチ情報取得手順によりパッチおよびパッチ情報が取得されたソフトウェアプロダクトのうち使用が許可されたソフトウェアプロダクトのパッチ情報をユーザのコンピュータに送信するパッチ情報送信手順と、
前記パッチ情報送信手順により送信されたパッチ情報に基づいてユーザのコンピュータが要求するパッチを該ユーザのコンピュータに送信するパッチ送信手順と、
をさらにコンピュータに実行させることを特徴とする請求項１に記載のライセンス管理プログラム。
【請求項３】
各開発ベンダから商品情報を取得する商品情報取得手順と、
前記商品情報取得手順により取得された商品情報をユーザのコンピュータに送信する商品情報送信手順と、
をさらにコンピュータに実行させることを特徴とする請求項１または２に記載のライセンス管理プログラム。
【請求項４】
複数のユーザに利用されるソフトウェアプロダクトの利用を制御するソフトウェア利用制御方法であって、
ソフトウェアのライセンスを管理するライセンス管理装置がソフトウェアプロダクトの使用を許可されたユーザに関する情報である使用許可ユーザ情報を複数の開発ベンダによりそれぞれ開発された複数のソフトウェアプロダクトについてソフトウェアプロダクトごとに取得するユーザ情報取得ステップと、
前記ライセンス管理装置が前記使用許可ユーザ情報に基づいてライセンスをユーザごとに作成するライセンス作成ステップと、
各ソフトウェアプロダクトが実装されたユーザコンピュータが各ソフトウェアプロダクトの起動要求を受け付けた際に、前記ライセンス作成ステップにより作成されたライセンスに基づいて各ソフトウェアプロダクトの起動可否を判定する起動可否判定ステップと、
を含んだことを特徴とするソフトウェア利用制御方法。
【請求項５】
前記ライセンス管理装置が各ソフトウェアプロダクトのパッチおよびパッチ情報を各開発ベンダから取得するパッチ情報取得ステップと、
前記パッチ情報取得ステップによりパッチおよびパッチ情報が取得されたソフトウェアプロダクトのうち使用が許可されたソフトウェアプロダクトのパッチ情報を前記ライセンス管理装置がユーザコンピュータに送信するパッチ情報送信ステップと、
前記パッチ情報送信ステップにより送信されたパッチ情報に基づいてユーザコンピュータが要求するパッチを前記ライセンス管理装置が該ユーザコンピュータに送信するパッチ送信ステップと、
前記パッチ送信ステップにより送信されたパッチを受信したユーザコンピュータがパッチを適用するパッチ適用ステップと、
をさらに含んだことを特徴とする請求項４に記載のソフトウェア利用制御方法。
【請求項６】
ユーザコンピュータがリソースの使用状況、時刻およびジョブ量に基づいてパッチを適用するか否かを判定するパッチ適用可否判定ステップと、
前記パッチ適用ステップによるパッチ適用後に、ユーザコンピュータ再起動、結果メッセージの出力、パッチ適用後の後処理を行う後処理ステップとをさらに含み、
前記パッチ情報送信ステップは、前記パッチ適用可否判定ステップによりパッチ適用可と判定したユーザコンピュータがパッチ情報の送信を要求した場合に、前記ライセンス管理装置がパッチ情報をユーザコンピュータに送信することを特徴とする請求項５に記載のソフトウェア利用制御方法。
【請求項７】
複数のユーザに利用されるソフトウェアプロダクトのライセンスを管理するライセンス管理装置であって、
ソフトウェアプロダクトの使用を許可されたユーザに関する情報である使用許可ユーザ情報を複数の開発ベンダによりそれぞれ開発された複数のソフトウェアプロダクトについてソフトウェアプロダクトごとに取得するユーザ情報取得手段と、
各ソフトウェアプロダクトが起動される際に前記使用許可ユーザ情報に基づくソフトウェアプロダクトの起動の可否の判定に用いられるライセンスをユーザごとに作成するライセンス作成手段と、
を備えたことを特徴とするライセンス管理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェアプロダクトの開発ベンダのライセンス管理やユーザサポートの負担を軽減するとともに、ソフトウェアプロダクトのユーザのライセンス管理やパッチ情報収集の負担を軽減することができるライセンス管理プログラム、ソフトウェア利用制御方法およびライセンス管理装置に関するものである。
【背景技術】
【０００２】
従来から、ソフトウェアの不正コピーによる不正使用を防止するために、様々な技術が開発されている。例えば、特許文献１には、機器の識別番号やクライアントのネットワークアドレスを用いてソフトウェアのライセンスや起動を管理する技術が記載されている。【０００３】
【特許文献１】特開平７−２１９７６３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ライセンスを用いてソフトウェアの不正コピーによる不正使用を防止する場合には、ユーザごとにライセンスを管理する必要がある。しかしながら、会計ソフトやＣＡＤソフトなどの専門分野に特化したソフトウェアプロダクトを開発している開発ベンダにとっては、ソフトウェア開発業務以外に多くのリソースを割くことは困難であり、ライセンス管理やユーザサポートは大きな負担となるという問題がある。【０００５】
また、複数の開発ベンダがそれぞれ提供するソフトウェアプロダクトのユーザにとっては、開発ベンダごとにライセンスの管理やパッチ情報の収集を行う必要があり、利用するソフトウェアプロダクトの数が多くなるとその管理が大きな負担となるという問題がある。【０００６】
本発明は、上記に鑑みてなされたものであって、ソフトウェアプロダクトの開発ベンダのライセンス管理やユーザサポートの負担を軽減するとともに、ソフトウェアプロダクトのユーザのライセンス管理やパッチ情報収集の負担を軽減することができるライセンス管理プログラム、ソフトウェア利用制御方法およびライセンス管理装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するため、請求項１に係る発明は、複数のユーザに利用されるソフトウェアプロダクトのライセンスを管理するライセンス管理プログラムであって、ソフトウェアプロダクトの使用を許可されたユーザに関する情報である使用許可ユーザ情報を複数の開発ベンダによりそれぞれ開発された複数のソフトウェアプロダクトについてソフトウェアプロダクトごとに取得するユーザ情報取得手順と、各ソフトウェアプロダクトが起動される際に前記使用許可ユーザ情報に基づくソフトウェアプロダクトの起動の可否の判定に用いられるライセンスをユーザごとに作成するライセンス作成手順と、をコンピュータに実行させることを特徴とする。【０００８】
この請求項１の発明によれば、使用許可ユーザ情報を複数の開発ベンダによりそれぞれ開発された複数のソフトウェアプロダクトについてソフトウェアプロダクトごとに取得し、各ソフトウェアプロダクトが起動される際に使用許可ユーザ情報に基づくソフトウェアプロダクトの起動の可否の判定に用いられるライセンスをユーザごとに作成するよう構成したので、各開発ベンダはライセンスを管理する必要がなくなり、ユーザは開発ベンダごとにライセンスを管理する必要がなくなる。【０００９】
また、請求項２に係る発明は、上記発明において、各ソフトウェアプロダクトのパッチおよびパッチ情報を各開発ベンダから取得するパッチ情報取得手順と、前記パッチ情報取得手順によりパッチおよびパッチ情報が取得されたソフトウェアプロダクトのうち使用が許可されたソフトウェアプロダクトのパッチ情報をユーザのコンピュータに送信するパッチ情報送信手順と、前記パッチ情報送信手順により送信されたパッチ情報に基づいてユーザのコンピュータが要求するパッチを該ユーザのコンピュータに送信するパッチ送信手順と、をさらにコンピュータに実行させることを特徴とする。【００１０】
この請求項２の発明によれば、各ソフトウェアプロダクトのパッチおよびパッチ情報を各開発ベンダから取得し、パッチおよびパッチ情報を取得したソフトウェアプロダクトのうち使用が許可されたソフトウェアプロダクトのパッチ情報をユーザのコンピュータに送信し、送信したパッチ情報に基づいてユーザのコンピュータが要求するパッチをユーザのコンピュータに送信するよう構成したので、各開発ベンダはパッチを管理する必要がなくなり、ユーザは開発ベンダごとにパッチ情報を収集する必要がなくなる。【００１１】
また、請求項３に係る発明は、上記発明において、各開発ベンダから商品情報を取得する商品情報取得手順と、前記商品情報取得手順により取得された商品情報をユーザのコンピュータに送信する商品情報送信手順と、をさらにコンピュータに実行させることを特徴とする。【００１２】
この請求項３の発明によれば、各開発ベンダから商品情報を取得し、取得した商品情報をユーザのコンピュータに送信するよう構成したので、各開発ベンダはユーザに商品情報を提供する必要がなくなる。【００１３】
また、請求項４に係る発明は、複数のユーザに利用されるソフトウェアプロダクトの利用を制御するソフトウェア利用制御方法であって、ソフトウェアのライセンスを管理するライセンス管理装置がソフトウェアプロダクトの使用を許可されたユーザに関する情報である使用許可ユーザ情報を複数の開発ベンダによりそれぞれ開発された複数のソフトウェアプロダクトについてソフトウェアプロダクトごとに取得するユーザ情報取得ステップと、前記ライセンス管理装置が前記使用許可ユーザ情報に基づいてライセンスをユーザごとに作成するライセンス作成ステップと、各ソフトウェアプロダクトが実装されたユーザコンピュータが各ソフトウェアプロダクトの起動要求を受け付けた際に、前記ライセンス作成ステップにより作成されたライセンスに基づいて各ソフトウェアプロダクトの起動可否を判定する起動可否判定ステップと、を含んだことを特徴とする。【００１４】
この請求項４の発明によれば、ソフトウェアのライセンスを管理するライセンス管理装置がソフトウェアプロダクトの使用を許可されたユーザに関する情報である使用許可ユーザ情報を複数の開発ベンダによりそれぞれ開発された複数のソフトウェアプロダクトについてソフトウェアプロダクトごとに取得し、ライセンス管理装置が使用許可ユーザ情報に基づいてライセンスをユーザごとに作成し、各ソフトウェアプロダクトが実装されたユーザコンピュータが各ソフトウェアプロダクトの起動要求を受け付けた際に、ライセンス管理装置により作成されたライセンスに基づいて各ソフトウェアプロダクトの起動可否を判定するよう構成したので、各開発ベンダはライセンスを管理する必要がなくなり、ユーザは開発ベンダごとにライセンスを管理する必要がなくなる。【００１５】
また、請求項５に係る発明は、上記発明において、前記ライセンス管理装置が各ソフトウェアプロダクトのパッチおよびパッチ情報を各開発ベンダから取得するパッチ情報取得ステップと、前記パッチ情報取得ステップによりパッチおよびパッチ情報が取得されたソフトウェアプロダクトのうち使用が許可されたソフトウェアプロダクトのパッチ情報を前記ライセンス管理装置がユーザコンピュータに送信するパッチ情報送信ステップと、前記パッチ情報送信ステップにより送信されたパッチ情報に基づいてユーザコンピュータが要求するパッチを前記ライセンス管理装置が該ユーザコンピュータに送信するパッチ送信ステップと、前記パッチ送信ステップにより送信されたパッチを受信したユーザコンピュータがパッチを適用するパッチ適用ステップと、をさらに含んだことを特徴とする。【００１６】
この請求項５の発明によれば、ライセンス管理装置が各ソフトウェアプロダクトのパッチおよびパッチ情報を各開発ベンダから取得し、パッチおよびパッチ情報を取得したソフトウェアプロダクトのうち使用が許可されたソフトウェアプロダクトのパッチ情報をライセンス管理装置がユーザコンピュータに送信し、送信したパッチ情報に基づいてユーザコンピュータが要求するパッチをライセンス管理装置がユーザコンピュータに送信し、ライセンス管理装置により送信されたパッチを受信したユーザコンピュータがパッチを適用するよう構成したので、各開発ベンダはパッチを管理する必要がなくなり、ユーザは開発ベンダごとにパッチ情報を収集する必要がなくなる。【００１７】
また、請求項６に係る発明は、上記発明において、ユーザコンピュータがリソースの使用状況、時刻およびジョブ量に基づいてパッチを適用するか否かを判定するパッチ適用可否判定ステップと、前記パッチ適用ステップによるパッチ適用後に、ユーザコンピュータ再起動、結果メッセージの出力、パッチ適用後の後処理を行う後処理ステップとをさらに含み、前記パッチ情報送信ステップは、前記パッチ適用可否判定ステップによりパッチ適用可と判定したユーザコンピュータがパッチ情報の送信を要求した場合に、前記ライセンス管理装置がパッチ情報をユーザコンピュータに送信することを特徴とする。【００１８】
この請求項６の発明によれば、ユーザコンピュータがリソースの使用状況、時刻およびジョブ量に基づいてパッチを適用するか否かを判定し、パッチ適用可と判定したユーザコンピュータがパッチ情報の送信を要求した場合に、ライセンス管理装置がパッチ情報をユーザコンピュータに送信するよう構成したので、ユーザコンピュータの処理負荷が軽いときを選んでパッチを適用することができる。また、パッチ適用後に、ユーザコンピュータ再起動、結果メッセージの出力、パッチ適用後処理を行うよう構成したので、パッチの適用結果を即座にユーザコンピュータに反映させることができる。【００１９】
また、請求項７に係る発明は、複数のユーザに利用されるソフトウェアプロダクトのライセンスを管理するライセンス管理装置であって、ソフトウェアプロダクトの使用を許可されたユーザに関する情報である使用許可ユーザ情報を複数の開発ベンダによりそれぞれ開発された複数のソフトウェアプロダクトについてソフトウェアプロダクトごとに取得するユーザ情報取得手段と、各ソフトウェアプロダクトが起動される際に前記使用許可ユーザ情報に基づくソフトウェアプロダクトの起動の可否の判定に用いられるライセンスをユーザごとに作成するライセンス作成手段と、を備えたことを特徴とする。【００２０】
この請求項７の発明によれば、使用許可ユーザ情報を複数の開発ベンダによりそれぞれ開発された複数のソフトウェアプロダクトについてソフトウェアプロダクトごとに取得し、各ソフトウェアプロダクトが起動される際に使用許可ユーザ情報に基づくソフトウェアプロダクトの起動の可否の判定に用いられるライセンスをユーザごとに作成するよう構成したので、各開発ベンダはライセンスを管理する必要がなくなり、ユーザは開発ベンダごとにライセンスを管理する必要がなくなる。
【発明の効果】
【００２１】
請求項１、４および７の発明によれば、各開発ベンダはライセンスを管理する必要がなくなるので、各開発ベンダがライセンス管理を行う負担を軽減することができるという効果を奏する。また、ユーザは開発ベンダごとにライセンスを管理する必要がなくなるので、ユーザのライセンス管理負担も軽減することができるという効果を奏する。【００２２】
また、請求項２および５の発明によれば、各開発ベンダはパッチを管理する必要がなくので、各開発ベンダがパッチ管理を行う負担を軽減することができるという効果を奏する。また、ユーザは開発ベンダごとにパッチ情報を収集する必要がなくなるので、ユーザの管理負担も軽減することができるという効果を奏する。【００２３】
また、請求項３の発明によれば、各開発ベンダはユーザに商品情報を提供する必要がなくなるので、各開発ベンダがユーザに商品情報を提供する負担をなくすことができるという効果を奏する。【００２４】
また、請求項６の発明によれば、ユーザコンピュータの処理負荷が軽いときを選んでパッチを適用するので、ユーザコンピュータが行っている処理に悪影響を与えることなくパッチ適用を行うことができるという効果を奏する。また、パッチの適用結果を即座にユーザコンピュータに反映させるので、パッチ適用が不完全なままユーザコンピュータが処理を継続するリスクをなくすことができる。
【図面の簡単な説明】
【００２５】
【図１】図１は、本実施例１に係るライセンス管理システムの概念を説明するための説明図である。
【図２】図２は、本実施例１に係るライセンス管理システムの構成を示す機能ブロック図である。
【図３】図３は、機能別許可情報を説明するための説明図である。
【図４】図４は、ライセンスファイルの一例を示す図である。
【図５】図５は、ライセンスチェックセットアッププログラムによるライセンスチェックプログラムのインストール処理の処理手順を示すフローチャートである。
【図６】図６は、ライセンスチェックプログラムによるアプリ起動チェック処理の処理手順を示すフローチャートである。
【図７】図７は、アプリケーション起動時のライセンスチェックプログラムによるチェック例を示す図である。
【図８】図８は、ライセンス管理プログラムを実行するコンピュータの構成を示す機能ブロック図である。
【図９】図９は、本実施例２に係るライセンス管理の概念を説明するための説明図である。
【図１０】図１０は、本実施例２に係るライセンス管理システムの構成を示す機能ブロック図である。
【図１１】図１１は、パッチ処理部がパッチ適用に用いるライセンスファイル、パッチ管理ファイルおよび動作条件管理ファイルの関係を説明するための説明図である。
【図１２】図１２は、パッチ管理ファイルおよび動作条件管理ファイルの一例を示す図である。
【図１３】図１３は、本実施例２に係るライセンス管理システムによるパッチ適用処理の処理手順を示すフローチャートである。
【符号の説明】
【００２６】
１０    ライセンス管理Ｗｅｂサーバ
２０    業務Ｗｅｂサーバ
２１    アプリケーション
２２，３２    ライセンスチェックセットアッププログラム
２３，３３    セットアッププログラム
３０    ＣＤ
３１    ライセンスファイル
４０    ベンダサーバ
４１    アップロードプログラム
５０    インターネット
１００，４００    ライセンス管理プログラム
１１０，４１０    ライセンス情報記憶部
１２０    プロダクト情報登録部
１３０    プロダクト情報照会部
１４０    プロダクトキー生成部
１５０    機能別許可情報コード作成部
１６０    ライセンスファイル作成部
２００，５００    ライセンスチェックプログラム
２１０    ライセンスファイル
２２０    ライセンスチェック処理部
３００    コンピュータ
３１０    ＲＡＭ
３２０    ＣＰＵ
３３０    ＨＤＤ
３４０    ＬＡＮインタフェース
３５０    入出力インタフェース
３６０    ＣＤドライブ
４７０    パッチ管理部
４７１    パッチ情報記憶部
４７２    動作条件記憶部
４８０    サービス処理部
５３０    パッチ処理部
５３１    パッチ管理ファイル
５３２    動作条件管理ファイル
【発明を実施するための最良の形態】
【００２７】
以下に、本発明に係るライセンス管理プログラム、ソフトウェア利用制御方法およびライセンス管理装置の実施例を図面に基づいて詳細に説明する。なお、実施例１では、複数の機能を有するソフトウェアプロダクトのライセンスを機能ごとに管理するライセンス管理システムについて説明し、実施例２では、複数の開発ベンダがそれぞれ開発した複数のソフトウェアプロダクトのライセンスを管理するライセンス管理システムについて説明する。また、実施例２では、ライセンス管理以外にパッチサービスなどのユーザサポート機能を提供するライセンス管理システムについても説明する。
【実施例１】
【００２８】
まず、本実施例１に係るライセンス管理システムの概念について説明する。図１は、本実施例１に係るライセンス管理システムの概念を説明するための説明図である。同図に示すように、このライセンス管理システムでは、ユーザは業務アプリケーションが動作する業務ＷｅｂサーバにＣＤから業務アプリケーションをインストールする（１）。この段階で、業務アプリケーションは、評価版としての利用が可能となる。【００２９】
そして、ユーザは、業務ＷｅｂサーバのＭＡＣアドレス（Ａ）を業務アプリケーションのライセンス管理先に連絡し（２）、連絡を受けたライセンス管理先では、ライセンスを管理するライセンス管理Ｗｅｂサーバに、ユーザ情報、ＭＡＣアドレスとともに業務アプリケーションの機能別許可情報を登録する（３）。ここで、機能別許可情報とは、アプリケーションの機能ごとの使用許否を示す情報である。【００３０】
そして、ライセンス管理Ｗｅｂサーバは、ＭＡＣアドレスおよび機能別許可情報を含むライセンスファイルを作成し（４）、ユーザに送付する（５）。ユーザは、ライセンスファイルを受け取ると、ライセンスファイルを業務Ｗｅｂサーバにセットする（６）。【００３１】
そして、業務Ｗｅｂサーバは、ユーザから業務アプリケーションが提供する機能のうち例えば機能Ｘの起動指示を受けると、機能Ｘがライセンスファイルに含まれる機能別許可情報（Ｃ）で許可されているか否か、業務ＷｅｂサーバのＭＡＣアドレス（Ａ）がライセンスファイルに含まれるＭＡＣアドレス（Ｂ）と一致するか否かに基づいて、機能Ｘを起動するか、あるいはライセンスエラーを通知する。【００３２】
このように、本実施例１に係るライセンス管理システムでは、機能別許可情報を含むライセンスファイルを業務Ｗｅｂサーバにセットし、業務Ｗｅｂサーバがライセンスファイル中の機能別許可情報に基づいて機能ごとに起動の可否を判定することによって、機能ごとにライセンス管理を行うことができる。【００３３】
また、ここでは、ライセンスファイルが一つの業務アプリケーションに関して機能別許可情報を含む場合について説明したが、ライセンスファイルには、他の業務アプリケーションなど複数のソフトウェアプロダクトに関する機能別許可情報を含めることもできる。このように、ライセンスファイルに複数のソフトウェアプロダクトに関する機能別許可情報を含めることによって、一つのライセンスファイルによって複数のソフトウェアプロダクトを管理することができ、ユーザがライセンスを管理する負担を減らすことができる。【００３４】
次に、本実施例１に係るライセンス管理システムの構成について説明する。図２は、本実施例１に係るライセンス管理システムの構成を示す機能ブロック図である。同図に示すように、このライセンス管理システムは、ライセンスを管理するライセンス管理Ｗｅｂサーバ１０と、業務アプリケーションが動作する業務Ｗｅｂサーバ２０とから構成される。なお、ここでは説明の便宜上、１台の業務Ｗｅｂサーバのみを示したが、ライセンス管理Ｗｅｂサーバ１０は、複数の業務Ｗｅｂサーバを対象としてライセンス管理を行うことができる。【００３５】
ライセンス管理Ｗｅｂサーバ１０では、ライセンスを管理するライセンス管理プログラム１００が動作し、ライセンス管理プログラム１００は、ライセンス情報記憶部１１０と、プロダクト情報登録部１２０と、プロダクト情報照会部１３０と、プロダクトキー生成部１４０と、機能別許可情報コード作成部１５０と、ライセンスファイル作成部１６０とを有する。【００３６】
ライセンス情報記憶部１１０は、ライセンス情報を記憶する記憶部であり、ライセンスが与えられたユーザに関する情報、業務アプリケーションのインストールが許可された業務ＷｅｂサーバのＭＡＣアドレス、機能別許可情報などを記憶する。【００３７】
ここで、機能別許可情報の詳細について説明する。図３は、機能別許可情報を説明するための説明図である。同図は、三つのソフトウェアプロダクトに関する機能別許可情報を示しており、機能ごと、すなわち、機能を提供するプログラムごとに番地が割り当てられている。【００３８】
例えば、ソフトウェアプロダクト「１」は「ＷｅｂＡＳフレームワーク」というプログラムから構成され、ソフトウェアプロダクト「２」は「ライセンスプロテクターマスメン」および「ライセンスプロテクター管理者機能」というプログラムから構成され、ソフトウェアプロダクト「３」は「販売管理」、「就業管理」、「情報共有」および「ビルメン」というプログラムから構成される。なお、「フレームワーク予備項目ｎ」は、ソフトウェアプロダクトがカスタマイズされて新たな機能が追加された場合に用いるためのものである。【００３９】
図３において、フラグが「１」である場合には、対応するプログラムの実行が許可されており、フラグが「０」である場合には、対応するプログラムの実行が許可されていない。例えば、ソフトウェアプロダクト「３」のうち、「販売管理」は実行が許可されているが、「就業管理」、「情報共有」および「ビルメン」は実行が許可されていない。【００４０】
図２に戻って、プロダクト情報登録部１２０は、ライセンス情報の登録処理を行う処理部であり、ライセンス管理者からライセンスが与えられたユーザに関する情報、業務アプリケーションのインストールが許可された業務ＷｅｂサーバのＭＡＣアドレス、機能別許可情報などを受け付けてライセンス情報記憶部１１０に格納する。【００４１】
プロダクト情報照会部１３０は、ライセンス情報記憶部１１０に格納されたライセンス情報を表示する処理部であり、ライセンス管理者が照会したライセンスに関する情報を検索して表示する。【００４２】
プロダクトキー生成部１４０は、ユーザごとにプロダクトキーを生成してライセンス情報記憶部１１０に格納する処理部であり、ユーザが複数のソフトウェアプロダクトを利用する場合にも、一つのプロダクトキーを生成する。このプロダクトキー生成部１４０が複数のソフトウェアプロダクトに対して一つのプロダクトキーを生成することによって、ソフトウェアプロダクトごとにプロダクトキーを管理する煩わしさからユーザを解放することができる。【００４３】
機能別許可情報コード作成部１５０は、ライセンス情報記憶部１１０に記憶された機能別許可情報のフラグ値のコード化や暗号化などを行ってライセンスファイル用に機能別許可情報コードを作成する処理部であり、作成した機能別許可情報コードをライセンス情報記憶部１１０に格納する。【００４４】
ライセンスファイル作成部１６０は、ライセンス情報記憶部１１０に記憶されたプロダクトキー、ＭＡＣアドレスおよび機能別許可情報コードを用いてユーザごとにライセンスファイル３１を作成し、暗号化してＣＤ３０に格納する処理部である。【００４５】
図４は、ライセンスファイルの一例を示す図である。同図に示すように、このライセンスファイルでは、プロダクトキー、ＭＡＣアドレスおよび機能別許可情報コードがＸＭＬを用いて記述されている。同図において、プロダクトキーは＜ＰＲＯＤＵＣＴ＿ＫＥＹ＞タグを用いて記述され、ＭＡＣアドレスは＜ＭＡＣ＿ＡＤＤＲＥＳＳ＞タグを用いて記述され、機能別許可情報コードは＜ＦＵＮＣＴＩＯＮ＿ＡＲＥＡ＞タグを用いて記述されている。また、＜ＦＵＮＣＴＩＯＮ＿ＡＲＥＡ＞タグの値、すなわち機能別許可情報コードは、２進数から１６進数に変換されてＤＥＳ暗号化されている。【００４６】
業務Ｗｅｂサーバ２０では、アプリケーション２１およびライセンスチェックプログラム２００が動作し、ライセンスチェックプログラム２００は、ライセンスファイル２１０と、ライセンスチェック処理部２２０とを有する。なお、アプリケーション２１は業務アプリケーションであり、ここでは説明の便宜上、１つの業務アプリケーションのみを示したが、業務Ｗｅｂサーバ２０では、他の業務アプリケーションなど複数のアプリケーションが動作する。【００４７】
ライセンスファイル２１０は、ライセンス管理Ｗｅｂサーバ１０によって作成されたライセンスファイル３１であり、ＣＤ３０から読み出されて業務Ｗｅｂサーバ２０にコピーされたものである。【００４８】
ライセンスチェック処理部２２０は、アプリケーション２１が起動される際にアプリケーション２１から起動要求対象機能の番地を受け取り、番地に対応するフラグが「１」であるか否か、すなわち、起動要求対象機能の使用が許可されているか否かをライセンスファイル２１０を用いてチェックする処理部であり、許可されている場合にはアプリケーション２１を起動し、許可されていない場合には警告メッセージを出力する。【００４９】
このライセンスチェック処理部２２０が起動要求対象機能の使用が許可されているか否かをライセンスファイル２１０を用いてチェックすることによって、機能ごとにライセンスを付与することが可能となる。【００５０】
なお、ライセンスチェックプログラム２００は、ＣＤ３０から業務Ｗｅｂサーバ２０にインストールされる。すなわち、ＣＤ３０には、ライセンスファイル３１以外にライセンスチェックセットアッププログラム３２およびセットアッププログラム３３が格納されており、ＣＤ３０が業務Ｗｅｂサーバ２０のＣＤドライブに挿入されると、セットアッププログラム３３が読み出されて業務Ｗｅｂサーバ２０上でセットアッププログラム２３として動作し、ライセンスチェックセットアッププログラム３２を読み出してライセンスチェックセットアッププログラム２２として実行する。【００５１】
そして、ライセンスチェックセットアッププログラム２２がライセンスファイル３１を用いてライセンスチェックプログラム２００を業務Ｗｅｂサーバ２０にインストールする。【００５２】
次に、ライセンスチェックセットアッププログラム２２によるライセンスチェックプログラム２００のインストール処理の処理手順について説明する。図５は、ライセンスチェックセットアッププログラム２２によるライセンスチェックプログラム２００のインストール処理の処理手順を示すフローチャートである。なお、ユーザには、事前にライセンスファイル名およびプロダクトキーが通知されているものとする。【００５３】
同図に示すように、このライセンスチェックセットアッププログラム２２は、ユーザによるライセンスファイルおよびプロダクトキーの指定を受け付ける（ステップＳ１０１）。また、ＣＤ３０からライセンスファイル３１を読み出して復号化する（ステップＳ１０２）。【００５４】
そして、ユーザによって入力されたプロダクトキーと復号化したライセンスファイル３１の中のプロダクトキーを比較し（ステップＳ１０３）、両者が一致するか否かを判定する（ステップＳ１０４）。【００５５】
その結果、両者が一致する場合には、業務Ｗｅｂサーバ２０のＭＡＣアドレスと復号化したライセンスファイル３１の中のＭＡＣアドレスを比較し（ステップＳ１０５）、両者が一致するか否かを判定する（ステップＳ１０６）。【００５６】
その結果、両者が一致する場合には、業務Ｗｅｂサーバ２０でライセンスチェックプログラム２００が動作するようにインストールを行う（ステップＳ１０７）。一方、両者が一致しない場合、あるいは、ユーザによって入力されたプロダクトキーと復号化したライセンスファイル３１の中のプロダクトキーが一致しない場合には、警告メッセージを出力する（ステップＳ１０８）。【００５７】
このように、ライセンスチェックセットアッププログラム２２がライセンスファイル３１に基づいてライセンスチェックプログラム２００をインストールすることによって、ライセンスチェックプログラム２００が不正にインストールされることを防ぐことができる。【００５８】
次に、ライセンスチェックプログラム２００によるアプリ起動チェック処理の処理手順について説明する。図６は、ライセンスチェックプログラム２００によるアプリ起動チェック処理の処理手順を示すフローチャートである。【００５９】
同図に示すように、ライセンスチェックプログラム２００は、起動要求を受けたアプリケーションが試用期限内か否かを判定し（ステップＳ２０１）、試用期限内である場合には、ステップＳ２１２に進んでアプリケーションを起動する（ステップＳ２１２）。【００６０】
一方、試用期限内でない場合には、ライセンスファイル２１０の存在をチェックする（ステップＳ２０２）。その結果、ライセンスファイル２１０が存在する場合（ステップＳ２０３、Ｙｅｓ）には、ライセンスファイル２１０の復号化を行い（ステップＳ２０４）、ライセンスファイル２１０内のＭＡＣアドレスと業務Ｗｅｂサーバ２０のＭＡＣアドレスが一致するか否かを判定する（ステップＳ２０５）。【００６１】
その結果、両者が一致する場合には、アプリケーション２１から起動要求対象の番地を取得する（ステップＳ２０６）。また、ライセンスファイル２１０のＦＵＮＣＴＩＯＮ＿ＡＲＥＡタグの値、すなわち、機能別許可情報コードを取得し（ステップＳ２０７）、ＤＥＳ復号を行う（ステップＳ２０８）。【００６２】
そして、ＦＵＮＣＴＩＯＮ＿ＡＲＥＡタグの値を１６進数から２進数に変換し（ステップＳ２０９）、アプリケーション２１から取得した番地の値が「１」であるか否かの判定を行う（ステップＳ２１０）。【００６３】
その結果、番地の値が「１」である場合（ステップＳ２１１、Ｙｅｓ）には、アプリケーション２１を起動し（ステップＳ２１２）、番地の値が「０」である場合（ステップＳ２１１、Ｎｏ）には、アプリケーション２１を起動することなく警告メッセージを出力する（ステップＳ２１３）。【００６４】
また、ライセンスファイル２１０内のＭＡＣアドレスと業務Ｗｅｂサーバ２０のＭＡＣアドレスが一致しない場合（ステップＳ２０５、不一致）、あるいはライセンスファイル２１０が存在しない場合（ステップＳ２０３、Ｎｏ）にも、アプリケーション２１を起動することなく警告メッセージを出力する（ステップＳ２１３）。【００６５】
図７は、アプリケーション起動時のライセンスチェックプログラム２００によるチェック例を示す図である。同図に示すように、ユーザが「販売管理」、「就業管理」、「情報共有」の起動要求をそれぞれ行うと((１)〜(３))、ライセンスチェックプログラム２００はライセンスファイルを参照して起動の可否をチェックする((４)〜(５))。ここで、機能別許可情報が図３に示したように定義されているとすると、「販売管理」は起動が許可されるが、「就業管理」、「情報共有」は起動が許可されない。【００６６】
このように、ライセンスチェックプログラム２００がライセンスファイル２１０内のＭＡＣアドレスおよび機能別許可情報コードに基づいてアプリケーション２１の起動可否をチェックすることによって、不正利用を防ぐことができる。【００６７】
次に、ライセンス管理プログラム１００を実行するコンピュータ、すなわちライセンス管理Ｗｅｂサーバ１０のハードウェア構成について説明する。なお、ライセンスチェックプログラム２００およびライセンスチェックセットアッププログラム２２を実行するコンピュータ、すなわち業務Ｗｅｂサーバ２０のハードウェア構成も同様である。【００６８】
図８は、ライセンス管理プログラム１００を実行するコンピュータの構成を示す機能ブロック図である。同図に示すように、このコンピュータ３００は、ＲＡＭ３１０と、ＣＰＵ３２０と、ＨＤＤ３３０と、ＬＡＮインタフェース３４０と、入出力インタフェース３５０と、ＣＤドライブ３６０とを有する。【００６９】
ＲＡＭ３１０は、プログラムやプログラムの実行途中結果などを記憶するメモリであり、ＣＰＵ３２０は、ＲＡＭ３１０からプログラムを読み出して実行する中央処理装置である。【００７０】
ＨＤＤ３３０は、プログラムやデータを格納するディスク装置であり、ＬＡＮインタフェース３４０は、コンピュータ３００をＬＡＮ経由で他のコンピュータに接続するためのインタフェースである。【００７１】
入出力インタフェース３５０は、マウスやキーボードなどの入力装置および表示装置を接続するためのインタフェースであり、ＣＤドライブ３６０は、ＣＤの読み書きを行う装置である。【００７２】
そして、このコンピュータ３００において実行されるライセンス管理プログラム１００は、ＣＤドライブ３６０によってＣＤから読み出されてコンピュータ３００にインストールされる。【００７３】
あるいは、このライセンス管理プログラム１００は、ＬＡＮインタフェース３４０を介して接続された他のコンピュータシステムのデータベースなどに記憶され、これらのデータベースから読み出されてコンピュータ３００にインストールされる。【００７４】
そして、インストールされたライセンス管理プログラム１００は、ＨＤＤ３３０に記憶され、ＲＡＭ３１０に読み出されてＣＰＵ３２０によってライセンス管理プロセス３２１として実行される。【００７５】
上述してきたように、本実施例１では、複数のソフトウェアプロダクトについて機能ごとに実行可否が定義された機能別許可情報を用いてライセンス管理プログラム１００の機能別許可情報コード作成部１５０が機能別許可情報コードを作成してライセンス情報記憶部１１０に格納し、ライセンスファイル作成部１６０がライセンス情報記憶部１１０に記憶されたプロダクトキー、ＭＡＣアドレスおよび機能別許可情報コードを用いてライセンスファイルを作成し、ライセンスチェックプログラム２００のライセンスチェック処理部２２０がライセンスファイルの機能別許可情報コードに基づいてアプリケーション２１の機能ごとに起動可否をチェックすることとしたので、アプリケーション２１の機能ごとにライセンス管理を行うとともに、複数のソフトウェアプロダクトの管理を一つのプロダクトキーによって管理することができる。【００７６】
また、本実施例１では、ライセンスチェックセットアッププログラム３２が、ライセンスファイルのプロダクトキーおよびＭＡＣアドレスに基づいてライセンスチェックプログラム２００のインストール可否を判定することとしたので、ライセンスチェックプログラム２００が不正にインストールされることを防ぐことができる。【００７７】
また、本実施例１では、Ｗｅｂベースの業務アプリケーションのライセンスを管理する場合を中心に説明したが、本発明はこれに限定されるものではなく、他のソフトウェアプロダクトを機能ごとにライセンス管理する場合にも同様に適用することができる。
【実施例２】
【００７８】
ところで、上記実施例１では、一つの開発ベンダによって開発された複数のソフトウェアプロダクトのライセンスを管理する場合について説明した。しかしながら、ユーザにとっては、複数の開発ベンダによってそれぞれ開発されたソフトウェアプロダクトのライセンスの管理やパッチ情報の収集などを開発ベンダごとに行うと、開発ベンダの数が多くなるにつれて負担が大きくなる。また、開発ベンダにとっては、ライセンスの管理やユーザサポートの負担をできるだけ減らし、ソフトウェア開発に専念できることが重要となる。そこで、本実施例２では、ユーザおよび開発ベンダの双方にとってライセンス管理などの負担を軽減するライセンス管理システムについて説明する。【００７９】
まず、本実施例２に係るライセンス管理の概念について説明する。図９は、本実施例２に係るライセンス管理の概念を説明するための説明図である。同図に示すように、本実施例２に係るライセンス管理では、ソフトウェアプロダクトの各開発ベンダがライセンスを管理する代わりに、各開発ベンダと代理販売契約を結んだライセンス管理会社がソフトウェアプロダクトの販売を行うとともに、ユーザごとにまとめて複数のソフトウェアプロダクトのライセンスを管理する。【００８０】
また、ライセンス管理会社は、開発ベンダからパッチ情報およびパッチを取得してユーザに提供するとともに、他のソフトウェアプロダクトの体験版の配布、商品情報の提供、セールスプロモーションなどを各開発ベンダに代わって行う。さらに、ライセンス管理会社は、開発ベンダに対してユーザ情報、統計情報の提供などを行う。【００８１】
このように、各開発ベンダに代わってライセンス管理会社がソフトウェアプロダクトの販売、ライセンス管理、パッチサービス、セールスプロモーションなどを行うことによって、各開発ベンダはソフトウェア開発に専念することができる。また、ユーザは、ソフトウェアプロダクトのライセンスを開発ベンダごとに管理する代わりにライセンス管理会社が提供する一つのライセンスだけを管理すればよく、ユーザの管理負担を軽減することができる。【００８２】
次に、本実施例２に係るライセンス管理システムの構成について説明する。図１０は、本実施例２に係るライセンス管理システムの構成を示す機能ブロック図である。同図に示すように、このライセンス管理システムは、ライセンス管理Ｗｅｂサーバ１０と、業務Ｗｅｂサーバ２０と、ベンダサーバ４０とがインターネット５０を介して接続されて構成される。【００８３】
なお、ここでは説明の便宜上、図２に示した各部と同様の役割を果たす機能部については同一符号を付すこととしてその詳細な説明を省略する。また、ここでは説明の便宜上、１台の業務Ｗｅｂサーバおよびベンダサーバを示すが、このライセンス管理システムは、任意の台数の業務Ｗｅｂサーバおよびベンダサーバから構成される。【００８４】
ライセンス管理Ｗｅｂサーバ１０が実行するライセンス管理プログラム４００は、ライセンス情報記憶部４１０と、プロダクト情報登録部１２０と、プロダクト情報照会部１３０と、プロダクトキー生成部１４０と、機能別許可情報コード作成部１５０と、ライセンスファイル作成部１６０と、パッチ管理部４７０と、パッチ情報記憶部４７１と、動作条件記憶部４７２と、サービス処理部４８０とを有する。【００８５】
ライセンス情報記憶部４１０は、図２に示したライセンス情報記憶部１１０と同様にライセンス情報を記憶するが、特定の開発ベンダのソフトウェアプロダクトに関するライセンス情報を記憶するのではなく、複数の開発ベンダがそれぞれ開発した複数のソフトウェアプロダクトのライセンス情報を記憶する。【００８６】
また、このライセンス情報記憶部４１０は、ライセンスが与えられたユーザに関する情報、業務アプリケーションのインストールが許可された業務ＷｅｂサーバのＭＡＣアドレス、機能別許可情報の他に、各開発ベンダの情報、各開発ベンダから取得したソフトウェアプロダクト体験版、商品情報、セールスプロモーション情報などを記憶する。【００８７】
パッチ管理部４７０は、ライセンス情報記憶部４１０、パッチ情報記憶部４７１および動作条件記憶部４７２を用いてパッチに関する処理を行う処理部である。すなわち、このパッチ管理部４７０は、ベンダサーバ４０からパッチ情報、パッチおよび動作条件を受け取ってパッチ情報およびパッチをパッチ情報記憶部４７１に格納し、動作条件を動作条件記憶部４７２に格納する。【００８８】
また、このパッチ管理部４７０は、業務Ｗｅｂサーバ２０からの要求に応答して、ライセンスが与えられたソフトウェアプロダクトのパッチ情報、パッチの動作条件およびパッチを業務Ｗｅｂサーバ２０に送信するとともに、業務Ｗｅｂサーバ２０からパッチの適用状況に関する情報を取得してパッチ情報記憶部４７１に格納する。【００８９】
パッチ情報記憶部４７１は、パッチ情報およびパッチを記憶する記憶部である。また、このパッチ情報記憶部４７１は、業務Ｗｅｂサーバ２０からパッチ管理部４７０が取得したパッチの適用状況に関する情報をユーザごとに記憶する。【００９０】
動作条件記憶部４７２は、各パッチの動作条件を記憶する記憶部である。サービス処理部４８０は、ベンダサーバ４０からソフトウェアプロダクトの体験版、商品情報、セールスプロモーション情報をインターネット５０を介して受け取り、ライセンス情報記憶部４１０に格納する。また、このサービス処理部４８０は、業務Ｗｅｂサーバ２０にソフトウェアプロダクトの体験版、商品情報、セールスプロモーション情報をインターネット５０を介して送信する。【００９１】
業務Ｗｅｂサーバ２０が実行するライセンスチェックプログラム５００は、ライセンスのチェックを行うだけでなく、ライセンスを受けたソフトウェアプロダクトに対するパッチの適用を行う。このため、ライセンスチェックプログラム５００は、ライセンスファイル２１０およびライセンスチェック処理部２２０に加えてパッチ処理部５３０と、パッチ管理ファイル５３１と、動作条件管理ファイル５３２とを有する。【００９２】
パッチ処理部５３０は、ライセンスファイル２１０、パッチ管理ファイル５３１および動作条件管理ファイル５３２を用いてパッチ適用を行う処理部である。図１１は、パッチ処理部５３０がパッチ適用に用いるライセンスファイル２１０、パッチ管理ファイル５３１および動作条件管理ファイル５３２の関係を説明するための説明図である。同図に示すように、パッチ処理部５３０は、ライセンスファイル２１０にプロダクトキーや機能別許可情報コードが記憶されているソフトウェアプロダクト（「パッケージＡ」、「パッケージＢ」など）ごとに、パッチ情報をパッチ管理ファイル５３１を用いて管理し、各パッチの動作条件を動作条件管理ファイル５３２を用いて管理する。【００９３】
パッチ管理ファイル５３１は、ソフトウェアプロダクトごとのパッチ情報を記憶するファイルであり、動作条件管理ファイル５３２はソフトウェアプロダクトごとの各パッチの動作条件を記憶するファイルである。【００９４】
図１２は、パッチ管理ファイル５３１および動作条件管理ファイル５３２の一例を示す図である。同図に示すように、パッチ管理ファイル５３１は、パッチの配布日、パッチ名称およびパッチの適用日をパッチごとに記憶し、動作条件管理ファイル５３２は、パッチ名称およびパッチ適用範囲をパッチごとに記憶する。ここで、パッチ適用範囲は、パッチを適用するＯＳ、ＤＢのバージョン、パッチ適用の前提となるパッチ名称などの動作条件を示す。【００９５】
なお、ここでは、ライセンスチェックプログラム５００にライセンスチェック処理部２２０とパッチ処理部５３０とが含まれることとしたが、ライセンスチェック処理部２２０とパッチ処理部５３０とを別プログラムとすることもできる。【００９６】
ベンダサーバ４０は、開発ベンダがパッチ情報や商品情報などをライセンス管理Ｗｅｂサーバ１０にアップロードする場合に使用するサーバであり、各種情報のアップロード処理を行うアップロードプログラム４１が動作する。【００９７】
次に、本実施例２に係るライセンス管理システムによるパッチ適用処理の処理手順について説明する。図１３は、本実施例２に係るライセンス管理システムによるパッチ適用処理の処理手順を示すフローチャートである。【００９８】
同図に示すように、このパッチ適用処理では、ライセンス管理プログラム４００のパッチ管理部４７０がアップロード処理を行う（ステップＳ３０１）。すなわち、パッチ管理部４７０は、ベンダサーバ４０からパッチ、パッチ情報および動作条件を受信してパッチおよびパッチ情報をパッチ情報記憶部４７１に格納し、動作条件を動作条件記憶部４７２に格納する。なお、開発ベンダは、専用のＷｅｂ画面でパッチアップロードの登録を行い、登録の際にパッチ情報やパッチ適用範囲を指定する。【００９９】
一方、ライセンスチェックプログラム５００のパッチ処理部５３０は、インストールの際にレジストリに記述された頻度で起動され、業務Ｗｅｂサーバ２０の動作環境をチェックし（ステップＳ３０２）、動作環境が所定の条件を満たしている場合にだけライセンス管理Ｗｅｂサーバ１０にパッチに関する情報を要求する（ステップＳ３０３）。ここで、動作環境が満たすべき条件とは、リソースの使用状況、業務の運用時間であるか否か、ジョブ量などに基づく条件である。【０１００】
そして、業務Ｗｅｂサーバ２０からパッチに関する情報の要求を受信すると、パッチ管理部４７０は、パッチに関する情報としてライセンスが与えられたソフトウェアプロダクトのパッチ情報および動作条件を業務Ｗｅｂサーバ２０に送信する（ステップＳ３０４）。なお、パッチに関する情報の送信はＷｅｂサービス化されていて外部からのアクセスに対してパスワード認証が行われる。【０１０１】
そして、ライセンス管理Ｗｅｂサーバ１０からパッチに関する情報を受信すると、パッチ処理部５３０は、ソフトウェアプロダクトごとに、パッチ情報をパッチ管理ファイル５３１に格納し、動作条件を動作条件管理ファイル５３２に格納する。そして、パッチ処理部５３０は、適用するパッチを動作条件に基づいて特定し（ステップＳ３０５）、特定したパッチの送信をライセンス管理Ｗｅｂサーバ１０に対して要求する（ステップＳ３０６）。【０１０２】
そして、業務Ｗｅｂサーバ２０からパッチ送信要求を受信すると、パッチ管理部４７０が、要求のあったパッチを業務Ｗｅｂサーバ２０に送信する（ステップＳ３０７）。そして、ライセンス管理Ｗｅｂサーバ１０からパッチを受信すると、パッチ処理部５３０は、パッチを適用し（ステップＳ３０８）、パッチ管理ファイル５３１の適用日を更新する（ステップＳ３０９）。そして、パッチ処理部５３０は、パッチ適用情報をライセンス管理Ｗｅｂサーバ１０に送信する（ステップＳ３１０）。【０１０３】
そして、業務Ｗｅｂサーバ２０からパッチ適用情報を受信すると、パッチ管理部４７０は、ユーザごとに管理するパッチ情報記憶部４７１の情報を更新する（ステップＳ３１１）。一方、パッチ処理部５３０は、ＤＢ再起動、サーバ再起動などのパッチ適用後処理を行い（ステップＳ３１２）、処理が完了すると、パッチ適用結果のダイアログを出力する（ステップＳ３１３）。【０１０４】
上述してきたように、本実施例２では、複数の開発ベンダによってそれぞれ開発された複数のソフトウェアプロダクトのパッチ情報をライセンス管理プログラム４００がまとめて管理することとしたので、各開発ベンダはパッチおよびパッチに関連する情報をライセンス管理Ｗｅｂサーバ１０にアップロードするだけでパッチサービスを提供することができ、パッチサービスを提供する開発ベンダの負担を軽減することができる。【０１０５】
また、本実施例２では、パッチ処理部５３０がライセンス管理Ｗｅｂサーバ１０からパッチに関連する情報を取得してパッチを適用することとしたので、ユーザは、開発ベンダごとにパッチ情報を収集する必要がなくなり、ユーザのパッチ管理負担を軽減することができる。【０１０６】
また、本実施例２では、パッチ処理部５３０がライセンス管理Ｗｅｂサーバ１０からパッチに関連する情報を取得する際に、動作環境をチェックすることとしたので、業務Ｗｅｂサーバ２０で動作するアプリケーション２１に悪影響を与えることなくパッチの適用を行うことができる。【０１０７】
なお、本実施例２では、適用するパッチの特定を業務Ｗｅｂサーバ２０で動作するパッチ処理部５３０が行う場合について説明したが、本発明はこれに限定されるものではなく、ライセンス管理プログラム４００がユーザごとにパッチ適用状況を管理し、必要なパッチを特定する場合にも同様に適用することができる。ライセンス管理プログラム４００が各ユーザに必要なパッチを特定することによって、業務Ｗｅｂサーバ２０のパッチ管理負担を軽減することができる。
【産業上の利用可能性】
【０１０８】
以上のように、本発明に係るライセンス管理プログラム、ソフトウェア利用制御方法およびライセンス管理装置は、ソフトウェアプロダクトのライセンス管理やパッチ管理に有用であり、特に、ソフトウェア開発にできるだけ専念する必要がある開発ベンダによって開発されたソフトウェアプロダクトのライセンス管理やパッチ管理に適している。
【図１】
2008146408.tif 000003
【図２】
2008146408.tif 000004
【図３】
2008146408.tif 000005
【図４】
2008146408.tif 000006
【図５】
2008146408.tif 000007
【図６】
2008146408.tif 000008
【図７】
2008146408.tif 000009
【図８】
2008146408.tif 000010
【図９】
2008146408.tif 000011
【図１０】
2008146408.tif 000012
【図１１】
2008146408.tif 000013
【図１２】
2008146408.tif 000014
【図１３】
2008146408.tif 000015
【手続補正書】
【提出日】平成19年10月16日(2007.10.16)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数のユーザに利用されるソフトウェアプロダクトのライセンスを管理するライセンス管理プログラムであって、
ソフトウェアプロダクトの各機能が起動されて各機能に対応する起動可否情報が起動可を示す情報と一致するか否かにより各機能の起動可否が判定される際に起動可否情報として用いられるライセンスを、複数の開発ベンダによりそれぞれ開発された複数のソフトウェアプロダクトの機能ごとに各ユーザに対して使用を許可された情報である機能別使用許可ユーザ情報を記憶装置から読み出してユーザごとに作成するライセンス作成手順
をコンピュータに実行させることを特徴とするライセンス管理プログラム。
【請求項２】
各開発ベンダがソフトウェアプロダクトについて開発ベンダのコンピュータにアップロード登録したパッチおよびパッチ情報を各開発ベンダのコンピュータから受信することによって該パッチおよびパッチ情報を取得するパッチ情報取得手順と、
前記パッチ情報取得手順によりパッチおよびパッチ情報が取得されたソフトウェアプロダクトのうち使用が許可されたソフトウェアプロダクトのパッチ情報をユーザのコンピュータに送信するパッチ情報送信手順と、
前記パッチ情報送信手順により送信されたパッチ情報に基づいてユーザのコンピュータが要求するパッチを該ユーザのコンピュータに送信するパッチ送信手順と、
をさらにコンピュータに実行させることを特徴とする請求項１に記載のライセンス管理プログラム。
【請求項３】
各開発ベンダから商品情報を取得する商品情報取得手順と、
前記商品情報取得手順により取得された商品情報をユーザのコンピュータに送信する商品情報送信手順と、
をさらにコンピュータに実行させることを特徴とする請求項１または２に記載のライセンス管理プログラム。
【請求項４】
複数のユーザに利用されるソフトウェアプロダクトの利用を制御するソフトウェア利用制御方法であって、
ソフトウェアのライセンスを管理するライセンス管理装置が、複数の開発ベンダによりそれぞれ開発された複数のソフトウェアプロダクトの機能ごとに各ユーザに対して使用を許可された情報である機能別使用許可ユーザ情報を記憶装置から読み出して、各機能の起動可否が判定される際に起動可否情報として用いられるライセンスをユーザごとに作成するライセンス作成ステップと、
ソフトウェアプロダクトが実装されたユーザコンピュータが、ソフトウェアプロダクトの各機能の起動要求を受け付けた際に、前記ライセンス作成ステップにより作成されたライセンスを用いて各機能に対応する起動可否情報が起動可を示す情報と一致するか否かを判定することにより各機能の起動可否を判定する起動可否判定ステップと、
を含んだことを特徴とするソフトウェア利用制御方法。
【請求項５】
各開発ベンダがソフトウェアプロダクトについて開発ベンダのコンピュータにアップロード登録したパッチおよびパッチ情報を各開発ベンダのコンピュータから受信することによって該パッチおよびパッチ情報を前記ライセンス管理装置が取得するパッチ情報取得ステップと、
前記パッチ情報取得ステップによりパッチおよびパッチ情報が取得されたソフトウェアプロダクトのうち使用が許可されたソフトウェアプロダクトのパッチ情報を前記ライセンス管理装置がユーザコンピュータに送信するパッチ情報送信ステップと、
前記パッチ情報送信ステップにより送信されたパッチ情報に含まれるパッチの動作条件に基づいてユーザコンピュータが適用するパッチを特定するパッチ特定ステップと、
前記パッチ特定ステップにより適用するパッチを特定した場合に、該特定したパッチをユーザコンピュータが前記ライセンス管理装置に要求するパッチ要求ステップと、
前記パッチ要求ステップにより要求されたパッチを前記ライセンス管理装置がユーザコンピュータに送信するパッチ送信ステップと、
前記パッチ送信ステップにより送信されたパッチを受信したユーザコンピュータがパッチを適用するパッチ適用ステップと、
をさらに含んだことを特徴とする請求項４に記載のソフトウェア利用制御方法。
【請求項６】
ユーザコンピュータがリソースの使用状況、時刻およびジョブ量に基づいてパッチを適用するか否かを判定するパッチ適用可否判定ステップと、
前記パッチ適用ステップによるパッチ適用後に、ユーザコンピュータ再起動、結果メッセージの出力、パッチ適用後の後処理を行う後処理ステップとをさらに含み、
前記パッチ情報送信ステップは、前記パッチ適用可否判定ステップによりパッチ適用可と判定したユーザコンピュータがパッチ情報の送信を要求した場合に、前記ライセンス管理装置がパッチ情報をユーザコンピュータに送信することを特徴とする請求項５に記載のソフトウェア利用制御方法。
【請求項７】
複数のユーザに利用されるソフトウェアプロダクトのライセンスを管理するライセンス管理装置であって、
ソフトウェアプロダクトの各機能が起動されて各機能に対応する起動可否情報が起動可を示す情報と一致するか否かにより各機能の起動可否が判定される際に起動可否情報として用いられるライセンスを、複数の開発ベンダによりそれぞれ開発された複数のソフトウェアプロダクトの機能ごとに各ユーザに対して使用を許可された情報である機能別使用許可ユーザ情報を記憶装置から読み出してユーザごとに作成するライセンス作成手段
を備えたことを特徴とするライセンス管理装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェアプロダクトの開発ベンダのライセンス管理やユーザサポートの負担を軽減するとともに、ソフトウェアプロダクトのユーザのライセンス管理やパッチ情報収集の負担を軽減することができるライセンス管理プログラム、ソフトウェア利用制御方法およびライセンス管理装置に関するものである。
【背景技術】
【０００２】
従来から、ソフトウェアの不正コピーによる不正使用を防止するために、様々な技術が開発されている。例えば、特許文献１には、機器の識別番号やクライアントのネットワークアドレスを用いてソフトウェアのライセンスや起動を管理する技術が記載されている。
【０００３】
【特許文献１】特開平７−２１９７６３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ライセンスを用いてソフトウェアの不正コピーによる不正使用を防止する場合には、ユーザごとにライセンスを管理する必要がある。しかしながら、会計ソフトやＣＡＤソフトなどの専門分野に特化したソフトウェアプロダクトを開発している開発ベンダにとっては、ソフトウェア開発業務以外に多くのリソースを割くことは困難であり、ライセンス管理やユーザサポートは大きな負担となるという問題がある。
【０００５】
また、複数の開発ベンダがそれぞれ提供するソフトウェアプロダクトのユーザにとっては、開発ベンダごとにライセンスの管理やパッチ情報の収集を行う必要があり、利用するソフトウェアプロダクトの数が多くなるとその管理が大きな負担となるという問題がある。
【０００６】
本発明は、上記に鑑みてなされたものであって、ソフトウェアプロダクトの開発ベンダのライセンス管理やユーザサポートの負担を軽減するとともに、ソフトウェアプロダクトのユーザのライセンス管理やパッチ情報収集の負担を軽減することができるライセンス管理プログラム、ソフトウェア利用制御方法およびライセンス管理装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するため、請求項１に係る発明は、複数のユーザに利用されるソフトウェアプロダクトのライセンスを管理するライセンス管理プログラムであって、ソフトウェアプロダクトの各機能が起動されて各機能に対応する起動可否情報が起動可を示す情報と一致するか否かにより各機能の起動可否が判定される際に起動可否情報として用いられるライセンスを、複数の開発ベンダによりそれぞれ開発された複数のソフトウェアプロダクトの機能ごとに各ユーザに対して使用を許可された情報である機能別使用許可ユーザ情報を記憶装置から読み出してユーザごとに作成するライセンス作成手順をコンピュータに実行させることを特徴とする。
【０００８】
この請求項１の発明によれば、ソフトウェアプロダクトの各機能が起動されて各機能に対応する起動可否情報が起動可を示す情報と一致するか否かにより各機能の起動可否が判定される際に起動可否情報として用いられるライセンスを、複数の開発ベンダによりそれぞれ開発された複数のソフトウェアプロダクトの機能ごとに各ユーザに対して使用を許可された情報である機能別使用許可ユーザ情報を記憶装置から読み出してユーザごとに作成するよう構成したので、各開発ベンダはライセンスを管理する必要がなくなり、ユーザは開発ベンダごとにライセンスを管理する必要がなくなる。
【０００９】
また、請求項２に係る発明は、上記発明において、各開発ベンダがソフトウェアプロダクトについて開発ベンダのコンピュータにアップロード登録したパッチおよびパッチ情報を各開発ベンダのコンピュータから受信することによって該パッチおよびパッチ情報を取得するパッチ情報取得手順と、前記パッチ情報取得手順によりパッチおよびパッチ情報が取得されたソフトウェアプロダクトのうち使用が許可されたソフトウェアプロダクトのパッチ情報をユーザのコンピュータに送信するパッチ情報送信手順と、前記パッチ情報送信手順により送信されたパッチ情報に基づいてユーザのコンピュータが要求するパッチを該ユーザのコンピュータに送信するパッチ送信手順と、をさらにコンピュータに実行させることを特徴とする。
【００１０】
この請求項２の発明によれば、各開発ベンダがソフトウェアプロダクトについて開発ベンダのコンピュータにアップロード登録したパッチおよびパッチ情報を各開発ベンダのコンピュータから受信することによって該パッチおよびパッチ情報を取得し、パッチおよびパッチ情報を取得したソフトウェアプロダクトのうち使用が許可されたソフトウェアプロダクトのパッチ情報をユーザのコンピュータに送信し、送信したパッチ情報に基づいてユーザのコンピュータが要求するパッチをユーザのコンピュータに送信するよう構成したので、各開発ベンダはパッチを管理する必要がなくなり、ユーザは開発ベンダごとにパッチ情報を収集する必要がなくなる。
【００１１】
また、請求項３に係る発明は、上記発明において、各開発ベンダから商品情報を取得する商品情報取得手順と、前記商品情報取得手順により取得された商品情報をユーザのコンピュータに送信する商品情報送信手順と、をさらにコンピュータに実行させることを特徴とする。
【００１２】
この請求項３の発明によれば、各開発ベンダから商品情報を取得し、取得した商品情報をユーザのコンピュータに送信するよう構成したので、各開発ベンダはユーザに商品情報を提供する必要がなくなる。
【００１３】
また、請求項４に係る発明は、複数のユーザに利用されるソフトウェアプロダクトの利用を制御するソフトウェア利用制御方法であって、ソフトウェアのライセンスを管理するライセンス管理装置が、複数の開発ベンダによりそれぞれ開発された複数のソフトウェアプロダクトの機能ごとに各ユーザに対して使用を許可された情報である機能別使用許可ユーザ情報を記憶装置から読み出して、各機能の起動可否が判定される際に起動可否情報として用いられるライセンスをユーザごとに作成するライセンス作成ステップと、ソフトウェアプロダクトが実装されたユーザコンピュータが、ソフトウェアプロダクトの各機能の起動要求を受け付けた際に、前記ライセンス作成ステップにより作成されたライセンスを用いて各機能に対応する起動可否情報が起動可を示す情報と一致するか否かを判定することにより各機能の起動可否を判定する起動可否判定ステップと、を含んだことを特徴とする。
【００１４】
この請求項４の発明によれば、ソフトウェアのライセンスを管理するライセンス管理装置が、複数の開発ベンダによりそれぞれ開発された複数のソフトウェアプロダクトの機能ごとに各ユーザに対して使用を許可された情報である機能別使用許可ユーザ情報を記憶装置から読み出して、各機能の起動可否が判定される際に起動可否情報として用いられるライセンスをユーザごとに作成し、ソフトウェアプロダクトが実装されたユーザコンピュータが、ソフトウェアプロダクトの各機能の起動要求を受け付けた際に、ライセンス管理装置により作成されたライセンスを用いて各機能に対応する起動可否情報が起動可を示す情報と一致するか否かを判定することにより各機能の起動可否を判定するよう構成したので、各開発ベンダはライセンスを管理する必要がなくなり、ユーザは開発ベンダごとにライセンスを管理する必要がなくなる。
【００１５】
また、請求項５に係る発明は、上記発明において、各開発ベンダがソフトウェアプロダクトについて開発ベンダのコンピュータにアップロード登録したパッチおよびパッチ情報を各開発ベンダのコンピュータから受信することによって該パッチおよびパッチ情報を前記ライセンス管理装置が取得するパッチ情報取得ステップと、前記パッチ情報取得ステップによりパッチおよびパッチ情報が取得されたソフトウェアプロダクトのうち使用が許可されたソフトウェアプロダクトのパッチ情報を前記ライセンス管理装置がユーザコンピュータに送信するパッチ情報送信ステップと、前記パッチ情報送信ステップにより送信されたパッチ情報に含まれるパッチの動作条件に基づいてユーザコンピュータが適用するパッチを特定するパッチ特定ステップと、前記パッチ特定ステップにより適用するパッチを特定した場合に、該特定したパッチをユーザコンピュータが前記ライセンス管理装置に要求するパッチ要求ステップと、前記パッチ要求ステップにより要求されたパッチを前記ライセンス管理装置がユーザコンピュータに送信するパッチ送信ステップと、前記パッチ送信ステップにより送信されたパッチを受信したユーザコンピュータがパッチを適用するパッチ適用ステップと、をさらに含んだことを特徴とする。
【００１６】
この請求項５の発明によれば、各開発ベンダがソフトウェアプロダクトについて開発ベンダのコンピュータにアップロード登録したパッチおよびパッチ情報を各開発ベンダのコンピュータから受信することによってパッチおよびパッチ情報をライセンス管理装置が取得し、パッチおよびパッチ情報を取得したソフトウェアプロダクトのうち使用が許可されたソフトウェアプロダクトのパッチ情報をライセンス管理装置がユーザコンピュータに送信し、送信したパッチ情報に含まれるパッチの動作条件に基づいてユーザコンピュータが適用するパッチを特定し、適用するパッチを特定した場合に、特定したパッチをユーザコンピュータがライセンス管理装置に要求し、ユーザコンピュータにより要求されたパッチをライセンス管理装置がユーザコンピュータに送信し、ライセンス管理装置により送信されたパッチを受信したユーザコンピュータがパッチを適用するよう構成したので、各開発ベンダはパッチを管理する必要がなくなり、ユーザは開発ベンダごとにパッチ情報を収集する必要がなくなる。
【００１７】
また、請求項６に係る発明は、上記発明において、ユーザコンピュータがリソースの使用状況、時刻およびジョブ量に基づいてパッチを適用するか否かを判定するパッチ適用可否判定ステップと、前記パッチ適用ステップによるパッチ適用後に、ユーザコンピュータ再起動、結果メッセージの出力、パッチ適用後の後処理を行う後処理ステップとをさらに含み、前記パッチ情報送信ステップは、前記パッチ適用可否判定ステップによりパッチ適用可と判定したユーザコンピュータがパッチ情報の送信を要求した場合に、前記ライセンス管理装置がパッチ情報をユーザコンピュータに送信することを特徴とする。
【００１８】
この請求項６の発明によれば、ユーザコンピュータがリソースの使用状況、時刻およびジョブ量に基づいてパッチを適用するか否かを判定し、パッチ適用可と判定したユーザコンピュータがパッチ情報の送信を要求した場合に、ライセンス管理装置がパッチ情報をユーザコンピュータに送信するよう構成したので、ユーザコンピュータの処理負荷が軽いときを選んでパッチを適用することができる。また、パッチ適用後に、ユーザコンピュータ再起動、結果メッセージの出力、パッチ適用後処理を行うよう構成したので、パッチの適用結果を即座にユーザコンピュータに反映させることができる。
【００１９】
また、請求項７に係る発明は、複数のユーザに利用されるソフトウェアプロダクトのライセンスを管理するライセンス管理装置であって、ソフトウェアプロダクトの各機能が起動されて各機能に対応する起動可否情報が起動可を示す情報と一致するか否かにより各機能の起動可否が判定される際に起動可否情報として用いられるライセンスを、複数の開発ベンダによりそれぞれ開発された複数のソフトウェアプロダクトの機能ごとに各ユーザに対して使用を許可された情報である機能別使用許可ユーザ情報を記憶装置から読み出してユーザごとに作成するライセンス作成手段を備えたことを特徴とする。
【００２０】
この請求項７の発明によれば、ソフトウェアプロダクトの各機能が起動されて各機能に対応する起動可否情報が起動可を示す情報と一致するか否かにより各機能の起動可否が判定される際に起動可否情報として用いられるライセンスを、複数の開発ベンダによりそれぞれ開発された複数のソフトウェアプロダクトの機能ごとに各ユーザに対して使用を許可された情報である機能別使用許可ユーザ情報を記憶装置から読み出してユーザごとに作成するよう構成したので、各開発ベンダはライセンスを管理する必要がなくなり、ユーザは開発ベンダごとにライセンスを管理する必要がなくなる。
【発明の効果】
【００２１】
請求項１、４および７の発明によれば、各開発ベンダはライセンスを管理する必要がなくなるので、各開発ベンダがライセンス管理を行う負担を軽減することができるという効果を奏する。また、ユーザは開発ベンダごとにライセンスを管理する必要がなくなるので、ユーザのライセンス管理負担も軽減することができるという効果を奏する。
【００２２】
また、請求項２および５の発明によれば、各開発ベンダはパッチを管理する必要がなくので、各開発ベンダがパッチ管理を行う負担を軽減することができるという効果を奏する。また、ユーザは開発ベンダごとにパッチ情報を収集する必要がなくなるので、ユーザの管理負担も軽減することができるという効果を奏する。
【００２３】
また、請求項３の発明によれば、各開発ベンダはユーザに商品情報を提供する必要がなくなるので、各開発ベンダがユーザに商品情報を提供する負担をなくすことができるという効果を奏する。
【００２４】
また、請求項６の発明によれば、ユーザコンピュータの処理負荷が軽いときを選んでパッチを適用するので、ユーザコンピュータが行っている処理に悪影響を与えることなくパッチ適用を行うことができるという効果を奏する。また、パッチの適用結果を即座にユーザコンピュータに反映させるので、パッチ適用が不完全なままユーザコンピュータが処理を継続するリスクをなくすことができる。
【発明を実施するための最良の形態】
【００２５】
以下に、本発明に係るライセンス管理プログラム、ソフトウェア利用制御方法およびライセンス管理装置の実施例を図面に基づいて詳細に説明する。なお、実施例１では、複数の機能を有するソフトウェアプロダクトのライセンスを機能ごとに管理するライセンス管理システムについて説明し、実施例２では、複数の開発ベンダがそれぞれ開発した複数のソフトウェアプロダクトのライセンスを管理するライセンス管理システムについて説明する。また、実施例２では、ライセンス管理以外にパッチサービスなどのユーザサポート機能を提供するライセンス管理システムについても説明する。
【実施例１】
【００２６】
まず、本実施例１に係るライセンス管理システムの概念について説明する。図１は、本実施例１に係るライセンス管理システムの概念を説明するための説明図である。同図に示すように、このライセンス管理システムでは、ユーザは業務アプリケーションが動作する業務ＷｅｂサーバにＣＤから業務アプリケーションをインストールする（１）。この段階で、業務アプリケーションは、評価版としての利用が可能となる。
【００２７】
そして、ユーザは、業務ＷｅｂサーバのＭＡＣアドレス（Ａ）を業務アプリケーションのライセンス管理先に連絡し（２）、連絡を受けたライセンス管理先では、ライセンスを管理するライセンス管理Ｗｅｂサーバに、ユーザ情報、ＭＡＣアドレスとともに業務アプリケーションの機能別許可情報を登録する（３）。ここで、機能別許可情報とは、アプリケーションの機能ごとの使用許否を示す情報である。
【００２８】
そして、ライセンス管理Ｗｅｂサーバは、ＭＡＣアドレスおよび機能別許可情報を含むライセンスファイルを作成し（４）、ユーザに送付する（５）。ユーザは、ライセンスファイルを受け取ると、ライセンスファイルを業務Ｗｅｂサーバにセットする（６）。
【００２９】
そして、業務Ｗｅｂサーバは、ユーザから業務アプリケーションが提供する機能のうち例えば機能Ｘの起動指示を受けると、機能Ｘがライセンスファイルに含まれる機能別許可情報（Ｃ）で許可されているか否か、業務ＷｅｂサーバのＭＡＣアドレス（Ａ）がライセンスファイルに含まれるＭＡＣアドレス（Ｂ）と一致するか否かに基づいて、機能Ｘを起動するか、あるいはライセンスエラーを通知する。
【００３０】
このように、本実施例１に係るライセンス管理システムでは、機能別許可情報を含むライセンスファイルを業務Ｗｅｂサーバにセットし、業務Ｗｅｂサーバがライセンスファイル中の機能別許可情報に基づいて機能ごとに起動の可否を判定することによって、機能ごとにライセンス管理を行うことができる。
【００３１】
また、ここでは、ライセンスファイルが一つの業務アプリケーションに関して機能別許可情報を含む場合について説明したが、ライセンスファイルには、他の業務アプリケーションなど複数のソフトウェアプロダクトに関する機能別許可情報を含めることもできる。このように、ライセンスファイルに複数のソフトウェアプロダクトに関する機能別許可情報を含めることによって、一つのライセンスファイルによって複数のソフトウェアプロダクトを管理することができ、ユーザがライセンスを管理する負担を減らすことができる。
【００３２】
次に、本実施例１に係るライセンス管理システムの構成について説明する。図２は、本実施例１に係るライセンス管理システムの構成を示す機能ブロック図である。同図に示すように、このライセンス管理システムは、ライセンスを管理するライセンス管理Ｗｅｂサーバ１０と、業務アプリケーションが動作する業務Ｗｅｂサーバ２０とから構成される。なお、ここでは説明の便宜上、１台の業務Ｗｅｂサーバのみを示したが、ライセンス管理Ｗｅｂサーバ１０は、複数の業務Ｗｅｂサーバを対象としてライセンス管理を行うことができる。
【００３３】
ライセンス管理Ｗｅｂサーバ１０では、ライセンスを管理するライセンス管理プログラム１００が動作し、ライセンス管理プログラム１００は、ライセンス情報記憶部１１０と、プロダクト情報登録部１２０と、プロダクト情報照会部１３０と、プロダクトキー生成部１４０と、機能別許可情報コード作成部１５０と、ライセンスファイル作成部１６０とを有する。
【００３４】
ライセンス情報記憶部１１０は、ライセンス情報を記憶する記憶部であり、ライセンスが与えられたユーザに関する情報、業務アプリケーションのインストールが許可された業務ＷｅｂサーバのＭＡＣアドレス、機能別許可情報などを記憶する。
【００３５】
ここで、機能別許可情報の詳細について説明する。図３は、機能別許可情報を説明するための説明図である。同図は、三つのソフトウェアプロダクトに関する機能別許可情報を示しており、機能ごと、すなわち、機能を提供するプログラムごとに番地が割り当てられている。
【００３６】
例えば、ソフトウェアプロダクト「１」は「ＷｅｂＡＳフレームワーク」というプログラムから構成され、ソフトウェアプロダクト「２」は「ライセンスプロテクターマスメン」および「ライセンスプロテクター管理者機能」というプログラムから構成され、ソフトウェアプロダクト「３」は「販売管理」、「就業管理」、「情報共有」および「ビルメン」というプログラムから構成される。なお、「フレームワーク予備項目ｎ」は、ソフトウェアプロダクトがカスタマイズされて新たな機能が追加された場合に用いるためのものである。
【００３７】
図３において、フラグが「１」である場合には、対応するプログラムの実行が許可されており、フラグが「０」である場合には、対応するプログラムの実行が許可されていない。例えば、ソフトウェアプロダクト「３」のうち、「販売管理」は実行が許可されているが、「就業管理」、「情報共有」および「ビルメン」は実行が許可されていない。
【００３８】
図２に戻って、プロダクト情報登録部１２０は、ライセンス情報の登録処理を行う処理部であり、ライセンス管理者からライセンスが与えられたユーザに関する情報、業務アプリケーションのインストールが許可された業務ＷｅｂサーバのＭＡＣアドレス、機能別許可情報などを受け付けてライセンス情報記憶部１１０に格納する。
【００３９】
プロダクト情報照会部１３０は、ライセンス情報記憶部１１０に格納されたライセンス情報を表示する処理部であり、ライセンス管理者が照会したライセンスに関する情報を検索して表示する。
【００４０】
プロダクトキー生成部１４０は、ユーザごとにプロダクトキーを生成してライセンス情報記憶部１１０に格納する処理部であり、ユーザが複数のソフトウェアプロダクトを利用する場合にも、一つのプロダクトキーを生成する。このプロダクトキー生成部１４０が複数のソフトウェアプロダクトに対して一つのプロダクトキーを生成することによって、ソフトウェアプロダクトごとにプロダクトキーを管理する煩わしさからユーザを解放することができる。
【００４１】
機能別許可情報コード作成部１５０は、ライセンス情報記憶部１１０に記憶された機能別許可情報のフラグ値のコード化や暗号化などを行ってライセンスファイル用に機能別許可情報コードを作成する処理部であり、作成した機能別許可情報コードをライセンス情報記憶部１１０に格納する。
【００４２】
ライセンスファイル作成部１６０は、ライセンス情報記憶部１１０に記憶されたプロダクトキー、ＭＡＣアドレスおよび機能別許可情報コードを用いてユーザごとにライセンスファイル３１を作成し、暗号化してＣＤ３０に格納する処理部である。
【００４３】
図４は、ライセンスファイルの一例を示す図である。同図に示すように、このライセンスファイルでは、プロダクトキー、ＭＡＣアドレスおよび機能別許可情報コードがＸＭＬを用いて記述されている。同図において、プロダクトキーは＜ＰＲＯＤＵＣＴ＿ＫＥＹ＞タグを用いて記述され、ＭＡＣアドレスは＜ＭＡＣ＿ＡＤＤＲＥＳＳ＞タグを用いて記述され、機能別許可情報コードは＜ＦＵＮＣＴＩＯＮ＿ＡＲＥＡ＞タグを用いて記述されている。また、＜ＦＵＮＣＴＩＯＮ＿ＡＲＥＡ＞タグの値、すなわち機能別許可情報コードは、２進数から１６進数に変換されてＤＥＳ暗号化されている。
【００４４】
業務Ｗｅｂサーバ２０では、アプリケーション２１およびライセンスチェックプログラム２００が動作し、ライセンスチェックプログラム２００は、ライセンスファイル２１０と、ライセンスチェック処理部２２０とを有する。なお、アプリケーション２１は業務アプリケーションであり、ここでは説明の便宜上、１つの業務アプリケーションのみを示したが、業務Ｗｅｂサーバ２０では、他の業務アプリケーションなど複数のアプリケーションが動作する。
【００４５】
ライセンスファイル２１０は、ライセンス管理Ｗｅｂサーバ１０によって作成されたライセンスファイル３１であり、ＣＤ３０から読み出されて業務Ｗｅｂサーバ２０にコピーされたものである。
【００４６】
ライセンスチェック処理部２２０は、アプリケーション２１が起動される際にアプリケーション２１から起動要求対象機能の番地を受け取り、番地に対応するフラグが「１」であるか否か、すなわち、起動要求対象機能の使用が許可されているか否かをライセンスファイル２１０を用いてチェックする処理部であり、許可されている場合にはアプリケーション２１を起動し、許可されていない場合には警告メッセージを出力する。
【００４７】
このライセンスチェック処理部２２０が起動要求対象機能の使用が許可されているか否かをライセンスファイル２１０を用いてチェックすることによって、機能ごとにライセンスを付与することが可能となる。
【００４８】
なお、ライセンスチェックプログラム２００は、ＣＤ３０から業務Ｗｅｂサーバ２０にインストールされる。すなわち、ＣＤ３０には、ライセンスファイル３１以外にライセンスチェックセットアッププログラム３２およびセットアッププログラム３３が格納されており、ＣＤ３０が業務Ｗｅｂサーバ２０のＣＤドライブに挿入されると、セットアッププログラム３３が読み出されて業務Ｗｅｂサーバ２０上でセットアッププログラム２３として動作し、ライセンスチェックセットアッププログラム３２を読み出してライセンスチェックセットアッププログラム２２として実行する。
【００４９】
そして、ライセンスチェックセットアッププログラム２２がライセンスファイル３１を用いてライセンスチェックプログラム２００を業務Ｗｅｂサーバ２０にインストールする。
【００５０】
次に、ライセンスチェックセットアッププログラム２２によるライセンスチェックプログラム２００のインストール処理の処理手順について説明する。図５は、ライセンスチェックセットアッププログラム２２によるライセンスチェックプログラム２００のインストール処理の処理手順を示すフローチャートである。なお、ユーザには、事前にライセンスファイル名およびプロダクトキーが通知されているものとする。
【００５１】
同図に示すように、このライセンスチェックセットアッププログラム２２は、ユーザによるライセンスファイルおよびプロダクトキーの指定を受け付ける（ステップＳ１０１）。また、ＣＤ３０からライセンスファイル３１を読み出して復号化する（ステップＳ１０２）。
【００５２】
そして、ユーザによって入力されたプロダクトキーと復号化したライセンスファイル３１の中のプロダクトキーを比較し（ステップＳ１０３）、両者が一致するか否かを判定する（ステップＳ１０４）。
【００５３】
その結果、両者が一致する場合には、業務Ｗｅｂサーバ２０のＭＡＣアドレスと復号化したライセンスファイル３１の中のＭＡＣアドレスを比較し（ステップＳ１０５）、両者が一致するか否かを判定する（ステップＳ１０６）。
【００５４】
その結果、両者が一致する場合には、業務Ｗｅｂサーバ２０でライセンスチェックプログラム２００が動作するようにインストールを行う（ステップＳ１０７）。一方、両者が一致しない場合、あるいは、ユーザによって入力されたプロダクトキーと復号化したライセンスファイル３１の中のプロダクトキーが一致しない場合には、警告メッセージを出力する（ステップＳ１０８）。
【００５５】
このように、ライセンスチェックセットアッププログラム２２がライセンスファイル３１に基づいてライセンスチェックプログラム２００をインストールすることによって、ライセンスチェックプログラム２００が不正にインストールされることを防ぐことができる。
【００５６】
次に、ライセンスチェックプログラム２００によるアプリ起動チェック処理の処理手順について説明する。図６は、ライセンスチェックプログラム２００によるアプリ起動チェック処理の処理手順を示すフローチャートである。
【００５７】
同図に示すように、ライセンスチェックプログラム２００は、起動要求を受けたアプリケーションが試用期限内か否かを判定し（ステップＳ２０１）、試用期限内である場合には、ステップＳ２１２に進んでアプリケーションを起動する（ステップＳ２１２）。
【００５８】
一方、試用期限内でない場合には、ライセンスファイル２１０の存在をチェックする（ステップＳ２０２）。その結果、ライセンスファイル２１０が存在する場合（ステップＳ２０３、Ｙｅｓ）には、ライセンスファイル２１０の復号化を行い（ステップＳ２０４）、ライセンスファイル２１０内のＭＡＣアドレスと業務Ｗｅｂサーバ２０のＭＡＣアドレスが一致するか否かを判定する（ステップＳ２０５）。
【００５９】
その結果、両者が一致する場合には、アプリケーション２１から起動要求対象の番地を取得する（ステップＳ２０６）。また、ライセンスファイル２１０のＦＵＮＣＴＩＯＮ＿ＡＲＥＡタグの値、すなわち、機能別許可情報コードを取得し（ステップＳ２０７）、ＤＥＳ復号を行う（ステップＳ２０８）。
【００６０】
そして、ＦＵＮＣＴＩＯＮ＿ＡＲＥＡタグの値を１６進数から２進数に変換し（ステップＳ２０９）、アプリケーション２１から取得した番地の値が「１」であるか否かの判定を行う（ステップＳ２１０）。
【００６１】
その結果、番地の値が「１」である場合（ステップＳ２１１、Ｙｅｓ）には、アプリケーション２１を起動し（ステップＳ２１２）、番地の値が「０」である場合（ステップＳ２１１、Ｎｏ）には、アプリケーション２１を起動することなく警告メッセージを出力する（ステップＳ２１３）。
【００６２】
また、ライセンスファイル２１０内のＭＡＣアドレスと業務Ｗｅｂサーバ２０のＭＡＣアドレスが一致しない場合（ステップＳ２０５、不一致）、あるいはライセンスファイル２１０が存在しない場合（ステップＳ２０３、Ｎｏ）にも、アプリケーション２１を起動することなく警告メッセージを出力する（ステップＳ２１３）。
【００６３】
図７は、アプリケーション起動時のライセンスチェックプログラム２００によるチェック例を示す図である。同図に示すように、ユーザが「販売管理」、「就業管理」、「情報共有」の起動要求をそれぞれ行うと((１)〜(３))、ライセンスチェックプログラム２００はライセンスファイルを参照して起動の可否をチェックする((４)〜(５))。ここで、機能別許可情報が図３に示したように定義されているとすると、「販売管理」は起動が許可されるが、「就業管理」、「情報共有」は起動が許可されない。
【００６４】
このように、ライセンスチェックプログラム２００がライセンスファイル２１０内のＭＡＣアドレスおよび機能別許可情報コードに基づいてアプリケーション２１の起動可否をチェックすることによって、不正利用を防ぐことができる。
【００６５】
次に、ライセンス管理プログラム１００を実行するコンピュータ、すなわちライセンス管理Ｗｅｂサーバ１０のハードウェア構成について説明する。なお、ライセンスチェックプログラム２００およびライセンスチェックセットアッププログラム２２を実行するコンピュータ、すなわち業務Ｗｅｂサーバ２０のハードウェア構成も同様である。
【００６６】
図８は、ライセンス管理プログラム１００を実行するコンピュータの構成を示す機能ブロック図である。同図に示すように、このコンピュータ３００は、ＲＡＭ３１０と、ＣＰＵ３２０と、ＨＤＤ３３０と、ＬＡＮインタフェース３４０と、入出力インタフェース３５０と、ＣＤドライブ３６０とを有する。
【００６７】
ＲＡＭ３１０は、プログラムやプログラムの実行途中結果などを記憶するメモリであり、ＣＰＵ３２０は、ＲＡＭ３１０からプログラムを読み出して実行する中央処理装置である。
【００６８】
ＨＤＤ３３０は、プログラムやデータを格納するディスク装置であり、ＬＡＮインタフェース３４０は、コンピュータ３００をＬＡＮ経由で他のコンピュータに接続するためのインタフェースである。
【００６９】
入出力インタフェース３５０は、マウスやキーボードなどの入力装置および表示装置を接続するためのインタフェースであり、ＣＤドライブ３６０は、ＣＤの読み書きを行う装置である。
【００７０】
そして、このコンピュータ３００において実行されるライセンス管理プログラム１００は、ＣＤドライブ３６０によってＣＤから読み出されてコンピュータ３００にインストールされる。
【００７１】
あるいは、このライセンス管理プログラム１００は、ＬＡＮインタフェース３４０を介して接続された他のコンピュータシステムのデータベースなどに記憶され、これらのデータベースから読み出されてコンピュータ３００にインストールされる。
【００７２】
そして、インストールされたライセンス管理プログラム１００は、ＨＤＤ３３０に記憶され、ＲＡＭ３１０に読み出されてＣＰＵ３２０によってライセンス管理プロセス３２１として実行される。
【００７３】
上述してきたように、本実施例１では、複数のソフトウェアプロダクトについて機能ごとに実行可否が定義された機能別許可情報を用いてライセンス管理プログラム１００の機能別許可情報コード作成部１５０が機能別許可情報コードを作成してライセンス情報記憶部１１０に格納し、ライセンスファイル作成部１６０がライセンス情報記憶部１１０に記憶されたプロダクトキー、ＭＡＣアドレスおよび機能別許可情報コードを用いてライセンスファイルを作成し、ライセンスチェックプログラム２００のライセンスチェック処理部２２０がライセンスファイルの機能別許可情報コードに基づいてアプリケーション２１の機能ごとに起動可否をチェックすることとしたので、アプリケーション２１の機能ごとにライセンス管理を行うとともに、複数のソフトウェアプロダクトの管理を一つのプロダクトキーによって管理することができる。
【００７４】
また、本実施例１では、ライセンスチェックセットアッププログラム３２が、ライセンスファイルのプロダクトキーおよびＭＡＣアドレスに基づいてライセンスチェックプログラム２００のインストール可否を判定することとしたので、ライセンスチェックプログラム２００が不正にインストールされることを防ぐことができる。
【００７５】
また、本実施例１では、Ｗｅｂベースの業務アプリケーションのライセンスを管理する場合を中心に説明したが、本発明はこれに限定されるものではなく、他のソフトウェアプロダクトを機能ごとにライセンス管理する場合にも同様に適用することができる。
【実施例２】
【００７６】
ところで、上記実施例１では、一つの開発ベンダによって開発された複数のソフトウェアプロダクトのライセンスを管理する場合について説明した。しかしながら、ユーザにとっては、複数の開発ベンダによってそれぞれ開発されたソフトウェアプロダクトのライセンスの管理やパッチ情報の収集などを開発ベンダごとに行うと、開発ベンダの数が多くなるにつれて負担が大きくなる。また、開発ベンダにとっては、ライセンスの管理やユーザサポートの負担をできるだけ減らし、ソフトウェア開発に専念できることが重要となる。そこで、本実施例２では、ユーザおよび開発ベンダの双方にとってライセンス管理などの負担を軽減するライセンス管理システムについて説明する。
【００７７】
まず、本実施例２に係るライセンス管理の概念について説明する。図９は、本実施例２に係るライセンス管理の概念を説明するための説明図である。同図に示すように、本実施例２に係るライセンス管理では、ソフトウェアプロダクトの各開発ベンダがライセンスを管理する代わりに、各開発ベンダと代理販売契約を結んだライセンス管理会社がソフトウェアプロダクトの販売を行うとともに、ユーザごとにまとめて複数のソフトウェアプロダクトのライセンスを管理する。
【００７８】
また、ライセンス管理会社は、開発ベンダからパッチ情報およびパッチを取得してユーザに提供するとともに、他のソフトウェアプロダクトの体験版の配布、商品情報の提供、セールスプロモーションなどを各開発ベンダに代わって行う。さらに、ライセンス管理会社は、開発ベンダに対してユーザ情報、統計情報の提供などを行う。
【００７９】
このように、各開発ベンダに代わってライセンス管理会社がソフトウェアプロダクトの販売、ライセンス管理、パッチサービス、セールスプロモーションなどを行うことによって、各開発ベンダはソフトウェア開発に専念することができる。また、ユーザは、ソフトウェアプロダクトのライセンスを開発ベンダごとに管理する代わりにライセンス管理会社が提供する一つのライセンスだけを管理すればよく、ユーザの管理負担を軽減することができる。
【００８０】
次に、本実施例２に係るライセンス管理システムの構成について説明する。図１０は、本実施例２に係るライセンス管理システムの構成を示す機能ブロック図である。同図に示すように、このライセンス管理システムは、ライセンス管理Ｗｅｂサーバ１０と、業務Ｗｅｂサーバ２０と、ベンダサーバ４０とがインターネット５０を介して接続されて構成される。
【００８１】
なお、ここでは説明の便宜上、図２に示した各部と同様の役割を果たす機能部については同一符号を付すこととしてその詳細な説明を省略する。また、ここでは説明の便宜上、１台の業務Ｗｅｂサーバおよびベンダサーバを示すが、このライセンス管理システムは、任意の台数の業務Ｗｅｂサーバおよびベンダサーバから構成される。
【００８２】
ライセンス管理Ｗｅｂサーバ１０が実行するライセンス管理プログラム４００は、ライセンス情報記憶部４１０と、プロダクト情報登録部１２０と、プロダクト情報照会部１３０と、プロダクトキー生成部１４０と、機能別許可情報コード作成部１５０と、ライセンスファイル作成部１６０と、パッチ管理部４７０と、パッチ情報記憶部４７１と、動作条件記憶部４７２と、サービス処理部４８０とを有する。
【００８３】
ライセンス情報記憶部４１０は、図２に示したライセンス情報記憶部１１０と同様にライセンス情報を記憶するが、特定の開発ベンダのソフトウェアプロダクトに関するライセンス情報を記憶するのではなく、複数の開発ベンダがそれぞれ開発した複数のソフトウェアプロダクトのライセンス情報を記憶する。
【００８４】
また、このライセンス情報記憶部４１０は、ライセンスが与えられたユーザに関する情報、業務アプリケーションのインストールが許可された業務ＷｅｂサーバのＭＡＣアドレス、機能別許可情報の他に、各開発ベンダの情報、各開発ベンダから取得したソフトウェアプロダクト体験版、商品情報、セールスプロモーション情報などを記憶する。
【００８５】
パッチ管理部４７０は、ライセンス情報記憶部４１０、パッチ情報記憶部４７１および動作条件記憶部４７２を用いてパッチに関する処理を行う処理部である。すなわち、このパッチ管理部４７０は、ベンダサーバ４０からパッチ情報、パッチおよび動作条件を受け取ってパッチ情報およびパッチをパッチ情報記憶部４７１に格納し、動作条件を動作条件記憶部４７２に格納する。
【００８６】
また、このパッチ管理部４７０は、業務Ｗｅｂサーバ２０からの要求に応答して、ライセンスが与えられたソフトウェアプロダクトのパッチ情報、パッチの動作条件およびパッチを業務Ｗｅｂサーバ２０に送信するとともに、業務Ｗｅｂサーバ２０からパッチの適用状況に関する情報を取得してパッチ情報記憶部４７１に格納する。
【００８７】
パッチ情報記憶部４７１は、パッチ情報およびパッチを記憶する記憶部である。また、このパッチ情報記憶部４７１は、業務Ｗｅｂサーバ２０からパッチ管理部４７０が取得したパッチの適用状況に関する情報をユーザごとに記憶する。
【００８８】
動作条件記憶部４７２は、各パッチの動作条件を記憶する記憶部である。サービス処理部４８０は、ベンダサーバ４０からソフトウェアプロダクトの体験版、商品情報、セールスプロモーション情報をインターネット５０を介して受け取り、ライセンス情報記憶部４１０に格納する。また、このサービス処理部４８０は、業務Ｗｅｂサーバ２０にソフトウェアプロダクトの体験版、商品情報、セールスプロモーション情報をインターネット５０を介して送信する。
【００８９】
業務Ｗｅｂサーバ２０が実行するライセンスチェックプログラム５００は、ライセンスのチェックを行うだけでなく、ライセンスを受けたソフトウェアプロダクトに対するパッチの適用を行う。このため、ライセンスチェックプログラム５００は、ライセンスファイル２１０およびライセンスチェック処理部２２０に加えてパッチ処理部５３０と、パッチ管理ファイル５３１と、動作条件管理ファイル５３２とを有する。
【００９０】
パッチ処理部５３０は、ライセンスファイル２１０、パッチ管理ファイル５３１および動作条件管理ファイル５３２を用いてパッチ適用を行う処理部である。図１１は、パッチ処理部５３０がパッチ適用に用いるライセンスファイル２１０、パッチ管理ファイル５３１および動作条件管理ファイル５３２の関係を説明するための説明図である。同図に示すように、パッチ処理部５３０は、ライセンスファイル２１０にプロダクトキーや機能別許可情報コードが記憶されているソフトウェアプロダクト（「パッケージＡ」、「パッケージＢ」など）ごとに、パッチ情報をパッチ管理ファイル５３１を用いて管理し、各パッチの動作条件を動作条件管理ファイル５３２を用いて管理する。
【００９１】
パッチ管理ファイル５３１は、ソフトウェアプロダクトごとのパッチ情報を記憶するファイルであり、動作条件管理ファイル５３２はソフトウェアプロダクトごとの各パッチの動作条件を記憶するファイルである。
【００９２】
図１２は、パッチ管理ファイル５３１および動作条件管理ファイル５３２の一例を示す図である。同図に示すように、パッチ管理ファイル５３１は、パッチの配布日、パッチ名称およびパッチの適用日をパッチごとに記憶し、動作条件管理ファイル５３２は、パッチ名称およびパッチ適用範囲をパッチごとに記憶する。ここで、パッチ適用範囲は、パッチを適用するＯＳ、ＤＢのバージョン、パッチ適用の前提となるパッチ名称などの動作条件を示す。
【００９３】
なお、ここでは、ライセンスチェックプログラム５００にライセンスチェック処理部２２０とパッチ処理部５３０とが含まれることとしたが、ライセンスチェック処理部２２０とパッチ処理部５３０とを別プログラムとすることもできる。
【００９４】
ベンダサーバ４０は、開発ベンダがパッチ情報や商品情報などをライセンス管理Ｗｅｂサーバ１０にアップロードする場合に使用するサーバであり、各種情報のアップロード処理を行うアップロードプログラム４１が動作する。
【００９５】
次に、本実施例２に係るライセンス管理システムによるパッチ適用処理の処理手順について説明する。図１３は、本実施例２に係るライセンス管理システムによるパッチ適用処理の処理手順を示すフローチャートである。
【００９６】
同図に示すように、このパッチ適用処理では、ライセンス管理プログラム４００のパッチ管理部４７０がアップロード処理を行う（ステップＳ３０１）。すなわち、パッチ管理部４７０は、ベンダサーバ４０からパッチ、パッチ情報および動作条件を受信してパッチおよびパッチ情報をパッチ情報記憶部４７１に格納し、動作条件を動作条件記憶部４７２に格納する。なお、開発ベンダは、専用のＷｅｂ画面でパッチアップロードの登録を行い、登録の際にパッチ情報やパッチ適用範囲を指定する。
【００９７】
一方、ライセンスチェックプログラム５００のパッチ処理部５３０は、インストールの際にレジストリに記述された頻度で起動され、業務Ｗｅｂサーバ２０の動作環境をチェックし（ステップＳ３０２）、動作環境が所定の条件を満たしている場合にだけライセンス管理Ｗｅｂサーバ１０にパッチに関する情報を要求する（ステップＳ３０３）。ここで、動作環境が満たすべき条件とは、リソースの使用状況、業務の運用時間であるか否か、ジョブ量などに基づく条件である。
【００９８】
そして、業務Ｗｅｂサーバ２０からパッチに関する情報の要求を受信すると、パッチ管理部４７０は、パッチに関する情報としてライセンスが与えられたソフトウェアプロダクトのパッチ情報および動作条件を業務Ｗｅｂサーバ２０に送信する（ステップＳ３０４）。なお、パッチに関する情報の送信はＷｅｂサービス化されていて外部からのアクセスに対してパスワード認証が行われる。
【００９９】
そして、ライセンス管理Ｗｅｂサーバ１０からパッチに関する情報を受信すると、パッチ処理部５３０は、ソフトウェアプロダクトごとに、パッチ情報をパッチ管理ファイル５３１に格納し、動作条件を動作条件管理ファイル５３２に格納する。そして、パッチ処理部５３０は、適用するパッチを動作条件に基づいて特定し（ステップＳ３０５）、特定したパッチの送信をライセンス管理Ｗｅｂサーバ１０に対して要求する（ステップＳ３０６）。
【０１００】
そして、業務Ｗｅｂサーバ２０からパッチ送信要求を受信すると、パッチ管理部４７０が、要求のあったパッチを業務Ｗｅｂサーバ２０に送信する（ステップＳ３０７）。そして、ライセンス管理Ｗｅｂサーバ１０からパッチを受信すると、パッチ処理部５３０は、パッチを適用し（ステップＳ３０８）、パッチ管理ファイル５３１の適用日を更新する（ステップＳ３０９）。そして、パッチ処理部５３０は、パッチ適用情報をライセンス管理Ｗｅｂサーバ１０に送信する（ステップＳ３１０）。
【０１０１】
そして、業務Ｗｅｂサーバ２０からパッチ適用情報を受信すると、パッチ管理部４７０は、ユーザごとに管理するパッチ情報記憶部４７１の情報を更新する（ステップＳ３１１）。一方、パッチ処理部５３０は、ＤＢ再起動、サーバ再起動などのパッチ適用後処理を行い（ステップＳ３１２）、処理が完了すると、パッチ適用結果のダイアログを出力する（ステップＳ３１３）。
【０１０２】
上述してきたように、本実施例２では、複数の開発ベンダによってそれぞれ開発された複数のソフトウェアプロダクトのパッチ情報をライセンス管理プログラム４００がまとめて管理することとしたので、各開発ベンダはパッチおよびパッチに関連する情報をライセンス管理Ｗｅｂサーバ１０にアップロードするだけでパッチサービスを提供することができ、パッチサービスを提供する開発ベンダの負担を軽減することができる。
【０１０３】
また、本実施例２では、パッチ処理部５３０がライセンス管理Ｗｅｂサーバ１０からパッチに関連する情報を取得してパッチを適用することとしたので、ユーザは、開発ベンダごとにパッチ情報を収集する必要がなくなり、ユーザのパッチ管理負担を軽減することができる。
【０１０４】
また、本実施例２では、パッチ処理部５３０がライセンス管理Ｗｅｂサーバ１０からパッチに関連する情報を取得する際に、動作環境をチェックすることとしたので、業務Ｗｅｂサーバ２０で動作するアプリケーション２１に悪影響を与えることなくパッチの適用を行うことができる。
【０１０５】
なお、本実施例２では、適用するパッチの特定を業務Ｗｅｂサーバ２０で動作するパッチ処理部５３０が行う場合について説明したが、本発明はこれに限定されるものではなく、ライセンス管理プログラム４００がユーザごとにパッチ適用状況を管理し、必要なパッチを特定する場合にも同様に適用することができる。ライセンス管理プログラム４００が各ユーザに必要なパッチを特定することによって、業務Ｗｅｂサーバ２０のパッチ管理負担を軽減することができる。
【産業上の利用可能性】
【０１０６】
以上のように、本発明に係るライセンス管理プログラム、ソフトウェア利用制御方法およびライセンス管理装置は、ソフトウェアプロダクトのライセンス管理やパッチ管理に有用であり、特に、ソフトウェア開発にできるだけ専念する必要がある開発ベンダによって開発されたソフトウェアプロダクトのライセンス管理やパッチ管理に適している。
【図面の簡単な説明】
【０１０７】
【図１】図１は、本実施例１に係るライセンス管理システムの概念を説明するための説明図である。
【図２】図２は、本実施例１に係るライセンス管理システムの構成を示す機能ブロック図である。
【図３】図３は、機能別許可情報を説明するための説明図である。
【図４】図４は、ライセンスファイルの一例を示す図である。
【図５】図５は、ライセンスチェックセットアッププログラムによるライセンスチェックプログラムのインストール処理の処理手順を示すフローチャートである。
【図６】図６は、ライセンスチェックプログラムによるアプリ起動チェック処理の処理手順を示すフローチャートである。
【図７】図７は、アプリケーション起動時のライセンスチェックプログラムによるチェック例を示す図である。
【図８】図８は、ライセンス管理プログラムを実行するコンピュータの構成を示す機能ブロック図である。
【図９】図９は、本実施例２に係るライセンス管理の概念を説明するための説明図である。
【図１０】図１０は、本実施例２に係るライセンス管理システムの構成を示す機能ブロック図である。
【図１１】図１１は、パッチ処理部がパッチ適用に用いるライセンスファイル、パッチ管理ファイルおよび動作条件管理ファイルの関係を説明するための説明図である。
【図１２】図１２は、パッチ管理ファイルおよび動作条件管理ファイルの一例を示す図である。
【図１３】図１３は、本実施例２に係るライセンス管理システムによるパッチ適用処理の処理手順を示すフローチャートである。
【符号の説明】
【０１０８】
１０    ライセンス管理Ｗｅｂサーバ
２０    業務Ｗｅｂサーバ
２１    アプリケーション
２２，３２    ライセンスチェックセットアッププログラム
２３，３３    セットアッププログラム
３０    ＣＤ
３１    ライセンスファイル
４０    ベンダサーバ
４１    アップロードプログラム
５０    インターネット
１００，４００    ライセンス管理プログラム
１１０，４１０    ライセンス情報記憶部
１２０    プロダクト情報登録部
１３０    プロダクト情報照会部
１４０    プロダクトキー生成部
１５０    機能別許可情報コード作成部
１６０    ライセンスファイル作成部
２００，５００    ライセンスチェックプログラム
２１０    ライセンスファイル
２２０    ライセンスチェック処理部
３００    コンピュータ
３１０    ＲＡＭ
３２０    ＣＰＵ
３３０    ＨＤＤ
３４０    ＬＡＮインタフェース
３５０    入出力インタフェース
３６０    ＣＤドライブ
４７０    パッチ管理部
４７１    パッチ情報記憶部
４７２    動作条件記憶部
４８０    サービス処理部
５３０    パッチ処理部
５３１    パッチ管理ファイル
５３２    動作条件管理ファイル
【国際調査報告】
2008146408.tif 000016
2008146408.tif 000017
2008146408.tif 000018
2008146408.tif 000019