(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-22
(45)【発行日】2024-05-01
(54)【発明の名称】情報処理装置及びプログラム
(51)【国際特許分類】
G06F 21/10 20130101AFI20240423BHJP
【FI】
G06F21/10 350
(21)【出願番号】P 2020166211
(22)【出願日】2020-09-30
【審査請求日】2023-09-19
(73)【特許権者】
【識別番号】000005496
【氏名又は名称】富士フイルムビジネスイノベーション株式会社
(74)【代理人】
【識別番号】100104880
【氏名又は名称】古部 次郎
(74)【代理人】
【識別番号】100118108
【氏名又は名称】久保 洋之
(72)【発明者】
【氏名】時得 克司
【審査官】平井 誠
(56)【参考文献】
【文献】特開2012-205210(JP,A)
【文献】特開2016-122419(JP,A)
【文献】国際公開第2008/126507(WO,A1)
【文献】特開2011-154473(JP,A)
【文献】特開2004-133501(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/10
(57)【特許請求の範囲】
【請求項1】
プロセッサを備え、
前記プロセッサは、
対象ソフトウェアの実行の際に、当該対象ソフトウェアの実行権限を有することを示す実行制御情報に基づいて当該対象ソフトウェアの実行可否を判断し、
実行権限の認証を行うサーバ装置に対して実行権限の認証要求を行うことができる認証期間中に、前記対象ソフトウェアの実行権限の認証を行うサーバ装置に当該対象ソフトウェアの実行権限の認証を要求し、
前記サーバ装置から、認証結果についての情報を取得し、取得した当該認証結果についての情報を記憶手段に記憶させ、
前記サーバ装置から、さらに、前記対象ソフトウェアの実行権限に基づく設定条件にしたがってユーザ毎に動的に設定される認証期間についての情報を取得し、取得した当該認証期間についての情報を記憶手段に記憶させる
ことを特徴とする情報処理装置。
【請求項2】
前記プロセッサは、前記実行制御情報に基づいて前記対象ソフトウェアの実行可否を判断する際に、前記認証期間を経過後は、ソフトウェアの実行を許可しないことを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記プロセッサは、前記認証期間を経過後は、ユーザの指示により、前記サーバ装置に認証を要求することを特徴とする請求項2に記載の情報処理装置。
【請求項4】
前記プロセッサは、さらに、取得した前記認証期間についての情報をユーザに通知することを特徴とする請求項1に記載の情報処理装置。
【請求項5】
前記プロセッサは、前記認証期間が変更された場合、前記認証期間についての情報として、前記認証期間の変更に関する情報をユーザに通知することを特徴とする請求項4に記載の情報処理装置。
【請求項6】
前記プロセッサは、前記認証期間が変更された場合、前記認証期間についての情報として、変更の要因となる事象をユーザに通知することを特徴とする請求項4に記載の情報処理装置。
【請求項7】
前記変更の要因となる事象とは、前記認証期間までの間隔を延長する要因となる事象であることを特徴とする請求項6に記載の情報処理装置。
【請求項8】
プロセッサを備え、
前記プロセッサは、
対象ソフトウェアを実装した外部装置から当該対象ソフトウェアの実行権限の認証要求を受信し、
前記外部装置に対し前記対象ソフトウェアの実行権限を認証し、
認証結果についての情報を前記外部装置に対して送信し、
予め定められた設定条件に基づき、前記外部装置が実行権限の認証要求を行うことができる認証期間をユーザ毎に設定し、当該認証期間の情報を当該外部装置に対してさらに送信する
ことを特徴とする情報処理装置。
【請求項9】
前記設定条件とは、実行権限に対する不正の危険性に基づく条件であり、
前記プロセッサは、前記危険性が高い場合は前記認証期間までの間隔を短縮し、前記危険性が低い場合は前記認証期間までの間隔を延長することを特徴とする請求項8に記載の情報処理装置。
【請求項10】
前記危険性に基づく条件とは、ユーザが認証を解除せずに実行権限を失効した回数である失効回数に基づく条件であり、
前記プロセッサは、前記失効回数が閾値以上の場合は前記認証期間までの間隔を短縮することを特徴とする請求項9に記載の情報処理装置。
【請求項11】
前記プロセッサは、前記失効回数が未使用ライセンス数に到らない場合は、当該失効回数が閾値以上であっても、前記認証期間までの間隔を短縮しないことを特徴とする請求項10に記載の情報処理装置。
【請求項12】
前記危険性に基づく条件とは、前記認証要求を受信した時期に基づく条件であり、
前記プロセッサは、前記認証期間を経過後に前記認証要求を受信した場合は、次回の認証期間までの間隔を短縮することを特徴とする請求項9に記載の情報処理装置。
【請求項13】
前記プロセッサは、さらに、前記認証期間に関する情報をユーザに通知するための通知情報を作成し、当該通知情報を前記外部装置に対して送信することを特徴とする請求項8に記載の情報処理装置。
【請求項14】
前記通知情報は、前記認証期間を変更させる要因となる事象を通知するため情報であることを特徴とする請求項13に記載の情報処理装置。
【請求項15】
コンピュータに、
対象ソフトウェアの実行の際に、当該対象ソフトウェアの実行権限を有することを示す実行制御情報に基づいて当該対象ソフトウェアの実行可否を判断する機能と、
実行権限の認証を行うサーバ装置に対して実行権限の認証要求を行うことができる認証期間中に、前記対象ソフトウェアの実行権限の認証を行うサーバ装置に当該対象ソフトウェアの実行権限の認証を要求する機能と、
前記サーバ装置から、認証結果についての情報を取得し、取得した当該認証結果についての情報を記憶手段に記憶させる機能と、
前記サーバ装置から、さらに、前記対象ソフトウェアの実行権限に基づく設定条件にしたがってユーザ毎に動的に設定される認証期間についての情報を取得し、取得した当該認証期間についての情報を記憶手段に記憶させる機能と
を実現させるためのプログラム。
【請求項16】
コンピュータに、
対象ソフトウェアを実装した外部装置から当該対象ソフトウェアの実行権限の認証要求を受信する機能と、
前記外部装置に対し前記対象ソフトウェアの実行権限を認証する機能と、
認証結果についての情報を前記外部装置に対して送信する機能と、
予め定められた設定条件に基づき、前記外部装置が実行権限の認証要求を行うことができる認証期間をユーザ毎に設定し、当該認証期間の情報を当該外部装置に対してさらに送信する機能と
を実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置及びプログラムに関する。
【背景技術】
【0002】
特許文献1には、初回のライセンス管理時にハードウェア固有の情報を用いてライセンス管理を行う手段と、2度目以降のライセンス管理時に、ユーザID及びパスワードのみでライセンス管理を行う手段と、を備えるライセンス管理装置が記載されている。
【0003】
特許文献2には、サーバが、クライアントPCからの認証要求に従って、認証を行い、アプリケーションの利用を許可する場合には、トークンを発行し、スタンドアロンモードへの切替が要求されると、発行済みのトークンを一定期間有効となるオフライン用に変更し、オフライン用トークンには、有効期限を表す固定的な情報だけでなく、認証のたびに更新される動的な日時情報も含める、認証システムが記載されている。
【先行技術文献】
【特許文献】
【0004】
【文献】特許第5034109号公報
【文献】特許第6476402号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
実行権限の認証を行うことが必要なソフトウェアを有する装置が実行権限の認証を行う装置に接続し実行権限の認証を受ける技術がある。これらの装置は常時オンライン接続されているとは限らないため、実行権限の認証を要求する頻度を高くすると、例えば、頻繁にオンライン接続したり、頻繁にオフラインでの実行権限の認証要求のための作業を行ったりする必要があり、ユーザの利便性を損なう。一方、実行権限の認証を要求する頻度を低くすると、ソフトウェアを不正に利用されるリスクが高まる。
【0006】
ここで、ユーザの利便性を損なっても実行権限の認証を要求する頻度を高くすべきか、ソフトウェアを不正に利用されるリスクが高まっても実行権限の認証を要求する頻度を低くすべきかは、ユーザ毎に異なる。
【0007】
本発明の目的は、ユーザ毎の頻度で、ソフトウェアの実行権限の認証を要求できるようにすることにある。
【課題を解決するための手段】
【0008】
請求項1に記載の発明は、プロセッサを備え、前記プロセッサは、対象ソフトウェアの実行の際に、当該対象ソフトウェアの実行権限を有することを示す実行制御情報に基づいて当該対象ソフトウェアの実行可否を判断し、実行権限の認証を行うサーバ装置に対して実行権限の認証要求を行うことができる認証期間中に、前記対象ソフトウェアの実行権限の認証を行うサーバ装置に当該対象ソフトウェアの実行権限の認証を要求し、前記サーバ装置から、認証結果についての情報を取得し、取得した当該認証結果についての情報を記憶手段に記憶させ、前記サーバ装置から、さらに、前記対象ソフトウェアの実行権限に基づく設定条件にしたがってユーザ毎に動的に設定される認証期間についての情報を取得し、取得した当該認証期間についての情報を記憶手段に記憶させることを特徴とする情報処理装置である。
請求項2に記載の発明は、前記プロセッサは、前記実行制御情報に基づいて前記対象ソフトウェアの実行可否を判断する際に、前記認証期間を経過後は、ソフトウェアの実行を許可しないことを特徴とする請求項1に記載の情報処理装置である。
請求項3に記載の発明は、前記プロセッサは、前記認証期間を経過後は、ユーザの指示により、前記サーバ装置に認証を要求することを特徴とする請求項2に記載の情報処理装置である。
請求項4に記載の発明は、前記プロセッサは、さらに、取得した前記認証期間についての情報をユーザに通知することを特徴とする請求項1に記載の情報処理装置である。
請求項5に記載の発明は、前記プロセッサは、前記認証期間が変更された場合、前記認証期間についての情報として、前記認証期間の変更に関する情報をユーザに通知することを特徴とする請求項4に記載の情報処理装置である。
請求項6に記載の発明は、前記プロセッサは、前記認証期間が変更された場合、前記認証期間についての情報として、変更の要因となる事象をユーザに通知することを特徴とする請求項4に記載の情報処理装置である。
請求項7に記載の発明は、前記変更の要因となる事象とは、前記認証期間までの間隔を延長する要因となる事象であることを特徴とする請求項6に記載の情報処理装置である。
請求項8に記載の発明は、プロセッサを備え、前記プロセッサは、対象ソフトウェアを実装した外部装置から当該対象ソフトウェアの実行権限の認証要求を受信し、前記外部装置に対し前記対象ソフトウェアの実行権限を認証し、認証結果についての情報を前記外部装置に対して送信し、予め定められた設定条件に基づき、前記外部装置が実行権限の認証要求を行うことができる認証期間をユーザ毎に設定し、当該認証期間の情報を当該外部装置に対してさらに送信することを特徴とする情報処理装置である。
請求項9に記載の発明は、前記設定条件とは、実行権限に対する不正の危険性に基づく条件であり、前記プロセッサは、前記危険性が高い場合は前記認証期間までの間隔を短縮し、前記危険性が低い場合は前記認証期間までの間隔を延長することを特徴とする請求項8に記載の情報処理装置である。
請求項10に記載の発明は、前記危険性に基づく条件とは、ユーザが認証を解除せずに実行権限を失効した回数である失効回数に基づく条件であり、前記プロセッサは、前記失効回数が閾値以上の場合は前記認証期間までの間隔を短縮することを特徴とする請求項9に記載の情報処理装置である。
請求項11に記載の発明は、前記プロセッサは、前記失効回数が未使用ライセンス数に到らない場合は、当該失効回数が閾値以上であっても、前記認証期間までの間隔を短縮しないことを特徴とする請求項10に記載の情報処理装置である。
請求項12に記載の発明は、前記危険性に基づく条件とは、前記認証要求を受信した時期に基づく条件であり、前記プロセッサは、前記認証期間を経過後に前記認証要求を受信した場合は、次回の認証期間までの間隔を短縮することを特徴とする請求項9に記載の情報処理装置である。
請求項13に記載の発明は、前記プロセッサは、さらに、前記認証期間に関する情報をユーザに通知するための通知情報を作成し、当該通知情報を前記外部装置に対して送信することを特徴とする請求項8に記載の情報処理装置である。
請求項14に記載の発明は、前記通知情報は、前記認証期間を変更させる要因となる事象を通知するため情報であることを特徴とする請求項13に記載の情報処理装置である。
請求項15に記載の発明は、コンピュータに、対象ソフトウェアの実行の際に、当該対象ソフトウェアの実行権限を有することを示す実行制御情報に基づいて当該対象ソフトウェアの実行可否を判断する機能と、実行権限の認証を行うサーバ装置に対して実行権限の認証要求を行うことができる認証期間中に、前記対象ソフトウェアの実行権限の認証を行うサーバ装置に当該対象ソフトウェアの実行権限の認証を要求する機能と、前記サーバ装置から、認証結果についての情報を取得し、取得した当該認証結果についての情報を記憶手段に記憶させる機能と、前記サーバ装置から、さらに、前記対象ソフトウェアの実行権限に基づく設定条件にしたがってユーザ毎に動的に設定される認証期間についての情報を取得し、取得した当該認証期間についての情報を記憶手段に記憶させる機能とを実現させるためのプログラムである。
請求項16に記載の発明は、コンピュータに、対象ソフトウェアを実装した外部装置から当該対象ソフトウェアの実行権限の認証要求を受信する機能と、前記外部装置に対し前記対象ソフトウェアの実行権限を認証する機能と、認証結果についての情報を前記外部装置に対して送信する機能と、予め定められた設定条件に基づき、前記外部装置が実行権限の認証要求を行うことができる認証期間をユーザ毎に設定し、当該認証期間の情報を当該外部装置に対してさらに送信する機能とを実現させるためのプログラムである。
【発明の効果】
【0009】
請求項1の発明によれば、ユーザ毎の頻度で、ソフトウェアの実行権限の認証を要求できるようになる。
請求項2の発明によれば、認証期間の経過後におけるソフトウェアの不正使用を抑制することができる。
請求項3の発明によれば、認証期間の経過後であってもソフトウェアの実行権限の認証を要求することができる。
請求項4の発明によれば、ユーザ毎に設定された認証期間をユーザに認識させることができる。
請求項5の発明によれば、認証期間が変更された場合にその変更に関する情報をユーザに認識させることができる。
請求項6の発明によれば、認証期間が変更された場合にその変更の要因となる事象をユーザに認識させることができる。
請求項7の発明によれば、認証期間までの間隔が延長された場合にその延長の要因となる事象をユーザに認識させることができる。
請求項8の発明によれば、ユーザ毎の頻度で、ソフトウェアの実行権限の認証を要求できるようになる。
請求項9の発明によれば、実行権限に対する不正の危険性が高い場合はソフトウェアの実行権限の認証を要求する頻度を高くし、実行権限に対する不正の危険性が低い場合はソフトウェアの実行権限の認証を要求する頻度を低くすることができる。
請求項10の発明によれば、ユーザが認証を解除せずに実行権限を失効した回数である失効回数が閾値以上の場合はソフトウェアの実行権限の認証を要求する頻度を高くすることができる。
請求項11の発明によれば、失効回数が未使用ライセンス数に到らない場合はソフトウェアの実行権限の認証を要求する頻度を高くしないようにできる。
請求項12の発明によれば、ユーザが認証期間の経過後にソフトウェアの実行権限の認証を要求した場合はソフトウェアの実行権限の認証を要求する頻度を高くすることができる。
請求項13の発明によれば、ユーザ毎に設定された認証期間をユーザに認識させることができる。
請求項14の発明によれば、認証期間を変更させる要因となる事象をユーザに認識させることができる。
請求項15の発明によれば、ユーザ毎の頻度で、ソフトウェアの実行権限の認証を要求できるようになる。
請求項16の発明によれば、ユーザ毎の頻度で、ソフトウェアの実行権限の認証を要求できるようになる。
【図面の簡単な説明】
【0010】
【
図1】本発明の実施の形態が適用されるライセンス管理システムの全体構成例を示した図である。
【
図2】本発明の実施の形態におけるライセンス管理サーバのハードウェア構成例を示した図である。
【
図3】本発明の実施の形態におけるユーザ毎のチェック間隔の制御の例を示した図である。
【
図4】本発明の実施の形態におけるチェック期間とチェック間隔との関係を示した図である。
【
図5】本発明の実施の形態におけるライセンス管理システムを構成するクライアント端末及びライセンス管理サーバの機能構成例を示したブロック図である。
【
図6】本発明の実施の形態におけるライセンス管理システムの動作例を示したシーケンス図である。
【
図7】本発明の実施の形態におけるチェック間隔決定処理の流れを示したフローチャートである。
【
図8】チェック期間内に表示されるライセンス再認証要求画面の一例を示した図である。
【
図9】チェック期間後に表示されるライセンス再認証要求画面の一例を示した図である。
【
図10】ユーザがライセンス再認証を要求した場合に表示されるライセンス再認証方法選択画面の一例を示した図である。
【
図11】ユーザがライセンス再認証を行った場合に表示されるライセンス再認証完了通知画面の一例を示した図である。
【発明を実施するための形態】
【0011】
以下、添付図面を参照して、本発明の実施の形態について詳細に説明する。
【0012】
[ライセンス管理システムの全体構成]
図1は、本実施の形態が適用されるライセンス管理システム1の全体構成例を示した図である。図示するように、このライセンス管理システム1は、クライアント端末10a~10cと、ライセンス管理サーバ30とが、通信回線80を介して接続されることにより構成されている。なお、図では、クライアント端末10a~10cを示したが、これらを区別する必要がない場合は、クライアント端末10と称することもある。また、図には、3つのクライアント端末10しか示していないが、4つ以上のクライアント端末10を設けてもよい。
【0013】
クライアント端末10は、ライセンス管理システム1を利用するユーザにより使用される端末装置である。クライアント端末10には、ライセンス管理の対象となるソフトウェアがインストールされ、例えばユーザの起動操作により動作するようになっている。クライアント端末10としては、例えば、パーソナルコンピュータ、タブレット端末、スマートフォン等を用いるとよい。
【0014】
ライセンス管理サーバ30は、クライアント端末10で動作するソフトウェアのライセンス認証を含むライセンス管理を行うサーバコンピュータである。ライセンス認証とは、ソフトウェアのシリアル番号等のライセンスキー情報と、クライアント端末10のMACアドレスやUUID等の識別情報とを紐付けることをいう。ライセンス管理サーバ30は、ソフトウェアのライセンスキー情報とクライアント端末10の識別情報とを紐付けた情報をライセンス情報として記憶する。また、ライセンス管理サーバ30は、ライセンス認証解除も行う。ライセンス認証解除とは、ソフトウェアのライセンスキー情報とクライアント端末10の識別情報との紐付けを解除し、そのライセンスキー情報を再利用可能な状態にすることをいう。さらに、ライセンス管理サーバ30は、クライアント端末10を廃棄した場合等に、ライセンス認証解除によらずに強制的にソフトウェアのライセンスキー情報とクライアント端末10の識別情報との紐付けを解除する「失効」を行うこともある。これにより、そのソフトウェアは別のクライアント端末10へ移行可能となる。ライセンス管理サーバ30としては、例えば、汎用のパーソナルコンピュータを用いるとよい。
【0015】
通信回線80は、クライアント端末10とライセンス管理サーバ30との間の情報通信に用いられる回線である。通信回線80としては、例えば、インターネットを用いるとよい。
【0016】
[ライセンス管理サーバのハードウェア構成]
図2は、本実施の形態におけるライセンス管理サーバ30のハードウェア構成例を示した図である。図示するように、ライセンス管理サーバ30は、プロセッサ31と、メインメモリ32及びHDD(Hard Disk Drive)33とを備える。ここで、プロセッサ31は、OS(Operating System)やアプリケーション等の各種ソフトウェアを実行し、後述する各機能を実現する。また、メインメモリ32は、各種ソフトウェアやその実行に用いるデータ等を記憶する記憶領域であり、HDD33は、各種ソフトウェアに対する入力データや各種ソフトウェアからの出力データ等を記憶する記憶領域である。さらに、ライセンス管理サーバ30は、外部との通信を行うための通信I/F(以下、「I/F」と表記する)34と、ディスプレイ等の表示デバイス35と、キーボードやマウス等の入力デバイス36とを備える。
【0017】
また、
図2に示したハードウェア構成は、クライアント端末10のハードウェア構成としても捉えられる。但し、クライアント端末10について述べるときは、
図2のプロセッサ31、メインメモリ32、HDD33、通信I/F34、表示デバイス35、入力デバイス36をそれぞれ、プロセッサ11、メインメモリ12、HDD13、通信I/F14、表示デバイス15、入力デバイス16と表記するものとする。
【0018】
[本実施の形態の背景及び概要]
ソフトウェアのライセンス認証解除を行わない状態で古いクライアント端末10が故障したり古いクライアント端末10を廃棄したりした場合には、新しいクライアント端末10にライセンスを移行することができなくなる。そのような場合、ウェブ画面、電子メール、電話等で古いクライアント端末10の識別情報を伝え、ライセンス管理サーバ30側で古いクライアント端末10のライセンス情報を失効させ、新しいクライアント端末10でライセンス認証可能な状態とすることは可能である。ところが、これでは、古いクライアント端末10で依然としてそのソフトウェアを動作させることができ、古いクライアント端末10を不正使用できることとなる。そのような不正使用を防止するためには、ソフトウェアを起動する際又は実行中にライセンス管理サーバ30に対してライセンスチェックを行い、ライセンス情報が失効されていた場合はソフトウェアを停止させる必要がある。
【0019】
ここで、ライセンスチェックとは、ソフトウェアのライセンスキー情報とクライアント端末10の識別情報とが紐付けられてライセンス管理サーバ30にライセンス情報として登録されているかどうかをチェックすることをいう。ライセンス管理サーバ30は、ライセンス情報の失効を検知したらクライアント端末10でのソフトウェアの実行を停止する。ライセンス管理サーバ30は、オンライン環境ではライセンスチェックをユーザの指示を待たずに行う。
【0020】
しかしながら、ユーザ環境は常時オンラインとは限らないため、クライアント端末10がライセンス管理サーバ30に対して頻繁にライセンスチェックを行うと、その都度オンライン接続するか、オフラインチェックを行う必要があり、利便性を損なう。なお、オフラインチェックとは、常時オンライン接続できない環境でライセンスチェックを行う作業である。具体的には、ソフトウェアのライセンスキー情報とクライアント端末10の識別情報とを、ファイルに書き出して電子メール、ウェブアップロード等でライセンス管理者に送ったり、電話でライセンス管理者に伝えたりする作業である。
【0021】
そこで、本実施の形態では、ライセンス管理サーバ30が、ライセンスチェックの間隔(以下、単に「チェック間隔」という)をユーザ毎に制御する。例えば、ライセンス管理サーバ30は、ライセンス関連情報からユーザ毎のリスクを判定し、リスクが高いと判定されたユーザについてはチェック間隔を短くし、リスクが低いと判定されたユーザについてはチェック間隔を長くする。チェック間隔は、ライセンス管理サーバ30がライセンスチェックの結果(以下、単に「チェック結果」という)を送信する際に、次回のライセンスチェックの期間(以下、単に「チェック期間」という)を設定することにより決めるとよい。また、ユーザ毎のリスクを判定するために用いるライセンス関連情報には、例えば、失効回数、未使用ライセンス数等がある。失効回数としては、失効後の初回のライセンスチェックの時期を迎えていない数をカウントするのが効果的である。
【0022】
図3は、本実施の形態におけるユーザ毎のチェック間隔の制御の例を示した図である。
【0023】
図では、A社が使用するクライアント端末10aと、B社が使用するクライアント端末10bとが、ライセンス管理サーバ30に接続されている場合を想定している。クライアント端末10aは、ソフトウェア20aを有し、ソフトウェア20aにはライセンス管理部24aが組み込まれている。クライアント端末10bは、ソフトウェア20bを有し、ソフトウェア20bにはライセンス管理部24bが組み込まれている。
【0024】
ここで、A社は、失効回数が10とし、未使用ライセンス数が0とする。B社は、失効回数が0とし、未使用ライセンス数が100とする。失効回数を比較すると、A社の方がB社よりも多い。失効の全てが同じソフトウェアを複数のクライアント端末10で使用するという不正によるものとは限らないが、A社の方がB社よりも不正が行われている可能性が高いということは言える。また、未使用ライセンス数を比較すると、A社よりもB社の方が多い。未使用ライセンス数が多い場合は、同じソフトウェアを複数のクライアント端末10で使用するという不正が行われても未使用のライセンスで吸収できる可能性が高いと言える。従って、この例の場合、A社の方がB社よりもリスクが高いと判断されることになる。従って、ライセンス管理サーバ30は、B社のクライアント端末10bのライセンス管理部24bにチェック間隔として例えば180日を設定し、A社のクライアント端末10aのライセンス管理部24aにチェック間隔としてこれよりも短い例えば30日を設定する。
【0025】
図4は、本実施の形態におけるチェック期間とチェック間隔との関係を示した図である。
【0026】
現在のチェック期間CP1と、チェック間隔CIと、次回チェック期間CP2とは、図に示すような関係となる。すなわち、クライアント端末10が現在のチェック期間CP1中にライセンス管理サーバ30に対してライセンスチェックを行うと、ライセンス管理サーバ30からチェック結果が返される際に、次回チェック期間CP2が設定され、それまでの間隔がチェック間隔CIとなる。つまり、チェック期間CP1中のライセンスチェック日D1がチェック間隔CIの開始日となる。そして、チェック間隔CIの終了日D2は次回チェック期間CP2の開始日となる。ここで、クライアント端末10が次回チェック期間CP2中にライセンス管理サーバ30にオンライン接続してライセンスチェックを行うことができなかったとすると、ユーザは次回チェック期間CP2のどこかでライセンス再認証を行うことが必要となる。つまり、チェック期間中にオンラインにできない場合はソフトウェアのライセンスキー情報とクライアント端末10の識別情報とを、ファイルに書き出して電子メール等でライセンス管理者に送ったり、電話でライセンス管理者に伝えたりする作業が必要となる。ここではこのような作業をライセンス再認証と呼ぶことにする。ユーザが次回チェック期間CP2中にライセンス再認証を行わなかった場合、次回チェック期間CP2の終了日D3に、ソフトウェアは起動させても停止するようになる。
【0027】
[ライセンス管理システムの機能構成]
図5は、本実施の形態におけるライセンス管理システム1を構成するクライアント端末10及びライセンス管理サーバ30の機能構成例を示したブロック図である。なお、このブロック図は、チェック期間に一時的にオンライン接続できる場合の例を示したものである。一時的にもオンライン接続できない場合は、オフラインチェックを行うことになる。
【0028】
まず、クライアント端末10の機能構成について説明する。図示するように、クライアント端末10は、ソフトウェア20に組み込まれた機能として、ソフトウェア実行制御部21と、チェック結果記憶部22と、チェック期間記憶部23と、ライセンス管理部24とを備えている。
【0029】
ソフトウェア実行制御部21は、ソフトウェア20が起動されるとその旨をライセンス管理部24に通知する。また、ソフトウェア実行制御部21は、ライセンス管理部24からソフトウェア20を実行する旨の情報が返されると、ソフトウェア20の実行を制御する。
【0030】
チェック結果記憶部22は、前回のチェック期間内にライセンス管理サーバ30から受信したチェック結果を記憶している。
【0031】
チェック期間記憶部23は、前回のチェック期間内にライセンス管理サーバ30から受信した次回チェック期間をチェック期間として記憶している。
【0032】
ライセンス管理部24は、ソフトウェア20が起動された旨がソフトウェア実行制御部21から通知されると、ソフトウェア20を実行するかどうかを決定する。その際、ライセンス管理部24は、チェック結果記憶部22に記憶されているチェック結果及びチェック期間記憶部23に記憶されているチェック期間に基づいて、ソフトウェア20を実行するかどうかを決定する。また、ライセンス管理部24は、ソフトウェア20を実行することを決定すると、その旨の情報をソフトウェア実行制御部21に返す。
【0033】
具体的には、ライセンス管理部24は、現在日時がチェック期間前である場合は、チェック結果が「有効」であれば、ソフトウェア20を実行することを決定し、チェック結果が「失効」であれば、ソフトウェア20を実行しないことを決定する。本実施の形態では、対象ソフトウェアの一例として、ソフトウェア20を用いており、対象ソフトウェアの実行権限を有することを示す実行制御情報の一例として、チェック期間及びチェック結果を用いている。また、本実施の形態では、対象ソフトウェアの実行の際に実行制御情報に基づいて対象ソフトウェアの実行可否を判断することの一例として、ライセンス管理部24のこの処理を行っている。
【0034】
また、ライセンス管理部24は、現在日時がチェック期間後である場合は、前回のチェック期間内に1回もライセンスチェックが行われずチェック期間が終了しているので、ソフトウェア20を実行しないことを決定する。本実施の形態では、対象ソフトウェアの実行の際に実行制御情報に基づいて対象ソフトウェアの実行可否を判断することの一例として、ライセンス管理部24のこの処理を行っている。また、本実施の形態では、実行制御情報に基づいて対象ソフトウェアの実行可否を判断する際に、認証期間を経過後は、ソフトウェアの実行を許可しないことの一例として、ライセンス管理部24のこの処理を行っている。
【0035】
さらに、ライセンス管理部24は、現在日時がチェック期間内である場合は、ライセンス管理サーバ30に対してライセンスチェックを要求する。本実施の形態では、実行権限の認証を行うサーバ装置に対して実行権限の認証要求を行うことができる認証期間の一例として、チェック期間を用いており、対象ソフトウェアの実行権限の認証を行うサーバ装置の一例として、ライセンス管理サーバ30を用いており、対象ソフトウェアの実行権限の認証の一例として、ライセンスチェックを用いている。また、本実施の形態では、認証期間中にサーバ装置に認証を要求することの一例として、ライセンス管理部24のこの処理を行っている。
【0036】
これによりライセンス管理サーバ30でライセンスチェックが行われると、ライセンス管理部24は、チェック結果及び次回チェック期間を受信し、チェック結果はチェック結果記憶部22に記憶し、次回チェック期間はチェック期間としてチェック期間記憶部23に記憶する。その際、次回チェック期間は、ユーザ毎に失効回数や未使用ライセンス数等に基づいて動的に設定される。本実施の形態では、認証結果についての情報の一例として、チェック結果を用いている。また、本実施の形態では、サーバ装置から、認証結果についての情報を取得し、取得した認証結果についての情報を記憶手段に記憶させることの一例として、ライセンス管理部24のこの処理を行っている。さらに、本実施の形態では、対象ソフトウェアの実行権限に基づく設定条件にしたがってユーザ毎に動的に設定される認証期間についての情報の一例として、次回チェック期間を用いている。さらにまた、本実施の形態では、サーバ装置から、認証期間についての情報を取得し、取得した認証期間についての情報を記憶手段に記憶させることの一例として、ライセンス管理部24のこの処理を行っている。ここで、上記の記憶手段は何れも、例えば、メインメモリ12やHDD13である。
【0037】
なお、これらの処理部及び記憶部は、ソフトウェアとハードウェア資源とが協働することにより実現される。具体的には、これらの処理部は、プロセッサ11が、これらを実現するプログラムを例えばHDD13からメインメモリ12に読み込んで実行することにより実現される。また、これらの記憶部は、例えばHDD13により実現される。
【0038】
次に、ライセンス管理サーバ30の機能構成について説明する。図示するように、ライセンス管理サーバ30は、通信部41と、ライセンス情報記憶部42と、ライセンスチェック部43と、チェック期間設定部44とを備えている。また、ライセンス管理サーバ30は、失効回数記憶部51と、ライセンス数記憶部52と、取引実績記憶部53と、信用度記憶部54と、閾値記憶部55と、チェック間隔決定部56とを備えている。
【0039】
通信部41は、クライアント端末10からソフトウェア20のライセンスチェック要求を受信する。本実施の形態では、対象ソフトウェアを実装した外部装置の一例として、クライアント端末10を用いており、対象ソフトウェアの実行権限の認証要求の一例として、ライセンスチェック要求を用いている。また、本実施の形態では、外部装置から認証要求を受信することの一例として、通信部41のこの処理を行っている。
【0040】
また、通信部41は、ライセンスチェック部43から取得したチェック結果と、チェック期間設定部44から取得した次回チェック期間とを、クライアント端末10へ送信する。その際、通信部41は、クライアント端末10の表示デバイス15に表示するメッセージを作成して、これをクライアント端末10へ送信してもよい。その場合、メッセージには、チェック期間を延長又は短縮するためのヒントを含めてもよい。本実施の形態では、認証結果についての情報の一例として、チェック結果を用いており、認証期間の情報の一例として、チェック期間を用いている。また、本実施の形態では、認証結果についての情報を外部装置に対して送信すること、及び、認証期間の情報を外部装置に対してさらに送信することの一例として、通信部41のこの処理を行っている。さらに、本実施の形態では、認証期間に関する情報をユーザに通知するための通知情報の一例として、メッセージを用いており、認証期間を変化させる要因となる事象を通知するため情報の一例として、メッセージ内のヒントを用いている。さらにまた、本実施の形態では、通知情報を作成し、通知情報を外部装置に対して送信することの一例として、通信部41のこの処理を行っている。
【0041】
ライセンス情報記憶部42は、ソフトウェア20のライセンスキー情報とクライアント端末10の識別情報とを紐付けたライセンス情報を記憶する。
【0042】
ライセンスチェック部43は、通信部41が受信したライセンスチェック要求に含まれるソフトウェア20のライセンスキー情報とクライアント端末10の識別情報とが紐付けられてライセンス情報記憶部42に記憶されているかどうかを判定する。本実施の形態では、外部装置に対し対象ソフトウェアの実行権限を認証することの一例として、ライセンスチェック部43の処理を行っている。
【0043】
チェック期間設定部44は、ライセンスチェック部43がライセンスチェックを行う際に、次回チェック期間を設定する。具体的には、チェック期間設定部44は、現在日時から、チェック間隔決定部56により決定されたチェック間隔を空けて、予め定められた長さの期間を次回チェック期間として設定する。ここで、チェック間隔は、詳しくは後述するが、チェック間隔決定部56により予め定められた条件に基づいて決定される。本実施の形態では、外部装置が実行権限の認証要求を行うことができる認証期間の一例として、チェック期間を用いている。また、本実施の形態では、予め定められた設定条件に基づき、認証期間を設定することの一例として、チェック期間設定部44の処理を行っている。
【0044】
失効回数記憶部51は、ユーザの失効回数を記憶する。失効回数記憶部51は、失効回数として、失効した後の初回のチェック期間が終了していない場合の失効回数を記憶するのが好ましい。
【0045】
ライセンス数記憶部52は、ユーザの未使用ライセンス数を記憶する。ライセンス数記憶部52は、例えば、ユーザが購入したライセンスを使用済み及び未使用に分けて記憶すればよい。
【0046】
取引実績記憶部53は、ユーザの取引実績を記憶する。取引実績記憶部53は、取引実績として、例えば、予め定められた期間内の取引額を記憶すればよい。予め定められた期間は、例えば1年間とすればよい。
【0047】
信用度記憶部54は、ユーザの信用度を決定するための各種項目の信用度を記憶する。信用度記憶部54は、各種項目の信用度として、例えば、BSA(Business Software Alliance)等の統計データに基づく情報を記憶すればよい。統計データに基づく情報は、例えば、国別不正使用率、不正使用が多い業種等の情報であってよい。
【0048】
閾値記憶部55は、チェック間隔決定部56がチェック間隔を決定するために用いる各種閾値を記憶する。まず、閾値記憶部55は、失効回数記憶部51に記憶された失効回数に対する閾値である許容失効回数を記憶する。また、閾値記憶部55は、取引実績記憶部53に記憶された取引実績に対する閾値である優遇対象取引実績を記憶する。さらに、閾値記憶部55は、信用度記憶部54に記憶された信用度に対する閾値である優遇対象信用度を記憶する。
【0049】
チェック間隔決定部56は、チェック期間設定部44が次回チェック期間を設定するに当たり、ユーザのリスクに基づく条件により、チェック間隔を決定する。その際、チェック間隔決定部56は、リスクが高いユーザについてはチェック間隔が短くなり、リスクが低いユーザについてはチェック間隔が長くなるように、チェック間隔を決定する。そして、チェック間隔決定部56は、この決定したチェック間隔をチェック期間設定部44に伝える。本実施の形態では、実行権限に対する不正の危険性に基づく条件の一例として、ユーザのリスクに基づく条件を用いている。また、本実施の形態では、危険性が高い場合は認証期間までの間隔を短縮し、危険性が低い場合は認証期間までの間隔を延長することの一例として、チェック間隔決定部56のこの処理を行っている。
【0050】
具体的には、チェック間隔決定部56は、失効回数記憶部51に記憶された失効回数が、ライセンス数記憶部52に記憶された未使用ライセンス数以上であり、かつ、閾値記憶部55に記憶された許容失効回数以上であれば、チェック間隔を、予め定められた間隔だけ短縮した間隔に決定する。これは、危険性に基づく条件が、ユーザが認証を解除せずに実行権限を失効した回数である失効回数に基づく条件である場合の一例であり、チェック間隔決定部56のこの処理は、失効回数が閾値以上の場合は認証期間までの間隔を短縮することの一例である。また、チェック間隔決定部56のこの処理は、失効回数が未使用ライセンス数に到らない場合は、失効回数が閾値以上であっても、認証期間までの間隔を短縮しないことの一例である。
【0051】
また、チェック間隔決定部56は、取引実績記憶部53に記憶された取引実績が、閾値記憶部55に記憶された優遇対象取引実績よりも大きければ、チェック間隔を、予め定められた間隔だけ延長した間隔に決定する。
【0052】
さらに、チェック間隔決定部56は、信用度記憶部54に記憶された信用度が、閾値記憶部55に記憶された優遇対象信用度よりも大きければ、チェック間隔を、予め定められた間隔だけ延長した間隔に決定する。
【0053】
ただし、チェック間隔決定部56がチェック間隔を決定する際に用いる基準はこれらには限らない。例えば、チェック期間内にライセンス再認証を行わなかった場合に、チェック間隔を、予め定められた間隔だけ短縮した間隔に決定してもよい。これは、危険性に基づく条件が、認証要求を受信した時期に基づく条件である場合の一例であり、チェック間隔決定部56のこの処理は、認証期間を経過後に認証要求を受信した場合は、次回の認証期間までの間隔を短縮することの一例である。
【0054】
なお、これらの処理部及び記憶部は、ソフトウェアとハードウェア資源とが協働することにより実現される。具体的には、これらの処理部は、プロセッサ31が、これらを実現するプログラムを例えばHDD33からメインメモリ32に読み込んで実行することにより実現される。また、これらの記憶部は、例えばHDD33により実現される。
【0055】
[ライセンス管理システムの動作]
図6は、本実施の形態におけるライセンス管理システム1の動作例を示したシーケンス図である。なお、このシーケンス図も、チェック期間に一時的にオンライン接続できる場合の例を示したものである。一時的にもオンライン接続できない場合は、オフラインチェックを行うことになる。
【0056】
クライアント端末10では、まず、ソフトウェア実行制御部21が、ソフトウェア20の起動を検出する(ステップ201)。
【0057】
すると、ソフトウェア実行制御部21は、ライセンス管理部24へ制御を移し、ライセンス管理部24が、チェック期間記憶部23を参照して、現在日時がチェック期間内であるかチェック期間前であるかチェック期間後であるかを判定する(ステップ202)。
【0058】
まず、ステップ202で現在日時がチェック期間内であると判定された場合について説明する。
【0059】
この場合、ライセンス管理部24は、ライセンスチェック要求をライセンス管理サーバ30へ送信する(ステップ203)。ここで、ライセンスチェック要求には、ソフトウェア20のシリアル番号等のライセンスキー情報と、クライアント端末10のMACアドレスやUUID等の識別情報とを含む。
【0060】
これにより、ライセンス管理サーバ30では、通信部41が、ライセンスチェック要求をクライアント端末10から受信する(ステップ401)。
【0061】
次に、ライセンスチェック部43が、ライセンスチェックを行う(ステップ402)。具体的には、ライセンスチェック部43は、ライセンスチェック要求に含まれるソフトウェア20のライセンスキー情報とクライアント端末10の識別情報とが紐付けられてライセンス情報記憶部42に記憶されているかどうかを、チェック結果として取得する。ライセンスチェック部43は、ソフトウェア20のライセンスキー情報とクライアント端末10の識別情報とが紐付けられてライセンス情報記憶部42に記憶されていれば、チェック結果として「有効」を取得する。また、ライセンスチェック部43は、ソフトウェア20のライセンスキー情報とクライアント端末10の識別情報とが紐付けられてライセンス情報記憶部42に記憶されていなければ、チェック結果として「失効」を取得する。
【0062】
次に、チェック間隔決定部56が、クライアント端末10を使用するユーザに応じたチェック間隔を決定するチェック間隔決定処理を実行する(ステップ403)。このチェック間隔決定処理の詳細については後述する。
【0063】
次いで、チェック期間設定部44が、次回チェック期間を設定する(ステップ404)。具体的には、チェック期間設定部44は、現在日時から、ステップ403で決定されたチェック間隔を空けて、予め定められた長さの期間を次回チェック期間として設定する。
【0064】
その後、通信部41が、ステップ402で取得されたチェック結果と、ステップ404で設定された次回チェック期間とを、クライアント端末10へ送信する(ステップ405)。
【0065】
これにより、クライアント端末10では、ライセンス管理部24が、チェック結果と次回チェック期間とをライセンス管理サーバ30から受信する(ステップ204)。
【0066】
次に、ライセンス管理部24は、現在のチェック期間を、ステップ204で受信した次回チェック期間で更新する(ステップ205)。具体的には、チェック期間記憶部23に記憶されている現在のチェック期間を、ステップ204で受信した次回チェック期間で上書きする。
【0067】
次いで、ライセンス管理部24は、ステップ204で受信したチェック結果をチェック結果記憶部22に記憶する(ステップ206)。
【0068】
その後、ライセンス管理部24は、ステップ206でチェック結果記憶部22に記憶したチェック結果が「有効」であるか「失効」であるかを判定する(ステップ207)。
【0069】
その結果、チェック結果が「有効」であると判定すれば、ライセンス管理部24は、ソフトウェア実行制御部21へ制御を移し、ソフトウェア実行制御部21が、ソフトウェア20を実行する(ステップ208)。
【0070】
一方、チェック結果が「失効」であると判定すれば、ライセンス管理部24は、ソフトウェア実行制御部21へ制御を移さず、ソフトウェア20は実行されることなく終了する。
【0071】
次に、ステップ202で現在日時がチェック期間前であると判定された場合について説明する。チェック期間内に1回ライセンスチェックが行われていれば、チェック期間記憶部23に次回チェック期間が記憶されているので、ステップ202では現在日時がチェック期間前であると判定される。
【0072】
この場合、ライセンス管理部24は、チェック期間内に1回ステップ203~206が行われた際にチェック結果記憶部22に記憶されたチェック結果が「有効」であるか「失効」であるかを判定する(ステップ207)。
【0073】
その結果、チェック結果が「有効」であると判定すれば、ライセンス管理部24は、ソフトウェア実行制御部21へ制御を移し、ソフトウェア実行制御部21が、ソフトウェア20を実行する(ステップ208)。
【0074】
一方、チェック結果が「失効」であると判定すれば、ライセンス管理部24は、ソフトウェア実行制御部21へ制御を移さず、ソフトウェア20は実行されることなく終了する。
【0075】
次に、ステップ202で現在日時がチェック期間後であると判定された場合について説明する。チェック期間内に1回もライセンスチェックが行われずにチェック期間が終了していれば、チェック期間記憶部23にはその終了したチェック期間が記憶されたままであるので、ステップ202では現在日時がチェック期間後であると判定される。
【0076】
この場合、ライセンス管理部24は、ソフトウェア実行制御部21へ制御を移さず、ソフトウェア20は実行されることなく終了する。
【0077】
図7は、
図6のステップ403におけるチェック間隔決定処理の流れを示したフローチャートである。
【0078】
チェック間隔決定処理が開始すると、まず、チェック間隔決定部56が、ユーザの失効回数を失効回数記憶部51から取得する(ステップ501)。ここで、失効回数としては、失効した後の初回のチェック期間が終了していない場合の失効回数を取得するのが好ましい。また、チェック間隔決定部56は、ユーザの未使用ライセンス数をライセンス数記憶部52から取得する(ステップ502)。さらに、チェック間隔決定部56は、ステップ501で取得した失効回数に対する閾値である許容失効回数を閾値記憶部55から取得する(ステップ503)。
【0079】
そして、チェック間隔決定部56は、ステップ501で取得した失効回数が、ステップ502で取得した未使用ライセンス数よりも小さいかどうかを判定する(ステップ504)。
【0080】
その結果、失効回数が未使用ライセンス数よりも小さくない、つまり、失効回数が未使用ライセンス数以上であると判定すれば、チェック間隔決定部56は、失効回数が、ステップ503で取得した許容失効回数よりも小さいかどうかを判定する(ステップ505)。
【0081】
失効回数が許容失効回数よりも小さくない、つまり、失効回数が許容失効回数以上であると判定すれば、チェック間隔決定部56は、チェック間隔を、予め定められた間隔だけ短縮した間隔に決定する(ステップ506)。そして、チェック間隔決定部56は、処理をステップ507へ進める。
【0082】
一方、ステップ504で失効回数が未使用ライセンス数よりも小さいと判定した場合や、ステップ505で失効回数が許容失効回数よりも小さいと判定した場合は、チェック間隔決定部56は、ステップ506を実行することなく、処理をステップ507へ進める。
【0083】
次に、チェック間隔決定部56は、ユーザの取引実績を取引実績記憶部53から取得する(ステップ507)。ここで、取引実績としては、予め定められた期間内の取引額を取得すればよい。予め定められた期間は、例えば1年間とすればよい。また、チェック間隔決定部56は、ステップ507で取得した取引実績に対する閾値である優遇対象取引実績を閾値記憶部55から取得する(ステップ508)。
【0084】
そして、チェック間隔決定部56は、ステップ507で取得した取引実績が、ステップ508で取得した優遇対象取引実績よりも大きいかどうかを判定する(ステップ509)。
【0085】
その結果、取引実績が優遇対象取引実績よりも大きいと判定すれば、チェック間隔決定部56は、チェック間隔を、予め定められた間隔だけ延長した間隔に決定する(ステップ510)。そして、チェック間隔決定部56は、処理をステップ511へ進める。
【0086】
一方、ステップ509で取引実績が優遇対象取引実績よりも大きくない、つまり、取引実績が優遇対象取引実績以下であると判定すれば、チェック間隔決定部56は、ステップ510を実行することなく、処理をステップ511へ進める。
【0087】
次いで、チェック間隔決定部56は、ユーザの信用度を、信用度記憶部54に記憶された各種項目の信用度に基づいて取得する(ステップ511)。例えば、信用度記憶部54が、国別不正使用率として、A国が84%、B国が16%、C国が32%、D国が66%という情報を記憶しているとする。また、信用度記憶部54が、不正使用が多い業種として、販売/流通、ソフトウェア開発、製造という情報を記憶しているとする。すると、チェック間隔決定部56は、ユーザの属性に対する信用度を算出する。すなわち、A社がA国の流通業である場合、A国の国別不正使用率84%を-100ポイントとし、流通業を-100ポイントとすることにより、A社の信用度を-200ポイントとする。また、B社がB国の金融業である場合、B国の国別不正使用率16%を+100ポイントとし、金融業を0ポイントとすることにより、B社の信用度を+100ポイントとする。
【0088】
また、チェック間隔決定部56は、ステップ511で取得した信用度に対する閾値である優遇対象信用度を閾値記憶部55から取得する(ステップ512)。例えば、閾値記憶部55が、優遇対象信用度50ポイントを記憶しているとすると、チェック間隔決定部56は、この優遇対象信用度50ポイントを取得する。
【0089】
そして、チェック間隔決定部56は、ステップ511で取得した信用度が、ステップ512で取得した優遇対象信用度よりも大きいかどうかを判定する(ステップ513)。例えば、上述したようにA社の信用度が-200ポイントとなったとすると、チェック間隔決定部56は、A社の信用度-200ポイントが優遇対象信用度50ポイントよりも大きくないと判定する。また、上述したようにB社の信用度が+100ポイントとなったとすると、チェック間隔決定部56は、B社の信用度+100ポイントが優遇対象信用度50ポイントよりも大きいと判定する。
【0090】
その結果、信用度が優遇対象信用度よりも大きいと判定すれば、チェック間隔決定部56は、チェック間隔を、予め定められた間隔だけ延長した間隔に決定する(ステップ514)。例えば、上述のように判定された場合、チェック間隔決定部56は、B社を優遇対象として、チェック間隔を延長する処理を行う。そして、チェック間隔決定部56は、処理を
図6へ戻す。
【0091】
一方、ステップ513で信用度が優遇対象信用度よりも大きくない、つまり、信用度が優遇対象信用度以下であると判定すれば、チェック間隔決定部56は、ステップ514を実行しない。例えば、上述のように判定された場合、チェック間隔決定部56は、A社を優遇対象外として、チェック間隔を延長する処理を行わない。そして、チェック間隔決定部56は、処理を
図6へ戻す。
【0092】
図8~
図11は、
図6のフローチャートに示した動作においてクライアント端末10が表示デバイス15に表示する画面の例を示した図である。なお、これらの画面は、ライセンス管理サーバ30とオンライン接続せずにクライアント端末10でソフトウェア20を利用している場合、つまり、ソフトウェア20をオフライン利用している場合の画面である。
【0093】
図8は、チェック期間内に表示されるライセンス再認証要求画面210の一例を示した図である。具体的には、ライセンス管理部24が、ステップ201で現在日時がチェック期間内であると判定した場合に、このライセンス再認証要求画面210を表示する。
【0094】
図示するように、ライセンス再認証要求画面210は、メッセージ211と、ボタン212,213とを含んでいる。メッセージ211は、XX月XX日までにライセンス再認証を行わなければソフトウェア20が利用できなくなることをユーザに通知する。ボタン212は、メッセージ211が表示されたことによりユーザがライセンス再認証を行うとした場合に押下される。ボタン213は、メッセージ211が表示されたもののユーザが今はライセンス再認証を行わないとした場合に押下される。
【0095】
なお、ライセンス管理部24がライセンス再認証要求画面210を表示する際に行う処理は、取得した認証期間についての情報をユーザに通知することの一例である。
【0096】
図9は、チェック期間後に表示されるライセンス再認証要求画面220の一例を示した図である。具体的には、ライセンス管理部24が、ステップ201で現在日時がチェック期間後であると判定した場合に、ライセンス再認証要求画面220を表示する。つまり、ライセンス管理部24は、チェック期間内に1回もライセンスチェックが行われずにチェック期間が終了した場合に、ライセンス再認証要求画面220を表示する。
【0097】
図示するように、ライセンス再認証要求画面220は、メッセージ221と、ボタン222,223とを含んでいる。メッセージ221は、ソフトウェア20をオフラインで利用できる期限が過ぎたためにライセンス再認証を行わなければソフトウェア20が停止することをユーザに通知する。ボタン222は、メッセージ221が表示されたことによりユーザがライセンス再認証を行うとした場合に押下される。ボタン223は、メッセージ221が表示されたもののユーザがライセンス再認証を行わずにソフトウェア20が停止してよいとした場合に押下される。
【0098】
なお、ライセンス管理部24がライセンス再認証要求画面220上での操作によって行う処理は、認証期間を経過後は、ユーザの指示により、サーバ装置に認証を要求することの一例である。
【0099】
図10は、ユーザがライセンス再認証を要求した場合に表示されるライセンス再認証方法選択画面230の一例を示した図である。具体的には、
図8のライセンス再認証要求画面210でボタン212が押下された場合、又は、
図9のライセンス再認証要求画面220でボタン222が押下された場合に、ライセンス管理部24が、ライセンス再認証方法選択画面230を表示する。
【0100】
図示するように、ライセンス再認証方法選択画面230は、ボタン231~234を含んでいる。ボタン231は、ユーザがライセンス管理サーバ30にオンライン接続して情報を送信することによりライセンス再認証を行うとした場合に押下される。ボタン232は、ユーザが情報をファイルに書き出して電子メールでライセンス管理者に送信することによりライセンス再認証を行うとした場合に押下される。ボタン233は、ユーザが情報を電話でライセンス管理者に伝えることによりライセンス再認証を行うとした場合に押下される。ボタン234は、ユーザが画面を
図8のライセンス再認証要求画面210又は
図9のライセンス再認証要求画面220に戻す場合に押下される。
【0101】
図11は、ユーザがライセンス再認証を行った場合に表示されるライセンス再認証完了通知画面240の一例を示した図である。具体的には、
図10のライセンス再認証方法選択画面230でボタン231~233のいずれかが押下され、ライセンス管理サーバ30でライセンス再認証が行われた場合に、ライセンス管理部24が、ライセンス再認証完了通知画面240を表示する。
【0102】
図示するように、ライセンス再認証完了通知画面240は、メッセージ241,242を含んでいる。メッセージ241は、ライセンス再認証に成功したことと、次回の認証期間がYY月YY日からZZ月ZZ日までであることとをユーザに通知する。メッセージ242は、必須ではないが、チェック間隔を延長するために有効な方法を通知するために含めてもよい。図では、メッセージ242として、チェック期間未終了の失効回数がAAであり、これがBB以下になるとチェック間隔がCC日延長される、という旨をユーザに通知するものを示している。あるいは、図示しないが、メッセージ242は、チェック期間を延長又は短縮した場合に、その理由をユーザに通知するものであってもよい。この場合のメッセージ242としては、例えば、BSAの業種別評価がランクアップしたため、チェック間隔をDD日延長した、という旨をユーザに通知するものが考えられる。
【0103】
なお、ライセンス管理部24がライセンス再認証完了通知画面240を表示する際に行う処理は、認証期間が変更された場合、認証期間についての情報として、認証期間の変更に関する情報をユーザに通知することの一例である。また、ライセンス管理部24がライセンス再認証完了通知画面240を表示する際に行う処理は、認証期間が変更された場合、認証期間についての情報として、変更の要因となる事象をユーザに通知することの一例である。さらに、ライセンス管理部24がライセンス再認証完了通知画面240を表示する際に行う処理は、認証期間までの間隔を延長する要因となる事象をユーザに通知することの一例である。
【0104】
[プロセッサ]
上記各実施形態において、プロセッサとは広義的なプロセッサを指し、汎用的なプロセッサ(例えばCPU:Central Processing Unit等)や、専用のプロセッサ(例えばGPU:Graphics Processing Unit、ASIC:Application Specific Integrated Circuit、FPGA:Field Programmable Gate Array、プログラマブル論理デバイス等)を含むものである。
【0105】
また上記各実施形態におけるプロセッサの動作は、1つのプロセッサによって成すのみでなく、物理的に離れた位置に存在する複数のプロセッサが協働して成すものであってもよい。また、プロセッサの各動作の順序は上記各実施形態において記載した順序のみに限定されるものではなく、適宜変更してもよい。
【0106】
[プログラム]
本実施の形態におけるクライアント端末10が行う処理は、例えば、アプリケーションソフトウェア等のプログラムとして用意される。
【0107】
すなわち、本実施の形態を実現するプログラムは、コンピュータに、対象ソフトウェアの実行の際に、対象ソフトウェアの実行権限を有することを示す実行制御情報に基づいて対象ソフトウェアの実行可否を判断する機能と、実行権限の認証を行うサーバ装置に対して実行権限の認証要求を行うことができる認証期間中に、対象ソフトウェアの実行権限の認証を行うサーバ装置に対象ソフトウェアの実行権限の認証を要求する機能と、サーバ装置から、認証結果についての情報を取得し、取得した認証結果についての情報を記憶手段に記憶させる機能と、サーバ装置から、さらに、対象ソフトウェアの実行権限に基づく設定条件にしたがってユーザ毎に動的に設定される認証期間についての情報を取得し、取得した認証期間についての情報を記憶手段に記憶させる機能とを実現させるためのプログラムとして捉えられる。
【0108】
また、本実施の形態におけるライセンス管理サーバ30が行う処理も、例えば、アプリケーションソフトウェア等のプログラムとして用意される。
【0109】
すなわち、本実施の形態を実現するプログラムは、コンピュータに、対象ソフトウェアを実装した外部装置から対象ソフトウェアの実行権限の認証要求を受信する機能と、外部装置に対し対象ソフトウェアの実行権限を認証する機能と、認証結果についての情報を外部装置に対して送信する機能と、予め定められた設定条件に基づき、外部装置が実行権限の認証要求を行うことができる認証期間をユーザ毎に設定し、認証期間の情報を外部装置に対してさらに送信する機能とを実現させるためのプログラムとしても捉えられる。
【0110】
なお、本実施の形態を実現するプログラムは、通信回線により提供することはもちろん、CD-ROM等の記録媒体に格納して提供することも可能である。
【符号の説明】
【0111】
10…クライアント端末、20…ソフトウェア、21…ソフトウェア実行制御部、22…チェック結果記憶部、23…チェック期間記憶部、24…ライセンス管理部、30…ライセンス管理サーバ、41…通信部、42…ライセンス情報記憶部、43…ライセンスチェック部、44…チェック期間設定部、51…失効回数記憶部、52…ライセンス数記憶部、53…取引実績記憶部、54…信用度記憶部、55…閾値記憶部、56…チェック間隔決定部