JP2001084137A - ライセンス管理装置およびライセンス管理方法 - Google Patents
ライセンス管理装置およびライセンス管理方法Info
- Publication number
- JP2001084137A JP2001084137A JP26076699A JP26076699A JP2001084137A JP 2001084137 A JP2001084137 A JP 2001084137A JP 26076699 A JP26076699 A JP 26076699A JP 26076699 A JP26076699 A JP 26076699A JP 2001084137 A JP2001084137 A JP 2001084137A
- Authority
- JP
- Japan
- Prior art keywords
- license
- managed
- managed application
- application programs
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Abstract
(57)【要約】
【課題】 アプリケーションの肥大化、またアプリケー
ションおよびシステムのパフォーマンス低下を招くこと
なしに、ライセンス違反を防止できるライセンス管理装
置を提供する。 【解決手段】 管理対象アプリケーションとは別個のプ
ロセスとして動作するライセンスマネージャ30が、ラ
イセンスキー200の有無およびこれが保持するライセ
ンス情報と、管理対象アプリケーションの稼動状況とを
もとに、少なくとも所定時間に1度は不正使用の有無を
確認するライセンスチェックを行う。ライセンスチェッ
ク処理は、管理対象アプリケーションの数に関係なく、
ライセンスマネージャがまとめて行う。
ションおよびシステムのパフォーマンス低下を招くこと
なしに、ライセンス違反を防止できるライセンス管理装
置を提供する。 【解決手段】 管理対象アプリケーションとは別個のプ
ロセスとして動作するライセンスマネージャ30が、ラ
イセンスキー200の有無およびこれが保持するライセ
ンス情報と、管理対象アプリケーションの稼動状況とを
もとに、少なくとも所定時間に1度は不正使用の有無を
確認するライセンスチェックを行う。ライセンスチェッ
ク処理は、管理対象アプリケーションの数に関係なく、
ライセンスマネージャがまとめて行う。
Description
【0001】
【発明が属する技術分野】本発明は、ハードウェアのラ
イセンスキーを用いて、アプリケーションのソフトウェ
アのライセンス管理を行うライセンス管理装置およびラ
イセンス管理方法に関する。
イセンスキーを用いて、アプリケーションのソフトウェ
アのライセンス管理を行うライセンス管理装置およびラ
イセンス管理方法に関する。
【0002】
【従来の技術】従来、ソフトウェアについては、複製が
容易であるという性質上、不正使用が行われやすい。そ
こで、配布元は、ソフトウェアの配布(販売、レンタ
ル)にあたってはユーザとの間にライセンス契約を結
び、配布後もライセンス管理によって不正使用を防止す
る対策をとっている。アプリケーションソフトウェアの
ライセンス管理の一例として、主に企業などに大口ユー
ザに対して行われるものに、ライセンスキーという専用
のハードウェアを用いるものがある。アプリケーション
使用者数はライセンス契約で定められ、配布元は使用者
数分のライセンスキーをユーザに配布する。
容易であるという性質上、不正使用が行われやすい。そ
こで、配布元は、ソフトウェアの配布(販売、レンタ
ル)にあたってはユーザとの間にライセンス契約を結
び、配布後もライセンス管理によって不正使用を防止す
る対策をとっている。アプリケーションソフトウェアの
ライセンス管理の一例として、主に企業などに大口ユー
ザに対して行われるものに、ライセンスキーという専用
のハードウェアを用いるものがある。アプリケーション
使用者数はライセンス契約で定められ、配布元は使用者
数分のライセンスキーをユーザに配布する。
【0003】ライセンスキーは、パーソナルコンピュー
タ(以下「PC」)のコネクタ(シリアル、パラレルな
ど)に接続して用いられるものであり、ライセンスキー
が装着されたPC上でのライセンス管理の対象となるア
プリケーションソフトウェア(以下「管理対象アプリケ
ーション」という)の使用(インストールまたは稼動)
の可否を示す情報を保持している。
タ(以下「PC」)のコネクタ(シリアル、パラレルな
ど)に接続して用いられるものであり、ライセンスキー
が装着されたPC上でのライセンス管理の対象となるア
プリケーションソフトウェア(以下「管理対象アプリケ
ーション」という)の使用(インストールまたは稼動)
の可否を示す情報を保持している。
【0004】管理対象アプリケーションがライセンス契
約に違反した形で使用されていないかどうかのチェック
(以下「ライセンスチェック」という)が行われるタイ
ミングとしては、アプリケーションのインストール時、
アプリケーションの起動時、アプリケーションの稼働
中、がある。図18は、インストール時のライセンスチ
ェックの概要を示す。これはライセンスキーが装着され
ていないPCには管理対象アプリケーションをインスト
ールできないようにするものである。ライセンスキーは
当該管理対象アプリケーションのインストールを認める
情報を保持している。
約に違反した形で使用されていないかどうかのチェック
(以下「ライセンスチェック」という)が行われるタイ
ミングとしては、アプリケーションのインストール時、
アプリケーションの起動時、アプリケーションの稼働
中、がある。図18は、インストール時のライセンスチ
ェックの概要を示す。これはライセンスキーが装着され
ていないPCには管理対象アプリケーションをインスト
ールできないようにするものである。ライセンスキーは
当該管理対象アプリケーションのインストールを認める
情報を保持している。
【0005】ライセンスを受けたユーザは、アプリケー
ション配布媒体であるCD−ROM1810をPC18
00のドライブ1820にセットし、キーボード183
0から、アプリケーションに与えられた製品IDを入力
して管理対象アプリケーションのハードディスクドライ
ブ1860へのインストールを行う。この時、インスト
ーラ1840(管理対象アプリケーションとともにCD
−ROM1810に格納されている)は、ライセンスキ
ー1850の有無をチェックし、ライセンスキー185
0が装着されている場合にだけ、管理対象アプリケーシ
ョンのインストールを実行する。
ション配布媒体であるCD−ROM1810をPC18
00のドライブ1820にセットし、キーボード183
0から、アプリケーションに与えられた製品IDを入力
して管理対象アプリケーションのハードディスクドライ
ブ1860へのインストールを行う。この時、インスト
ーラ1840(管理対象アプリケーションとともにCD
−ROM1810に格納されている)は、ライセンスキ
ー1850の有無をチェックし、ライセンスキー185
0が装着されている場合にだけ、管理対象アプリケーシ
ョンのインストールを実行する。
【0006】次いで、図19は、起動時に行われるライ
センスチェックの概要を示す。これはライセンスキーが
装着されていないPCで管理対象アプリケーションは起
動できないようにするものである。ライセンスキーは当
該管理対象アプリケーションの起動を認める情報を保持
しているこの場合、ユーザがPC1900のキーボード
1920を操作して管理対象アプリケーション1910
の起動を指示すると、OS1940上でのプロセスとし
て管理対象アプリケーション1910の起動処理が開始
される。この時、管理対象アプリケーション1910
は、起動処理の一部としてライセンスキー1930の有
無をチェックし、ライセンスキー1930が存在すれ
ば、そのまま起動処理を継続するが、ライセンスキー1
930が存在しなければ起動処理を停止する。
センスチェックの概要を示す。これはライセンスキーが
装着されていないPCで管理対象アプリケーションは起
動できないようにするものである。ライセンスキーは当
該管理対象アプリケーションの起動を認める情報を保持
しているこの場合、ユーザがPC1900のキーボード
1920を操作して管理対象アプリケーション1910
の起動を指示すると、OS1940上でのプロセスとし
て管理対象アプリケーション1910の起動処理が開始
される。この時、管理対象アプリケーション1910
は、起動処理の一部としてライセンスキー1930の有
無をチェックし、ライセンスキー1930が存在すれ
ば、そのまま起動処理を継続するが、ライセンスキー1
930が存在しなければ起動処理を停止する。
【0007】上記2種類のライセンスチェックは、組み
合わせて実施されることが多い。また、いずれの場合
も、1つのライセンスキーで1種類の管理対象アプリケ
ーションを管理する場合について説明したが、複数の管
理対象アプリケーションを1つのライセンスキーで管理
することもある。その場合、ライセンスキーは管理対象
アプリケーションごとに使用の可否を示す情報を保持し
ており、ライセンスチェックはライセンスキーの有無だ
けでなく、ライセンスキーが保持する情報の内容まで参
照して行われる。
合わせて実施されることが多い。また、いずれの場合
も、1つのライセンスキーで1種類の管理対象アプリケ
ーションを管理する場合について説明したが、複数の管
理対象アプリケーションを1つのライセンスキーで管理
することもある。その場合、ライセンスキーは管理対象
アプリケーションごとに使用の可否を示す情報を保持し
ており、ライセンスチェックはライセンスキーの有無だ
けでなく、ライセンスキーが保持する情報の内容まで参
照して行われる。
【0008】図18に示すインストール時のみのライセ
ンスチェック、また図19に示す起動時のみのライセン
スチェックについては、いったんインストールまたは起
動してしまうと、その後はライセンスチェックが行われ
ないため、不正使用される可能性が小さくない。例え
ば、インストール時または起動時のみライセンスキーを
PCに装着し、インストールまたは起動が完了した時点
でライセンスキーをPCから取り外して他のPCに使い
まわす、といった形の不正使用には対応できない。
ンスチェック、また図19に示す起動時のみのライセン
スチェックについては、いったんインストールまたは起
動してしまうと、その後はライセンスチェックが行われ
ないため、不正使用される可能性が小さくない。例え
ば、インストール時または起動時のみライセンスキーを
PCに装着し、インストールまたは起動が完了した時点
でライセンスキーをPCから取り外して他のPCに使い
まわす、といった形の不正使用には対応できない。
【0009】そこで、管理対象アプリケーション稼働中
(起動後)にライセンスチェックを実行する方法が必要
となる。これは、管理対象アプリケーション内にライセ
ンスチェック用の命令を埋め込み、管理対象アプリケー
ション実行中に適当な時間間隔をおいて、このライセン
スチェック用の命令を実行するというものである。図2
0は、管理対象アプリケーション2000に埋め込まれ
たライセンスチェック用命令(以下「トリガ命令」とい
う)2010を示すイメージ図である。トリガ命令20
10の埋め込み箇所は、あまり頻繁でなく、しかも、あ
る程度周期的に実行されるような部分(例えば文書作成
プログラムにおける保存処理のルーチン)となってい
る。また、プログラムの改ざんによる不正使用防止のた
めに、トリガ命令は複数箇所に埋め込まれている。
(起動後)にライセンスチェックを実行する方法が必要
となる。これは、管理対象アプリケーション内にライセ
ンスチェック用の命令を埋め込み、管理対象アプリケー
ション実行中に適当な時間間隔をおいて、このライセン
スチェック用の命令を実行するというものである。図2
0は、管理対象アプリケーション2000に埋め込まれ
たライセンスチェック用命令(以下「トリガ命令」とい
う)2010を示すイメージ図である。トリガ命令20
10の埋め込み箇所は、あまり頻繁でなく、しかも、あ
る程度周期的に実行されるような部分(例えば文書作成
プログラムにおける保存処理のルーチン)となってい
る。また、プログラムの改ざんによる不正使用防止のた
めに、トリガ命令は複数箇所に埋め込まれている。
【0010】図20に示すトリガ命令を用いたライセン
スチェックでは、アプリケーション稼働中に、トリガ部
分を実行するたびにライセンスチェックが行われるの
で、アプリケーション起動後にライセンスキーを取り外
して他のPCで使いまわすといった不正使用は防止でき
る。
スチェックでは、アプリケーション稼働中に、トリガ部
分を実行するたびにライセンスチェックが行われるの
で、アプリケーション起動後にライセンスキーを取り外
して他のPCで使いまわすといった不正使用は防止でき
る。
【0011】
【発明が解決しようとする課題】しかしながら、図20
に示すライセンスチェックの場合、そもそもトリガ命令
は、アプリケーション本来の用途には無関係なものであ
るが、その無関係なトリガ命令のためにプログラムが肥
大してしまう。さらに、多数の管理対象アプリケーショ
ンが同時に稼動している環境では、複数のアプリケーシ
ョンのライセンスチェック(ライセンスキーへのアクセ
ス)が同時に実行されると、バス上のトラフィックが増
大してシステム全体のパフォーマンスが低下してしまう
場合がある。また、稼働中の管理対象アプリケーション
の数が増えるほどライセンスチェック処理が頻繁に実行
されることになり、ライセンスチェック処理に占有され
る資源(CPUなど)が多くなる。すると、管理対象ア
プリケーション本来の処理(文書作成や表計算など)に
用いられる資源が減り、アプリケーションのレベルでも
パフォーマンスが低下する。
に示すライセンスチェックの場合、そもそもトリガ命令
は、アプリケーション本来の用途には無関係なものであ
るが、その無関係なトリガ命令のためにプログラムが肥
大してしまう。さらに、多数の管理対象アプリケーショ
ンが同時に稼動している環境では、複数のアプリケーシ
ョンのライセンスチェック(ライセンスキーへのアクセ
ス)が同時に実行されると、バス上のトラフィックが増
大してシステム全体のパフォーマンスが低下してしまう
場合がある。また、稼働中の管理対象アプリケーション
の数が増えるほどライセンスチェック処理が頻繁に実行
されることになり、ライセンスチェック処理に占有され
る資源(CPUなど)が多くなる。すると、管理対象ア
プリケーション本来の処理(文書作成や表計算など)に
用いられる資源が減り、アプリケーションのレベルでも
パフォーマンスが低下する。
【0012】図21は、5種類の管理対象アプリケーシ
ョンが1つのPC上で同時に稼動している状態を示す。
各アプリケーションには、ライセンスチェック用のトリ
ガ命令が埋め込まれている。PC2100上では、5種
類の管理対象アプリケーションAP1〜AP5がインス
トールされており、全てが稼働中である。PC2100
のシリアルポート(図示せず)には、ライセンスキー2
110が装着されており、ライセンスチェック時(トリ
ガ命令2010実行時)、各アプリケーションAP1〜
AP5は、バス2120を介してライセンスキー211
0へアクセスする。図21では、アプリケーションAP
1〜AP5がすべてライセンスチェックのためにライセ
ンスキー2110へのアクセスを行い、バス2120上
のトラフィックが増大している。バス2120はシステ
ム上の他のプロセスも使用するので、このトラフィック
の増大により、システム全体のパフォーマンスが低下す
る。
ョンが1つのPC上で同時に稼動している状態を示す。
各アプリケーションには、ライセンスチェック用のトリ
ガ命令が埋め込まれている。PC2100上では、5種
類の管理対象アプリケーションAP1〜AP5がインス
トールされており、全てが稼働中である。PC2100
のシリアルポート(図示せず)には、ライセンスキー2
110が装着されており、ライセンスチェック時(トリ
ガ命令2010実行時)、各アプリケーションAP1〜
AP5は、バス2120を介してライセンスキー211
0へアクセスする。図21では、アプリケーションAP
1〜AP5がすべてライセンスチェックのためにライセ
ンスキー2110へのアクセスを行い、バス2120上
のトラフィックが増大している。バス2120はシステ
ム上の他のプロセスも使用するので、このトラフィック
の増大により、システム全体のパフォーマンスが低下す
る。
【0013】本発明は上記課題に鑑み、アプリケーショ
ンの肥大化、またアプリケーションおよびシステムのパ
フォーマンス低下を招くことなしに、ライセンス違反の
不正使用を防止することのできるライセンス管理装置お
よびライセンス管理方法を提供することを目的とする。
ンの肥大化、またアプリケーションおよびシステムのパ
フォーマンス低下を招くことなしに、ライセンス違反の
不正使用を防止することのできるライセンス管理装置お
よびライセンス管理方法を提供することを目的とする。
【0014】
【課題を解決するための手段】上記の目的を達成するた
めに、本発明のライセンス管理装置は、ライセンス管理
の対象となる1以上の管理対象アプリケーションプログ
ラムについてコンピュータシステム上での使用状況を管
理するライセンス管理装置であって、前記1以上の管理
対象アプリケーションプログラムについて、前記コンピ
ュータシステムでの使用の可否を示すライセンス情報を
保持する、ハードウェアのライセンスキーと、前記コン
ピュータシステム上で、前記1以上の管理対象アプリケ
ーションプログラムとは別のプロセスとして動作し、前
記ライセンス情報をもとにライセンスチェックを行って
前記1以上の管理対象アプリケーションプログラムの不
正使用を防止するマネージャ手段とを備えることを特徴
とする。
めに、本発明のライセンス管理装置は、ライセンス管理
の対象となる1以上の管理対象アプリケーションプログ
ラムについてコンピュータシステム上での使用状況を管
理するライセンス管理装置であって、前記1以上の管理
対象アプリケーションプログラムについて、前記コンピ
ュータシステムでの使用の可否を示すライセンス情報を
保持する、ハードウェアのライセンスキーと、前記コン
ピュータシステム上で、前記1以上の管理対象アプリケ
ーションプログラムとは別のプロセスとして動作し、前
記ライセンス情報をもとにライセンスチェックを行って
前記1以上の管理対象アプリケーションプログラムの不
正使用を防止するマネージャ手段とを備えることを特徴
とする。
【0015】また、上記の目的を達成するために、本発
明のライセンス管理方法は、ライセンス管理の対象とな
る1以上の管理対象アプリケーションプログラムについ
てコンピュータシステム上での実行状況を管理するライ
センス管理方法であって、前記1以上の管理対象アプリ
ケーションプログラムについて、前記コンピュータシス
テムでの使用の可否を示すライセンス情報を保持する、
ハードウェアのライセンスキーから前記ライセンス情報
を読み出す読み出しステップと、前記1以上の管理対象
アプリケーションプログラムの前記コンピュータシステ
ム上での実行状況を示す稼動情報を取得する取得ステッ
プと、前記読み出しステップにおいて読み出されたライ
センス情報と前記取得ステップにおいて取得された稼動
情報とをもとに、前記1以上の管理対象アプリケーショ
ンプログラムの中に、前記コンピュータシステムでの動
作が認可されていないにもかかわらず動作しているもの
があれば、不正使用ありと判定する判定ステップと、前
記判定ステップにおいてが不正使用ありと判定された場
合、稼働中である前記1以上の管理対象アプリケーショ
ンプログラムのうち、少なくとも前記判定ステップにお
いて前記コンピュータシステムでの動作が認可されてい
ないにもかかわらず動作していると判定されたものを停
止させるための処理を行う停止ステップとを有すること
を特徴とする。
明のライセンス管理方法は、ライセンス管理の対象とな
る1以上の管理対象アプリケーションプログラムについ
てコンピュータシステム上での実行状況を管理するライ
センス管理方法であって、前記1以上の管理対象アプリ
ケーションプログラムについて、前記コンピュータシス
テムでの使用の可否を示すライセンス情報を保持する、
ハードウェアのライセンスキーから前記ライセンス情報
を読み出す読み出しステップと、前記1以上の管理対象
アプリケーションプログラムの前記コンピュータシステ
ム上での実行状況を示す稼動情報を取得する取得ステッ
プと、前記読み出しステップにおいて読み出されたライ
センス情報と前記取得ステップにおいて取得された稼動
情報とをもとに、前記1以上の管理対象アプリケーショ
ンプログラムの中に、前記コンピュータシステムでの動
作が認可されていないにもかかわらず動作しているもの
があれば、不正使用ありと判定する判定ステップと、前
記判定ステップにおいてが不正使用ありと判定された場
合、稼働中である前記1以上の管理対象アプリケーショ
ンプログラムのうち、少なくとも前記判定ステップにお
いて前記コンピュータシステムでの動作が認可されてい
ないにもかかわらず動作していると判定されたものを停
止させるための処理を行う停止ステップとを有すること
を特徴とする。
【0016】
【発明の実施の形態】以下、本発明のライセンス管理装
置に関する実施の形態を、図面を参照しながら説明す
る。なお、本実施の形態のライセンス管理装置によって
監視されるライセンス契約の概要は以下の通りである。
このライセンス契約は、企業ユーザに対して3種類のビ
ジネス用ソフトウェア(ワードプロセッサ、表計算、デ
ータベース管理)をまとめたソフトウェアパッケージが
ライセンス管理の対象となったもので、当該企業では1
0台のPC上でこのソフトウェアパッケージ使用でき
る。ただし、10台全てで3種類全てのソフトウェアを
使用できる訳ではない。ワードプロセッサは10台全て
で使用できるが、表計算は8台まで、データベース管理
は3台までしか使用できない。そのため、10個のライ
センスキーは、ライセンス内容によって3種類に分かれ
ている。 (1)3種類のアプリケーションすべての使用を認める
もの:3個 (2)ワードプロセッサと表計算の使用を認めるもの:
5個 (3)ワードプロセッサのみ使用を認めるもの:2個 ただし、インストールについては何台のPCにインスト
ールしてもかまわない。ライセンスキーによって規制さ
れるのは、管理対象アプリケーションを同時に稼動でき
るPCの数である。
置に関する実施の形態を、図面を参照しながら説明す
る。なお、本実施の形態のライセンス管理装置によって
監視されるライセンス契約の概要は以下の通りである。
このライセンス契約は、企業ユーザに対して3種類のビ
ジネス用ソフトウェア(ワードプロセッサ、表計算、デ
ータベース管理)をまとめたソフトウェアパッケージが
ライセンス管理の対象となったもので、当該企業では1
0台のPC上でこのソフトウェアパッケージ使用でき
る。ただし、10台全てで3種類全てのソフトウェアを
使用できる訳ではない。ワードプロセッサは10台全て
で使用できるが、表計算は8台まで、データベース管理
は3台までしか使用できない。そのため、10個のライ
センスキーは、ライセンス内容によって3種類に分かれ
ている。 (1)3種類のアプリケーションすべての使用を認める
もの:3個 (2)ワードプロセッサと表計算の使用を認めるもの:
5個 (3)ワードプロセッサのみ使用を認めるもの:2個 ただし、インストールについては何台のPCにインスト
ールしてもかまわない。ライセンスキーによって規制さ
れるのは、管理対象アプリケーションを同時に稼動でき
るPCの数である。
【0017】なお、本実施の形態において想定している
主なライセンス違反(不正使用)のパターンは以下の通
りである。 (1)ライセンスキーなしでの使用:管理対象アプリケ
ーション起動後にライセンスキーを取り外し、他のPC
での管理対象アプリケーションの起動に用いる。これを
繰り返せば、10台を越えるPCで管理対象アプリケー
ションを稼動させることができる。 (2)ライセンスキーの交換:3種類のアプリケーショ
ンすべての使用を認めるライセンスキーで3種類の管理
対象アプリケーションを起動させた後、ワードプロセッ
サのみ使用を認めるライセンスキーと取り替え、他のP
Cでさらに3種類の管理対象アプリケーションを起動さ
せる。これを繰り返せば、10台のPCすべてで3種類
の管理対象アプリケーションを起動させることができ
る。
主なライセンス違反(不正使用)のパターンは以下の通
りである。 (1)ライセンスキーなしでの使用:管理対象アプリケ
ーション起動後にライセンスキーを取り外し、他のPC
での管理対象アプリケーションの起動に用いる。これを
繰り返せば、10台を越えるPCで管理対象アプリケー
ションを稼動させることができる。 (2)ライセンスキーの交換:3種類のアプリケーショ
ンすべての使用を認めるライセンスキーで3種類の管理
対象アプリケーションを起動させた後、ワードプロセッ
サのみ使用を認めるライセンスキーと取り替え、他のP
Cでさらに3種類の管理対象アプリケーションを起動さ
せる。これを繰り返せば、10台のPCすべてで3種類
の管理対象アプリケーションを起動させることができ
る。
【0018】(構成)図1は、本実施の形態のライセン
ス管理装置が1台のPC上でどのように実現されるか
を、上記ライセンス契約を結んだ企業ユーザにおける1
ユーザ(1台のPC)を例にとって示す模式図である。
本PCには、3種類のソフトウェア全てがインストール
されており、ワードプロセッサと表計算の使用を認める
ライセンスキーが装着されるものとする。
ス管理装置が1台のPC上でどのように実現されるか
を、上記ライセンス契約を結んだ企業ユーザにおける1
ユーザ(1台のPC)を例にとって示す模式図である。
本PCには、3種類のソフトウェア全てがインストール
されており、ワードプロセッサと表計算の使用を認める
ライセンスキーが装着されるものとする。
【0019】PC10は、ソフトウェア層11とハード
ウェア層12とを有し、ライセンス管理装置Aは、ハー
ドウェア層12においてコネクタ(図示せず)の1つに
装着されたライセンスキー21と、ソフトウェア層11
においてOS110上で動作するライセンスマネージャ
22とから成る。さらにOS110上では、ライセンス
管理の対象となる3種類のアプリケーションAP1、A
P2、AP3が動作する。なお、図示はしないが、OS
110上では、ライセンス管理の対象とならないアプリ
ケーションなども動作する。
ウェア層12とを有し、ライセンス管理装置Aは、ハー
ドウェア層12においてコネクタ(図示せず)の1つに
装着されたライセンスキー21と、ソフトウェア層11
においてOS110上で動作するライセンスマネージャ
22とから成る。さらにOS110上では、ライセンス
管理の対象となる3種類のアプリケーションAP1、A
P2、AP3が動作する。なお、図示はしないが、OS
110上では、ライセンス管理の対象とならないアプリ
ケーションなども動作する。
【0020】ライセンスマネージャ30は、アプリケー
ションAP1、AP2、AP3と同じ媒体(CD−RO
M)で提供されたもので、アプリケーションAP1、A
P2、AP3のPC10へのインストール時に、あわせ
てインストールされたものである。ライセンスキー20
0は、PC10のコネクタ(シリアル、パラレル、US
B: Universal Serial Busなど)に装着されるハード
ウェアであり、ここではシリアルコネクタ(図示せず)
に装着されている。
ションAP1、AP2、AP3と同じ媒体(CD−RO
M)で提供されたもので、アプリケーションAP1、A
P2、AP3のPC10へのインストール時に、あわせ
てインストールされたものである。ライセンスキー20
0は、PC10のコネクタ(シリアル、パラレル、US
B: Universal Serial Busなど)に装着されるハード
ウェアであり、ここではシリアルコネクタ(図示せず)
に装着されている。
【0021】ライセンスキー200は、内蔵メモリ内
に、ライセンスチェックに用いられるライセンス情報
(当該ライセンスキーが装着されたPCでは、どの管理
対象アプリケーションが使用できるかを示す情報)を保
持するとともに、外からの要求に応じて、この情報を秘
密のプロトコルに従って出力する回路を有している。図
2は、ライセンス情報の構成を示す。
に、ライセンスチェックに用いられるライセンス情報
(当該ライセンスキーが装着されたPCでは、どの管理
対象アプリケーションが使用できるかを示す情報)を保
持するとともに、外からの要求に応じて、この情報を秘
密のプロトコルに従って出力する回路を有している。図
2は、ライセンス情報の構成を示す。
【0022】ライセンス情報210は、ライセンスキー
識別番号211とライセンスデータ212とから成る。
ライセンスキー識別番号211は、個々のライセンスキ
ーに付加されたユニークなシリアル番号である。このシ
リアル番号は、製造元や規格の情報を含み、ライセンス
マネージャ30は、シリアル番号の有無とその内容とか
ら、当該キーが自分とともにライセンス管理装置を構成
する自社のライセンスキーであること(ライセンスキー
の正当性)を認識する。
識別番号211とライセンスデータ212とから成る。
ライセンスキー識別番号211は、個々のライセンスキ
ーに付加されたユニークなシリアル番号である。このシ
リアル番号は、製造元や規格の情報を含み、ライセンス
マネージャ30は、シリアル番号の有無とその内容とか
ら、当該キーが自分とともにライセンス管理装置を構成
する自社のライセンスキーであること(ライセンスキー
の正当性)を認識する。
【0023】ライセンスデータ212は、当該ライセン
スキーが装着されたPCでの使用が認められている管理
対象アプリケーションのアプリケーションIDである。
アプリケーションIDは、製造元が管理対象アプリケー
ションに付加した識別情報(製品番号およびバージョン
番号)である。ここでのライセンスデータ212は2件
であり、ワードプロセッサ用ソフトウェアであるアプリ
ケーションAP1および表計算用ソフトウェアであるア
プリケーションAP2の識別情報である。つまり、当該
ライセンスキー200が装着されたPCでは、ライセン
ス管理装置Aの管理対象である3種類のアプリケーショ
ンのうち、アプリケーションAP1、AP2については
使用が認められており、データベース管理用ソフトウェ
アであるアプリケーションAP3については使用が認め
られていないことを示す。
スキーが装着されたPCでの使用が認められている管理
対象アプリケーションのアプリケーションIDである。
アプリケーションIDは、製造元が管理対象アプリケー
ションに付加した識別情報(製品番号およびバージョン
番号)である。ここでのライセンスデータ212は2件
であり、ワードプロセッサ用ソフトウェアであるアプリ
ケーションAP1および表計算用ソフトウェアであるア
プリケーションAP2の識別情報である。つまり、当該
ライセンスキー200が装着されたPCでは、ライセン
ス管理装置Aの管理対象である3種類のアプリケーショ
ンのうち、アプリケーションAP1、AP2については
使用が認められており、データベース管理用ソフトウェ
アであるアプリケーションAP3については使用が認め
られていないことを示す。
【0024】なお、アプリケーションAP1、AP2、
AP3には、図20に示した従来技術にあるようなトリ
ガ命令は埋め込まれていない。ただし、アプリケーショ
ンAP1〜AP3は起動時および停止時に、自身のアプ
リケーションID(ライセンスキーがライセンスデータ
212として保持しているアプリケーションIDと同じ
もの)、プロセス間通信用のポート番号およびプロセス
IDをライセンスマネージャ30に通知する。
AP3には、図20に示した従来技術にあるようなトリ
ガ命令は埋め込まれていない。ただし、アプリケーショ
ンAP1〜AP3は起動時および停止時に、自身のアプ
リケーションID(ライセンスキーがライセンスデータ
212として保持しているアプリケーションIDと同じ
もの)、プロセス間通信用のポート番号およびプロセス
IDをライセンスマネージャ30に通知する。
【0025】ライセンスマネージャ30は、アプリケー
ションAP1〜AP3についてライセンスチェックを行
う。ライセンスマネージャ30によるライセンスチェッ
クは、少なくとも5分に一度を目安として行われる。ラ
イセンスマネージャ30は、OS11上での管理対象ア
プリケーションの稼動状況を把握しておき、上記のライ
センス情報210の内容をもとに、使用が認可されてい
ない管理対象アプリケーションが1つでも稼動していれ
ば、稼働中の全ての管理対象アプリケーションに対して
停止命令を出す。
ションAP1〜AP3についてライセンスチェックを行
う。ライセンスマネージャ30によるライセンスチェッ
クは、少なくとも5分に一度を目安として行われる。ラ
イセンスマネージャ30は、OS11上での管理対象ア
プリケーションの稼動状況を把握しておき、上記のライ
センス情報210の内容をもとに、使用が認可されてい
ない管理対象アプリケーションが1つでも稼動していれ
ば、稼働中の全ての管理対象アプリケーションに対して
停止命令を出す。
【0026】次いで、ライセンスマネージャ30の構成
と詳しい処理内容とについて説明する。 (ライセンスマネージャの構成)図3は、ライセンスマ
ネージャ30の構成を示すブロック図である。ライセン
スマネージャ30は、スケジューラ31、検証部32、
プロセス通信部33、停止命令発行部34、RAM35
などを有する。
と詳しい処理内容とについて説明する。 (ライセンスマネージャの構成)図3は、ライセンスマ
ネージャ30の構成を示すブロック図である。ライセン
スマネージャ30は、スケジューラ31、検証部32、
プロセス通信部33、停止命令発行部34、RAM35
などを有する。
【0027】スケジューラ31は、ライセンスチェック
の実行タイミングを決定し、検証部32に対し、ライセ
ンスチェックの実行を指示する。スケジューラ31がラ
イセンスチェックの実行を検証部32に指示するタイミ
ングは、管理対象アプリケーションの起動時、および、
内蔵タイマ311のタイムアップ時である。
の実行タイミングを決定し、検証部32に対し、ライセ
ンスチェックの実行を指示する。スケジューラ31がラ
イセンスチェックの実行を検証部32に指示するタイミ
ングは、管理対象アプリケーションの起動時、および、
内蔵タイマ311のタイムアップ時である。
【0028】管理対象アプリケーションの起動について
は、プロセス間通信部33経由で管理対象アプリケーシ
ョン自身からスケジューラ31に通知される。内蔵タイ
マ311によるライセンスチェックの実行タイミング決
定の手順は以下の通りである。スケジューラ31は、先
ず、ライセンスマネージャ30の起動時(=PC1の起
動時)にタイマ311を起動してカウントを開始させ、
その後、5分間が経過してタイマ311がタイムアップ
するたびに、検証部32にライセンスチェック実行を指
示する。そして、検証部32からライセンスチェック実
行終了の通知を受けると、タイマ311をクリアしたう
えでカウントを0から再開させる。ただし、管理対象ア
プリケーションから起動通知を受け取った場合には、ス
ケジューラ31は、タイマ311がタイムアップしたか
どうかに関わりなく、検証部32にライセンスチェック
実行の指示を出し、チェックが終了するとタイマをクリ
アしたうえでカウントを0から再開させる。これによ
り、最長でも5分の間隔でライセンスチェックが行われ
ることになる。
は、プロセス間通信部33経由で管理対象アプリケーシ
ョン自身からスケジューラ31に通知される。内蔵タイ
マ311によるライセンスチェックの実行タイミング決
定の手順は以下の通りである。スケジューラ31は、先
ず、ライセンスマネージャ30の起動時(=PC1の起
動時)にタイマ311を起動してカウントを開始させ、
その後、5分間が経過してタイマ311がタイムアップ
するたびに、検証部32にライセンスチェック実行を指
示する。そして、検証部32からライセンスチェック実
行終了の通知を受けると、タイマ311をクリアしたう
えでカウントを0から再開させる。ただし、管理対象ア
プリケーションから起動通知を受け取った場合には、ス
ケジューラ31は、タイマ311がタイムアップしたか
どうかに関わりなく、検証部32にライセンスチェック
実行の指示を出し、チェックが終了するとタイマをクリ
アしたうえでカウントを0から再開させる。これによ
り、最長でも5分の間隔でライセンスチェックが行われ
ることになる。
【0029】検証部32は、スケジューラ31からの指
示を受けてライセンスチェックを行い、ライセンスキー
200が保持しているライセンス情報210と、PC1
における管理対象アプリケーションAP1、AP2、A
P3の稼動状況とをもとに、ライセンスに違反する不正
使用(装着されたライセンスキーが使用を認可していな
い管理対象アプリケーションが稼働中である、またはラ
イセンスキーが装着されていない状態で管理対象アプリ
ケーションが稼働中である)の有無を検証する。そし
て、検証部32は、不正使用を検知した場合、停止命令
発行部33に対し、管理対象アプリケーションの停止処
理実行を指示する。
示を受けてライセンスチェックを行い、ライセンスキー
200が保持しているライセンス情報210と、PC1
における管理対象アプリケーションAP1、AP2、A
P3の稼動状況とをもとに、ライセンスに違反する不正
使用(装着されたライセンスキーが使用を認可していな
い管理対象アプリケーションが稼働中である、またはラ
イセンスキーが装着されていない状態で管理対象アプリ
ケーションが稼働中である)の有無を検証する。そし
て、検証部32は、不正使用を検知した場合、停止命令
発行部33に対し、管理対象アプリケーションの停止処
理実行を指示する。
【0030】検証部32は、ライセンスチェックにあた
って2種類の情報を参照する。1つはライセンス情報2
10をもとに生成される使用可否情報であり、もう1つ
は稼動情報(PCにおける管理対象アプリケーションの
稼動状況を示す情報)である。使用可否情報は、検証部
32がライセンスキー200の保持するライセンス情報
210を読み出し、そのままRAM35に格納したもの
である。検証部32は、使用可否情報の生成を、ライセ
ンスマネージャが起動した時(=PC1起動時)、およ
び、スケジューラ31からのライセンスチェック実行指
示を受け付けた時に実行する。
って2種類の情報を参照する。1つはライセンス情報2
10をもとに生成される使用可否情報であり、もう1つ
は稼動情報(PCにおける管理対象アプリケーションの
稼動状況を示す情報)である。使用可否情報は、検証部
32がライセンスキー200の保持するライセンス情報
210を読み出し、そのままRAM35に格納したもの
である。検証部32は、使用可否情報の生成を、ライセ
ンスマネージャが起動した時(=PC1起動時)、およ
び、スケジューラ31からのライセンスチェック実行指
示を受け付けた時に実行する。
【0031】図4は使用可否情報400の例を示す。図
4(a)に示す使用可否情報400は、ライセンスキー
200の保持するライセンス情報210が、そのままコ
ピーされたものなので、その構成および内容はライセン
ス情報210と同じである。すなわち、キー識別番号4
10とライセンスデータ420とから成る。各情報の内
容の説明は、ここでは繰り返さない。
4(a)に示す使用可否情報400は、ライセンスキー
200の保持するライセンス情報210が、そのままコ
ピーされたものなので、その構成および内容はライセン
ス情報210と同じである。すなわち、キー識別番号4
10とライセンスデータ420とから成る。各情報の内
容の説明は、ここでは繰り返さない。
【0032】同図(a)では管理対象アプリケーション
AP1、AP2、AP3のうち、ライセンス情報200
においてライセンスデータ212が存在していた管理対
象アプリケーションAP1、AP2について、ライセン
スデータ420が存在している。なお、ライセンスキー
200が装着されておらず、ライセンスキー200から
のライセンス情報読み出しができない場合でも、検証部
32は使用可否情報を生成するが、その場合の使用可否
情報は、特別な内容となる。
AP1、AP2、AP3のうち、ライセンス情報200
においてライセンスデータ212が存在していた管理対
象アプリケーションAP1、AP2について、ライセン
スデータ420が存在している。なお、ライセンスキー
200が装着されておらず、ライセンスキー200から
のライセンス情報読み出しができない場合でも、検証部
32は使用可否情報を生成するが、その場合の使用可否
情報は、特別な内容となる。
【0033】同図(b)が、ライセンスキー200が装
着されていない場合に生成される特別な使用可否情報4
30である。使用可否情報430においては、ライセン
スキーID410の内容がNULL値とされ、同様に内
容がNULL値であるライセンスデータ420が1件だ
け生成される。ライセンスキー200が装着されていな
い場合にも使用可否情報を生成するのは、ライセンスキ
ー200が装着されていなくとも、管理対象アプリケー
ションが起動していなければ不正使用にはならないため
である。そこで、ライセンスキー200が装着されてい
ない場合には、1つでも管理対象アプリケーションが起
動していれば「不正使用」と判定される形の使用可否情
報430を生成しておくのである。
着されていない場合に生成される特別な使用可否情報4
30である。使用可否情報430においては、ライセン
スキーID410の内容がNULL値とされ、同様に内
容がNULL値であるライセンスデータ420が1件だ
け生成される。ライセンスキー200が装着されていな
い場合にも使用可否情報を生成するのは、ライセンスキ
ー200が装着されていなくとも、管理対象アプリケー
ションが起動していなければ不正使用にはならないため
である。そこで、ライセンスキー200が装着されてい
ない場合には、1つでも管理対象アプリケーションが起
動していれば「不正使用」と判定される形の使用可否情
報430を生成しておくのである。
【0034】また、検証部32はライセンス情報210
をライセンスキー200から読み出す前に、ライセンス
キーID211をチェックし、RAM35に格納されて
いる使用可否情報のライセンスキーID410と一致す
るかチェックする。一致した場合は、前回のライセンス
チェック時にライセンス情報を読み出したライセンスキ
ーがそのまま装着されている(ライセンスキーの付け替
えは行われていない)ので、ライセンス情報を読み出し
て使用可否情報を生成することはせず、すでにRAM3
5に入っている使用可否情報をそのまま使用する。これ
により不要な処理を省略できる。
をライセンスキー200から読み出す前に、ライセンス
キーID211をチェックし、RAM35に格納されて
いる使用可否情報のライセンスキーID410と一致す
るかチェックする。一致した場合は、前回のライセンス
チェック時にライセンス情報を読み出したライセンスキ
ーがそのまま装着されている(ライセンスキーの付け替
えは行われていない)ので、ライセンス情報を読み出し
て使用可否情報を生成することはせず、すでにRAM3
5に入っている使用可否情報をそのまま使用する。これ
により不要な処理を省略できる。
【0035】稼動情報は、管理対象アプリケーションが
起動時および終了時送信してくる情報(アプリケーショ
ンID、ポート番号、プロセスID)をもとに検証部3
2が生成し、RAM35に格納する。図5は、稼動情報
の構成とその内容の一例(管理対象アプリケーションA
P1、AP3が稼働中の場合)を示す。
起動時および終了時送信してくる情報(アプリケーショ
ンID、ポート番号、プロセスID)をもとに検証部3
2が生成し、RAM35に格納する。図5は、稼動情報
の構成とその内容の一例(管理対象アプリケーションA
P1、AP3が稼働中の場合)を示す。
【0036】稼動情報500は、アプリケーションID
欄510、ポート番号欄520、プロセスID欄530
からなる。アプリケーションID欄510には、どの管
理対象アプリケーションに関する稼動情報であるかを示
すアプリケーションIDが格納される。このアプリケー
ションIDは、ライセンス情報210および使用可否情
報400に含まれるアプリケーションID(ライセンス
データ211、410)と同じものである。
欄510、ポート番号欄520、プロセスID欄530
からなる。アプリケーションID欄510には、どの管
理対象アプリケーションに関する稼動情報であるかを示
すアプリケーションIDが格納される。このアプリケー
ションIDは、ライセンス情報210および使用可否情
報400に含まれるアプリケーションID(ライセンス
データ211、410)と同じものである。
【0037】ポート番号欄520には、管理対象アプリ
ケーションが持つ固有のポート番号(プロセス間通信に
用いられるポートのアドレス情報)が格納される。な
お、ポートとはプロセス間通信において、通信を行うプ
ロセスが送受信するデータを一時的に記憶させておくた
めの共有データ領域である。プロセスID欄530に
は、OS11が起動時の管理対象アプリケーションに対
してプロセス管理のために付加したプロセスID(プロ
セスの識別情報)が格納される。
ケーションが持つ固有のポート番号(プロセス間通信に
用いられるポートのアドレス情報)が格納される。な
お、ポートとはプロセス間通信において、通信を行うプ
ロセスが送受信するデータを一時的に記憶させておくた
めの共有データ領域である。プロセスID欄530に
は、OS11が起動時の管理対象アプリケーションに対
してプロセス管理のために付加したプロセスID(プロ
セスの識別情報)が格納される。
【0038】稼動情報500に含まれる上記3種類の情
報は、いずれも、管理対象アプリケーションが、起動の
際にライセンスマネージャ30に通知してくるものであ
り、検証部32は、これら情報をプロセス通信部33経
由で取得して稼動情報500を生成し、RAM35に格
納する。また、検証部32は、管理対象アプリケーショ
ンが終了(ユーザの操作による正常終了または不正使用
が発覚した際のライセンスマネージャ30による強制終
了)した際には、これに対応する稼動情報をRAM35
から消去する。
報は、いずれも、管理対象アプリケーションが、起動の
際にライセンスマネージャ30に通知してくるものであ
り、検証部32は、これら情報をプロセス通信部33経
由で取得して稼動情報500を生成し、RAM35に格
納する。また、検証部32は、管理対象アプリケーショ
ンが終了(ユーザの操作による正常終了または不正使用
が発覚した際のライセンスマネージャ30による強制終
了)した際には、これに対応する稼動情報をRAM35
から消去する。
【0039】検証部32は、上記稼動情報と使用可否情
報とからライセンスチェックを行う。具体的には、稼動
情報を1件ずつ読み出し、当該稼動情報に含まれる管理
対象アプリケーションのアプリケーションIDが、ライ
センスデータ420として使用可否情報400に含まれ
ているかチェックする。使用可否情報にアプリケーショ
ンIDが含まれていなければ、これは、ライセンスキー
200によって使用が認可されていない管理対象アプリ
ケーションがPC1上で稼動していることを意味するの
で、検証部32は不正使用と判定する。なお、ライセン
スキー200が装着されていない場合の使用可否情報4
30には、ライセンスデータ420として格納されてい
るアプリケーションIDが存在しないので、管理対象ア
プリケーションが1つでも稼動していれば(稼動情報が
1件でも存在すれば)、検証部32は必ず不正使用と判
定することになる。
報とからライセンスチェックを行う。具体的には、稼動
情報を1件ずつ読み出し、当該稼動情報に含まれる管理
対象アプリケーションのアプリケーションIDが、ライ
センスデータ420として使用可否情報400に含まれ
ているかチェックする。使用可否情報にアプリケーショ
ンIDが含まれていなければ、これは、ライセンスキー
200によって使用が認可されていない管理対象アプリ
ケーションがPC1上で稼動していることを意味するの
で、検証部32は不正使用と判定する。なお、ライセン
スキー200が装着されていない場合の使用可否情報4
30には、ライセンスデータ420として格納されてい
るアプリケーションIDが存在しないので、管理対象ア
プリケーションが1つでも稼動していれば(稼動情報が
1件でも存在すれば)、検証部32は必ず不正使用と判
定することになる。
【0040】停止命令発行部33は、不正使用を検知し
た検証部32からの指示に従い、稼働中の管理対象アプ
リケーション全てに対して停止命令を発行し、管理対象
アプリケーションからプロセス終了の通知を待ち、停止
処理の完了を検証部32、スケジューラ31に通知す
る。なお、停止命令発行部34は、停止命令を発行する
際には、RAM35内の稼動情報500を参照し、通信
ポート欄520に格納されたポート番号に宛てて停止命
令を送信する。
た検証部32からの指示に従い、稼働中の管理対象アプ
リケーション全てに対して停止命令を発行し、管理対象
アプリケーションからプロセス終了の通知を待ち、停止
処理の完了を検証部32、スケジューラ31に通知す
る。なお、停止命令発行部34は、停止命令を発行する
際には、RAM35内の稼動情報500を参照し、通信
ポート欄520に格納されたポート番号に宛てて停止命
令を送信する。
【0041】プロセス通信部33は、ライセンスマネー
ジャ30と他のプロセス(OS11、管理対象アプリケ
ーションAP1、AP2、AP3)とのプロセス間通信
を行う。なお、プロセス通信部33が管理対象アプリケ
ーションとの間で行う通信はコネクション型である。プ
ロセス通信部33は、RAM35内の稼動情報500に
含まれるポート番号を用いて管理対象アプリケーション
との通信を確立して、情報のやりとりを行う。プロセス
通信部33に対しては、管理対象アプリケーションがユ
ーザ操作によって起動/終了した際に、その旨を通知し
てくる。プロセス通信部33はこれを受けて、管理対象
アプリケーションの起動/終了を検証部32に通知す
る。
ジャ30と他のプロセス(OS11、管理対象アプリケ
ーションAP1、AP2、AP3)とのプロセス間通信
を行う。なお、プロセス通信部33が管理対象アプリケ
ーションとの間で行う通信はコネクション型である。プ
ロセス通信部33は、RAM35内の稼動情報500に
含まれるポート番号を用いて管理対象アプリケーション
との通信を確立して、情報のやりとりを行う。プロセス
通信部33に対しては、管理対象アプリケーションがユ
ーザ操作によって起動/終了した際に、その旨を通知し
てくる。プロセス通信部33はこれを受けて、管理対象
アプリケーションの起動/終了を検証部32に通知す
る。
【0042】RAM35には、ライセンスマネージャ3
0がライセンスチェック処理に用いる情報、すなわち、
使用可否情報400および稼動情報500が格納されて
いる。 (ライセンスマネージャの動作)以下、本実施の形態に
おけるライセンスマネージャ30各部が、ライセンスチ
ェックにともなって実行する動作を、フローチャートに
従って説明する。
0がライセンスチェック処理に用いる情報、すなわち、
使用可否情報400および稼動情報500が格納されて
いる。 (ライセンスマネージャの動作)以下、本実施の形態に
おけるライセンスマネージャ30各部が、ライセンスチ
ェックにともなって実行する動作を、フローチャートに
従って説明する。
【0043】図6は、ライセンスマネージャ30の動作
を示すフローチャートである。まず、PC1の電源がO
Nとなった時点で、ライセンスマネージャ30はOS1
1の子プロセスとして起動される。すると、スケジュー
ラ31が検証部32に対しライセンキー200のチェッ
クを指示する(S601)。検証部32はライセンスキ
ー200にアクセスして、ライセンスキー200の保持
するライセンス情報を読み出し、これをもとに使用可否
情報(図4(a))を生成してRAM35に格納する
(S602)。キーが装着されていなかった場合は、全
ての管理対象アプリケーションについて「使用不可」と
なる形の特別な使用可否情報430(図4(b))を生
成する。
を示すフローチャートである。まず、PC1の電源がO
Nとなった時点で、ライセンスマネージャ30はOS1
1の子プロセスとして起動される。すると、スケジュー
ラ31が検証部32に対しライセンキー200のチェッ
クを指示する(S601)。検証部32はライセンスキ
ー200にアクセスして、ライセンスキー200の保持
するライセンス情報を読み出し、これをもとに使用可否
情報(図4(a))を生成してRAM35に格納する
(S602)。キーが装着されていなかった場合は、全
ての管理対象アプリケーションについて「使用不可」と
なる形の特別な使用可否情報430(図4(b))を生
成する。
【0044】スケジューラ31は、検証部32から使用
可否情報の生成完了の通知を受けると、内蔵のタイマ3
11を起動する(S603)。その後、スケジューラ3
1は、プロセス通信部33経由で管理対象アプリケーシ
ョンから起動の通知を受けるか(S605:Yes)、タ
イマ311がタイムアップ(5分経過)するか(S60
4:Yes)した時点で、検証部32にライセンスチェッ
ク処理実行を指示する。
可否情報の生成完了の通知を受けると、内蔵のタイマ3
11を起動する(S603)。その後、スケジューラ3
1は、プロセス通信部33経由で管理対象アプリケーシ
ョンから起動の通知を受けるか(S605:Yes)、タ
イマ311がタイムアップ(5分経過)するか(S60
4:Yes)した時点で、検証部32にライセンスチェッ
ク処理実行を指示する。
【0045】検証部32はスケジューラ31からの指示
を受けて処理を開始し、管理対象アプリケーション起動
の場合(S605:Yes)は、当該アプリケーション用
の稼動情報を生成した上で(S606)、タイムアップ
の場合(S604:Yes)はそのまま、使用可否情報と
稼動情報とを照合して不正使用の有無を検証する。その
際、検証部32は先ず、ライセンスキー200にアクセ
スする(S607)。そして、ライセンスキーIDの情
報をもとに、前回のライセンスチェック時と同じライセ
ンスキーが装着されているかどうか判定する。キーに変
更があった場合(S608:Yes)、キーが取り替えら
れたのであれば、取り替えられたキー(その時点で装着
されているキー)が保持しているライセンス情報ををも
とに新しい使用可否情報を生成し、キーが取り外されて
いた場合は、キーIDがNULL値で、全ての管理対象
アプリケーションについて「使用不可」とした使用可否
情報を生成する(S609)。前回と同じキーが装着さ
れていれば(S608:No)、その時点でRAM35に
格納されている使用可否情報をそのまま使用する。
を受けて処理を開始し、管理対象アプリケーション起動
の場合(S605:Yes)は、当該アプリケーション用
の稼動情報を生成した上で(S606)、タイムアップ
の場合(S604:Yes)はそのまま、使用可否情報と
稼動情報とを照合して不正使用の有無を検証する。その
際、検証部32は先ず、ライセンスキー200にアクセ
スする(S607)。そして、ライセンスキーIDの情
報をもとに、前回のライセンスチェック時と同じライセ
ンスキーが装着されているかどうか判定する。キーに変
更があった場合(S608:Yes)、キーが取り替えら
れたのであれば、取り替えられたキー(その時点で装着
されているキー)が保持しているライセンス情報ををも
とに新しい使用可否情報を生成し、キーが取り外されて
いた場合は、キーIDがNULL値で、全ての管理対象
アプリケーションについて「使用不可」とした使用可否
情報を生成する(S609)。前回と同じキーが装着さ
れていれば(S608:No)、その時点でRAM35に
格納されている使用可否情報をそのまま使用する。
【0046】次いで、検証部32は、使用可否情報と稼
動情報とを照合し、ライセンス情報において使用不可と
されているアプリケーションが稼動していないかチェッ
クし、稼動していれば(S610:Yes)、停止命令発
行部34に稼働中の管理対象アプリケーションのポート
番号を通知する。停止命令発行部34は停止命令を生成
すると、これをポート番号とともにプロセス通信部33
に出力して、当該ポートに宛てて停止命令を送信させる
(S611)。その後、停止命令発行部34は、プロセ
ス通信部33経由で管理対象アプリケーションから終了
通知が届くのを待ち(S612:Yes)、これを検証部
32に通知する。検証部32は、RAM35内の稼動情
報をクリアする(S613)。そして、検証部32はス
ケジューラ31に指示してタイマ311の内容をクリア
させたうえで(S614)、ステップS603(タイマ
311の再起動)に戻る。
動情報とを照合し、ライセンス情報において使用不可と
されているアプリケーションが稼動していないかチェッ
クし、稼動していれば(S610:Yes)、停止命令発
行部34に稼働中の管理対象アプリケーションのポート
番号を通知する。停止命令発行部34は停止命令を生成
すると、これをポート番号とともにプロセス通信部33
に出力して、当該ポートに宛てて停止命令を送信させる
(S611)。その後、停止命令発行部34は、プロセ
ス通信部33経由で管理対象アプリケーションから終了
通知が届くのを待ち(S612:Yes)、これを検証部
32に通知する。検証部32は、RAM35内の稼動情
報をクリアする(S613)。そして、検証部32はス
ケジューラ31に指示してタイマ311の内容をクリア
させたうえで(S614)、ステップS603(タイマ
311の再起動)に戻る。
【0047】また、不正使用が検知されなかった場合に
は(S610:No)、検証部32はスケジューラ31に
指示してタイマ311の内容をクリアさせたうえで(S
614)、ステップS603に戻る。そして、ライセン
スマネージャ30は、ステップS603〜S614の処
理をPC1の電源がOFFになるまで繰り返す(S61
5)。
は(S610:No)、検証部32はスケジューラ31に
指示してタイマ311の内容をクリアさせたうえで(S
614)、ステップS603に戻る。そして、ライセン
スマネージャ30は、ステップS603〜S614の処
理をPC1の電源がOFFになるまで繰り返す(S61
5)。
【0048】なお、図6においては、ステップS605
の管理対象アプリケーションの起動は、割り込み的に発
生するので、フローチャートに示すタイミング(ステッ
プS603とS607との間)で発生するとは限らな
い。このタイミング以外のタイミングでアプリケーショ
ン起動が発生した場合は、処理がステップS603に戻
るまで、スケジューラ31が保留しておき、その後、ス
テップS605の処理を実行する。
の管理対象アプリケーションの起動は、割り込み的に発
生するので、フローチャートに示すタイミング(ステッ
プS603とS607との間)で発生するとは限らな
い。このタイミング以外のタイミングでアプリケーショ
ン起動が発生した場合は、処理がステップS603に戻
るまで、スケジューラ31が保留しておき、その後、ス
テップS605の処理を実行する。
【0049】上記の通り、本実施の形態におけるライセ
ンス管理装置は、管理対象アプリケーションとは別個の
プロセスとして動作するライセンスマネージャが、ライ
センスキーの有無およびライセンスキーが保持するとラ
イセンス情報と、管理対象アプリケーションの稼動状況
とをもとに、少なくとも所定時間(5分)に1度は不正
使用の有無を確認するライセンスチェックを行う。これ
により、個々の管理対象アプリケーションにトリガ命令
(ライセンスチェック用命令)を埋め込む必要がなくな
り、アプリケーションの肥大化を防止できる。また、管
理対象アプリケーションの数に関わりなく、ライセンス
チェックをライセンスマネージャがまとめて行うので、
管理対象アプリケーションの数が増えても、ライセンス
チェック処理の負荷が大きくなることはないので、アプ
リケーションやシステムのパフォーマンス低下を招くこ
となく、管理対象アプリケーションの不正使用を防止で
きる。また、上記実施の形態においては、ライセンスマ
ネージャと管理対象アプリケーションとは、共にOSの
子プロセスとして、ライセンスマネージャは管理対象ア
プリケーションの起動には関係せず、停止させる際にも
停止命令を送信するのみであるため、ライセンスマネー
ジャの負荷は小さく、システムのパフォーマンスへの影
響も小さい。
ンス管理装置は、管理対象アプリケーションとは別個の
プロセスとして動作するライセンスマネージャが、ライ
センスキーの有無およびライセンスキーが保持するとラ
イセンス情報と、管理対象アプリケーションの稼動状況
とをもとに、少なくとも所定時間(5分)に1度は不正
使用の有無を確認するライセンスチェックを行う。これ
により、個々の管理対象アプリケーションにトリガ命令
(ライセンスチェック用命令)を埋め込む必要がなくな
り、アプリケーションの肥大化を防止できる。また、管
理対象アプリケーションの数に関わりなく、ライセンス
チェックをライセンスマネージャがまとめて行うので、
管理対象アプリケーションの数が増えても、ライセンス
チェック処理の負荷が大きくなることはないので、アプ
リケーションやシステムのパフォーマンス低下を招くこ
となく、管理対象アプリケーションの不正使用を防止で
きる。また、上記実施の形態においては、ライセンスマ
ネージャと管理対象アプリケーションとは、共にOSの
子プロセスとして、ライセンスマネージャは管理対象ア
プリケーションの起動には関係せず、停止させる際にも
停止命令を送信するのみであるため、ライセンスマネー
ジャの負荷は小さく、システムのパフォーマンスへの影
響も小さい。
【0050】なお、ライセンスキーは1種類の管理対象
アプリケーションしか管理しない場合もある。その場
合、ライセンスマネージャは当該管理対象アプリケーシ
ョンが起動しているかどうか、および、ライセンスキー
が装着されているかどうか、をもとに不正使用を判定す
る。その場合、ライセンス情報(図2)のうちライセン
スデータは不要となり、稼動データについても、不正使
用検知時の停止命令送信先であるポート番号のデータだ
けを保持しておけばよいので、その分ライセンスマネー
ジャによる不正使用の判定処理は簡単になる。
アプリケーションしか管理しない場合もある。その場
合、ライセンスマネージャは当該管理対象アプリケーシ
ョンが起動しているかどうか、および、ライセンスキー
が装着されているかどうか、をもとに不正使用を判定す
る。その場合、ライセンス情報(図2)のうちライセン
スデータは不要となり、稼動データについても、不正使
用検知時の停止命令送信先であるポート番号のデータだ
けを保持しておけばよいので、その分ライセンスマネー
ジャによる不正使用の判定処理は簡単になる。
【0051】また、上記実施の形態と同様、ライセンス
キーが複数種類の管理対象アプリケーションを対象とし
ていても、一部アプリケーションは使用可能で一部は使
用不可という形のライセンス形式でなく、当該ライセン
スキーが装着されていれば全ての管理対象アプリケーシ
ョンが使用可能という形であれば、1種類のアプリケー
ションのみをライセンス管理の対象とする場合と同様、
ライセンス情報(図2)のうちライセンスデータは不要
となり、稼動データについても、不正使用検知時の停止
命令送信先であるポート番号のデータだけを保持してお
けばよいので、その分ライセンスマネージャによる不正
使用の判定処理は簡単になる。
キーが複数種類の管理対象アプリケーションを対象とし
ていても、一部アプリケーションは使用可能で一部は使
用不可という形のライセンス形式でなく、当該ライセン
スキーが装着されていれば全ての管理対象アプリケーシ
ョンが使用可能という形であれば、1種類のアプリケー
ションのみをライセンス管理の対象とする場合と同様、
ライセンス情報(図2)のうちライセンスデータは不要
となり、稼動データについても、不正使用検知時の停止
命令送信先であるポート番号のデータだけを保持してお
けばよいので、その分ライセンスマネージャによる不正
使用の判定処理は簡単になる。
【0052】また、本実施の形態では、不正使用検知時
には管理対象アプリケーションに停止命令を送信すると
したが、プログラムの改ざんなどによりアプリケーショ
ンが停止命令に応じなかった場合には、OSにプロセス
IDを通知して、OSによる強制終了を要求することに
してもよい。そして、本実施の形態では、不正使用を検
知した場合、稼働中の管理対象アプリケーションを全て
停止させることとしたが、不正使用されている管理対象
アプリケーションに限って停止させることにしてもよ
い。
には管理対象アプリケーションに停止命令を送信すると
したが、プログラムの改ざんなどによりアプリケーショ
ンが停止命令に応じなかった場合には、OSにプロセス
IDを通知して、OSによる強制終了を要求することに
してもよい。そして、本実施の形態では、不正使用を検
知した場合、稼働中の管理対象アプリケーションを全て
停止させることとしたが、不正使用されている管理対象
アプリケーションに限って停止させることにしてもよ
い。
【0053】(変形例1)本変形例は、ライセンスマネ
ージャが、ライセンスチェック実行の前にライセンスマ
ネージャと管理対象アプリケーション以外のプロセス
(管理対象外のアプリケーション、データ入出力など)
の状況をOSに問い合わせ、他のプロセスがアイドル状
態にあるタイミングを選んでライセンスチェックを行う
ものである。
ージャが、ライセンスチェック実行の前にライセンスマ
ネージャと管理対象アプリケーション以外のプロセス
(管理対象外のアプリケーション、データ入出力など)
の状況をOSに問い合わせ、他のプロセスがアイドル状
態にあるタイミングを選んでライセンスチェックを行う
ものである。
【0054】本変形例におけるライセンスマネージャの
構成は、前記実施の形態におけるライセンスマネージャ
30の構成と同じであり、検証部およびプロセス通信部
の動作が部分的に異なるのみである。よって構成図は特
に示さない。ただし、検証部およびプロセス通信部につ
いては、名称が同じでも動作が異なるので、以下の説明
では実施の形態におけるライセンスマネージャ30、検
証部32、プロセス通信部33と区別するために、参照
番号を変えてライセンスマネージャ301、検証部32
1、プロセス通信部331とする。
構成は、前記実施の形態におけるライセンスマネージャ
30の構成と同じであり、検証部およびプロセス通信部
の動作が部分的に異なるのみである。よって構成図は特
に示さない。ただし、検証部およびプロセス通信部につ
いては、名称が同じでも動作が異なるので、以下の説明
では実施の形態におけるライセンスマネージャ30、検
証部32、プロセス通信部33と区別するために、参照
番号を変えてライセンスマネージャ301、検証部32
1、プロセス通信部331とする。
【0055】図7は、本変形例におけるライセンスマネ
ージャ301の動作を示すフローチャートである。図6
に示した前記実施の形態におけるライセンスマネージャ
30の動作とほとんど同一であり、共通の処理について
は、同じステップ番号を付加し、説明は省略する。検証
部321は、スケジューラからの指示に応じて不正使用
の有無を検証する処理(ステップS604:Yesまたは
S605:Yes)を開始しようとする場合、その前に、
プロセス通信部331経由でOS11に他プロセスの実
行状況を問合せ、ライセンスマネージャ301および管
理対象アプリケーションAP1〜AP3以外のプロセス
がアイドル状態となるのを待って(S701:Yes)、
ライセンスチェックの処理(ステップS607〜S61
4)を実行する。
ージャ301の動作を示すフローチャートである。図6
に示した前記実施の形態におけるライセンスマネージャ
30の動作とほとんど同一であり、共通の処理について
は、同じステップ番号を付加し、説明は省略する。検証
部321は、スケジューラからの指示に応じて不正使用
の有無を検証する処理(ステップS604:Yesまたは
S605:Yes)を開始しようとする場合、その前に、
プロセス通信部331経由でOS11に他プロセスの実
行状況を問合せ、ライセンスマネージャ301および管
理対象アプリケーションAP1〜AP3以外のプロセス
がアイドル状態となるのを待って(S701:Yes)、
ライセンスチェックの処理(ステップS607〜S61
4)を実行する。
【0056】OS上では、普通、ライセンスマネージャ
と管理対象アプリケーション以外のプロセス(管理対象
外のアプリケーション、データ入出力など)が稼動して
いるが、上記の通り、本変形例によれば、それらのプロ
セスのパフォーマンスが、ライセンスチェック処理の影
響で低下することを防止できる。ただし、他プロセスが
アイドル状態となるまでの待ち時間があまりに長いと、
不正使用の防止というライセンス管理本来の目的達成に
支障をきたすおそれがある。そこで、タイマを用いて待
ち時間を監視し、タイムアップした場合は他プロセスが
アイドル状態となっていなくてもライセンスチェック処
理を実行することにしてもよい。
と管理対象アプリケーション以外のプロセス(管理対象
外のアプリケーション、データ入出力など)が稼動して
いるが、上記の通り、本変形例によれば、それらのプロ
セスのパフォーマンスが、ライセンスチェック処理の影
響で低下することを防止できる。ただし、他プロセスが
アイドル状態となるまでの待ち時間があまりに長いと、
不正使用の防止というライセンス管理本来の目的達成に
支障をきたすおそれがある。そこで、タイマを用いて待
ち時間を監視し、タイムアップした場合は他プロセスが
アイドル状態となっていなくてもライセンスチェック処
理を実行することにしてもよい。
【0057】あるいは、OSから稼働中の他プロセスに
ついて種類の情報まで取得し、プロセスの種類ごとに優
先順位をつけ、優先順位の高いプロセスに限って、アイ
ドル状態となるのを待つことにしてもよい。 (変形例2)本変形例は、不正使用を検知したライセン
スマネージャが、管理対象アプリケーションに停止命令
を出す際、管理対象アプリケーションに対してコールバ
ック機能の使用を行うかどうかを確認し、コールバック
機能の使用を求める応答をした管理対象アプリケーショ
ンに対しては、コールバック機能の使用を認めるもので
ある。コールバック機能を使用する管理対象アプリケー
ションは、起動時に、コールバック機能を使用すること
をライセンスマネージャに通知し、ライセンスマネージ
ャは、コールバック機能を使用する管理対象アプリケー
ションのアプリケーションIDを稼動情報と併せて保持
しておく。
ついて種類の情報まで取得し、プロセスの種類ごとに優
先順位をつけ、優先順位の高いプロセスに限って、アイ
ドル状態となるのを待つことにしてもよい。 (変形例2)本変形例は、不正使用を検知したライセン
スマネージャが、管理対象アプリケーションに停止命令
を出す際、管理対象アプリケーションに対してコールバ
ック機能の使用を行うかどうかを確認し、コールバック
機能の使用を求める応答をした管理対象アプリケーショ
ンに対しては、コールバック機能の使用を認めるもので
ある。コールバック機能を使用する管理対象アプリケー
ションは、起動時に、コールバック機能を使用すること
をライセンスマネージャに通知し、ライセンスマネージ
ャは、コールバック機能を使用する管理対象アプリケー
ションのアプリケーションIDを稼動情報と併せて保持
しておく。
【0058】ここでいうコールバック機能とは、アプリ
ケーションが停止時の後処理を行うための機能であり、
例えば、データベース管理ソフトウェアなどを処理途中
で強制的に終了させる場合、終了時にデータベース整合
性保持のための後処理を行わないと、データベースの内
容に不整合が生じてしまう。そこで、コールバック機能
を利用して、整合性保持のための後処理を行うのであ
る。
ケーションが停止時の後処理を行うための機能であり、
例えば、データベース管理ソフトウェアなどを処理途中
で強制的に終了させる場合、終了時にデータベース整合
性保持のための後処理を行わないと、データベースの内
容に不整合が生じてしまう。そこで、コールバック機能
を利用して、整合性保持のための後処理を行うのであ
る。
【0059】図8は、不正使用検知にともなう管理対象
アプリケーション停止時に、ライセンスマネージャ30
2、管理対象アプリケーション、ライセンスキー200
の間で交わされるメッセージシーケンスを示す図であ
る。同図(a)は、管理対象アプリケーションがコール
バック機能を使用する場合であり、同図(b)は、管理
対象アプリケーションがコールバック機能を使用しない
場合である。
アプリケーション停止時に、ライセンスマネージャ30
2、管理対象アプリケーション、ライセンスキー200
の間で交わされるメッセージシーケンスを示す図であ
る。同図(a)は、管理対象アプリケーションがコール
バック機能を使用する場合であり、同図(b)は、管理
対象アプリケーションがコールバック機能を使用しない
場合である。
【0060】同図(b)の場合、不正使用を検知したラ
イセンスマネージャ302は、管理対象アプリケーショ
ンに停止命令を送るのみであるが、同図(a)の場合、
ライセンスマネージャ302は、稼動情報とともに保持
していた情報(コールバック機能を使用する管理対象ア
プリケーションのアプリケーションID)から、この管
理対象アプリケーションがコールバック機能を使用する
ことが分かるので、停止命令の送信とともにコールバッ
ク機能使用を認可する。管理対象アプリケーションは、
コールバック機能を用いて終了時の後処理を行った後に
停止する。
イセンスマネージャ302は、管理対象アプリケーショ
ンに停止命令を送るのみであるが、同図(a)の場合、
ライセンスマネージャ302は、稼動情報とともに保持
していた情報(コールバック機能を使用する管理対象ア
プリケーションのアプリケーションID)から、この管
理対象アプリケーションがコールバック機能を使用する
ことが分かるので、停止命令の送信とともにコールバッ
ク機能使用を認可する。管理対象アプリケーションは、
コールバック機能を用いて終了時の後処理を行った後に
停止する。
【0061】このように、本変形例によれば、不正使用
検知時に管理対象アプリケーションを停止させる場合で
も、必要な後処理が実行されるので、その後の管理対象
アプリケーションの使用に不都合が生じることはない。 (変形例3)本変形例は、ライセンスマネージャが、管
理対象アプリケーションをみずから終了させる権限を有
するものである。これにより、管理対象アプリケーショ
ンの不正使用に対する処理を厳しく行うことができる。
検知時に管理対象アプリケーションを停止させる場合で
も、必要な後処理が実行されるので、その後の管理対象
アプリケーションの使用に不都合が生じることはない。 (変形例3)本変形例は、ライセンスマネージャが、管
理対象アプリケーションをみずから終了させる権限を有
するものである。これにより、管理対象アプリケーショ
ンの不正使用に対する処理を厳しく行うことができる。
【0062】前記実施の形態で、不正検知時にライセン
スマネージャ30が管理対象アプリケーションに対して
行うのは「停止命令の送信(終了を指示すること)」で
あり、アプリケーションの停止処理は管理対象アプリケ
ーションが自身の処理として行うため、極端な例では、
管理対象アプリケーションの中の「マネージャからの終
了指示に応じて停止する」部分あるいは「起動したこと
をライセンスマネージャに通知する」部分のプログラム
を削除するなどの改ざんが加えられると、不正使用の管
理対象アプリケーションの停止ができなかったり、ある
いはそれ以前の問題として起動したことすら検知ができ
ないこともありうる。
スマネージャ30が管理対象アプリケーションに対して
行うのは「停止命令の送信(終了を指示すること)」で
あり、アプリケーションの停止処理は管理対象アプリケ
ーションが自身の処理として行うため、極端な例では、
管理対象アプリケーションの中の「マネージャからの終
了指示に応じて停止する」部分あるいは「起動したこと
をライセンスマネージャに通知する」部分のプログラム
を削除するなどの改ざんが加えられると、不正使用の管
理対象アプリケーションの停止ができなかったり、ある
いはそれ以前の問題として起動したことすら検知ができ
ないこともありうる。
【0063】図9は、本変形例におけるライセンスマネ
ージャ303と管理対象アプリケーションAP1〜AP
3との関係を示す階層図である。前記実施の形態では、
ライセンスマネージャ30と管理対象アプリケーション
AP1〜AP3とは図1で示したように、いずれもOS
11の子プロセスとして動作していたのに対し、本変形
例では、管理対象アプリケーションAP1〜AP3をラ
イセンスマネージャ303の子プロセスとしている。親
子関係となることで、ライセンスマネージャ303は、
前記実施の形態ではOS11が行っていた管理対象アプ
リケーションAP1〜AP3の起動/終了を、みずから
管理することができる。
ージャ303と管理対象アプリケーションAP1〜AP
3との関係を示す階層図である。前記実施の形態では、
ライセンスマネージャ30と管理対象アプリケーション
AP1〜AP3とは図1で示したように、いずれもOS
11の子プロセスとして動作していたのに対し、本変形
例では、管理対象アプリケーションAP1〜AP3をラ
イセンスマネージャ303の子プロセスとしている。親
子関係となることで、ライセンスマネージャ303は、
前記実施の形態ではOS11が行っていた管理対象アプ
リケーションAP1〜AP3の起動/終了を、みずから
管理することができる。
【0064】図10は、本変形例のライセンスマネージ
ャ303の構成を示すブロック図である。ライセンスマ
ネージャ30とは、停止命令発行部33の代わりに子プ
ロセス管理部1001を有する点および、プロセス通信
部333と検証部323が固有の処理を行う点で異な
る。子プロセス管理部1001は、ユーザからの管理対
象アプリケーションの起動指示をプロセス通信部333
経由で受け付けると、この管理対象アプリケーションを
子プロセスとして起動させる。子プロセス管理部100
1は、起動させた管理対象アプリケーションにみずから
が付加したプロセスIDと管理対象アプリケーションの
アプリケーションIDとを検証部323に通知して稼動
情報を生成させるとともに、管理対象アプリケーション
の起動をスケジューラ31にも通知する。そして、スケ
ジューラ32からの指示に応じたタイミングで検証部3
23がライセンスチェックを行って不正使用と判定した
場合、子プロセス管理部1001は、この判定結果の通
知を受けて、子プロセスとして稼働中の管理対象アプリ
ケーションを全て停止させる。
ャ303の構成を示すブロック図である。ライセンスマ
ネージャ30とは、停止命令発行部33の代わりに子プ
ロセス管理部1001を有する点および、プロセス通信
部333と検証部323が固有の処理を行う点で異な
る。子プロセス管理部1001は、ユーザからの管理対
象アプリケーションの起動指示をプロセス通信部333
経由で受け付けると、この管理対象アプリケーションを
子プロセスとして起動させる。子プロセス管理部100
1は、起動させた管理対象アプリケーションにみずから
が付加したプロセスIDと管理対象アプリケーションの
アプリケーションIDとを検証部323に通知して稼動
情報を生成させるとともに、管理対象アプリケーション
の起動をスケジューラ31にも通知する。そして、スケ
ジューラ32からの指示に応じたタイミングで検証部3
23がライセンスチェックを行って不正使用と判定した
場合、子プロセス管理部1001は、この判定結果の通
知を受けて、子プロセスとして稼働中の管理対象アプリ
ケーションを全て停止させる。
【0065】検証部323が行う処理は、前記実施の形
態の検証部32が行う処理とほぼ同じである。ただ、検
証部323が生成する稼動情報には、ポート番号(図5
参照)の情報は含まれない。子プロセス管理部1001
が、管理対象アプリケーションを直接管理し、これらを
停止させる際も、停止命令の送信という間接的なやり方
でなく、親プロセスとしての権限で直接に停止させるた
め、停止命令の送信先としてポート番号を保持しておく
必要がないからである。
態の検証部32が行う処理とほぼ同じである。ただ、検
証部323が生成する稼動情報には、ポート番号(図5
参照)の情報は含まれない。子プロセス管理部1001
が、管理対象アプリケーションを直接管理し、これらを
停止させる際も、停止命令の送信という間接的なやり方
でなく、親プロセスとしての権限で直接に停止させるた
め、停止命令の送信先としてポート番号を保持しておく
必要がないからである。
【0066】プロセス通信部333は、OS11との通
信を行い、管理対象アプリケーションとの通信(管理対
象アプリケーションからの起動通知、管理対象アプリケ
ーションへの停止命令送信)は行わない(子プロセス管
理部1001が行うため)。このように、ライセンスマ
ネージャが管理対象アプリケーションを子プロセスとし
て管理する方法をとれば、管理対象アプリケーションの
起動を確実に把握できるとともに、不正使用検知時にも
間違いなく停止させることができるので、強力なライセ
ンス管理が可能となる。
信を行い、管理対象アプリケーションとの通信(管理対
象アプリケーションからの起動通知、管理対象アプリケ
ーションへの停止命令送信)は行わない(子プロセス管
理部1001が行うため)。このように、ライセンスマ
ネージャが管理対象アプリケーションを子プロセスとし
て管理する方法をとれば、管理対象アプリケーションの
起動を確実に把握できるとともに、不正使用検知時にも
間違いなく停止させることができるので、強力なライセ
ンス管理が可能となる。
【0067】なお、ここでは、子プロセス管理部100
1は、管理対象アプリケーションをいったん起動させた
後に、検証部323にライセンスチェックを行わせてい
るが、管理対象アプリケーション起動前に、当該管理対
象アプリケーションのアプリケーションIDを検証部3
23に通知して、ライセンス情報をもとに「起動の可
否」を判定させてもよい。こうして起動前に不正使用と
なるかどうか判定すれば、そもそも使用できないアプリ
ケーションを起動させるという無駄な処理が不要とな
る。
1は、管理対象アプリケーションをいったん起動させた
後に、検証部323にライセンスチェックを行わせてい
るが、管理対象アプリケーション起動前に、当該管理対
象アプリケーションのアプリケーションIDを検証部3
23に通知して、ライセンス情報をもとに「起動の可
否」を判定させてもよい。こうして起動前に不正使用と
なるかどうか判定すれば、そもそも使用できないアプリ
ケーションを起動させるという無駄な処理が不要とな
る。
【0068】また、上記の方法では、管理対象アプリケ
ーションの起動・停止をすべて親プロセスたるライセン
スマネージャ303が処理するので、ライセンスマネー
ジャ303の負荷は大きく、これはシステムのパフォー
マンス低下の防止という観点からは望ましくない。さら
に、管理対象アプリケーションのバージョンアップや管
理対象アプリケーションの追加などあった場合、ライセ
ンスマネージャ303が管理対象アプリケーションを子
プロセスとして起動するために保持している情報に、こ
うした変更を反映するための更新処理(ライセンスマネ
ージャの保守処理)が発生する。(こうした問題は、ラ
イセンスマネージャと管理対象アプリケーションとを共
にOSの子プロセスとしていた上記実施の形態では発生
しない。) そこで、上記実施の形態よりも停止処理を厳密に行え、
しかもライセンスマネージャの負荷が比較的軽くてすむ
方法として、ライセンスマネージャと管理対象アプリケ
ーションとを共にOSの子プロセスとして動作させつ
つ、ライセンスマネージャにシステム権限を付加する方
法がある。この方法であれば、ライセンスマネージャ
は、負荷の増大や保守作業の発生なしに、管理対象アプ
リケーションを自らの手で確実に停止させることができ
る。
ーションの起動・停止をすべて親プロセスたるライセン
スマネージャ303が処理するので、ライセンスマネー
ジャ303の負荷は大きく、これはシステムのパフォー
マンス低下の防止という観点からは望ましくない。さら
に、管理対象アプリケーションのバージョンアップや管
理対象アプリケーションの追加などあった場合、ライセ
ンスマネージャ303が管理対象アプリケーションを子
プロセスとして起動するために保持している情報に、こ
うした変更を反映するための更新処理(ライセンスマネ
ージャの保守処理)が発生する。(こうした問題は、ラ
イセンスマネージャと管理対象アプリケーションとを共
にOSの子プロセスとしていた上記実施の形態では発生
しない。) そこで、上記実施の形態よりも停止処理を厳密に行え、
しかもライセンスマネージャの負荷が比較的軽くてすむ
方法として、ライセンスマネージャと管理対象アプリケ
ーションとを共にOSの子プロセスとして動作させつ
つ、ライセンスマネージャにシステム権限を付加する方
法がある。この方法であれば、ライセンスマネージャ
は、負荷の増大や保守作業の発生なしに、管理対象アプ
リケーションを自らの手で確実に停止させることができ
る。
【0069】ここで言うシステム権限とは、OS上で独
立して(親子関係なしに)動作している他のプロセスを
終了させる権限という意味である。システム権限を付加
されたマネージャは、不正使用検知時、この権限に基づ
いて管理対象アプリケーションを終了させることができ
る。停止にあたっては、稼動情報に含まれるプロセスI
Dをもとに停止処理を行う。システム権限は、ライセン
スマネージャがOSに要求し、OSがこれに応じてライ
センスマネージャに付加する。
立して(親子関係なしに)動作している他のプロセスを
終了させる権限という意味である。システム権限を付加
されたマネージャは、不正使用検知時、この権限に基づ
いて管理対象アプリケーションを終了させることができ
る。停止にあたっては、稼動情報に含まれるプロセスI
Dをもとに停止処理を行う。システム権限は、ライセン
スマネージャがOSに要求し、OSがこれに応じてライ
センスマネージャに付加する。
【0070】このように、システム権限を付加する方法
をとれば、ライセンスマネージャは管理対象アプリケー
ションの起動処理を行うことなく、停止だけを行うこと
ができるので、その分ライセンスマネージャの負荷は軽
くてすみ、管理対象アプリケーションのバージョンアッ
プや追加に伴なう保守処理も不要である。 (変形例4)本変形例では、ライセンスマネージャが同
報通信手段を有し、不正使用を検知した際の管理対象ア
プリケーションへの停止命令の通信を同報通信で行うこ
ととしてもよい。ここでいう同報通信とは、コネクショ
ンレス通信で複数の相手に同一のデータを送信すること
である。同報通信の場合、ライセンスマネージャが同報
通信手段を有すると共に、管理対象アプリケーションの
側も同報通信用の通信ポートから通知を受け取る手段を
有することが前提となる。また、同報通信の場合、管理
対象アプリケーションは固有のポート番号を有すること
がなく、あらかじめ定められた単一の同報通信用ポート
で通知を受信する。
をとれば、ライセンスマネージャは管理対象アプリケー
ションの起動処理を行うことなく、停止だけを行うこと
ができるので、その分ライセンスマネージャの負荷は軽
くてすみ、管理対象アプリケーションのバージョンアッ
プや追加に伴なう保守処理も不要である。 (変形例4)本変形例では、ライセンスマネージャが同
報通信手段を有し、不正使用を検知した際の管理対象ア
プリケーションへの停止命令の通信を同報通信で行うこ
ととしてもよい。ここでいう同報通信とは、コネクショ
ンレス通信で複数の相手に同一のデータを送信すること
である。同報通信の場合、ライセンスマネージャが同報
通信手段を有すると共に、管理対象アプリケーションの
側も同報通信用の通信ポートから通知を受け取る手段を
有することが前提となる。また、同報通信の場合、管理
対象アプリケーションは固有のポート番号を有すること
がなく、あらかじめ定められた単一の同報通信用ポート
で通知を受信する。
【0071】前記実施の形態では、ライセンスマネージ
ャと管理対象アプリケーションとはコネクション型接続
で通信を行っていた。そのため、不正使用を検知して全
ての管理対象アプリケーションに停止命令を送信する場
合も、ライセンスマネージャは、1つ1つの管理対象ア
プリケーションと順次コネクション型接続を確立した
後、停止命令を送信する動作を繰り返していた。
ャと管理対象アプリケーションとはコネクション型接続
で通信を行っていた。そのため、不正使用を検知して全
ての管理対象アプリケーションに停止命令を送信する場
合も、ライセンスマネージャは、1つ1つの管理対象ア
プリケーションと順次コネクション型接続を確立した
後、停止命令を送信する動作を繰り返していた。
【0072】しかるに、本変形例におけるライセンスマ
ネージャは、同報通信手段を有することで、不正使用を
検知して管理対象アプリケーションに停止命令を発行す
る際、個々に固有のポート番号を有する管理対象アプリ
ケーション(通信ポート)との間の通信を別々に確立す
ることなく、あらかじめ定められた単一の同報通信用
(管理対象アプリケーション共通)のポート番号に対し
て停止命令を送信する。すると、一度の同報通信で全て
の管理対象アプリケーションへ停止命令を送信できる。
そのため、停止命令の送信処理におけるライセンスマネ
ージャの負荷が小さくてすみ、ライセンス管理処理の負
荷によりシステムのパフォーマンスが低下するおそれは
小さくなる。 (変形例5)本変形例は、本発明のライセンス管理装置
をネットワークで接続された複数のPCに適用するもの
である。
ネージャは、同報通信手段を有することで、不正使用を
検知して管理対象アプリケーションに停止命令を発行す
る際、個々に固有のポート番号を有する管理対象アプリ
ケーション(通信ポート)との間の通信を別々に確立す
ることなく、あらかじめ定められた単一の同報通信用
(管理対象アプリケーション共通)のポート番号に対し
て停止命令を送信する。すると、一度の同報通信で全て
の管理対象アプリケーションへ停止命令を送信できる。
そのため、停止命令の送信処理におけるライセンスマネ
ージャの負荷が小さくてすみ、ライセンス管理処理の負
荷によりシステムのパフォーマンスが低下するおそれは
小さくなる。 (変形例5)本変形例は、本発明のライセンス管理装置
をネットワークで接続された複数のPCに適用するもの
である。
【0073】図11は、本変形例のライセンス管理装置
A5を、ネットワーク1100上の複数のPC上で動作
させるネットワークシステムを示す。ネットワーク11
00には、1台のサーバPC1110と複数のクライア
ントPC1120a〜1120nが接続されている。サ
ーバPC1110および複数のクライアントPC112
0a〜1120nには、識別情報(PCごとのアドレ
ス)が付加されており、サーバPC1110の識別情報
は”S−PC”、クライアントPC1120a〜112
0nの識別情報は、それぞれ”C−PCa”〜”C−P
Cn”である。
A5を、ネットワーク1100上の複数のPC上で動作
させるネットワークシステムを示す。ネットワーク11
00には、1台のサーバPC1110と複数のクライア
ントPC1120a〜1120nが接続されている。サ
ーバPC1110および複数のクライアントPC112
0a〜1120nには、識別情報(PCごとのアドレ
ス)が付加されており、サーバPC1110の識別情報
は”S−PC”、クライアントPC1120a〜112
0nの識別情報は、それぞれ”C−PCa”〜”C−P
Cn”である。
【0074】ライセンスキー205は、サーバPC11
10に装着されており、ライセンスマネージャ305
は、サーバPC1110上で稼動する。管理対象アプリ
ケーションAP1〜AP3は、クライアントPC112
0a〜1120nで稼動する。本変形例における、ネッ
トワーク1100上でのライセンスチェックは、ライセ
ンスマネージャ305と管理対象アプリケーションとの
やりとりがネットワーク1100を介して行われる点、
ライセンスチェックに必要な管理対象アプリケーション
の稼動情報がクライアントPC1120a〜1120n
からネットワーク1100を経由してサーバPC111
0上のライセンスマネージャ305に送信される点、さ
らに、ライセンスマネージャ305がチェックするの
が、ネットワーク1100上で管理対象アプリケーショ
ンを使用できるユーザ数である点が異なっている。ま
た、ライセンスキー205が保持するライセンス情報の
内容も、ネットワーク用の内容となる。
10に装着されており、ライセンスマネージャ305
は、サーバPC1110上で稼動する。管理対象アプリ
ケーションAP1〜AP3は、クライアントPC112
0a〜1120nで稼動する。本変形例における、ネッ
トワーク1100上でのライセンスチェックは、ライセ
ンスマネージャ305と管理対象アプリケーションとの
やりとりがネットワーク1100を介して行われる点、
ライセンスチェックに必要な管理対象アプリケーション
の稼動情報がクライアントPC1120a〜1120n
からネットワーク1100を経由してサーバPC111
0上のライセンスマネージャ305に送信される点、さ
らに、ライセンスマネージャ305がチェックするの
が、ネットワーク1100上で管理対象アプリケーショ
ンを使用できるユーザ数である点が異なっている。ま
た、ライセンスキー205が保持するライセンス情報の
内容も、ネットワーク用の内容となる。
【0075】図12は、本変形例においてライセンスキ
ー205が保持するライセンス情報1200の内容であ
る。ライセンス情報1200は、1つのライセンスキー
識別情報1210、認可ユーザ情報1220とからな
る。認可ユーザ情報1220は、管理対象アプリケーシ
ョンの数と同数であり、アプリケーションID1221
および使用可能ユーザ数1222とから成る。アプリケ
ーションID1221は、当該ライセンス情報がどの管
理対象アプリケーションに対応するかを示すもので、使
用可能ユーザ数1222は、当該ライセンスキーが使用
されるネットワーク上で、アプリケーションID122
1に示す管理対象アプリケーションを同時に使用できる
ユーザ数を示す。
ー205が保持するライセンス情報1200の内容であ
る。ライセンス情報1200は、1つのライセンスキー
識別情報1210、認可ユーザ情報1220とからな
る。認可ユーザ情報1220は、管理対象アプリケーシ
ョンの数と同数であり、アプリケーションID1221
および使用可能ユーザ数1222とから成る。アプリケ
ーションID1221は、当該ライセンス情報がどの管
理対象アプリケーションに対応するかを示すもので、使
用可能ユーザ数1222は、当該ライセンスキーが使用
されるネットワーク上で、アプリケーションID122
1に示す管理対象アプリケーションを同時に使用できる
ユーザ数を示す。
【0076】図12に示すライセンス情報1200は、
ライセンスキー205が使用されるネットワーク上で
は、アプリケーションAP1を5人のユーザが、アプリ
ケーションAP2を4人のユーザが、アプリケーション
AP3を1人のユーザが、同時に使用できることを示し
ている。ライセンスマネージャ305はサーバPC11
10上で動作しながら、クライアントPC1120a〜
1120n上で動作する管理対象アプリケーションAP
1〜AP3のライセンスをチェックする。
ライセンスキー205が使用されるネットワーク上で
は、アプリケーションAP1を5人のユーザが、アプリ
ケーションAP2を4人のユーザが、アプリケーション
AP3を1人のユーザが、同時に使用できることを示し
ている。ライセンスマネージャ305はサーバPC11
10上で動作しながら、クライアントPC1120a〜
1120n上で動作する管理対象アプリケーションAP
1〜AP3のライセンスをチェックする。
【0077】先ず、ライセンスマネージャ305は、ラ
イセンスキー205からライセンス情報1200を読み
出し、これをそのまま使用可否情報として格納する。次
いで、クライアントPC1120a〜PC1120nか
ら送信されてくる管理対象アプリケーションの起動/終
了通知をもとに稼動情報を生成する。図13は、本変形
例における稼動情報1300を示す。稼動情報1300
は、アプリケーションID欄1310、稼動ユーザ数欄
1320、ポートID欄1330、プロセスID欄13
40から成り、ポートID欄1330およびプロセスI
D欄1340には、ユーザ数に相当する数だけのポート
IDおよびプロセスIDのデータが格納される。さら
に、ポートIDおよびプロセスIDには、どのクライア
ントPCで稼働中のアプリケーションに対応するかを示
すため、ネットワーク1100におけるクライアントP
Cの識別情報(図11参照)が付加される。
イセンスキー205からライセンス情報1200を読み
出し、これをそのまま使用可否情報として格納する。次
いで、クライアントPC1120a〜PC1120nか
ら送信されてくる管理対象アプリケーションの起動/終
了通知をもとに稼動情報を生成する。図13は、本変形
例における稼動情報1300を示す。稼動情報1300
は、アプリケーションID欄1310、稼動ユーザ数欄
1320、ポートID欄1330、プロセスID欄13
40から成り、ポートID欄1330およびプロセスI
D欄1340には、ユーザ数に相当する数だけのポート
IDおよびプロセスIDのデータが格納される。さら
に、ポートIDおよびプロセスIDには、どのクライア
ントPCで稼働中のアプリケーションに対応するかを示
すため、ネットワーク1100におけるクライアントP
Cの識別情報(図11参照)が付加される。
【0078】ライセンスマネージャ305は、ライセン
ス情報1200における使用可能ユーザ数の値と稼動情
報に含まれる稼動ユーザの値とから不正使用の有無を判
定し、不正使用と判定した場合は、稼動情報1300に
含まれるポート番号のデータをもとに、ネットワーク1
100上で稼働中の管理対象アプリケーション全てに停
止命令を出す。
ス情報1200における使用可能ユーザ数の値と稼動情
報に含まれる稼動ユーザの値とから不正使用の有無を判
定し、不正使用と判定した場合は、稼動情報1300に
含まれるポート番号のデータをもとに、ネットワーク1
100上で稼働中の管理対象アプリケーション全てに停
止命令を出す。
【0079】本変形例におけるライセンスマネージャ3
05の構成は、前記実施の形態におけるライセンスマネ
ージャ30の構成と同じであり、検証部の動作が異なる
のみである。よって構成図は特に示さず、以下、フロー
チャートを用いて動作のみ説明する。ただし、検証部に
ついては、名称が同じでも動作が異なるので、以下の動
作の説明では、実施の形態における検証部32と区別す
るために、参照番号を変えて検証部325とする。
05の構成は、前記実施の形態におけるライセンスマネ
ージャ30の構成と同じであり、検証部の動作が異なる
のみである。よって構成図は特に示さず、以下、フロー
チャートを用いて動作のみ説明する。ただし、検証部に
ついては、名称が同じでも動作が異なるので、以下の動
作の説明では、実施の形態における検証部32と区別す
るために、参照番号を変えて検証部325とする。
【0080】図14は、本変形例におけるライセンスマ
ネージャ305の動作を示すフローチャートである。図
6に示した前記実施の形態におけるライセンスマネージ
ャ30の動作とほとんど同一であり、共通の処理につい
ては、同じステップ番号を付加し、説明は省略する。先
ず、ライセンスマネージャ305の起動後、検証部32
5は、ライセンスキー205からライセンス情報120
0を読み出し(S601)、これをそのまま使用可否情
報として格納する(S1401)。そして、検証部32
5は、ネットワーク1100およびスケジューラ31経
由でクライアントPC上での管理対象アプリケーション
から起動の通知を受けると(S605:Yes)、稼動情
報1300のうち当該アプリケーション用の稼動ユーザ
数欄1320の値をカウントアップし、管理対象アプリ
ケーションのポート番号とプロセスIDとを稼動情報に
格納した上で(S1402)、ライセンスチェック処理
(ステップS607以下)を開始する。なお、フローチ
ャートに図示はしていないが、クライアントPCは管理
対象アプリケーションの終了もライセンスマネージャ3
05に通知する。その場合、検証部325は、対応する
稼動ユーザ数欄1320の値を1つ減らし、管理対象ア
プリケーションのポート番号とプロセスIDとを稼動情
報から削除することで、管理対象アプリケーションの稼
働状態を正確に把握する。
ネージャ305の動作を示すフローチャートである。図
6に示した前記実施の形態におけるライセンスマネージ
ャ30の動作とほとんど同一であり、共通の処理につい
ては、同じステップ番号を付加し、説明は省略する。先
ず、ライセンスマネージャ305の起動後、検証部32
5は、ライセンスキー205からライセンス情報120
0を読み出し(S601)、これをそのまま使用可否情
報として格納する(S1401)。そして、検証部32
5は、ネットワーク1100およびスケジューラ31経
由でクライアントPC上での管理対象アプリケーション
から起動の通知を受けると(S605:Yes)、稼動情
報1300のうち当該アプリケーション用の稼動ユーザ
数欄1320の値をカウントアップし、管理対象アプリ
ケーションのポート番号とプロセスIDとを稼動情報に
格納した上で(S1402)、ライセンスチェック処理
(ステップS607以下)を開始する。なお、フローチ
ャートに図示はしていないが、クライアントPCは管理
対象アプリケーションの終了もライセンスマネージャ3
05に通知する。その場合、検証部325は、対応する
稼動ユーザ数欄1320の値を1つ減らし、管理対象ア
プリケーションのポート番号とプロセスIDとを稼動情
報から削除することで、管理対象アプリケーションの稼
働状態を正確に把握する。
【0081】ライセンスチェック処理(ステップS60
7以下)において、検証部325は、管理対象アプリケ
ーションについて順次、対応する使用可能ユーザ数12
20(ライセンス情報1200内)と稼動ユーザ数(稼
動情報1300内)とを比較し、1つでも稼動ユーザ数
が使用可能ユーザ数を上回っていれば、不正使用と判定
する(S1404)。
7以下)において、検証部325は、管理対象アプリケ
ーションについて順次、対応する使用可能ユーザ数12
20(ライセンス情報1200内)と稼動ユーザ数(稼
動情報1300内)とを比較し、1つでも稼動ユーザ数
が使用可能ユーザ数を上回っていれば、不正使用と判定
する(S1404)。
【0082】このように、本変形例によれば、ネットワ
ーク上で稼動するシステムにおいても、アプリケーショ
ンの肥大や、システムおよびアプリケーションのパフォ
ーマンス低下を招くことなくライセンス管理を実行でき
る。なお、本変形例でも、上記実施の形態と同様、1つ
でも不正使用と判定された管理対象アプリケーションが
あれば、全ての管理対象アプリケーションを終了させる
こととしているが、ネットワーク上での稼動ユーザ数を
使用者が常に正確に把握しているのはかなり困難であ
る。不注意によって稼動ユーザ数が許された値を越える
可能性もある。よって、不正使用と判定された管理対象
アプリケーションに限って停止させることにしてもよ
い。その場合、全てのユーザ(クライアントPC)につ
いて当該管理対象アプリケーションを停止させるやり方
と、最後に当該管理対象アプリケーションを起動したユ
ーザ(使用可能ユーザ数が4の場合、5番目に起動した
ユーザ)に限って停止させるやり方とが考えられる。後
者のやり方の場合、検証部は、稼動情報の中に起動時刻
を格納しておき、これをもとに最後に起動したユーザを
判定すればよい。 (変形例6)本変形例は、ライセンス管理装置がライセ
ンスキーの着脱を監視するものである。前記実施の形態
においては、ライセンスキーの取り外しや付け替えによ
る不正使用は、一定の時間間隔をおいて、または、管理
対象アプリケーションの起動時に、ライセンスマネージ
ャからライセンスキーにアクセスに行って確認していた
のに対し、本変形例では、ライセンスキーが外されると
即座にこれを検知できるので厳密なライセンス管理が可
能となる。
ーク上で稼動するシステムにおいても、アプリケーショ
ンの肥大や、システムおよびアプリケーションのパフォ
ーマンス低下を招くことなくライセンス管理を実行でき
る。なお、本変形例でも、上記実施の形態と同様、1つ
でも不正使用と判定された管理対象アプリケーションが
あれば、全ての管理対象アプリケーションを終了させる
こととしているが、ネットワーク上での稼動ユーザ数を
使用者が常に正確に把握しているのはかなり困難であ
る。不注意によって稼動ユーザ数が許された値を越える
可能性もある。よって、不正使用と判定された管理対象
アプリケーションに限って停止させることにしてもよ
い。その場合、全てのユーザ(クライアントPC)につ
いて当該管理対象アプリケーションを停止させるやり方
と、最後に当該管理対象アプリケーションを起動したユ
ーザ(使用可能ユーザ数が4の場合、5番目に起動した
ユーザ)に限って停止させるやり方とが考えられる。後
者のやり方の場合、検証部は、稼動情報の中に起動時刻
を格納しておき、これをもとに最後に起動したユーザを
判定すればよい。 (変形例6)本変形例は、ライセンス管理装置がライセ
ンスキーの着脱を監視するものである。前記実施の形態
においては、ライセンスキーの取り外しや付け替えによ
る不正使用は、一定の時間間隔をおいて、または、管理
対象アプリケーションの起動時に、ライセンスマネージ
ャからライセンスキーにアクセスに行って確認していた
のに対し、本変形例では、ライセンスキーが外されると
即座にこれを検知できるので厳密なライセンス管理が可
能となる。
【0083】図15は、本変形例におけるライセンス管
理装置Bの構成を示す図である。ライセンス管理装置B
は、ライセンスキー200およびライセンスマネージャ
306に加えて、PC1Bのコネクタへのライセンスキ
ー200の装着を監視するキーチェッカー1500を更
に備える。ライセンスマネージャ306の構成は、前記
実施の形態におけるライセンスマネージャ30(図3)
と同じなので、構成図は示さない。ただし、ライセンス
マネージャ306における検証部および停止命令発行部
の処理はライセンスマネージャ30におけるものと一部
異なるので、区別のために、以下、参照番号を変えて、
検証部326、停止命令発行部346と記す。
理装置Bの構成を示す図である。ライセンス管理装置B
は、ライセンスキー200およびライセンスマネージャ
306に加えて、PC1Bのコネクタへのライセンスキ
ー200の装着を監視するキーチェッカー1500を更
に備える。ライセンスマネージャ306の構成は、前記
実施の形態におけるライセンスマネージャ30(図3)
と同じなので、構成図は示さない。ただし、ライセンス
マネージャ306における検証部および停止命令発行部
の処理はライセンスマネージャ30におけるものと一部
異なるので、区別のために、以下、参照番号を変えて、
検証部326、停止命令発行部346と記す。
【0084】PC1Bのソフトウェア層10Bでは、セ
キュリティマネージャ306および管理対象アプリケー
ションAP1〜AP3とともに、キーチェッカー150
0が稼動している。キーチェッカー1500はハードウ
ェア層20Bにおけるライセンスキー200とPC1B
との接点であるコネクタを監視している。キーチェッカ
ー1500は、ソフトウェアであり、ライセンスマネー
ジャ30などと共に媒体(CD−ROM)に格納された
形で配布され、ライセンスマネージャ30とともにPC
1Bにインストールされたものである。キーチェッカー
1500は、ライセンスマネージャ306起動後に、検
証部326によって、ライセンスマネージャ306の子
プロセスとして起動される。
キュリティマネージャ306および管理対象アプリケー
ションAP1〜AP3とともに、キーチェッカー150
0が稼動している。キーチェッカー1500はハードウ
ェア層20Bにおけるライセンスキー200とPC1B
との接点であるコネクタを監視している。キーチェッカ
ー1500は、ソフトウェアであり、ライセンスマネー
ジャ30などと共に媒体(CD−ROM)に格納された
形で配布され、ライセンスマネージャ30とともにPC
1Bにインストールされたものである。キーチェッカー
1500は、ライセンスマネージャ306起動後に、検
証部326によって、ライセンスマネージャ306の子
プロセスとして起動される。
【0085】コネクタを監視していたキーチェッカー1
500は、ライセンスキー200が取り外されると、こ
れを検知してライセンスマネージャ306(検証部32
6)に割込み信号を送信する。検証部326は、使用可
否情報を、全ての管理対象アプリケーションについて
「使用不可」とする内容(図4参照)に変更した上でラ
イセンスチェックを実行する。ライセンスチェックの結
果、稼働中の管理対象アプリケーションが1つでもあれ
ば不正使用と判定され、停止命令発行部346は、稼働
中の管理対象アプリケーション全てに停止命令を出す。
また、これと同時に、停止命令発行部346は、不正使
用検知によるアプリケーション強制停止を通知するメッ
セージをPC1Bのディスプレイ上に表示させる。ただ
し、ライセンスキーが取り外されても、管理対象アプリ
ケーションが1つも稼動していない状態では不正使用に
はならないことは言うまでもない。
500は、ライセンスキー200が取り外されると、こ
れを検知してライセンスマネージャ306(検証部32
6)に割込み信号を送信する。検証部326は、使用可
否情報を、全ての管理対象アプリケーションについて
「使用不可」とする内容(図4参照)に変更した上でラ
イセンスチェックを実行する。ライセンスチェックの結
果、稼働中の管理対象アプリケーションが1つでもあれ
ば不正使用と判定され、停止命令発行部346は、稼働
中の管理対象アプリケーション全てに停止命令を出す。
また、これと同時に、停止命令発行部346は、不正使
用検知によるアプリケーション強制停止を通知するメッ
セージをPC1Bのディスプレイ上に表示させる。ただ
し、ライセンスキーが取り外されても、管理対象アプリ
ケーションが1つも稼動していない状態では不正使用に
はならないことは言うまでもない。
【0086】図16は、停止命令発行部346が出力さ
せる、強制停止の通知メッセージの一例である。さら
に、キーチェッカー1500は、いったん取り外された
ライセンスキー200が再装着された場合、再装着を通
知する割込み信号をライセンスマネージャ306(検証
部326)に送信する。検証部326は、これに対し、
ライセンスキー200のライセンス情報を読み出して使
用可否情報を作り直す。これによって、いったん強制終
了させられた管理対象アプリケーションの再起動が可能
となる。
せる、強制停止の通知メッセージの一例である。さら
に、キーチェッカー1500は、いったん取り外された
ライセンスキー200が再装着された場合、再装着を通
知する割込み信号をライセンスマネージャ306(検証
部326)に送信する。検証部326は、これに対し、
ライセンスキー200のライセンス情報を読み出して使
用可否情報を作り直す。これによって、いったん強制終
了させられた管理対象アプリケーションの再起動が可能
となる。
【0087】このように、本変形例によれば、ライセン
スキーの着脱をその時点で検知できるので、極めて厳密
なライセンスチェックが可能となる。なお、上記の方式
では、ライセンスキーが偶然あるいは不注意により装着
されたコネクタから外れてしまった場合、あるいは、ユ
ーザ間でライセンスに違反しない形でライセンスキーの
交換を行う場合にも不正使用と判定されて、稼働中の管
理対象のアプリケーションが全て停止されてしまうこと
になる。すると、ユーザとしては使い勝手が悪いと感じ
るかもしれない。そこで、ライセンスマネージャがキー
チェッカーからの割り込み信号によりライセンスキーの
取り外しを検知した場合、ライセンスマネージャは警告
のメッセージをPCのディスプレイ上に表示させ、ある
程度の猶予時間が経過してもライセンスキーが正しく再
装着されなかった場合に限りライセンスチェックを行
い、不正使用の管理対象アプリケーションを停止させる
ことにしてもよい。
スキーの着脱をその時点で検知できるので、極めて厳密
なライセンスチェックが可能となる。なお、上記の方式
では、ライセンスキーが偶然あるいは不注意により装着
されたコネクタから外れてしまった場合、あるいは、ユ
ーザ間でライセンスに違反しない形でライセンスキーの
交換を行う場合にも不正使用と判定されて、稼働中の管
理対象のアプリケーションが全て停止されてしまうこと
になる。すると、ユーザとしては使い勝手が悪いと感じ
るかもしれない。そこで、ライセンスマネージャがキー
チェッカーからの割り込み信号によりライセンスキーの
取り外しを検知した場合、ライセンスマネージャは警告
のメッセージをPCのディスプレイ上に表示させ、ある
程度の猶予時間が経過してもライセンスキーが正しく再
装着されなかった場合に限りライセンスチェックを行
い、不正使用の管理対象アプリケーションを停止させる
ことにしてもよい。
【0088】また、本変形例においては、ライセンスマ
ネージャは、前記実施の形態においてタイマ311を用
いて一定の時間間隔で行っていたライセンスチェックを
行わないことにしてもよい。このタイマ311を用いた
ライセンスチェックは、稼働中のライセンスキーの取り
外しおよび付け替えによる不正使用を想定したものであ
る。本変形例では、取り外しや付け替えはキーチェッカ
ーで検知できるので、キーチェッカーからの通知があっ
た場合にライセンスチェックを行えば、上記の不正使用
は検知できるからである。ライセンスマネージャが一定
の時間間隔でライセンスキーにアクセスする必要がなく
なれば、ライセンスマネージャの負荷は低減でき、シス
テムのパフォーマンスに与える影響を小さくできる。 (変形例7)本変形例は、販売促進を目的としたアプリ
ケーションの試用にライセンス管理を適用するものであ
る。
ネージャは、前記実施の形態においてタイマ311を用
いて一定の時間間隔で行っていたライセンスチェックを
行わないことにしてもよい。このタイマ311を用いた
ライセンスチェックは、稼働中のライセンスキーの取り
外しおよび付け替えによる不正使用を想定したものであ
る。本変形例では、取り外しや付け替えはキーチェッカ
ーで検知できるので、キーチェッカーからの通知があっ
た場合にライセンスチェックを行えば、上記の不正使用
は検知できるからである。ライセンスマネージャが一定
の時間間隔でライセンスキーにアクセスする必要がなく
なれば、ライセンスマネージャの負荷は低減でき、シス
テムのパフォーマンスに与える影響を小さくできる。 (変形例7)本変形例は、販売促進を目的としたアプリ
ケーションの試用にライセンス管理を適用するものであ
る。
【0089】前記実施の形態のライセンスマネージャ3
0は、管理対象アプリケーションについて、ライセンス
キーによって使用を認可されていない限り、稼動を無条
件に禁止していたが、本変形例では、販売促進を目的と
して管理対象アプリケーションの試用を認める場合に
は、ライセンスキーなしでも、使用可能な機能を一部に
限定した「体験版モード」で管理対象アプリケーション
の稼動を認める。
0は、管理対象アプリケーションについて、ライセンス
キーによって使用を認可されていない限り、稼動を無条
件に禁止していたが、本変形例では、販売促進を目的と
して管理対象アプリケーションの試用を認める場合に
は、ライセンスキーなしでも、使用可能な機能を一部に
限定した「体験版モード」で管理対象アプリケーション
の稼動を認める。
【0090】ここでは、ライセンスキーにより使用が認
められていない管理対象アプリケーションについても、
作成したデータの保存(ファイル書き込み)を許さない
という条件で試用を認めるという場合を例に説明する。
本変形例におけるライセンスマネージャ307の構成
は、前記実施の形態におけるライセンスマネージャ30
(図3参照)と同じだが、検証部の動作が異なる。前記
実施の形態におけるライセンスマネージャ30の検証部
32と区別するために、参照番号を変えて検証部327
と記す。以下に、ライセンスマネージャ307(検証部
327)の動作を説明する。
められていない管理対象アプリケーションについても、
作成したデータの保存(ファイル書き込み)を許さない
という条件で試用を認めるという場合を例に説明する。
本変形例におけるライセンスマネージャ307の構成
は、前記実施の形態におけるライセンスマネージャ30
(図3参照)と同じだが、検証部の動作が異なる。前記
実施の形態におけるライセンスマネージャ30の検証部
32と区別するために、参照番号を変えて検証部327
と記す。以下に、ライセンスマネージャ307(検証部
327)の動作を説明する。
【0091】図17は、本変形例におけるライセンスマ
ネージャ307の動作を示すフローチャートである。前
記実施の形態におけるライセンスマネージャ30の動作
と共通する部分には同じ参照番号を付し、説明は省略す
る。ライセンスマネージャ307の起動から、検証部3
27が使用可否情報と稼動情報とをもとに不正使用のチ
ェックを行うまで(ステップS601〜S609)は、
ライセンスマネージャ30と同じである。
ネージャ307の動作を示すフローチャートである。前
記実施の形態におけるライセンスマネージャ30の動作
と共通する部分には同じ参照番号を付し、説明は省略す
る。ライセンスマネージャ307の起動から、検証部3
27が使用可否情報と稼動情報とをもとに不正使用のチ
ェックを行うまで(ステップS601〜S609)は、
ライセンスマネージャ30と同じである。
【0092】検証部327は、ライセンスキーによって
使用が許可されていないにもかかわらず稼働中の管理対
象アプリケーションがあった場合(S610:Yes)、
更に、当該管理対象アプリケーションが試用可能なもの
かどうかチェックする(S1701)。検証部327
は、試用可能な管理対象アプリケーションのアプリケー
ションIDを予め保持しているものとする。
使用が許可されていないにもかかわらず稼働中の管理対
象アプリケーションがあった場合(S610:Yes)、
更に、当該管理対象アプリケーションが試用可能なもの
かどうかチェックする(S1701)。検証部327
は、試用可能な管理対象アプリケーションのアプリケー
ションIDを予め保持しているものとする。
【0093】当該管理対象アプリケーションが試用不可
であった場合、検証部327は管理対象アプリケーショ
ン停止のための処理を行う(ステップS611〜S61
3)。一方、試用可能な管理対象アプリケーションであ
った場合、検証部327はプロセス間通信部33経由
で、当該管理対象アプリケーションに対して「体験版モ
ード」での動作するよう指示する(S1702)。「体
験版モード」では、管理対象アプリケーションは、例え
ば、「ファイル」−「保存」メニューを無効にするなど
して、ファイル保存の指示を受け付けない形で動作す
る。「体験版モード」は、当該管理対象アプリケーショ
ンのプロセスが終了するまで有効となる。
であった場合、検証部327は管理対象アプリケーショ
ン停止のための処理を行う(ステップS611〜S61
3)。一方、試用可能な管理対象アプリケーションであ
った場合、検証部327はプロセス間通信部33経由
で、当該管理対象アプリケーションに対して「体験版モ
ード」での動作するよう指示する(S1702)。「体
験版モード」では、管理対象アプリケーションは、例え
ば、「ファイル」−「保存」メニューを無効にするなど
して、ファイル保存の指示を受け付けない形で動作す
る。「体験版モード」は、当該管理対象アプリケーショ
ンのプロセスが終了するまで有効となる。
【0094】よって、試用の結果、当該管理対象アプリ
ケーションを正式に(ライセンス契約に基づいて)使用
したいとユーザが考えた場合は、いったん当該管理対象
アプリケーションを終了させ、ライセンス契約を結んで
当該管理対象アプリケーションの使用を認めるライセン
スキーを取得し、取得したライセンスキーをPCに装着
した上で当該管理対象アプリケーションを再起動する、
という手順をふむことで、当該管理対象アプリケーショ
ンを制限なしで使用できるようになる。
ケーションを正式に(ライセンス契約に基づいて)使用
したいとユーザが考えた場合は、いったん当該管理対象
アプリケーションを終了させ、ライセンス契約を結んで
当該管理対象アプリケーションの使用を認めるライセン
スキーを取得し、取得したライセンスキーをPCに装着
した上で当該管理対象アプリケーションを再起動する、
という手順をふむことで、当該管理対象アプリケーショ
ンを制限なしで使用できるようになる。
【0095】このように、本変形例によれば、不正使用
を防止しつつ、販売促進を目的とした管理対象アプリケ
ーションの試用も可能とすることができる。なお、ここ
ではファイル書き込みを禁じる形での試用を許可する場
合を例に説明したが、これは一例であり、生成したデー
タの保存またはプリント出力を禁止する(生成物を残せ
ない)など、試用の形態は他にも考えられる。
を防止しつつ、販売促進を目的とした管理対象アプリケ
ーションの試用も可能とすることができる。なお、ここ
ではファイル書き込みを禁じる形での試用を許可する場
合を例に説明したが、これは一例であり、生成したデー
タの保存またはプリント出力を禁止する(生成物を残せ
ない)など、試用の形態は他にも考えられる。
【0096】
【発明の効果】以上の説明から明らかなように、本発明
のライセンス管理装置は、ライセンス管理の対象となる
1以上の管理対象アプリケーションプログラムについて
コンピュータシステム上での使用状況を管理するライセ
ンス管理装置であって、前記1以上の管理対象アプリケ
ーションプログラムについて、前記コンピュータシステ
ムでの使用の可否を示すライセンス情報を保持する、ハ
ードウェアのライセンスキーと、前記コンピュータシス
テム上で、前記1以上の管理対象アプリケーションプロ
グラムとは別のプロセスとして動作し、前記ライセンス
情報をもとにライセンスチェックを行って前記1以上の
管理対象アプリケーションプログラムの不正使用を防止
するマネージャ手段とを備えることを特徴とする。よっ
て、管理対象アプリケーションが別個に内蔵されたトリ
ガ命令を実行する形でライセンスチェックを行うことが
ないので、管理対象アプリケーションの肥大、さらには
アプリケーションソフトウェアやシステムのパフォーマ
ンス低下を招くことなく、管理対象アプリケーションソ
フトウェアの不正使用を防止できる。
のライセンス管理装置は、ライセンス管理の対象となる
1以上の管理対象アプリケーションプログラムについて
コンピュータシステム上での使用状況を管理するライセ
ンス管理装置であって、前記1以上の管理対象アプリケ
ーションプログラムについて、前記コンピュータシステ
ムでの使用の可否を示すライセンス情報を保持する、ハ
ードウェアのライセンスキーと、前記コンピュータシス
テム上で、前記1以上の管理対象アプリケーションプロ
グラムとは別のプロセスとして動作し、前記ライセンス
情報をもとにライセンスチェックを行って前記1以上の
管理対象アプリケーションプログラムの不正使用を防止
するマネージャ手段とを備えることを特徴とする。よっ
て、管理対象アプリケーションが別個に内蔵されたトリ
ガ命令を実行する形でライセンスチェックを行うことが
ないので、管理対象アプリケーションの肥大、さらには
アプリケーションソフトウェアやシステムのパフォーマ
ンス低下を招くことなく、管理対象アプリケーションソ
フトウェアの不正使用を防止できる。
【0097】また、本発明のライセンス管理装置におい
て、前記マネージャ手段は、前記ライセンスキーから前
記ライセンス情報を読み出す読み出し手段と、前記1以
上の管理対象アプリケーションプログラムの前記コンピ
ュータシステム上での実行状況を示す稼動情報を取得す
る取得手段と、前記読み出し手段が読み出したライセン
ス情報と前記取得手段が取得した稼動情報とをもとに、
前記1以上の管理対象アプリケーションプログラムの中
に、前記コンピュータシステムでの動作が認可されてい
ないにもかかわらず動作しているものがあれば、不正使
用ありと判定する判定手段と、前記判定手段が不正使用
ありと判定した場合、稼働中である前記1以上の管理対
象アプリケーションプログラムのうち、少なくとも前記
判定手段によって前記コンピュータシステムでの動作が
認可されていないにもかかわらず動作していると判定さ
れたものを停止させるための処理を行う停止手段とを備
える、とすることもでき、それによって、管理対象アプ
リケーションソフトウェアの不正使用を検知し、不正使
用されている管理対象アプリケーションを停止させるこ
とが可能となる。
て、前記マネージャ手段は、前記ライセンスキーから前
記ライセンス情報を読み出す読み出し手段と、前記1以
上の管理対象アプリケーションプログラムの前記コンピ
ュータシステム上での実行状況を示す稼動情報を取得す
る取得手段と、前記読み出し手段が読み出したライセン
ス情報と前記取得手段が取得した稼動情報とをもとに、
前記1以上の管理対象アプリケーションプログラムの中
に、前記コンピュータシステムでの動作が認可されてい
ないにもかかわらず動作しているものがあれば、不正使
用ありと判定する判定手段と、前記判定手段が不正使用
ありと判定した場合、稼働中である前記1以上の管理対
象アプリケーションプログラムのうち、少なくとも前記
判定手段によって前記コンピュータシステムでの動作が
認可されていないにもかかわらず動作していると判定さ
れたものを停止させるための処理を行う停止手段とを備
える、とすることもでき、それによって、管理対象アプ
リケーションソフトウェアの不正使用を検知し、不正使
用されている管理対象アプリケーションを停止させるこ
とが可能となる。
【0098】また、不正使用の検知について、前記読み
取り手段は、ライセンスキーがシステムに存在しなけれ
ば、その旨を前記判定手段に通知し、前記判定手段は、
ライセンスキーがシステムに存在しない場合、前記管理
対象アプリケーションが1つ以上でも前記コンピュータ
システムで稼動していれば不正使用ありと判定する、と
いうやり方で簡単に行うこともできる。
取り手段は、ライセンスキーがシステムに存在しなけれ
ば、その旨を前記判定手段に通知し、前記判定手段は、
ライセンスキーがシステムに存在しない場合、前記管理
対象アプリケーションが1つ以上でも前記コンピュータ
システムで稼動していれば不正使用ありと判定する、と
いうやり方で簡単に行うこともできる。
【0099】また、本発明のライセンス管理装置は、前
記マネージャ手段によるライセンスチェックの実行タイ
ミングを制御する制御手段を更に備えることとしてもよ
く、それによって、ライセンスチェック処理は適当な時
間間隔で実行され、不正使用を防止できる。また、本発
明のライセンス管理装置は、前記コンピュータシステム
における、前記1以上の管理対象アプリケーションプロ
グラム以外のプロセスの稼動状況に関する情報を取得す
るプロセス情報取得手段を更に備え、前記制御手段は、
前記稼動情報取得手段が取得した情報に基づいて、前記
マネージャ手段によるライセンスチェックの実行タイミ
ングを変更することとしてもよく、それによって、ユー
ザにとって重要な他プロセスのパフォーマンスがライセ
ンスチェックのために低下することを防止できる。
記マネージャ手段によるライセンスチェックの実行タイ
ミングを制御する制御手段を更に備えることとしてもよ
く、それによって、ライセンスチェック処理は適当な時
間間隔で実行され、不正使用を防止できる。また、本発
明のライセンス管理装置は、前記コンピュータシステム
における、前記1以上の管理対象アプリケーションプロ
グラム以外のプロセスの稼動状況に関する情報を取得す
るプロセス情報取得手段を更に備え、前記制御手段は、
前記稼動情報取得手段が取得した情報に基づいて、前記
マネージャ手段によるライセンスチェックの実行タイミ
ングを変更することとしてもよく、それによって、ユー
ザにとって重要な他プロセスのパフォーマンスがライセ
ンスチェックのために低下することを防止できる。
【0100】また、本発明のライセンス管理装置が管理
する前記1以上の管理対象アプリケーションプログラム
はコールバック機能を有し、前記停止手段は、前記1以
上の管理対象アプリケーションプログラムを停止させる
ための処理を行う場合に、前記1以上の管理対象アプリ
ケーションプログラムに対して前記コールバック機能の
実行を認めることとしてもよく、それによって、不正使
用の防止のために管理対象アプリケーションを停止させ
る場合でも、必要な停止時の後処理は確実に実行され
る。
する前記1以上の管理対象アプリケーションプログラム
はコールバック機能を有し、前記停止手段は、前記1以
上の管理対象アプリケーションプログラムを停止させる
ための処理を行う場合に、前記1以上の管理対象アプリ
ケーションプログラムに対して前記コールバック機能の
実行を認めることとしてもよく、それによって、不正使
用の防止のために管理対象アプリケーションを停止させ
る場合でも、必要な停止時の後処理は確実に実行され
る。
【0101】また、本発明のライセンス管理装置は、前
記ライセンスキーの前記コンピュータシステムからの取
り外しを監視し、取り外しを検知した場合は、その旨を
前記制御手段に通知するキー監視手段を更に備え、前記
制御手段は、前記キー監視手段からの通知を受けると、
前記マネージャ手段にライセンスチェック判定処理を実
行させることとしてもよく、それによって、ライセンス
キーの有無を確実に把握できてライセンスチェックがよ
り厳密に行えるとともに、マネージャ手段が定期的にチ
ェックする必要がなくなって、ライセンスチェック処理
の負荷が低下し、ライセンスチェックによるシステムの
パフォーマンスへの影響は更に小さくできる。
記ライセンスキーの前記コンピュータシステムからの取
り外しを監視し、取り外しを検知した場合は、その旨を
前記制御手段に通知するキー監視手段を更に備え、前記
制御手段は、前記キー監視手段からの通知を受けると、
前記マネージャ手段にライセンスチェック判定処理を実
行させることとしてもよく、それによって、ライセンス
キーの有無を確実に把握できてライセンスチェックがよ
り厳密に行えるとともに、マネージャ手段が定期的にチ
ェックする必要がなくなって、ライセンスチェック処理
の負荷が低下し、ライセンスチェックによるシステムの
パフォーマンスへの影響は更に小さくできる。
【0102】また、本発明のライセンス管理装置が管理
する前記1以上の管理対象アプリケーションプログラム
のうち少なくとも1つは制限付き使用が可能であり、前
記停止手段は、前記検証手段が制限付き使用の可能な管
理対象アプリケーションプログラムについて不正使用と
判定した場合、停止処理を行わず、当該制限付き使用が
可能な管理対象アプリケーションプログラムについて機
能を一部制限するに止めてもよく、それによって、不正
使用を防止しつつ、販売促進を目的とした管理対象アプ
リケーションソフトウェアの試用も可能とすることがで
きる。
する前記1以上の管理対象アプリケーションプログラム
のうち少なくとも1つは制限付き使用が可能であり、前
記停止手段は、前記検証手段が制限付き使用の可能な管
理対象アプリケーションプログラムについて不正使用と
判定した場合、停止処理を行わず、当該制限付き使用が
可能な管理対象アプリケーションプログラムについて機
能を一部制限するに止めてもよく、それによって、不正
使用を防止しつつ、販売促進を目的とした管理対象アプ
リケーションソフトウェアの試用も可能とすることがで
きる。
【0103】また、本発明のライセンス管理装置は、前
記取得手段が前記1以上の管理対象アプリケーションプ
ログラムとの通信によって前記稼動情報を取得し、前記
稼動情報は、前記取得手段と前記1以上の管理対象アプ
リケーションプログラムとのプロセス間通信に用いられ
る領域であるポートの識別情報を含むこととすることも
でき、それによって、マネージャ手段は管理対象アプリ
ケーションソフトウェアを、ポート番号をもとに管理で
き、ライセンスチェックのための負荷が軽くなるので、
ライセンスチェック処理によるシステムのパフォーマン
スの影響を小さくすることができる。
記取得手段が前記1以上の管理対象アプリケーションプ
ログラムとの通信によって前記稼動情報を取得し、前記
稼動情報は、前記取得手段と前記1以上の管理対象アプ
リケーションプログラムとのプロセス間通信に用いられ
る領域であるポートの識別情報を含むこととすることも
でき、それによって、マネージャ手段は管理対象アプリ
ケーションソフトウェアを、ポート番号をもとに管理で
き、ライセンスチェックのための負荷が軽くなるので、
ライセンスチェック処理によるシステムのパフォーマン
スの影響を小さくすることができる。
【0104】また、本発明のライセンス管理装置につい
ては、前記停止手段が同報通信機能を有し、前記ポート
の識別情報を用いて前記1以上の管理対象アプリケーシ
ョンプログラムに対して終了命令を同報送信すること
で、前記1以上の管理対象アプリケーションプログラム
を停止させることにしてもよく、それによって、不正使
用検知時の管理対象アプリケーションソフトウェアへの
停止命令送信の処理を容易に行えるので、ライセンスチ
ェック処理によるシステムのパフォーマンスの影響を小
さくすることができる。
ては、前記停止手段が同報通信機能を有し、前記ポート
の識別情報を用いて前記1以上の管理対象アプリケーシ
ョンプログラムに対して終了命令を同報送信すること
で、前記1以上の管理対象アプリケーションプログラム
を停止させることにしてもよく、それによって、不正使
用検知時の管理対象アプリケーションソフトウェアへの
停止命令送信の処理を容易に行えるので、ライセンスチ
ェック処理によるシステムのパフォーマンスの影響を小
さくすることができる。
【0105】また、本発明のライセンス管理装置が動作
する、前記コンピュータシステムは複数の端末がネット
ワークで接続されて成り、前記ライセンスキーは、前記
複数の端末のうち少なくとも1つに接続され、前記1以
上の管理対象アプリケーションプログラムは、前記複数
の端末のうち少なくとも1つの上で実行されることとし
てもよく、それによって、ネットワーク上でも、管理対
象アプリケーションの肥大、さらにはアプリケーション
ソフトウェアやシステムのパフォーマンス低下を招くこ
となく、管理対象アプリケーションソフトウェアの不正
使用を防止することができる。
する、前記コンピュータシステムは複数の端末がネット
ワークで接続されて成り、前記ライセンスキーは、前記
複数の端末のうち少なくとも1つに接続され、前記1以
上の管理対象アプリケーションプログラムは、前記複数
の端末のうち少なくとも1つの上で実行されることとし
てもよく、それによって、ネットワーク上でも、管理対
象アプリケーションの肥大、さらにはアプリケーション
ソフトウェアやシステムのパフォーマンス低下を招くこ
となく、管理対象アプリケーションソフトウェアの不正
使用を防止することができる。
【0106】また、本発明のライセンス管理装置は、前
記停止手段がシステム権限を有し、前記コンピュータシ
ステム権限を用いて、前記1以上の管理対象アプリケー
ションプログラムのプロセスを停止させることとしても
よく、それによって、不正使用検知時には、確実に管理
対象アプリケーションソフトウェアを停止させることが
可能となり、厳密なライセンス管理を実現できる。
記停止手段がシステム権限を有し、前記コンピュータシ
ステム権限を用いて、前記1以上の管理対象アプリケー
ションプログラムのプロセスを停止させることとしても
よく、それによって、不正使用検知時には、確実に管理
対象アプリケーションソフトウェアを停止させることが
可能となり、厳密なライセンス管理を実現できる。
【0107】また、本発明のライセンス管理装置は、前
記1以上の管理対象アプリケーションプログラムを子プ
ロセスとして起動および停止させる子プロセス管理手段
を更に有し、前記取得手段は、前記子プロセス管理手段
から前記稼動情報を取得し、前記停止手段は、前記子プ
ロセス管理手段に指示して前記1以上の管理対象アプリ
ケーションプログラムを停止させることとしてもよく、
それによって、確実に管理対象アプリケーションソフト
ウェアの稼動状態を把握できるとともに、不正使用検知
時には、これらを確実に停止させることが可能となるの
で、厳密なライセンス管理を実現できる。
記1以上の管理対象アプリケーションプログラムを子プ
ロセスとして起動および停止させる子プロセス管理手段
を更に有し、前記取得手段は、前記子プロセス管理手段
から前記稼動情報を取得し、前記停止手段は、前記子プ
ロセス管理手段に指示して前記1以上の管理対象アプリ
ケーションプログラムを停止させることとしてもよく、
それによって、確実に管理対象アプリケーションソフト
ウェアの稼動状態を把握できるとともに、不正使用検知
時には、これらを確実に停止させることが可能となるの
で、厳密なライセンス管理を実現できる。
【0108】そして、やはり以上の説明から明らかなよ
うに、本発明のライセンス管理方法は、ライセンス管理
の対象となる1以上の管理対象アプリケーションプログ
ラムについてコンピュータシステム上での実行状況を管
理するライセンス管理方法であって、前記1以上の管理
対象アプリケーションプログラムについて、前記コンピ
ュータシステムでの使用の可否を示すライセンス情報を
保持する、ハードウェアのライセンスキーから前記ライ
センス情報を読み出す読み出しステップと、前記1以上
の管理対象アプリケーションプログラムの前記コンピュ
ータシステム上での実行状況を示す稼動情報を取得する
取得ステップと、前記読み出しステップにおいて読み出
されたライセンス情報と前記取得ステップにおいて取得
された稼動情報とをもとに、前記1以上の管理対象アプ
リケーションプログラムの中に、前記コンピュータシス
テムでの動作が認可されていないにもかかわらず動作し
ているものがあれば、不正使用ありと判定する判定ステ
ップと、前記判定ステップにおいてが不正使用ありと判
定された場合、稼働中である前記1以上の管理対象アプ
リケーションプログラムのうち、少なくとも前記判定ス
テップにおいて前記コンピュータシステムでの動作が認
可されていないにもかかわらず動作していると判定され
たものを停止させるための処理を行う停止ステップとを
有することを特徴とする。よって、管理対象アプリケー
ションが別個に内蔵されたトリガ命令を実行する形でラ
イセンスチェックを行うことがないので、管理対象アプ
リケーションの肥大、さらにはアプリケーションソフト
ウェアやシステムのパフォーマンス低下を招くことな
く、管理対象アプリケーションソフトウェアの不正使用
を防止できる。
うに、本発明のライセンス管理方法は、ライセンス管理
の対象となる1以上の管理対象アプリケーションプログ
ラムについてコンピュータシステム上での実行状況を管
理するライセンス管理方法であって、前記1以上の管理
対象アプリケーションプログラムについて、前記コンピ
ュータシステムでの使用の可否を示すライセンス情報を
保持する、ハードウェアのライセンスキーから前記ライ
センス情報を読み出す読み出しステップと、前記1以上
の管理対象アプリケーションプログラムの前記コンピュ
ータシステム上での実行状況を示す稼動情報を取得する
取得ステップと、前記読み出しステップにおいて読み出
されたライセンス情報と前記取得ステップにおいて取得
された稼動情報とをもとに、前記1以上の管理対象アプ
リケーションプログラムの中に、前記コンピュータシス
テムでの動作が認可されていないにもかかわらず動作し
ているものがあれば、不正使用ありと判定する判定ステ
ップと、前記判定ステップにおいてが不正使用ありと判
定された場合、稼働中である前記1以上の管理対象アプ
リケーションプログラムのうち、少なくとも前記判定ス
テップにおいて前記コンピュータシステムでの動作が認
可されていないにもかかわらず動作していると判定され
たものを停止させるための処理を行う停止ステップとを
有することを特徴とする。よって、管理対象アプリケー
ションが別個に内蔵されたトリガ命令を実行する形でラ
イセンスチェックを行うことがないので、管理対象アプ
リケーションの肥大、さらにはアプリケーションソフト
ウェアやシステムのパフォーマンス低下を招くことな
く、管理対象アプリケーションソフトウェアの不正使用
を防止できる。
【図1】本発明が適用されたライセンス管理装置の実施
の形態において、本ライセンス管理装置がPC上でどの
ように実現されるかを示す模式図である。
の形態において、本ライセンス管理装置がPC上でどの
ように実現されるかを示す模式図である。
【図2】同実施の形態においてライセンスキーが保持す
るライセンス情報の一例を示す図である。
るライセンス情報の一例を示す図である。
【図3】同実施の形態におけるライセンスマネージャの
構成を示すブロック図である。
構成を示すブロック図である。
【図4】同実施の形態における使用可否情報の例を示
す。
す。
【図5】同実施の形態における稼動情報の構成および内
容の一例を示す。
容の一例を示す。
【図6】同実施の形態におけるライセンスマネージャの
動作を示すフローチャートである。
動作を示すフローチャートである。
【図7】同実施の形態の第1の変形例におけるライセン
スマネージャの動作を示すフローチャートである。
スマネージャの動作を示すフローチャートである。
【図8】同実施の形態の第2変形例において、不正使用
検知にともなう管理対象アプリケーション停止時に、ラ
イセンスマネージャ、管理対象アプリケーション、ライ
センスキーの間で交わされるメッセージシーケンスを示
す図である。
検知にともなう管理対象アプリケーション停止時に、ラ
イセンスマネージャ、管理対象アプリケーション、ライ
センスキーの間で交わされるメッセージシーケンスを示
す図である。
【図9】同実施の形態の第3変形例におけるライセンス
マネージャと管理対象アプリケーションとの関係を示す
階層図である。
マネージャと管理対象アプリケーションとの関係を示す
階層図である。
【図10】同変形例におけるライセンスマネージャの構
成を示すブロック図である。
成を示すブロック図である。
【図11】同実施の形態の第5変形例におけるライセン
ス管理装置をネットワーク上の複数のPC上で動作させ
るネットワークシステムを示す図である。
ス管理装置をネットワーク上の複数のPC上で動作させ
るネットワークシステムを示す図である。
【図12】同変形例においてライセンスキーが保持する
ライセンス情報の内容を示す図である。
ライセンス情報の内容を示す図である。
【図13】同変形例における稼動情報の構成および内容
の一例を示す図である。
の一例を示す図である。
【図14】同変形例におけるライセンスマネージャの動
作を示すフローチャートである。
作を示すフローチャートである。
【図15】同実施の形態の第6変形例におけるライセン
ス管理装置の構成を示す図である。
ス管理装置の構成を示す図である。
【図16】同変形例における停止命令発行部が出力させ
る強制停止の通知メッセージの一例を示す図である。
る強制停止の通知メッセージの一例を示す図である。
【図17】本変形例におけるライセンスマネージャの動
作を示すフローチャートである。
作を示すフローチャートである。
【図18】従来技術であるインストール時のライセンス
チェックの概要を示す模式図である。
チェックの概要を示す模式図である。
【図19】従来技術であるアプリケーション起動時のラ
イセンスチェックの概要を示す模式図である。
イセンスチェックの概要を示す模式図である。
【図20】従来技術として、管理対象アプリケーション
に埋め込まれたトリガ命令を示すイメージ図である。
に埋め込まれたトリガ命令を示すイメージ図である。
【図21】従来技術として、トリガ命令を埋め込まれた
管理対象アプリケーションが1つのPC上で同時に稼動
している状態を示す模式図である。
管理対象アプリケーションが1つのPC上で同時に稼動
している状態を示す模式図である。
A,B ライセンス管理装置 1 PC 11 OS 200,205 ライセンスキー 210 ライセンス情報 30,302,303,305,306 ライセンスマ
ネージャ 31 スケジューラ 32 検証部 33 プロセス通信部 34 停止命令発行部 400,1200 使用可否情報 500,1300 稼動情報 1500 キーチェッカー 2010 トリガ命令
ネージャ 31 スケジューラ 32 検証部 33 プロセス通信部 34 停止命令発行部 400,1200 使用可否情報 500,1300 稼動情報 1500 キーチェッカー 2010 トリガ命令
フロントページの続き (72)発明者 鈴木 基史 愛知県名古屋市中区栄2丁目6番1号 白 川ビル別館5階 株式会社松下電器情報シ ステム名古屋研究所内 Fターム(参考) 5B076 FB07
Claims (15)
- 【請求項1】 ライセンス管理の対象となる1以上の管
理対象アプリケーションプログラムについてコンピュー
タシステム上での使用状況を管理するライセンス管理装
置であって、 前記1以上の管理対象アプリケーションプログラムにつ
いて、前記コンピュータシステムでの使用の可否を示す
ライセンス情報を保持する、ハードウェアのライセンス
キーと、 前記コンピュータシステム上で、前記1以上の管理対象
アプリケーションプログラムとは別のプロセスとして動
作し、前記ライセンス情報をもとにライセンスチェック
を行って前記1以上の管理対象アプリケーションプログ
ラムの不正使用を防止するマネージャ手段とを備えるラ
イセンス管理装置。 - 【請求項2】 前記マネージャ手段は、 前記ライセンスキーから前記ライセンス情報を読み出す
読み出し手段と、 前記1以上の管理対象アプリケーションプログラムの前
記コンピュータシステム上での実行状況を示す稼動情報
を取得する取得手段と、 前記読み出し手段が読み出したライセンス情報と前記取
得手段が取得した稼動情報とをもとに、前記1以上の管
理対象アプリケーションプログラムの中に、前記コンピ
ュータシステムでの動作が認可されていないにもかかわ
らず動作しているものがあれば、不正使用ありと判定す
る判定手段と、 前記判定手段が不正使用ありと判定した場合、稼働中で
ある前記1以上の管理対象アプリケーションプログラム
のうち、少なくとも前記判定手段によって前記コンピュ
ータシステムでの動作が認可されていないにもかかわら
ず動作していると判定されたものを停止させるための処
理を行う停止手段とを備えることを特徴とする請求項1
に記載のライセンス管理装置。 - 【請求項3】 前記読み取り手段は、ライセンスキーが
システムに存在しなければ、その旨を前記判定手段に通
知し、 前記判定手段は、ライセンスキーがシステムに存在しな
い場合、前記管理対象アプリケーションが1つ以上でも
前記コンピュータシステムで稼動していれば不正使用あ
りと判定することを特徴とする請求項2に記載のライセ
ンス管理装置。 - 【請求項4】 前記マネージャ手段によるライセンスチ
ェックの実行タイミングを制御する制御手段を更に備え
ることを特徴とする請求項1乃至3のいずれかに記載の
ライセンス管理装置。 - 【請求項5】 前記コンピュータシステムにおける、前
記1以上の管理対象アプリケーションプログラム以外の
プロセスの稼動状況に関する情報を取得するプロセス情
報取得手段を更に備え、 前記制御手段は、前記稼動情報取得手段が取得した情報
に基づいて、前記マネージャ手段によるライセンスチェ
ックの実行タイミングを変更することを特徴とする請求
項4に記載のライセンス管理装置。 - 【請求項6】 前記1以上の管理対象アプリケーション
プログラムはコールバック機能を有し、 前記停止手段は、前記1以上の管理対象アプリケーショ
ンプログラムを停止させるための処理を行う場合に、前
記1以上の管理対象アプリケーションプログラムに対し
て前記コールバック機能の実行を認めることを特徴とす
る請求項4または5に記載のライセンス管理装置。 - 【請求項7】 前記ライセンスキーの前記コンピュータ
システムからの取り外しを監視し、取り外しを検知した
場合は、その旨を前記制御手段に通知するキー監視手段
を更に備え、 前記制御手段は、前記キー監視手段からの通知を受ける
と、前記マネージャ手段にライセンスチェック判定処理
を実行させることを特徴とする請求項4乃至6のいずれ
かに記載のライセンス管理装置。 - 【請求項8】 前記1以上の管理対象アプリケーション
プログラムのうち少なくとも1つは制限付き使用が可能
であり、 前記停止手段は、前記検証手段が制限付き使用の可能な
管理対象アプリケーションプログラムについて不正使用
と判定した場合、停止処理を行わず、当該制限付き使用
が可能な管理対象アプリケーションプログラムについて
機能を一部制限することを特徴とする請求項4乃至7の
いずれかに記載のライセンス管理装置。 - 【請求項9】 前記取得手段は、前記1以上の管理対象
アプリケーションプログラムとの通信によって前記稼動
情報を取得し、 前記稼動情報は、前記取得手段と前記1以上の管理対象
アプリケーションプログラムとのプロセス間通信に用い
られる領域であるポートの識別情報を含むことを特徴と
する請求項4乃至8のいずれかに記載のライセンス管理
装置。 - 【請求項10】 前記停止手段は同報通信機能を有し、
前記ポートの識別情報を用いて前記1以上の管理対象ア
プリケーションプログラムに対して終了命令を同報送信
することで、前記1以上の管理対象アプリケーションプ
ログラムを停止させることを特徴とする請求項4乃至9
のいずれかに記載のライセンス管理装置。 - 【請求項11】 前記コンピュータシステムは複数の端
末がネットワークで接続されて成り、 前記ライセンスキーは、前記複数の端末のうち少なくと
も1つに接続され、 前記1以上の管理対象アプリケーションプログラムは、
前記複数の端末のうち少なくとも1つの上で実行される
ことを特徴とする請求項4乃至10のいずれかに記載の
ライセンス管理装置。 - 【請求項12】 前記停止手段はシステム権限を有し、
前記コンピュータシステム権限を用いて、前記1以上の
管理対象アプリケーションプログラムのプロセスを停止
させることを特徴とする請求項4乃至11のいずれかに
記載のライセンス管理装置。 - 【請求項13】 前記1以上の管理対象アプリケーショ
ンプログラムを子プロセスとして起動および停止させる
子プロセス管理手段を更に有し、 前記取得手段は、前記子プロセス管理手段から前記稼動
情報を取得し、 前記停止手段は、前記子プロセス管理手段に指示して前
記1以上の管理対象アプリケーションプログラムを停止
させることを特徴とする請求項4乃至8のいずれかに記
載のライセンス管理装置。 - 【請求項14】 ライセンス管理の対象となる1以上の
管理対象アプリケーションプログラムについてコンピュ
ータシステム上での実行状況を管理するライセンス管理
方法であって、 前記1以上の管理対象アプリケーションプログラムにつ
いて、前記コンピュータシステムでの使用の可否を示す
ライセンス情報を保持する、ハードウェアのライセンス
キーから前記ライセンス情報を読み出す読み出しステッ
プと、 前記1以上の管理対象アプリケーションプログラムの前
記コンピュータシステム上での実行状況を示す稼動情報
を取得する取得ステップと、 前記読み出しステップにおいて読み出されたライセンス
情報と前記取得ステップにおいて取得された稼動情報と
をもとに、前記1以上の管理対象アプリケーションプロ
グラムの中に、前記コンピュータシステムでの動作が認
可されていないにもかかわらず動作しているものがあれ
ば、不正使用ありと判定する判定ステップと、 前記判定ステップにおいてが不正使用ありと判定された
場合、稼働中である前記1以上の管理対象アプリケーシ
ョンプログラムのうち、少なくとも前記判定ステップに
おいて前記コンピュータシステムでの動作が認可されて
いないにもかかわらず動作していると判定されたものを
停止させるための処理を行う停止ステップとから成るラ
イセンス管理方法。 - 【請求項15】 ライセンス管理の対象となる1以上の
管理対象アプリケーションプログラムについてコンピュ
ータシステム上での実行状況を管理するライセンス管理
方法のプログラムを記録したコンピュータ読み取り可能
な記録媒体であって、 前記プログラムは、 前記1以上の管理対象アプリケーションプログラムにつ
いて、前記コンピュータシステムでの使用の可否を示す
ライセンス情報を保持する、ハードウェアのライセンス
キーから前記ライセンス情報を読み出す読み出しステッ
プと、 前記1以上の管理対象アプリケーションプログラムの前
記コンピュータシステム上での実行状況を示す稼動情報
を取得する取得ステップと、 前記読み出しステップにおいて読み出されたライセンス
情報と前記取得ステップにおいて取得された稼動情報と
をもとに、前記1以上の管理対象アプリケーションプロ
グラムの中に、前記コンピュータシステムでの動作が認
可されていないにもかかわらず動作しているものがあれ
ば、不正使用ありと判定する判定ステップと、 前記判定ステップにおいてが不正使用ありと判定された
場合、稼働中である前記1以上の管理対象アプリケーシ
ョンプログラムのうち、少なくとも前記判定ステップに
おいて前記コンピュータシステムでの動作が認可されて
いないにもかかわらず動作していると判定されたものを
停止させるための処理を行う停止ステップとを含むこと
を特徴とする記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP26076699A JP2001084137A (ja) | 1999-09-14 | 1999-09-14 | ライセンス管理装置およびライセンス管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP26076699A JP2001084137A (ja) | 1999-09-14 | 1999-09-14 | ライセンス管理装置およびライセンス管理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2001084137A true JP2001084137A (ja) | 2001-03-30 |
Family
ID=17352441
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP26076699A Pending JP2001084137A (ja) | 1999-09-14 | 1999-09-14 | ライセンス管理装置およびライセンス管理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2001084137A (ja) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004053666A1 (ja) * | 2002-12-11 | 2004-06-24 | Interlex Inc. | ソフトウェア実行制御システム及びソフトウェアの実行制御プログラム |
JP2005353043A (ja) * | 2004-05-14 | 2005-12-22 | Matsushita Electric Ind Co Ltd | アプリケーション管理装置及び管理方法 |
JP2006018815A (ja) * | 2004-06-30 | 2006-01-19 | Microsoft Corp | エミュレートされたコンピューティング環境を用いてオペレーティングシステムのライセンス収入を徴収するためのシステムおよび方法 |
JP2006031221A (ja) * | 2004-07-14 | 2006-02-02 | Kyocera Mita Corp | 電気機器 |
JP2006323610A (ja) * | 2005-05-18 | 2006-11-30 | Canon Inc | 画像処理装置およびその制御方法とプログラム |
JP2007213438A (ja) * | 2006-02-10 | 2007-08-23 | Nippon Telegr & Teleph Corp <Ntt> | プログラム動作状態制御方法およびプログラム動作状態制御システム |
JP2009506431A (ja) * | 2005-08-24 | 2009-02-12 | マイクロソフト コーポレーション | ライセンスに従う製品の挙動変更 |
JP2009509239A (ja) * | 2005-09-15 | 2009-03-05 | マイクロソフト コーポレーション | 安全なマシンカウント |
JP2009070247A (ja) * | 2007-09-14 | 2009-04-02 | Ricoh Co Ltd | 情報処理装置、情報処理方法および画像処理装置 |
JP2010067230A (ja) * | 2008-09-12 | 2010-03-25 | Ricoh Co Ltd | 画像形成装置、ライセンス判定方法、及びプログラム |
JP2010122806A (ja) * | 2008-11-18 | 2010-06-03 | Fuji Electric Retail Systems Co Ltd | Icカード決済端末、その制御装置、プログラム |
JP2010166603A (ja) * | 2010-03-19 | 2010-07-29 | Canon Inc | 画像処理装置およびその制御方法とプログラム |
US8427671B2 (en) | 2005-05-18 | 2013-04-23 | Canon Kabushiki Kaisha | Image processing apparatus capable of timely notifying user of change in state, control method thereof, and image processing system |
US9612818B2 (en) | 2014-08-04 | 2017-04-04 | Canon Kabushiki Kaisha | Information processing apparatus, program management method for information processing apparatus, and non-transitory computer-readable storage medium |
-
1999
- 1999-09-14 JP JP26076699A patent/JP2001084137A/ja active Pending
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7484207B2 (en) | 2002-12-11 | 2009-01-27 | O'z Co., Ltd. | Software execution control system and software execution control program |
JPWO2004053666A1 (ja) * | 2002-12-11 | 2006-04-13 | インターレックス株式会社 | ソフトウェア実行制御システム及びソフトウェアの実行制御プログラム |
WO2004053666A1 (ja) * | 2002-12-11 | 2004-06-24 | Interlex Inc. | ソフトウェア実行制御システム及びソフトウェアの実行制御プログラム |
CN1333314C (zh) * | 2002-12-11 | 2007-08-22 | 雄图资讯股份有限公司 | 软件执行控制系统 |
JP2005353043A (ja) * | 2004-05-14 | 2005-12-22 | Matsushita Electric Ind Co Ltd | アプリケーション管理装置及び管理方法 |
JP2006018815A (ja) * | 2004-06-30 | 2006-01-19 | Microsoft Corp | エミュレートされたコンピューティング環境を用いてオペレーティングシステムのライセンス収入を徴収するためのシステムおよび方法 |
JP2006031221A (ja) * | 2004-07-14 | 2006-02-02 | Kyocera Mita Corp | 電気機器 |
JP4612863B2 (ja) * | 2005-05-18 | 2011-01-12 | キヤノン株式会社 | 画像処理装置およびその制御方法とプログラム |
JP2006323610A (ja) * | 2005-05-18 | 2006-11-30 | Canon Inc | 画像処理装置およびその制御方法とプログラム |
US8427671B2 (en) | 2005-05-18 | 2013-04-23 | Canon Kabushiki Kaisha | Image processing apparatus capable of timely notifying user of change in state, control method thereof, and image processing system |
US8111414B2 (en) | 2005-05-18 | 2012-02-07 | Canon Kabushiki Kaisha | Image processing apparatus, control method thereof, and program |
JP2009506431A (ja) * | 2005-08-24 | 2009-02-12 | マイクロソフト コーポレーション | ライセンスに従う製品の挙動変更 |
JP2009509239A (ja) * | 2005-09-15 | 2009-03-05 | マイクロソフト コーポレーション | 安全なマシンカウント |
JP2007213438A (ja) * | 2006-02-10 | 2007-08-23 | Nippon Telegr & Teleph Corp <Ntt> | プログラム動作状態制御方法およびプログラム動作状態制御システム |
JP4684118B2 (ja) * | 2006-02-10 | 2011-05-18 | 日本電信電話株式会社 | プログラム動作状態制御方法およびプログラム動作状態制御システム |
JP2009070247A (ja) * | 2007-09-14 | 2009-04-02 | Ricoh Co Ltd | 情報処理装置、情報処理方法および画像処理装置 |
JP2010067230A (ja) * | 2008-09-12 | 2010-03-25 | Ricoh Co Ltd | 画像形成装置、ライセンス判定方法、及びプログラム |
JP2010122806A (ja) * | 2008-11-18 | 2010-06-03 | Fuji Electric Retail Systems Co Ltd | Icカード決済端末、その制御装置、プログラム |
JP4653243B2 (ja) * | 2010-03-19 | 2011-03-16 | キヤノン株式会社 | 画像処理装置およびその制御方法とプログラム |
JP2010166603A (ja) * | 2010-03-19 | 2010-07-29 | Canon Inc | 画像処理装置およびその制御方法とプログラム |
US9612818B2 (en) | 2014-08-04 | 2017-04-04 | Canon Kabushiki Kaisha | Information processing apparatus, program management method for information processing apparatus, and non-transitory computer-readable storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3924342B2 (ja) | ソフトウェアライセンス管理システムおよびソフトウェアライセンス管理装置 | |
US6056786A (en) | Technique for monitoring for license compliance for client-server software | |
US7661147B2 (en) | System for controlling use of digitally encoded products | |
US8443455B2 (en) | Apparatus, method, and computer program for controlling use of a content | |
US7809648B2 (en) | System and method for software licensing | |
EP0613073B1 (en) | Licence management mechanism for a computer system | |
JP2001084137A (ja) | ライセンス管理装置およびライセンス管理方法 | |
US7926101B2 (en) | Method and apparatus for controlling execution of a computer operation | |
US20090119218A1 (en) | License management apparatus, license management method, and license authentication program | |
EP1190356A2 (en) | License management system and method with multiple license servers | |
US9231825B2 (en) | Network management apparatus, management server, client terminal, and control method thereof | |
JPH06223040A (ja) | ソフトウェアライセンス管理システム | |
JPH07200492A (ja) | ネットワーク上のソフトウェア使用権管理システム | |
US7137114B2 (en) | Dynamically transferring license administrative responsibilities from a license server to one or more other license servers | |
US20060064387A1 (en) | Systems and methods for software licensing | |
KR20070058541A (ko) | 칩셋 활성화 | |
JPH08263283A (ja) | ソフトウェア管理システム | |
JP3248658B2 (ja) | 保守システム及び遠隔保守方式及び遠隔保守システム | |
JP3047837B2 (ja) | ソフトウェア使用権管理方式及び方法 | |
JP2002222021A (ja) | ソフトウェアのライセンス管理方法および記憶媒体 | |
JP3359367B2 (ja) | ライブラリ管理方式 | |
JPH08286906A (ja) | 起動プログラム数の自動チェック方法 | |
US20240235854A1 (en) | Certificate based security for declarative operations | |
JPH086839A (ja) | 分散ファイルシステム | |
JP2004094291A (ja) | プログラム管理装置、方法及びコンピュータプログラム |