(57)【特許請求の範囲】
【請求項１】
管理プログラムとデータベースとを保存するメモリと、ネットワークを介して接続された複数の情報処理装置のいずれかの情報処理装置に接続するインタフェースとを有する可搬型メモリ装置であって、
前記データベースは、
前記複数の情報処理装置に提供するソフトウェアのライセンス上限数と、ライセンスの使用を許可した数を示すライセンス使用数と、ライセンスの使用が許可された情報処理装置の固有の識別情報から生成されるライセンスコードとを含み、
前記管理プログラムは、前記インタフェースを介して接続された情報処理装置に、
前記複数の情報処理装置のいずれかの情報装置からソフトウェアのライセンスの取得要求を受信する機能と、
前記取得要求を受信した情報処理装置の固有の識別情報からライセンスコードを生成し、該ライセンスコードと一致するライセンスコードが前記データベース内に保存されているか否かを判定する機能と、
前記データベース内に一致するライセンスコードが保存されていないと判定した場合、前記ライセンス使用数が前記ライセンス上限数に到達済みか否かを判定する機能と、
前記ライセンス使用数が前記ライセンス上限数に到達済みでないと判定した場合、前記取得要求を受信した情報処理装置のライセンスコードを前記データベースに保存するとともに、前記データベースに保存されるライセンス使用数をインクリメントし、該情報処理装置へライセンスの使用を許可する許可情報を送信する機能と、
前記ライセンス使用数が前記ライセンス上限数に到達済みであると判定した場合、前記取得要求を受信した情報処理装置へライセンスの使用が許可できない不許可情報を送信する機能と、
前記複数の情報処理装置のいずれかの情報処理装置からライセンスの返還要求を受信する機能と、
前記返還要求を受信した情報処理装置の固有の識別情報からライセンスコードを生成し、該ライセンスコードと一致するライセンスコードが前記データベース内に保存されているか否かを判定する機能と、
前記データベース内に一致するライセンスコードが保存されていると判定した場合、前記データベースに保存しているライセンス使用数をデクリメントし、前記データベースに保存しているライセンスコードを削除し、前記返還要求を受け付けた旨を、前記返還要求を受信した情報処理装置へ送信する機能と、
前記データベース内に一致するライセンスコードが保存されてないと判定した場合、前記返還要求は受け付けできない旨を、前記返還要求を受信した情報処理装置へ送信する機能と、
を実現させる、可搬型メモリ装置。
【請求項２】
前記複数の情報処理装置が接続されるネットワークは、閉じたネットワークである、
請求項１記載の可搬型メモリ装置。
【請求項３】
管理プログラムとデータベースとを保存するメモリと、ネットワークを介して接続された複数の情報処理装置のいずれかの情報処理装置に接続するインタフェースとを有する可搬型メモリ装置のライセンス管理方法であって、
前記データベースは、
前記複数の情報処理装置に提供するソフトウェアのライセンス上限数と、ライセンスの使用を許可した数を示すライセンス使用数と、ライセンスの使用が許可された情報処理装置の固有の識別情報から生成されるライセンスコードとを含み、
前記複数の情報処理装置のいずれかの情報装置からソフトウェアのライセンスの取得要求を受信するステップと、
前記取得要求を受信した情報処理装置の固有の識別情報からライセンスコードを生成し、該ライセンスコードと一致するライセンスコードが前記データベース内に保存されているか否かを判定するステップと、
前記データベース内に一致するライセンスコードが保存されていないと判定した場合、前記ライセンス使用数が前記ライセンス上限数に到達済みか否かを判定するステップと、
前記ライセンス使用数が前記ライセンス上限数に到達済みでないと判定した場合、前記取得要求を受信した情報処理装置のライセンスコードを前記データベースに保存するステップと、
前記データベースに保存しているライセンス使用数をインクリメントするステップと、
前記取得要求を受信した情報処理装置へライセンスの使用を許可する許可情報を送信するステップと、
前記ライセンス使用数が前記ライセンス上限数に到達済みであると判定した場合、前記取得要求を受信した情報処理装置へライセンスの使用が許可できない不許可情報を送信するステップと、
前記複数の情報処理装置のいずれかの情報処理装置からライセンスの返還要求を受信するステップと、
前記返還要求を受信した情報処理装置の固有の識別情報からライセンスコードを生成し、該ライセンスコードと一致するライセンスコードが前記データベース内に保存されているか否かを判定するステップと、
前記データベース内に一致するライセンスコードが保存されていると判定した場合、前記データベースに保存しているライセンス使用数をデクリメントし、前記データベースに保存しているライセンスコードを削除し、前記返還要求を受け付けた旨を、前記返還要求を受信した情報処理装置へ送信するステップと、
前記データベース内に一致するライセンスコードが保存されてないと判定した場合、前記返還要求は受け付けできない旨を、前記返還要求を受信した情報処理装置へ送信するステップと、
を有するライセンス管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、可搬型メモリ装置及びそのライセンス管理方法に関する。
【背景技術】
【０００２】
コンピュータにインストールしたソフトウェアの中には、ライセンス認証が行われた後使用可能になるものがある。このソフトウェアのライセンス認証は、例えば、ユーザがライセンスコードをコンピュータに入力することにより行われる。しかし、ライセンスコードは大文字，小文字等が混雑した長い文字列である場合が多く、ユーザがライセンスコードを入力する際にタイプミスを発生することも多い。タイプミスの発生は、当然、コンピュータの認証失敗を引き起こす。
【０００３】
また、同一のソフトウェアを複数のコンピュータにインストールし、それぞれ同じライセンスコードでライセンス認証を行うことにより、ユーザがソフトウェアの不正使用をする場合も考えられる。しかし、このような不正使用に対する防御がなされていないソフトウェアも多く存在する。
【０００４】
このような事態を防止するための技術として、外部メモリ装置を用いてソフトウェアのライセンス認証を行うものが知られている。より詳細には、ユーザがコンピュータに外部メモリ装置を接続し、外部メモリ装置内の専用プログラムを用いて接続しているコンピュータのソフトウェアのライセンス認証を行う。このライセンス認証処理が複数のコンピュータに対して順番に行われることにより、ユーザが購入したライセンスの使用数を外部メモリ装置で管理することが可能になる（例えば、特許文献１参照）。
【０００５】
また、ユーザの操作によってソフトウェアがインストールされたコンピュータと、該ソフトウェアを提供する側のライセンス管理サーバとが通信を行い、ソフトウェアのライセンス認証を行うことにより、ライセンス管理サーバでライセンス使用数を管理する技術も知られている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−２５９２３７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記特許文献１に記載の技術では、ユーザがコンピュータ一台一台に外部メモリ装置を接続し、ライセンス認証処理を行う必要がある。このため多くのコンピュータについてライセンス認証処理を行う場合、ユーザが並行して作業を行うことができず、ライセンス認証処理に多くの時間を要する。
【０００８】
また、上記従来技術では、ソフトウェアを使用するユーザコンピュータ、若しくはコンピュータ群を外部ネットワークに接続する必要がある。このため、例えば、悪意のある第三者がネットワーク経由でコンピュータ、若しくはコンピュータ群に不正アクセスする問題を考慮する必要がある。このような問題を考慮し、例えば、業務で用いるコンピュータを外部ネットワークへ接続してライセンス認証を行うという認証方法を断念せざるを得ない状況もあった。
【０００９】
本発明は、上記事情に鑑みてなされたものであり、その目的は、複数のコンピュータに対するライセンス認証を行う際にもライセンス認証処理に要する時間を短くすることができる可搬型メモリ装置及びそのライセンス管理方法を提供することにある。
【課題を解決するための手段】
【００１０】
本発明は、管理プログラムとデータベースとを保存するメモリと、ネットワークを介して接続された複数の情報処理装置のいずれかの情報処理装置に接続するインタフェースとを有する可搬型メモリ装置であって、データベースは、複数の情報処理装置に提供するソフトウェアのライセンス上限数と、ライセンスの使用を許可した数を示すライセンス使用数と、ライセンスの使用が許可された情報処理装置の固有の識別情報から生成されるライセンスコードとを含み、管理プログラムは、インタフェースを介して接続された情報処理装置に、複数の情報処理装置のいずれかの情報装置からソフトウェアのライセンスの取得要求を受信する機能と、取得要求を受信した情報処理装置の固有の識別情報からライセンスコードを生成し、該ライセンスコードと一致するライセンスコードがデータベース内に保存されているか否かを判定する機能と、データベース内に一致するライセンスコードが保存されていないと判定した場合、ライセンス使用数がライセンス上限数に到達済みか否かを判定する機能と、ライセンス使用数がライセンス上限数に到達済みでないと判定した場合、取得要求を受信した情報処理装置のライセンスコードをデータベースに保存するとともに、データベースに保存されるライセンス使用数をインクリメントし、該情報処理装置へライセンスの使用を許可する許可情報を送信する機能と、ライセンス使用数がライセンス上限数に到達済みであると判定した場合、取得要求を受信した情報処理装置へライセンスの使用が許可できない不許可情報を送信する機能とを実現させるものである。
【００１１】
また、他の本発明は、管理プログラムとデータベースとを保存するメモリと、ネットワークを介して接続された複数の情報処理装置のいずれかの情報処理装置に接続するインタフェースとを有する可搬型メモリ装置のライセンス管理方法であって、データベースは、複数の情報処理装置に提供するソフトウェアのライセンス上限数と、ライセンスの使用を許可した数を示すライセンス使用数と、ライセンスの使用が許可された情報処理装置の固有の識別情報から生成されるライセンスコードとを含み、複数の情報処理装置のいずれかの情報装置からソフトウェアのライセンスの取得要求を受信するステップと、取得要求を受信した情報処理装置の固有の識別情報からライセンスコードを生成し、該ライセンスコードと一致するライセンスコードがデータベース内に保存されているか否かを判定するステップと、データベース内に一致するライセンスコードが保存されていないと判定した場合、ライセンス使用数がライセンス上限数に到達済みか否かを判定するステップと、ライセンス使用数がライセンス上限数に到達済みでないと判定した場合、取得要求を受信した情報処理装置のライセンスコードをデータベースに保存するステップと、データベースに保存しているライセンス使用数をインクリメントするステップと、取得要求を受信した情報処理装置へライセンスの使用を許可する許可情報を送信するステップと、ライセンス使用数がライセンス上限数に到達済みであると判定した場合、取得要求を受信した情報処理装置へライセンスの使用が許可できない不許可情報を送信するステップと、を有するものである。
【発明の効果】
【００１２】
本発明によると、複数のコンピュータに対するライセンス認証を行う際にもライセンス認証処理に要する時間を短くすることができる可搬型メモリ装置及びそのライセンス管理方法を提供できる。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施の形態に係るライセンス管理システムの構成を示す図である。
【図２】同実施の形態に係る外部メモリ装置の構成を示す図である。
【図３】同実施の形態に係る外部メモリ装置と情報処理装置との接続処理を示すフローチャートである。
【図４】同実施の形態に係る閉じられたネットワークと接続する情報処理装置に外部メモリ装置を接続した状態を示す図である。
【図５】同実施の形態に係るライセンスの取得処理を示すフローチャートである。
【図６】同実施の形態に係るライセンスの提供処理を示すフローチャートである。
【図７】同実施の形態に係るライセンスの返却処理を示すフローチャートである。
【図８】同実施の形態に係るライセンス数の使用上限数を増加する処理を示すフローチャートである。
【図９】同実施の形態に係る開かれたネットワークと接続する情報処理装置に外部メモリ装置を接続した状態を示す図である。
【発明を実施するための形態】
【００１４】
以下、本発明の一実施の形態について図面を参照しながら説明する。
【００１５】
図１は、本発明のライセンス管理システムが適用されたネットワークシステム１の構成を示す図である。同図に示すように、ネットワークシステム１においては、会社Ａ内の情報処理装置２１と、会社Ｂ内の情報処理装置１７と、情報処理装置３１とがネットワーク２を介して接続されている。ネットワーク２は、例えば、インターネットである。
【００１６】
会社Ａは、ライセンス対象物となるソフトウェアを提供する会社である。また、会社Ｂは、会社Ａからソフトウェアの提供を受ける会社である。更に、情報処理装置３１は、例えば、会社Ｂの情報処理装置に不正の目的を持ってアクセスする第三者が使用する情報処理装置である。
【００１７】
会社Ｂ内には、情報処理装置１１，１２，１３，１４，１５及び１７が設けられている。情報処理装置１７は、既述のようにネットワーク２に接続されている。また、情報処理装置１１，１２，１３，１４及び１５は業務ネットワーク１６を介して相互に通信可能に接続されている。業務ネットワーク１６は、例えば、イントラネットであり、ネットワーク２と隔離された閉じられたネットワークになっており、ネットワーク２を介した通信ができないように構成されている。
【００１８】
また、情報処理装置１１，１２，１３，１４及び１５は、会社Ａから提供されるソフトウェアがインストールされている。各情報処理装置１１，１２，１３，１４及び１５は、詳細は後述するライセンスコードを取得することにより、当該ソフトウェアを動作できるように構成されている。
【００１９】
会社Ａ内の情報処理装置２１は、ネットワーク２を介して情報処理装置１７からソフトウェアのライセンス購入の追加要求があった場合、その追加要求に応じたライセンス数を情報処理装置１７に付与する。この処理についての詳細は後述する。
【００２０】
なお、既述の情報処理装置１１，１２，１３，１４，１５，１７，２１及び３１は、それぞれ表示部、入力部、制御部、メモリ、記憶装置、ＵＳＢ（Universal Serial Bus）インタフェース等を備えている。これらの物理的な構成については、従来よりある情報処理装置と同様であるため詳細な説明を省略する。
【００２１】
また、情報処理装置１１，１２，１３，１４，１５，及び１７には、可搬型メモリ装置である外部メモリ装置４０（詳細は後述する。）が接続可能になっている。外部メモリ装置は、例えば、ＵＳＢメモリ装置である。
【００２２】
図２は、外部メモリ装置４０の構成を示す図である。なお、同図においては、情報処理装置１１乃至１５のうち情報処理装置１１に外部メモリ装置４０を接続する場合について説明する。
【００２３】
外部メモリ装置４０は、ＵＳＢインタフェース４１を有するとともに、ライセンス管理プログラム４２及びデータベース４３を記憶するメモリ領域を有している。
【００２４】
情報処理装置１１は、メモリ１１ａ及びＵＳＢインタフェース１１ｂを有している。なお、情報処理装置１１のメモリ１１ａ及びＵＳＢインタフェース１１ｂ以外の構成については説明の簡略化のため図示及び説明を省略する。
【００２５】
データベース４３は、会社Ａから提供されるソフトウェアのライセンスの上限数と、ライセンスの使用を許可したライセンス許可数（ライセンス使用数）と、ライセンスコードとを関連づけて管理するデータベースである。ライセンスコードは、ライセンスを提供する際に、情報処理装置に固有の識別情報を元に生成されるコードである。情報処理装置に固有の識別情報は、例えば、ＩＰ（Internet Protocol）アドレスやＭＡＣ（Media Access Control）アドレスである。
【００２６】
ライセンス管理プログラム４２は、ライセンス管理サーバプログラム４２ａ及びライセンス管理クライアントプログラム４２ｂを有している。ライセンス管理サーバプログラム４２ａは、会社Ａから会社Ｂに提供されたソフトウェアのライセンスを管理するためのプログラムである。ライセンス管理クライアントプログラム４２ｂは、会社Ａから会社Ｂに提供されるライセンス数を追加購入するためのプログラムである。
【００２７】
ライセンス管理サーバプログラム４２ａは、例えば、ＵＳＢインタフェース４１を介して接続された情報処理装置１１に、情報処理装置１１乃至１５のうちのいずれかの情報装置からソフトウェアのライセンスの取得要求を受信する機能と、その取得要求を受信した情報処理装置の固有の識別情報からライセンスコードを生成し、該ライセンスコードと一致するライセンスコードがデータベース４３内に保存されているか否かを判定する機能と、データベース４３内に一致するライセンスコードが保存されていないと判定した場合、ライセンス使用数がライセンス上限数に到達済みか否かを判定する機能と、ライセンス使用数がライセンス上限数に到達済みでないと判定した場合、既述の取得要求を受信した情報処理装置のライセンスコードをデータベース４３に保存するとともに、データベース４３に保存しているライセンス使用数をインクリメントし、該情報処理装置へライセンスの使用を許可する許可情報を送信する機能と、ライセンス使用数がライセンス上限数に到達済みであると判定した場合、既述の取得要求を受信した情報処理装置へライセンスの使用が許可できない不許可情報を送信する機能とを実現させるプログラムである。
【００２８】
また、ライセンス管理サーバプログラム４２ａは、例えば、情報処理装置１１に、情報処理装置１１乃至１５のうちのいずれかの情報処理装置からライセンスの返還要求を受信する機能と、その返還要求を受信した情報処理装置の固有の識別情報からライセンスコードを生成し、該ライセンスコードと一致するライセンスコードがデータベース４３内に保存されているか否かを判定する機能と、データベース４３内に一致するライセンスコードが保存されていると判定した場合、ライセンス使用数をデクリメントし、データベース４３に保存しているライセンスコードを削除し、既述の返還要求を受け付けた旨を、返還要求を受信した情報処理装置へ送信する機能と、データベース４３内に一致するライセンスコードが保存されていないと判定した場合、既述の返還要求は受付できない旨を、返還要求を受信した情報処理装置へ送信する機能とを実現させる。
【００２９】
なお、ライセンス管理サーバプログラム４２ａ及びライセンス管理クライアントプログラム４２ｂについての詳細は、後述する。
【００３０】
次に、ユーザが外部メモリ装置４０を情報処理装置１１に接続したときの処理について図３を参照して説明する。なお、本実施の形態では、情報処理装置１１に外部メモリ装置４０を接続する場合で説明するが、業務ネットワーク１６に接続された情報処理装置１１乃至１５であれば、いずれの情報処理装置でも良い。
【００３１】
ユーザは、外部メモリ装置４０のＵＳＢインタフェース４１を情報処理装置１１のＵＳＢインタフェース１１ｂに差し込む。これにより、情報処理装置１１は、ＵＳＢインタフェース１１ｂに外部メモリ装置４０が接続されたこと検出する（Ｓ１０１）。
【００３２】
次に、ユーザは、情報処理装置１１の操作部（図示を省略する。）を操作して、外部メモリ装置４０のメモリ領域に格納されているライセンス管理サーバプログラム４２ａを起動する操作を行う。この操作によって、情報処理装置１１は、ライセンス管理サーバプログラム４２ａの起動指示を受け付ける（Ｓ１０２）。
【００３３】
情報処理装置１１は、既述の起動指示を受け、外部メモリ装置４０からライセンス管理サーバプログラム４２ａをロードし、ライセンス管理サーバプログラム４２ａを実行する（Ｓ１０３）。
【００３４】
この結果、情報処理装置１１が業務ネットワーク１６上のライセンス管理サーバとして動作する（Ｓ１０４）。
【００３５】
以上の処理により、情報処理装置１１がライセンス管理サーバとしてソフトウェアのライセンスを管理する。なお、図４は、情報処理装置１１が業務ネットワーク１６に接続された情報処理装置１１乃至１５のライセンス管理サーバとして動作する様子を示している。
【００３６】
次に、情報処理装置１２がライセンス管理サーバとして動作する情報処理装置１１（以下、ライセンス管理サーバと称する。）からライセンスを取得する処理について図５を参照して説明する。なお、本実施の形態では、情報処理装置１２がライセンス管理サーバからライセンスコードを取得する場合で説明するが、ライセンスを取得する情報処理装置は、業務ネットワーク１６に接続される情報処理装置であれば良い（従って、ライセンス管理サーバとして動作する情報処理装置１１も含まれる）。
【００３７】
ユーザは、情報処理装置１２の操作部を操作して、情報処理装置１２にインストールしてあるソフトウェアを動作させ、ライセンス管理サーバへアクセスする（Ｓ２０１）。
【００３８】
次に、情報処理装置１２は、ソフトウェアを使用するためのライセンスの取得要求に固有の識別情報を付加し、固有の識別情報を付加した取得要求をライセンス管理サーバへ送信する（Ｓ２０２）。
【００３９】
次に、情報処理装置１２は、ライセンス管理サーバからの応答情報が、ライセンスの取得要求を許可する許可情報であるか否かを判定する（Ｓ２０３）。
【００４０】
ステップＳ２０３において、許可情報でない判定した場合（Ｓ２０３：ＮＯ）、情報処理装置１２はライセンスが認証されなかったことを認識し、例えば、ライセンスの取得ができないためソフトウェアを使用することができない旨をユーザに対して表示する（Ｓ２０４）。
【００４１】
一方、ステップＳ２０３において、許可情報であると判定した場合（Ｓ２０３：ＹＥＳ）、情報処理装置１２はライセンスが認証されたことを認識し、応答情報に含まれるライセンスコードを登録する（Ｓ２０５）。この場合、情報処理装置１２は、ソフトウェアプロラムの使用が可能になる。
【００４２】
次に、情報処理装置１２のユーザがソフトウェアを使用する際にライセンス管理サーバにライセンスの認証を行う場合について図６を参照して説明する。
【００４３】
ライセンス管理サーバは、ライセンスの取得要求を情報処理装置１２から受信した場合（Ｓ３０１）、当該情報処理装置１２に対してライセンスを払い出し済みであるか否かを判定する（Ｓ３０２）。
【００４４】
より詳細には、ライセンス管理サーバは、情報処理装置１２からのライセンスの取得要求に付加された固有の識別情報に基づいて生成されるライセンスコードと、データベース４３内に記憶されているライセンスコードとを比較し、一致するライセンスコードがあるか否かに基づいて、既にライセンスを払い出し済みの情報処理装置であるか否かを判定する。
【００４５】
具体的には、ライセンス管理サーバは、一致するライセンスコードがあると判定した場合は、既にライセンスを払い出し済みの情報処理装置であると判定し、一致するライセンスコードがないと判定した場合は、ライセンスは払い出し済みでない情報処理装置であると判定する。
【００４６】
情報処理装置１２がライセンスを払い出し済みの情報処理装置であると判定した場合（Ｓ３０２：ＹＥＳ）、データベース４３を参照し、前回払い出されたライセンスコードを情報処理装置１２に返却する（Ｓ３０３）。
【００４７】
一方、情報処理装置１２がライセンスを払い出し済みの情報処理装置でないと判定した場合（Ｓ３０２：ＮＯ）、ライセンス管理サーバは、データベース４３を参照し、ソフトウェアのライセンスの使用数が上限数に到達済みか否かを判定する（Ｓ３０４）。
【００４８】
ライセンス使用数が上限数に到達済みであると判定した場合（Ｓ３０４：ＹＥＳ）、ライセンス管理サーバは、ライセンスの払い出し不許可を示す不許可情報を情報処理装置１２に送信する（Ｓ３０５）。
【００４９】
一方、ライセンス使用数が上限数に達していないと判定した場合（Ｓ３０４：ＮＯ）、ライセンス管理サーバは、情報処理装置１２の固有の識別情報を元にライセンスコードを生成し（Ｓ３０６）、データベース４３内に記憶されているライセンス使用数をインクリメントし（Ｓ３０７）、ライセンス払い出し許可を示す許可情報及びステップＳ３０６で生成したライセンスコードを応答情報として情報処理装置１２に送信する（Ｓ３０８）。
【００５０】
このようにして、ライセンス管理サーバは、情報処理装置１２からのライセンスの取得要求に基づく認証処理を行う。
【００５１】
次に、情報処理装置１２のユーザがソフトウェアのライセンスをライセンス管理サーバに返却する場合の処理について図７を参照して説明する。つまり、ライセンス管理サーバが情報処理装置１２からライセンスの返却要求を受信した場合である。
【００５２】
ライセンス管理サーバは、情報処理装置１２から固有の識別情報が付加されたライセンスの返却要求を受信した場合（Ｓ４０１）、この返却要求が正しい返却要求であるか否かを判定する（Ｓ４０２）。
【００５３】
より詳細には、ライセンス管理サーバは、返却要求に含まれる情報処理装置１２の固有の識別情報を元に生成したライセンスコードと、データベース４３内に記憶されているライセンスコードを比較し、一致するライセンスコードがあるか否かに基づいて、正しいライセンスコードの返却であるか否かを判定する。
【００５４】
具体的には、ライセンス管理サーバは、一致するライセンスコードがある場合は正しいライセンスコードの返却であると判定し、一致するライセンスコードがない場合は正しいライセンスコードの返却でないと判定する。
【００５５】
正しいライセンスコードの返却でないと判定した場合（Ｓ４０２：ＮＯ）、ライセンス管理サーバは、ライセンス返却要求を受け付けない旨を情報処理装置１２へ送信する（Ｓ４０３）。
【００５６】
一方、正しいライセンスコードの返却であると判定した場合（Ｓ４０２：ＹＥＳ）、ライセンス管理サーバは、データベース４３内に記憶されているライセンス使用数をデクリメントし（Ｓ４０４）、データベース４３に登録されているライセンスコードを削除し（Ｓ４０５）、ライセンスの返却要求を受け付けた旨を情報処理装置１２へ送信する（Ｓ４０６）。
【００５７】
このようにして、情報処理装置１２は、一度取得したライセンスをライセンス管理サーバへ返却することができる。よって、ライセンス管理サーバは、返却されたライセンスを業務ネットワーク１６に接続された他の情報処理装置に付与することが可能になる。
【００５８】
次に、外部メモリ装置４０のデータベース４３に登録されているライセンス上限数を増加させる処理について図７を参照して説明する。
【００５９】
ユーザは、外部メモリ装置４０を情報処理装置１７に接続する。これにより、情報処理装置１７は、ＵＳＢインタフェースに外部メモリ装置４０が接続されたことを検出する（Ｓ５０１）。
【００６０】
次に、ユーザが情報処理装置１７の操作部を操作して、外部メモリ装置４０のメモリ領域に格納されているライセンス管理クライアントプログラム４２ｂを起動する起動指示を行う。この操作によって、情報処理装置１７は、ライセンス管理クライアントプログラム４２ｂの起動指示を受け付ける（Ｓ５０２）。
【００６１】
情報処理装置１７は、既述の起動指示を受け、外部メモリ装置４０からライセンス管理クライアントプログラム４２ｂをロードし、ライセンス管理クライアントプログラム４２ｂを実行する（Ｓ５０３）。
【００６２】
この結果、情報処理装置１７がソフトウェアを提供する会社Ａの情報処理装置２１にアクセス可能なライセンス管理クライアントとして動作する（Ｓ５０４）。
【００６３】
このように、情報処理装置１７がライセンス管理クライアントとして動作した場合、ユーザの操作に基づいて、ソフトウェアを使用するためのライセンス数の追加購入を行う処理が可能になる。
【００６４】
例えば、ユーザが情報処理装置１７を操作して、ソフトウェアのライセンスを所定数購入する手続きをすることにより、外部メモリ装置４０のデータベース４３に記憶されているライセンス上限数が購入した所定数分だけ増加する。
【００６５】
図９は、外部メモリ装置４０を情報処理装置１７に接続した状態を示す図である。同図において、矢印５１が示すように、ライセンス管理クライアントとして動作する情報処理装置１７と会社Ａの情報処理装置２１がネットワーク２を介して通信可能に接続されている。よって既述のように、情報処理装置１７のユーザが会社Ａからソフトウェアのライセンスを購入可能になっている。
【００６６】
この場合、ネットワーク２と業務ネットワーク１６とは通信ができないようになっているため、ライセンス管理クライアントは、業務ネットワーク１６を介して情報処理装置１１乃至１５にアクセスできないようになっている。
【００６７】
よって、第三者の情報処理装置３１が不正の目的を持って情報処理装置１１乃至１５にアクセスしたくても、破線の矢印５２が示すように通信できない。
【００６８】
以上のように構成されたライセンス管理システム１によると、ユーザは外部メモリ装置４０を情報処理装置１１乃至１５のいずれかに差し込み、ライセンス管理サーバプログラム４２ａを起動するという簡単な操作によって、情報処理装置１１乃至１５に対するライセンス使用数の管理を行うことができる。このため、ライセンス使用数を管理する特別なサーバを設ける必要がなく、ライセンスの認証処理に要する時間も短くできる。
【００６９】
また、ライセンス管理システム１は、ネットワーク２を介した通信が不可能な業務ネットワーク１６内でライセンスの認証処理を行うことができる。このため、ライセンス管理サーバがネットワーク２を介した通信ができず、第三者による情報処理装置１１乃至１５への不正なアクセスを防止することができる。
【００７０】
更に、ライセンス管理システム１は、ユーザがライセンスを追加購入する際、外部メモリ装置４０を業務ネットワーク１６とは隔離された情報処理装置１７に接続してライセンス管理クライアントとして動作する。このように構成することで、業務ネットワーク１６のセキュリティを保持したまま、ソフトウェアを提供する会社Ａの情報処理装置２１と通信を行い、ライセンスの追加購入の処理を行うことができる。
【００７１】
また、上記実施の形態では、ライセンスを管理する対象となるソフトウェアが１種類の場合で説明したが、ライセンスを管理する対象を複数のソフトウェアとしても勿論良い。この場合、例えば、ライセンス管理サーバは、データベース４３を用いて、ソフトウェア毎にライセンス上限数、ライセンス使用数及びライセンスコードを管理する。
【００７２】
また、上記実施の形態では、外部メモリ装置４０をＵＳＢメモリに適用した場合で説明したがこれに限るものではない。外部メモリ装置４０は、例えば、ＳＤカードのように、ユーザが持ち運び可能で、かつ、データの書き換えが可能である媒体であれば良い。
【００７３】
更に、上記実施の形態では、ライセンス管理サーバとして動作する情報処理装置１１は、データベース４３を用いてライセンスの使用数、ライセンス上限数及びライセンスコードを管理する構成で説明したが、これに限るものではない。例えば、ライセンス管理サーバは、情報処理装置１１乃至１５のシステム構成情報を、データベース４３を利用して管理するように構成しても良い。
【００７４】
この場合、ライセンス管理クライアントとして動作する情報処理装置１７は、データベース４３で管理されるシステム構成情報を会社Ａの情報処理装置２１に提供可能に構成する。このように構成することにより、例えば、情報処理装置２１は、情報処理装置１１乃至１５のシステム構成情報を取得することができる。よって、ソフトウェアを使用する情報処理装置に障害が発生した場合に、会社Ａのソフトウェアの開発者は、システム構成情報を参考にして、ソフトウェアの障害を解決するための時間を短縮することが可能になる。
【００７５】
なお、上記実施の形態では、ソフトウェアのライセンスを購入する処理を行う際、ライセンスのみを購入する場合で説明したが、これに限るものではない。例えば、ソフトウェアの保守サービスなどソフトウェアに付随するサービスを同時に購入するようにすることも可能である。
【００７６】
なお、本発明は上述の実施の形態に限定されるものではなく、その実施に際して様々な変形が可能である。
【００７７】
上記実施の形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【００７８】
（付記１）
管理プログラムとデータベースとを保存するメモリと、ネットワークを介して接続された複数の情報処理装置のいずれかの情報処理装置に接続するインタフェースとを有する可搬型メモリ装置であって、
前記データベースは、
前記複数の情報処理装置に提供するソフトウェアのライセンス上限数と、ライセンスの使用を許可した数を示すライセンス使用数と、ライセンスの使用が許可された情報処理装置の固有の識別情報から生成されるライセンスコードとを含み、
前記管理プログラムは、前記インタフェースを介して接続された情報処理装置に、
前記複数の情報処理装置のいずれかの情報装置からソフトウェアのライセンスの取得要求を受信する機能と、
前記取得要求を受信した情報処理装置の固有の識別情報からライセンスコードを生成し、該ライセンスコードと一致するライセンスコードが前記データベース内に保存されているか否かを判定する機能と、
前記データベース内に一致するライセンスコードが保存されていないと判定した場合、前記ライセンス使用数が前記ライセンス上限数に到達済みか否かを判定する機能と、
前記ライセンス使用数が前記ライセンス上限数に到達済みでないと判定した場合、前記取得要求を受信した情報処理装置のライセンスコードを前記データベースに保存するとともに、前記データベースに保存されるライセンス使用数をインクリメントし、該情報処理装置へライセンスの使用を許可する許可情報を送信する機能と、
前記ライセンス使用数が前記ライセンス上限数に到達済みであると判定した場合、前記取得要求を受信した情報処理装置へライセンスの使用が許可できない不許可情報を送信する機能とを実現させる、
可搬型メモリ装置。
【００７９】
（付記２）
前記管理プログラムは、前記インタフェースを介して接続された情報処理装置に、
前記複数の情報処理装置のいずれかの情報処理装置からライセンスの返還要求を受信する機能と、
前記返還要求を受信した情報処理装置の固有の識別情報からライセンスコードを生成し、該ライセンスコードと一致するライセンスコードが前記データベース内に保存されているか否かを判定する機能と、
前記データベース内に一致するセンスコードが保存されていると判定した場合、前記データベースに保存しているライセンス使用数をデクリメントし、前記データベースに保存しているライセンスコードを削除し、前記返還要求を受け付けた旨を、前記返還要求を受信した情報処理装置へ送信する機能と、
前記データベース内に一致するライセンスコードが保存されてないと判定した場合、前記返還要求は受け付けできない旨を、前記返還要求を受信した情報処理装置へ送信する機能と、を実現させる付記１記載の可搬型メモリ装置。
【００８０】
（付記３）
前記複数の情報処理装置が接続されるネットワークは、閉じたネットワークである、
付記１又は２記載の可搬型メモリ装置。
【００８１】
（付記４）
管理プログラムとデータベースとを保存するメモリと、ネットワークを介して接続された複数の情報処理装置のいずれかの情報処理装置に接続するインタフェースとを有する可搬型メモリ装置のライセンス管理方法であって、
前記データベースは、
前記複数の情報処理装置に提供するソフトウェアのライセンス上限数と、ライセンスの使用を許可した数を示すライセンス使用数と、ライセンスの使用が許可された情報処理装置の固有の識別情報から生成されるライセンスコードとを含み、
前記複数の情報処理装置のいずれかの情報装置からソフトウェアのライセンスの取得要求を受信するステップと、
前記取得要求を受信した情報処理装置の固有の識別情報からライセンスコードを生成し、該ライセンスコードと一致するライセンスコードが前記データベース内に保存されているか否かを判定するステップと、
前記データベース内に一致するライセンスコードが保存されていないと判定した場合、前記ライセンス使用数が前記ライセンス上限数に到達済みか否かを判定するステップと、
前記ライセンス使用数が前記ライセンス上限数に到達済みでないと判定した場合、前記取得要求を受信した情報処理装置のライセンスコードを前記データベースに保存するステップと、
前記データベースに保存しているライセンス使用数をインクリメントするステップと、
前記取得要求を受信した情報処理装置へライセンスの使用を許可する許可情報を送信するステップと、
前記ライセンス使用数が前記ライセンス上限数に到達済みであると判定した場合、前記取得要求を受信した情報処理装置へライセンスの使用が許可できない不許可情報を送信するステップと、
を有するライセンス管理方法。
【産業上の利用可能性】
【００８２】
ライセンス対象物のライセンス数を管理するライセンス管理プログラム、ライセンス管理方法及びライセンス管理システムに広く適用可能である。
【符号の説明】
【００８３】
１・・・ライセンス管理システム
２・・・ネットワーク
１１〜１５，１７，２１，３１・・・情報処理装置
１６・・・業務ネットワーク
４０・・・外部メモリ装置
４１・・・ＵＳＢインタフェース
４２・・・ライセンス管理プログラム
４２ａ・・・ライセンス管理サーバプログラム
４２ｂ・・・ライセンス管理クライアントプログラム
４３・・・データベース
【図１】
0005630649.tif 000002
【図２】
0005630649.tif 000003
【図３】
0005630649.tif 000004
【図４】
0005630649.tif 000005
【図５】
0005630649.tif 000006
【図６】
0005630649.tif 000007
【図７】
0005630649.tif 000008
【図８】
0005630649.tif 000009
【図９】
0005630649.tif 000010