説明

監視装置、監視方法および監視プログラム

【課題】サーバアプリケーションを入手しやすい状態としたままで、正しく運用されていないサーバアプリケーションを無効化することのできる監視装置、監視方法および監視プログラムを提供する。
【解決手段】監視装置の一例であるCAサーバ20は、サーバアプリケーションの使用頻度を示す第1の条件を少なくとも含む判断条件を格納した条件判断テーブル207を保持している。証明書発行部202は、管理サーバから証明書発行依頼があると、試用版証明書を無条件に発行する。管理サーバからの本運用証明書の発行要求を受信すると、ログ収集部205は、画像処理装置との間の通信履歴(通信ログ)を取得する。判断部204は、条件判断テーブル207と通信履歴とに基づいて、管理サーバの使用実績を判断する。証明書発行部202は、使用実績があると判断されると、通信制限が緩和された本運用証明書を発行する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、監視装置、監視方法および監視プログラムに関し、特に、画像処理装置を管理するためのサーバアプリケーションの運用を監視することのできる監視装置、監視方法および監視プログラムに関する。
【背景技術】
【0002】
通信装置に、MFP(Multi Function Peripheral)などの画像処理装置を管理するためのサーバアプリケーションがインストールされ、かつ、画像処理装置側での認証に必要となる電子証明書が発行されると、当該通信装置は、画像処理装置の管理サーバとして機能することができる。
【0003】
電子証明書の発行に関して、特許文献1には、クライアントが電子証明書の発行を申請すると、サーバが、クライアントからの申請情報とクライアント認証DBの個人情報とを照合することで、証明書の発行条件を判別して、条件を満たす場合に認証局に電子証明書の発行を依頼することが記載されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2001−36521号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
サーバアプリケーションは、顧客の使用状況や課金情報等の重要な情報を扱うため、本来、無制限にインストールされるべきではない。一方で、たとえば、サードベンダにサーバアプリケーション対応のソフトウェアを開発させるためなどの理由により、サーバアプリケーションは、入手しやすい状態にする必要がある。
【0006】
しかし入手しやすい状態にあると、インストールしたまま放置された管理サーバ、あるいは設定や管理が不十分な管理サーバが野放しにされる可能性がある。このような正しく運用されていない管理サーバに、顧客のデバイス(画像処理装置)が接続してしまうと、情報の漏洩等の問題が発生し、顧客の不利益につながる恐れがある。
【0007】
上記特許文献1のように、電子証明書の発行時に管理サーバの正当性を判断することも考えられるが、そのような場合、予め管理サーバとなる得る通信装置の個人情報を格納しておかなければならないため、サーバアプリケーションを入手できる通信装置が限られてしまう。
【0008】
本発明は、上記のような問題を解決するためになされたものであって、その目的は、サーバアプリケーションを入手しやすい状態としたままで、正しく運用されていないサーバアプリケーションを無効化することのできる監視装置、監視方法および監視プログラムを提供することである。
【課題を解決するための手段】
【0009】
この発明のある局面に従う監視装置は、画像処理装置を管理するためのサーバアプリケーションの運用を監視するための監視装置であって、サーバアプリケーションの使用頻度を示す第1の条件を少なくとも含む判断条件を格納した記憶手段と、サーバアプリケーションをインストールし、第1の証明書が発行された管理サーバと、画像処理装置との間の通信履歴を取得するための取得手段と、判断条件と通信履歴とに基づいて、管理サーバの使用実績を判断することで、管理サーバに設定された通信制限を緩和するか否かを決定するための判断手段とを備える。
【0010】
好ましくは、第1の証明書を発行するための発行手段をさらに備える。
好ましくは、第1の証明書は、試用版の証明書であり、発行手段は、判断手段により使用実績があると判断された場合に、通信制限が緩和された第2の証明書を発行する。
【0011】
好ましくは、発行手段は、判断手段により使用実績がないと判断された場合には、第2の証明書の発行を拒絶する。
【0012】
好ましくは、発行手段は、判断手段において管理サーバが満たしていると判断された判断条件に応じて、第2の証明書の通信制限のレベルを設定する。
【0013】
好ましくは、通信制限とは、画像処理装置との通信可能期間を表わす。
好ましくは、通信可能期間とは、電子証明書の有効期間を表わす。
【0014】
好ましくは、判断手段は、第1の証明書の残りの有効期間が閾値以下になった場合に、管理サーバの使用実績を判断する。
【0015】
好ましくは、判断手段は、第1の証明書が発行されてから所定の期間が経過した場合に、管理サーバの使用実績を判断し、使用実績があると判断された場合に、第1の証明書の継続利用を許可し、使用実績がないと判断された場合に、第1の証明書を失効させるための手段をさらに備える。
【0016】
好ましくは、判断手段は、通信履歴の累積数、通信データ総量、および、通信している画像処理装置の個数のうち少なくともいずれかが、規定値以上となった場合に、管理サーバの使用実績を判断する。
【0017】
好ましくは、判断条件は、さらに、管理サーバの不正通信の有無を示す第2の条件を含み、判断手段は、管理サーバの通信制限を緩和するか否かの決定に、管理サーバの不正通信の有無の判断結果をさらに用いる。
【0018】
好ましくは、監視装置は、管理サーバ内に含まれ、記憶手段、取得手段および判断手段を保護するための保護手段をさらに備える。
【0019】
この発明の他の局面に従う監視方法は、画像処理装置を管理するためのサーバアプリケーションの運用を監視するための監視方法であって、サーバアプリケーションをインストールし、第1の証明書が発行された管理サーバと、画像処理装置との間の通信履歴を取得するステップと、サーバアプリケーションの使用頻度を示す第1の条件を少なくとも含む判断条件と通信履歴とに基づいて、管理サーバの使用実績を判断することで、管理サーバの通信制限を緩和するか否かを決定するステップとを備える。
【0020】
この発明のさらに他の局面に従う監視プログラムは、画像処理装置を管理するためのサーバアプリケーションの運用を監視するための監視プログラムであって、サーバアプリケーションをインストールし、第1の証明書が発行された管理サーバと、画像処理装置との間の通信履歴を取得するステップと、サーバアプリケーションの使用頻度を示す第1の条件を少なくとも含む判断条件と通信履歴とに基づいて、管理サーバの使用実績を判断することで、管理サーバの通信制限を緩和するか否かを決定するステップとをコンピュータに実行させる。
【発明の効果】
【0021】
本発明によると、監視装置は、管理サーバの使用実績を判断することで、管理サーバの通信制限を変更することができる。したがって、サーバアプリケーションを入手しやすい状態としたままで、正しく運用されていないサーバアプリケーションを無効化することができる。
【図面の簡単な説明】
【0022】
【図1】本発明の実施の形態1における通信システムの構成例を示す図である。
【図2】本発明の実施の形態1に係るCAサーバ(認証装置)のハードウェア構成を模式的に示す図である。
【図3】本発明の実施の形態1に係るサーバアプリ(管理サーバ)のハードウェア構成を模式的に示す図である。
【図4】本発明の実施の形態1に係るMFP(画像処理装置)のハードウェア構成を模式的に示す図である。
【図5】本発明の実施の形態1に係るログ収集サーバのハードウェア構成を模式的に示す図である。
【図6】本発明の実施の形態1におけるCAサーバの機能構成を示すブロック図である。
【図7】本発明の実施の形態1における証明書管理テーブルのデータ構造例を示す図である。
【図8】本発明の実施の形態1における電子証明書の記載内容の一例を示す図である。
【図9】本発明の実施の形態1における条件判断テーブルの内容例を示す図である。
【図10】本発明の実施の形態1におけるサーバアプリの機能構成を示すブロック図である。
【図11】本発明の実施の形態1におけるMFPの機能構成を示すブロック図である。
【図12】本発明の実施の形態1における判断ポリシーテーブルの一例を示す図である。
【図13】本発明の実施の形態1におけるログ収集サーバの機能構成を示すブロック図である。
【図14】本発明の実施の形態1におけるMFP管理テーブルのデータ構造例を示す図である。
【図15】本発明の実施の形態1においてログ保存部に格納される通信ログのデータ構造例を示す図である。
【図16】本発明の実施の形態1において、CAサーバが、試用版証明書を発行する際に実行される処理を示すフローチャートである。
【図17】本発明の実施の形態1において、CAサーバが、本運用証明書を発行する際に実行される処理を示すフローチャートである。
【図18】本発明の実施の形態1において、サーバアプリが、試用版証明書を要求する際に実行される処理を示すフローチャートである。
【図19】本発明の実施の形態1において、サーバアプリが、本運用証明書を発行要求する際に実行される処理を示すフローチャートである。
【図20】本発明の実施の形態1において、MFPがサーバアプリと通信する際に実行する処理を示すフローチャートである。
【図21】本発明の実施の形態1において、ログ収集サーバが通信ログを送信する処理を示すフローチャートである。
【図22】本発明の実施の形態1における通信システムの処理の流れを示すシーケンス図である。
【図23】本発明の実施の形態1における通信システムの処理の流れを示すシーケンス図である。
【図24】本発明の実施の形態1の変形例1におけるCAサーバの機能構成を示すブロック図である。
【図25】本発明の実施の形態1の変形例1における判断開始条件テーブルのデータ構造例を示す図である。
【図26】本発明の実施の形態1の変形例2におけるCAサーバの機能構成を示すブロック図である。
【図27】本発明の実施の形態1の変形例2における判断結果保存テーブルのデータ構造例を示す図である。
【図28】本発明の実施の形態2におけるCAサーバの機能構成を示すブロック図である。
【図29】本発明の実施の形態2において、CAサーバが実行する証明書失効判断処理を示すフローチャートである。
【図30】本発明の実施の形態3における通信システムの構成例を示す図である。
【図31】本発明の実施の形態3におけるCAサーバの機能構成を示すブロック図である。
【図32】本発明の実施の形態3におけるサーバアプリの機能構成を示すブロック図である。
【図33】本発明の実施の形態3において、サーバアプリが本運用証明書の発行可否判断を行なう際に実行される処理を示すフローチャートである。
【発明を実施するための形態】
【0023】
本発明の実施の形態について図面を参照しながら詳細に説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰返さない。
【0024】
本発明の実施の形態において、サーバアプリケーションは、入手しやすい状態とされており、通信装置(たとえば一般的なパーソナルコンピュータ)は、サーバアプリケーションを自由にインストールすることができる。
【0025】
サーバアプリケーションをインストールした通信装置(以下「管理サーバ」という)が、MFPなどの画像処理装置と通信するためには、認証用に電子証明書が必要となる。本実施の形態では、管理サーバから電子証明書の発行要求があると、認証局(認証装置)と呼ばれる証明書発行装置(以下「CA(Certificate Authority)サーバ」という)は、管理サーバの正当性を判断することなく無条件に電子証明書を発行する。したがって、管理サーバは、すぐに、電子証明書を用いた通信により画像処理装置の管理を開始することができる。ただし、サーバアプリケーションのインストール時に電子証明書が発行された直後の管理サーバは、所定の通信制限が設定されている。
【0026】
本実施の形態の通信システムは、サーバアプリケーションの運用を監視する監視装置を含んでおり、当該監視装置は、管理サーバに対して電子証明書が発行された後の所定のタイミングで、少なくとも管理サーバの使用実績を判定することで管理サーバの正当性を判定する。そして、その判定結果に応じて、管理サーバの通信制限を変更(緩和または厳しく)することができる。したがって、本実施の形態の通信システムによれば、正しく運用されていない管理サーバを排除することができる。
【0027】
以下に、具体的な実施の形態について説明する。なお、以下の説明では、サーバアプリケーションがインストールされた管理サーバを、便宜上「サーバアプリ」という。
【0028】
[実施の形態1]
<構成について>
はじめに、本実施の形態における通信システムおよび各装置の構成例について説明する。
【0029】
(通信システムの概略構成)
図1は、本発明の実施の形態1における通信システムの構成例を示す図である。
【0030】
図1を参照して、本実施の形態における通信システムは、各ノードの正当性を証明するための電子証明書を発行するCAサーバ20と、管理サーバであるサーバアプリ30と、サーバアプリ30と通信する1台以上のMFP40と、MFP40と通信し、サーバアプリ30とMFP40間の通信ログ(通信履歴)を取得するログ収集サーバ50とを含む。サーバアプリ30とMFP40とは、同一のイントラネット12上に存在している。CAサーバ20とサーバアプリ30、また、MFP40とログ収集サーバ50は、インターネット10を介して通信される。
【0031】
本実施の形態において、CAサーバ20が、上述の監視装置として機能する。つまり、CAサーバ20は、サーバアプリ30を監視する機能を有している。
【0032】
なお、ログ収集サーバ50は、イントラネット12上にあってもよい。つまり、たとえば、MFP40を利用する顧客の会社内に、ログ収集サーバ50が設置されてもよい。または、ログ収集サーバ50は、監視装置としても機能するCAサーバ20と、同一の装置であってもよい。つまり、CAサーバ20は、MFP40から直接、通信ログを収集してもよい。その場合、ログ収集サーバ50は、通信システムに含まれなくてよい。
【0033】
また、サーバアプリ30は、インターネット10上に存在してもよい。つまり、インターネット10上のサービスとして、サーバアプリ30の機能が提供されてもよい。または、サーバアプリ30は、MFP40のうち1台と同一であってもよい。つまり、MFP40に、サーバアプリケーションがインストールされていてもよい。
【0034】
なお、本実施の形態では、画像処理装置の全てがMFPとして説明するが、限定的ではなく、これらの全てまたは一部は、たとえば複写機、ファクシミリ装置、スキャナ装置などであってもよい。
【0035】
(各装置のハードウェア構成)
図2は、本発明の実施の形態1に係るCAサーバ20のハードウェア構成を模式的に示す図である。図3は、本発明の実施の形態1に係るサーバアプリ30のハードウェア構成を模式的に示す図である。図4は、本発明の実施の形態1に係るMFP40のハードウェア構成を模式的に示す図である。図5は、本発明の実施の形態1に係るログ収集サーバ50のハードウェア構成を模式的に示す図である。
【0036】
図2を参照して、CAサーバ20は、当該CAサーバ20の動作を全体的に制御するCPU21、CPU21のワークエリアとして機能するRAM(Random Access Memory)22、プログラムやデータなどを記憶するROM(Read Only Memory)23、ユーザからの指示を受付けるためのキーボードなどの入力部24、インターネット10などのネットワークを介して他装置と通信するための通信インターフェイス25、各種情報を表示するためのモニタ26、プログラムやファイルを記憶するハードディスクを備えるハードディスク装置(HDD)27、および、着脱可能なCD−ROM等の記録媒体28Aにアクセスするメディアドライブ28を備えている。
【0037】
サーバアプリ30およびログ収集サーバ50のハードウェア構成も、CAサーバ20と同様であってよい。図3を参照して、サーバアプリ30は、CPU31、RAM32、ROM33、入力部34、通信インターフェイス35、モニタ36、HDD37、記録媒体38Aにアクセスするメディアドライブ38を備えている。図5を参照して、ログ収集サーバ50は、CPU51、RAM52、ROM53、入力部54、通信インターフェイス55、モニタ56、HDD57、記録媒体58Aにアクセスするメディアドライブ58を備えている。各デバイスの機能は、CAサーバ20において説明した機能と同様であるので説明は繰返さない。
【0038】
図4を参照して、各MFP40は、制御部41と、メモリ部42と、画像読取部43と、プリント部44と、通信インターフェイス45と、操作パネル部46と、記憶部47とを含む。
【0039】
制御部41は、代表的にCPUなどの演算装置から構成され、プログラムを実行することで本実施の形態に従う監視処理を実現する。メモリ部42は、代表的にDRAM(Dynamic Random Access Memory)などの揮発性の記憶装置であり、制御部41で実行されるプログラムやプログラムの実行に必要なデータなどを保持する。画像読取部43は、原稿を読み取って画像を取得する。プリント部44は、紙媒体などへの印刷処理を行なう。プリント部44は、プリント処理に係るハードウェア構成に加えて、各部の作動を制御するための制御装置をも含む。
【0040】
通信インターフェイス45は、イントラネット12内でサーバアプリ30との間でデータを送受信したり、インターネット10を介してログ収集サーバ50との間でデータを送受信したりする。通信インターフェイス45は、たとえば、LANアダプタおよびそれを制御するドライバソフトなどを含む。操作パネル部46は、たとえば、液晶表示装置やタッチパネルなどから構成される表示パネルと、複数の操作ボタンとを含む。記憶部47は、代表的にハードディスク装置やフラッシュメモリなどの不揮発性の記憶装置であり、制御部41の動作のためのプログラムや各種データを格納する。
【0041】
各MFP40は、さらに、着脱可能なCD−ROM(Compact Disk Read Only Memory)等の記録媒体にアクセス可能なメディアドライブ(図示せず)を含んでもよい。
【0042】
(CAサーバ20の機能構成)
図6は、本発明の実施の形態1におけるCAサーバ20の機能構成を示すブロック図である。
【0043】
図6を参照して、CAサーバ20は、通信部201と、証明書発行部202と、CRL(Certificate Revocation List)発行部203と、判断部204と、ログ収集部205と、証明書管理テーブル206と、条件判断テーブル207とを含む。
【0044】
通信部201は、ネットワーク上の他装置と通信する。具体的には、サーバアプリ30およびログ収集サーバ50との間でデータの送受信を行なう。通信部201は、図2に示した通信インターフェイス25に相当する。
【0045】
証明書発行部202は、電子証明書を発行する。典型的には、証明書発行部202は、公開鍵基盤(PKI:Public Key Infrastructure)に基づくデジタル署名を付した証明書を発行する。電子証明書は、公開鍵基盤のうち、たとえば、ITU−T(International Telecommunication Union Telecommunication Standardization Sector)によって定められているX.509勧告に従う構成をとるものとする。電子証明書のデータ構造例については、図8を参照して後述する。
【0046】
本実施の形態において、証明書発行部202は、サーバアプリ30に対し、2種類の電子証明書すなわち、試用版証明書および本運用証明書を、条件に応じて発行する。
【0047】
CRL発行部203は、CRLを生成し、生成したCRLを発行する処理を行なう。CRLは、有効期間内に失効させられた電子証明書の一覧であり、電子証明書を受取った装置は、CRLと照合することにより、受取った電子証明書が現在も有効であるかどうかを確認することができる。
【0048】
証明書管理テーブル206は、証明書発行部202により発行された電子証明書を管理する。証明書管理テーブル206は、たとえば、図2に示したハードディスク27に含まれる。
【0049】
図7は、証明書管理テーブル206のデータ構造例を示す図である。証明書管理テーブル206に格納される各管理データは、たとえば、シリアル番号、発行先、発行者、有効期間の開始日時、有効期間の終了日時、利用目的、試用期間であるか否かの情報、および、失効済みであるか否かの情報を含む。
【0050】
試用期間の項目が「YES」の管理データは、管理対象の証明書の種類が試用版であることを示す。試用期間の項目が「NO」の管理データは、管理対象の証明書の種類が本運用の証明書であることを示す。
【0051】
ここで、試用版証明書と本運用証明書との違いの1つは、試用版証明書のほうが、有効期間が短い点である。たとえば、図7の証明書管理テーブル206に示されるように、試用版証明書の有効期間は1週間であるのに対し、本運用の証明書は3年の有効期間が設定されている。このように、本実施の形態では、試用版証明書の有効期間が本運用証明書よりも短く設定されることで、サーバアプリ30に対して通信制限が設定される。なお、通信制限の種類は、証明書の有効期間に限定されず、たとえば、試用期間の間の有効な通信回数や通信先を通信制限として設定してもよい。
【0052】
また、本実施の形態では、試用版証明書と本運用証明書との違いの他の1つとして、利用目的の項目に示されるように、試用版証明書は使用用途が制限されてもよい。つまり、本運用証明書は、認証および暗号化(「認証/暗号化」)を目的として使用され得るが、試用版証明書は、認証用に限定されてもよい。
【0053】
失効済みの項目が「YES」の管理データは、管理対象の証明書が失効されたことを示すものであり、失効のフラグを立てた状態で失効済みの電子証明書の管理データは、保存される。なお、有効期間の終了日時が過ぎた時点で当該管理データを消去するようにしても良い。
【0054】
図8は、本発明の実施の形態1における電子証明書の記載内容の一例を示す図である。上記したように、本実施の形態における電子証明書は、X.509形式に従った複数の項目(シリアル番号、有効期間開始/終了日時、など)を含んでおり、各項目には、その証明書に特有のデータが格納される。
【0055】
再び図6を参照して、ログ収集部205は、通信部201を介して、ログ収集サーバ50が収集した通信ログを収集する。判断部204は、サーバアプリ30の正当性を判断するために、サーバアプリ30の使用実績および不正通信の有無を判断する。これにより、サーバアプリ30に設定された通信制限を緩和するか否か、つまり、本運用証明書を発行するか否かが決定される。本実施の形態では、条件判断テーブル207と、ログ収集部205が収集した通信ログとに基づいて、サーバアプリ30の正当性が判断される。判断部204による判断結果は、証明書発行部202に出力される。
【0056】
図9は、本発明の実施の形態1における条件判断テーブル207の内容例を示す図である。条件判断テーブル207は、サーバアプリ30が正しく運用されていることを示す複数の条件、すなわち、本運用証明書の発行を許可するのに必要な条件を予め格納する。条件判断テーブル207は、たとえば、図2に示したハードディスク27に含まれる。
【0057】
条件判断テーブル207には、本運用証明書の発行許可条件として、サーバアプリ30の使用実績を判断するための使用頻度を示す条件、および、サーバアプリ30の不正通信の有無を示す条件が含まれる。
【0058】
本実施の形態では、条件No.1として、「サーバアプリの通信回数が1日に10回以上、300回未満」が設定されている。10回以上との条件は、使用実績を判断するための条件であり、300回未満との条件は、不正通信(不正利用)の有無を判断するための条件である。20台のMFPを管理するサーバアプリが各MFPと毎日4回通信すると設定されているとすると、1日の通信回数は平均80回となるが、これを大きく超える回数の通信があった場合は、不正な通信である可能性が高いからである。
【0059】
条件No.3として設定された「サーバアプリに接続するMFP数が5台以上」という条件は、使用実績を判断するための条件である。他の条件No.2,4〜8は、不正通信の有無を判断するための条件として設定されている。具体的には、「サーバアプリの通信データ量が1回10MB未満」(条件No.2)、「証明書認証失敗回数0回」(条件No.4)、「証明書認証成功回数10回以上」(条件No.5)、「所定の通信プロトコル(たとえばHTTP(HyperText Transfer Protocol)/FTP(File Transfer Protocol)/SMTP(Simple Mail Transfer Protocol))のみ」(条件No.6)、「所定の種類のリクエスト(たとえば、消耗品残量取得、使用量取得、故障情報取得)のみ」(条件No.7)、「リクエストエラー回数20回未満」(条件No.8)が設定されている。
【0060】
なお、条件判断テーブル207には、これらのうち一部のみが格納されてもよい。ただし、サーバアプリ30の使用実績を判断するための条件は少なくとも1つ格納されることが望ましい。
【0061】
上述の証明書発行部202、CRL発行部203、判断部204およびログ収集部205の機能は、図2に示したCPU21がソフトウェアを実行することで実現されてよい。たとえば、これらの機能部それぞれに対応するモジュールを含んだプログラムがハードディスク27に格納されている。なお、これらのうちの少なくとも1つは、ハードウェアで実現されてもよい。
【0062】
(サーバアプリ30の機能構成)
図10は、本発明の実施の形態1におけるサーバアプリ30の機能構成を示すブロック図である。
【0063】
図10を参照して、サーバアプリ30は、通信部301と、証明書保存部302と、証明書リクエスト部303とを含む。
【0064】
通信部301は、ネットワーク上の他装置と通信する。具体的には、CAサーバ20およびMFP40との間でデータの送受信を行なう。通信部301は、図3に示した通信インターフェイス35に相当する。
【0065】
証明書保存部302は、CAサーバ20より発行された電子証明書すなわち、試用版証明書または本運用証明書を保存する。証明書保存部302は、たとえば、図3に示したハードディスク37に含まれてよい。
【0066】
証明書リクエスト部303は、所定のタイミングで、試用版証明書および本運用証明書の発行要求を生成し、各証明書の発行要求を通信部301を介してCAサーバ20に送信する。証明書リクエスト部303の機能は、図3に示したCPU31がソフトウェアを実行することにより実現されてよい。たとえば、証明書リクエスト部303に対応するモジュールを含んだプログラムがハードディスク37に格納されている。
【0067】
(MFP40の機能構成)
図11は、本発明の実施の形態1におけるMFP40の機能構成を示すブロック図である。
【0068】
図11を参照して、MFP40は、通信部401と、証明書保存部402と、通信判断部403と、通信ログ保存部404と、通信ログ出力部405と、判断ポリシーテーブル406とを含む。
【0069】
通信部401は、ネットワーク上の他装置と通信する。具体的には、サーバアプリ30およびログ収集サーバ50との間でデータの送受信を行なう。通信部401は、図4に示した通信インターフェイス45に相当する。
【0070】
証明書保存部402は、通信部401を介してサーバアプリ30より受信した電子証明書を一時保存する。証明書保存部402は、たとえば、図4に示したメモリ部42に含まれてよい。
【0071】
通信判断部403は、判断ポリシーテーブル406に基づいて、証明書保存部402に一時保存したサーバアプリ30の電子証明書(試用版証明書もしくは本運用証明書)、および、リクエストの種類の正当性を検証することで、サーバアプリ30との通信の可否を判断する。
【0072】
図12は、判断ポリシーテーブル406の一例を示す図である。判断ポリシーテーブル406は、サーバアプリ30との通信が可能と判断するための複数のポリシーを予め格納する。判断ポリシーテーブル406は、たとえば、サーバアプリ図4に示した記憶部47に含まれる。
【0073】
通信判断部403により通信可能と判断されると、リクエストの種類に応じた情報が、通信部401を介してサーバアプリ30に送信される。
【0074】
通信ログ保存部404は、サーバアプリ30との通信が生じたときに、その内容を示す通信ログ(通信履歴)を保存する。通信ログ保存部404は、たとえば、図4に示した記憶部47に含まれてよい。
【0075】
通信ログ出力部405は、通信ログ保存部404に保存された通信ログを通信部401を介してログ収集サーバ50に送信する。
【0076】
上述の通信判断部403および通信ログ出力部405の機能は、制御部41がソフトウェアを実行することにより実現されてもよい。たとえば、これらの機能部それぞれに対応するモジュールを含んだプログラムが記憶部47に格納されている。なお、これらのうち少なくとも1つについてはハードウェアで実現されてもよい。
【0077】
なお、MFP40も、自身の電子証明書を保持し、サーバアプリ30と通信する際には、互いの電子証明書を利用したセキュア通信を行なってもよい。
【0078】
(ログ収集サーバ50の機能構成)
図13は、本発明の実施の形態1におけるログ収集サーバ50の機能構成を示すブロック図である。
【0079】
図13を参照して、ログ収集サーバ50は、通信部501と、ログ収集部502と、ログ保存部503と、ログ出力部504と、MFP管理テーブル505とを含む。
【0080】
通信部501は、ネットワーク上の他装置と通信する。具体的には、CAサーバ20およびMFP40との間でデータの送受信を行なう。通信部501は、図5に示した通信インターフェイス55に相当する。
【0081】
ログ収集部502は、MFP管理テーブル505に登録されたMFP40からの通信ログを収集する。
【0082】
図14は、MFP管理テーブル505のデータ構造例を示す図である。MFP管理テーブル505は、ログ収集対象のMFP40の識別情報およびログ取得タイミングを管理する。具体的には、各管理データは、たとえば、シリアル番号、利用者名、機種名、登録日時、および、ログ取得時間を含む。なお、サーバアプリ30とMFP40間の通信がある度にMFP40から自動的に通信ログが送信される場合には、ログ取得時間の項目は不要である。
【0083】
MFP管理テーブル505は、たとえば、図5に示したハードディスク57に含まれる。なお、MFP管理テーブル505への管理データの登録方法については特に問わない。
【0084】
ログ保存部503は、ログ収集部502により収集された通信ログを保存する。
図15は、本発明の実施の形態1においてログ保存部503に格納される通信ログのデータ構造例を示す図である。ここでは、通信システムに複数のサーバアプリが含まれる例が示されている。ログ保存部503もまた、ハードディスク57に含まれてよい。
【0085】
図15を参照して、各通信ログは、インデックス(Index)により管理され、日時、通信元(サーバアプリ)のIPアドレス、通信先(MFP)のIPアドレス、通信元のMACアドレス、通信元証明書の識別情報、通信プロトコル、リクエストの種類、正常終了の有無、エラーの種類、および、データ量を含む。
【0086】
なお、本実施の形態では、通信元のサーバアプリを特定するために、IPアドレスとMACアドレスとの両方を通信ログに含めることとしたが、これらのうちいずれか一方のみが含まれてもよい。ただし、IPアドレスは固定でない場合があるため、両方のアドレスを通信ログに含めることが望ましい。また、通信元のサーバアプリは、通信元証明書だけでも特定可能であるため、通信ログに、通信元のアドレス自体が含まれない構成であってもよい。
【0087】
ログ出力部504は、通信部501を介してCAサーバ20から通信ログの要求を受信すると、ログ保存部503に保存された通信ログのうち、証明書発行の可否が判断されるサーバアプリ30の通信ログを抽出する。抽出された通信ログは、通信部501を介してCAサーバ20に送信される。
【0088】
上述のログ収集部502およびログ出力部504の機能は、図5に示したCPU51により実現されてよい。たとえば、これらの機能部それぞれに対応するモジュールを含んだプログラムがハードディスク57に格納されている。なお、これらのうちの少なくとも1つについては、ハードウェアで実現されてもよい。
【0089】
<動作について>
次に、本実施の形態における各装置の動作について説明する。
【0090】
(CAサーバ20の動作)
図16は、本発明の実施の形態1において、CAサーバ20が、試用版証明書を発行する際に実行される処理を示すフローチャートである。
【0091】
図16を参照して、通信部201は、サーバアプリ30から、試用版証明書の発行要求を受信する(ステップS2)。サーバアプリ30が、サーバアプリケーションをインストールした後初めて証明書の発行を要求する場合には、試用版証明書の発行要求が送信される。
【0092】
試用版証明書の発行要求を受信すると、証明書発行部202は、試用版証明書の発行処理を実行する(ステップS4)。具体的には、証明書発行部202は、通信部201が受信した発行要求に基づいて、試用版証明書を生成する。試用版証明書の構成は、図8に示すようなものであってよい。証明書発行部202はまた、証明書管理テーブル206に、生成した試用版証明書の管理データを登録する。証明書発行部202は、生成した試用版証明書を、通信部201を介して、サーバアプリ30に対して送信する。
【0093】
図17は、本発明の実施の形態1において、CAサーバ20が、本運用証明書を発行する際に実行される処理を示すフローチャートである。
【0094】
図17を参照して、通信部201は、サーバアプリ30から、本運用証明書の発行要求を受信する(ステップS12)。本運用証明書の発行要求を受信すると、まず、サーバアプリ30の試用版証明書が証明書管理テーブル206に登録されているかが確認された後、ログ収集部205は、通信部201を介して、ログ収集サーバ50からサーバアプリ30とMFP40間の通信ログを取得(収集)する(ステップS14)。
【0095】
判断部204は、図9に示したような条件判断テーブル207に記録された条件に基づいて、サーバアプリ30とMFP40間の通信ログから、サーバアプリ30に対する本運用証明書発行の可否を判断する(ステップS16)。つまり、サーバアプリ30が正常に運用されているかどうかをチェックする。
【0096】
具体的には、たとえば、条件判断テーブル207に記録された複数の条件のうち1つでも満たさないものがあれば、通信不能と判断してもよい。あるいは、全ての条件を満たしていないくても所定数以上の条件を満たしていれば、通信可能と判断してもよい。
【0097】
ここで、条件判断テーブル207と通信ログとに基づいた、本運用証明書の発行可否判断の具体例について説明する。
【0098】
たとえば、1日に100回の通信がサーバアプリ30から来ている場合は、条件No.1を満たすが、1日に2回の通信しかサーバアプリ30から来ていない場合は、条件No.1を満たさないので、発行不可と判断する。また、サーバアプリ30に接続するMFP40の数が5台未満である場合(つまり、5台未満のMFP40との通信ログしかない場合)には、条件No.3を満たさないので、発行不可と判断する。このような判断をすることにより、ほとんど利用されていないサーバアプリを排除することができる。
【0099】
また、1日に1000回の通信がサーバアプリ30から来ている場合は、条件No.1を満たさないので、発行不可と判断する。これにより、不正な動作をしているサーバアプリを排除することができる。
【0100】
また、サーバアプリ30の通信データ量が15MBの通信ログがあれば、条件No.2を満たさないので、発行不可と判断する。サーバアプリ30の1回当たりの通信データ量は毎回ほぼ同じ量と想定すると、これを大きく超える通信量の通信があった場合は、不正な通信である可能性が高いからである。これにより、サーバアプリ30が不正なデータを送りつけるなどの不正な操作をした場合に、本運用証明書の発行を拒否することができる。
【0101】
また、証明書認証失敗回数が複数回ある場合や、証明書認証の成功回数が10回未満である場合には、条件No.4,5を満たさないので、発行不可と判断する。サーバアプリ30が、CAサーバ20から発行された証明書を使用しているのであれば、証明書の検証に成功するはずである。そのため、証明書の検証に失敗する場合は、不正なCAサーバから発行された証明書、あるいは改ざんされた証明書を利用した不正な通信である可能性が高いからである。これにより、不正な証明書を使用して通信しようと試みるサーバアプリを排除することができる。
【0102】
また、通信プロトコルが、条件No.6として予め定められているもの以外での通信要求の通信ログがあれば、発行不可と判断する。これにより、使用されるはずのないプロトコルを使用して不正アクセスしようとするサーバアプリ30に対し、本運用証明書の発行を拒否することができる。
【0103】
また、リクエストの種類が、条件No.7として予め定められたもの以外の通信ログがあれば、発行不可と判断する。これにより、不正なリクエストを送信する悪質なサーバアプリを、本運用証明書の発行を拒否することで排除することができる。
【0104】
また、許可されたリクエストの種類であっても、リクエストがエラーとなっている回数が20回以上であれば、条件No.8を満たさないので、発行不可と判断する。数回のエラーであれば、通信によるデータの欠損や、一時的な設定ミス等が考えられるが、数十回のエラーとなると、不正な利用である可能性が高いからである(たとえば、サーバアプリ30から送信されるデータ形式が異なる、等)。これにより、不正な利用を試みるサーバアプリを、本運用証明書の発行を拒否することで排除することができる。
【0105】
ステップS16において本運用証明書の発行が可能と判断された場合(ステップS16において「OK」)、証明書発行部202は、本運用証明書の発行処理を実行する(ステップS18)。具体的には、まず、証明書管理テーブル206に記録されたサーバアプリ30の試用版証明書または本運用証明書要求の情報に基づき、サーバアプリ30の本運用証明書を新たに生成する。本運用証明書では、試用版証明書で設定されていた通信制限(短い有効期限,通信回数など)が解除される。そして、生成した本運用証明書の情報を証明書管理テーブル206に記録し、通信部201を介してサーバアプリ30に対して発行許可通知とともに本運用証明書を送信する。これにより、信頼度が高い(信用できる)サーバアプリ30に対しては、自動的に本運用証明書を発行することができる。
【0106】
これに対し、ステップS16において本運用証明書の発行が不可能と判断された場合には(ステップS16において「NG」)、証明書発行部202は、通信部201を介して、サーバアプリ30に対して本運用証明書の発行拒否通知を送信する(ステップS20)。ここで、CRL発行部203は、サーバアプリ30が現在有している試用版証明書を失効させるため、CRLを生成してもよい。この場合、証明書発行部202は、証明書管理テーブル206に管理されている、サーバ30の試用版証明書の管理データにおける「失効済み」の項目を「No」から「Yes」に書き換える。CRL発行部203は、通信部201を介して、サーバアプリ30およびMFP40に対し、生成したCRLを送信する。これにより、信頼度が低い(信用できない)サーバアプリ30に対しては、試用期間を自動的に終了させることができる。
【0107】
なお、本実施の形態では、本運用証明書の発行が不可と判断された場合、試用期間を終了させることとしたが、試用期間を継続し、経過を観察することとしてもよい。具体的には、証明書発行部202は、元の試用版証明書の情報に基づいて、新たな試用版証明書を生成し、その証明書の管理データを、証明書管理テーブル206に登録してもよい。このようにして生成された新たな試用版証明書は、通信部201を介してサーバアプリ30に送信される。なお、このような処理を行なう場合、CAサーバ20は、たとえば、試用版証明書の発行回数を保持しておき、規定の発行回数に到達した場合に、本運用証明書の発行は不可と判断することとしてもよい。
【0108】
また、本実施の形態では、サーバアプリ30からの本運用証明書の発行要求によって、本運用証明書の発行可否判断を行なうこととしたが、限定的ではない。たとえば、CAサーバ20が、証明書管理テーブル206における試用版証明書の有効期限をチェックし、残りの有効期間が一定値以下(たとえば残り1日)になった場合に、通信ログを取得して、本運用証明書の発行可否判断を行なってもよい。他の変形例については、後の「変形例1」において図24および図25を参照して詳細に説明する。
【0109】
また、本実施の形態では、判断部204において本運用証明書の発行可否判断のみを行なったが、サーバアプリ30の信頼度をさらに判定することとしてもよい。具体的には、たとえば、条件判断テーブル207の条件Noごとに、サーバアプリの信頼度を示すポイント数も記録されており、サーバアプリ30が満たしていると判断された条件Noに対応するポイント数を加算し、その合計ポイントを信頼度として出力してもよい。
【0110】
このような場合、証明書発行部202は、判断部204による信頼度の判定結果に応じて、本運用証明書の有効期間を設定することができる。つまり、信頼度に応じて、試用版証明書で設定されていた通信制限を緩和する度合いを変えてもよい。
【0111】
たとえば、サーバアプリ30の信頼度が第1の閾値(たとえば100を最大とした場合90ポイント)以上と判断された場合には、本運用証明書の有効期間を、最長の期間(たとえば5年)に設定する。信頼度が、第1の閾値よりも低い第2の閾値(たとえば80ポイント)以下と判断された場合には、最大の有効期間よりも短い期間(たとえば4年間)に有効期限を設定してもよい。
【0112】
(サーバアプリ30の動作)
図18は、サーバアプリ30が、試用版証明書を要求する際に実行される処理を示すフローチャートである。
【0113】
図18を参照して、証明書リクエスト部303は、試用版証明書の発行要求を生成し、通信部301を介してCAサーバ20に生成した発行要求を送信する(ステップS32)。試用版証明書の発行要求は、たとえば、ユーザからの指示があった場合に実行されてよい。あるいは、サーバアプリケーションをインストールした後の初回起動時に自動的に生成されてもよい。
【0114】
試用版証明書の発行要求を送信すると、CAサーバ20において無条件に試用版証明書が発行されるため、通信部301を介して試用版証明書が取得(受信)される(ステップS34)。取得された試用版証明書は、証明書保存部302に保存される。
【0115】
図19は、サーバアプリ30が、本運用証明書を発行要求する際に実行される処理を示すフローチャートである。
【0116】
図19を参照して、証明書リクエスト部303は、証明書保存部302に保存されている試用版証明書の有効期限をチェックし、証明書の更新が必要か否かを判断する(ステップS42)。具体的には、試用版証明書の残りの有効期間が閾値以下であるか否かが判断される。このように、有効期間終了以前に証明書リクエストのタイミングが判断されるのは、サーバアプリケーションを使用できない期間を発生させないようにするためである。残りの有効期間が閾値以下と判断された場合(ステップS42においてNO)、ステップS44に進む。それ以外の場合には(ステップS42においてYES)、定期的に証明書の有効期間がチェックされる。
【0117】
ステップS44において、証明書リクエスト部303は、本運用証明書の発行要求を生成する。生成された発行要求が、通信部301を介してCAサーバ20に送信される。
【0118】
次に、CAサーバ20から本運用証明書の発行可否通知を受信する。この通知内容が発行許可である場合(ステップS46において「OK」)、通信部301はCAサーバ20から本運用証明書を受信し、証明書保存部302に本運用証明書を保存する(ステップS48)。
【0119】
これに対し、通知内容が発行拒否である場合(ステップS46において「NG」)、本運用証明書の発行が拒絶されたと判断する(ステップS50)。CAサーバ20からCRLが送信された場合には、それを受信し保存する。本運用証明書の発行が拒絶された場合、証明書保存部302に保存された試用版証明書の有効期限が来るまで、サーバアプリ30は動作し続ける。あるいは、サーバアプリとしての機能を直ちに無効化することとしてもよい。具体的には、サーバアプリ30とMFP40との通信を遮断することとしてもよい。または、サーバアプリ30のデータベースへのアクセスを制限することとしてもよい。
【0120】
(MFP40の動作)
図20は、MFP40がサーバアプリ30と通信する際に実行する処理を示すフローチャートである。
【0121】
図20を参照して、通信部401がサーバアプリ30から証明書および通信要求を受信すると(ステップS62)、通信判断部403は、サーバアプリ30との通信可否を判断する(ステップS64)。具体的には、サーバアプリ30から証明書および通信要求が送信されるたびに、通信判断部403は、判断ポリシーテーブル406に基づいて、サーバアプリ30の証明書(試用版証明書または本運用証明書)を検証する。正当な証明書と判断された場合(ステップS64において「OK」)、サーバアプリ30と通信が行なわれる(ステップS66)。このとき、通信ログ保存部404には、今回の通信ログが保存される(ステップS68)。
【0122】
そして、次に、通信ログ出力部405は、所定個以上の通信ログが保存されたかどうかを判断する(ステップS69)。所定個以上の通信ログが保存されたと判断した場合(ステップS69において「OK」)には、通信ログ出力部405は、通信ログ保存部404に保存された所定個以上の通信ログを、ログ収集サーバ50に対して送信する(ステップS70)。この処理が終わると、ステップS62に戻る。一方、通信ログ出力部405は、所定個以上の通信ログが保存されていないと判断した場合(ステップS69において「NG」)には、通信ログ出力部405は、通信ログを送信することなくステップS62に戻り、通信ログが所定個以上貯まった場合にまとめて通信ログをログ収集サーバ50に対して送信する。当該処理により効率的なデータ通信を実行することが可能となる。
【0123】
ステップS64において、通信不可と判断された場合には(ステップS64において「NG」)、サーバアプリ30との通信を行なうことなく通信ログが保存される(ステップS68)。この場合にも、保存された通信ログは、ログ収集サーバ50に対して随時送信される(ステップ70)。
【0124】
(ログ収集サーバ50の動作)
ログ収集サーバ50のログ収集部502は、通信部501を介してSyslogなどの通信プロトコルでMFP40より随時送信される通信ログを取得すると、取得した通信ログを、ログ保存部503に保存しているものとする。
【0125】
図21は、ログ収集サーバ50が通信ログを送信する処理を示すフローチャートである。
【0126】
図21を参照して、通信部501は、CAサーバ20から、サーバアプリ30とMFP40との間の通信ログの要求を受信する(ステップS82)。この際、判断対象のサーバアプリ30を特定するための情報(たとえば、サーバアプリ30の証明書、IPアドレスまたはMACアドレス)も受信している。
【0127】
通信ログ要求を受信すると、ログ出力部504は、ログ保存部503から、判断対象のサーバアプリ30とMFP40間の通信ログを抽出し、抽出した通信ログを、要求してきたCAサーバ20に送信する(ステップS84)。なお、CAサーバ20に送信する通信ログは、MFP40から取得したログそのままではなく、本運用証明書の発行可否判断に必要なデータのみに整理して送信してもよい。
【0128】
(通信システムにおける処理の流れ)
図22および図23は、本発明の実施の形態1における通信システムの処理の流れを示すシーケンス図である。図22には、試用版証明書に関する処理の流れが示されており、図23には、本運用証明書に関する処理の流れが示されている。
【0129】
図22を参照して、サーバアプリ30から、試用版証明書の発行要求がCAサーバ20に対し送信されると(OP1)、CAサーバ20は試用版証明書を生成する(OP2)。生成された試用版証明書は、発行要求を送信してきたサーバアプリ30に対し送信される(OP3)。サーバアプリ30は、受信した試用版証明書を保存する(OP4)。
【0130】
サーバアプリ30とMFP40との間の通信では、MFP40はサーバアプリ30に対し証明書を要求する(OP11)。サーバアプリ30は、このとき、試用版証明書を送信する(OP12)。MFP40は、送信されてきた試用版証明書の検証を行なう(OP13)。そして、証明書の検証結果をサーバアプリ30に対し送信する(OP14)。証明書の検証結果が通信可能との結果であった場合、サーバアプリ30は、MFP40に対し故障情報、使用量の情報などのリクエストを送信する(OP15)。MFP40は、受信したリクエストの内容に基づいて、リクエスト結果をサーバアプリ30に送信する(OP16)。また、MFP40は、今回の通信ログをログ収集サーバ50に送信する(OP17)。ログ収集サーバ50は、受信した通信ログを保存する(OP18)。
【0131】
図23を参照して、サーバアプリ30は、試用版証明書の有効期限をチェックする(OP21)。有効期限のチェック結果に応じて、本運用証明書の発行要求をCAサーバ20に対し送信する(OP22)。本運用証明書の発行要求を受信したCAサーバ20は、ログ収集サーバ50に対し、通信ログを要求する(OP23)。ログ収集サーバ50は、通信ログをCAサーバ20に送信する(OP24)。CAサーバ20は、受信した通信ログおよび条件判断テーブル207に基づいて、本運用証明書発行の可否を判断する(OP25)。証明書発行が可能と判断された場合には、本運用証明書が生成される(OP26)。生成された本運用証明書は、サーバアプリ30に送信される(OP27)。サーバアプリ30は、CAサーバ20より送信されてきた本運用証明書を保存する(OP28)。
【0132】
以上説明したように、本実施の形態によると、サーバアプリ30のユーザは、サーバアプリケーションのインストール時に煩雑な手続をしなくても、すぐに試用版証明書を利用して、MFP40の管理サーバとしての機能を開始することができる。また、試用版証明書が発行されたサーバアプリ30の実際の通信ログに基づいて、サーバアプリ30がサーバアプリケーションの機能を使っているか、また、不正通信していないかを判断するため、正しく運用されていないサーバアプリを確実に排除することができる。つまり、正しく運用されていないサーバアプリケーションを無効化することができる。
【0133】
なお、サーバアプリに対して、CAサーバから機能の有効化のための、有効期限の短い証明書(キー、チケット)を発行しておくという手法を採用すれば、悪用された場合であってもすぐに有効期限が切れるため証明書を失効する手間が省ける。しかし、このような場合は、サーバアプリケーションの管理者が証明書を何度も更新する手間が発生するという不都合がある。これに対し、本実施の形態のような手法を採用すれば、シームレスに試用版証明書から本運用証明書に更新されるので、サーバアプリ30の管理者の手間が必要なくなるというメリットも生じる。
【0134】
<変形例1>
上記実施の形態1では、サーバアプリからの本運用証明書の発行要求があった場合に、CAサーバにおいて本運用証明書の発行可否を判断したが、試用版証明書の有効期限内のサーバアプリの通信ログより得られる情報に基づき、本運用証明書の発行可否を判断してもよい。
【0135】
図24は、本発明の実施の形態1の変形例1におけるCAサーバ20Aの機能構成を示すブロック図である。
【0136】
図24を参照して、CAサーバ20Aは、図6に示した構成に加えて、判断開始条件テーブル208をさらに含む。また、判断部204およびログ収集部205それぞれに代えて、判断部204Aおよびログ収集部205Aを含む。
【0137】
図25は、本発明の実施の形態1の変形例1における判断開始条件テーブル208のデータ構造例を示す図である。判断開始条件テーブル208は、本運用証明書の発行可否判断を開始する条件を予め格納する。具体的には、たとえば、サーバアプリ30の累積通信回数が100回以上(条件No.1)、サーバアプリ30の通信データ総量が50MB以上(条件No.2)、サーバアプリ30と接続しているMFP40の数が10台以上(条件No.3)という条件が格納される。
【0138】
判断開始条件テーブル208は、図2に示したハードディスク27に含まれてよい。
本変形例においては、ログ収集部205Aは、一定期間(たとえば1日)ごとに、ログ収集サーバ50から、試用版証明書の有効期限内のサーバアプリ30とMFP40間の通信ログを取得する。サーバアプリ30が試用版証明書の有効期限内かどうかは、証明書管理テーブル206より判断できる。
【0139】
判断部204Aは、取得した通信ログと、判断開始条件テーブル208に基づいて、本運用証明書の発行可否判断を開始すべきかを判断する。判断開始条件を満たしている場合には、条件判断テーブル207と取得した通信ログとに基づいて、上記実施の形態1で示したように本運用証明書の発行の可否判断を行なう。
【0140】
なお、本変形例においても、判断部204Aは、実施の形態1での処理と同様に、試用期間の有効期限が切れる直前までに判断開始条件テーブル208の条件を満たさなかった場合にも、条件判断テーブル207と取得した通信ログとに基づいて、本運用証明書の発行の可否を判断することが望ましい。この場合、サーバアプリ30側からの要求を契機として判断を開始してもよいし、CAサーバ20Aにおいて、証明書管理テーブル206の試用版証明書の有効期限を検出することで判断を開始してもよい。
【0141】
このように、本変形例によれば、サーバアプリ30の通信ログより得られる情報が、使用実績があると推定できるような条件を満たしていれば、本運用証明書の発行可否判断を開始する。したがって、正しく運用されているサーバアプリ30に対しては、設定されていた試用期間を短縮して本運用を開始させることができる。
【0142】
<変形例2>
CAサーバは、サーバアプリケーションが再インストールされた場合や、本運用証明書の有効期限切れにより証明書の再発行が必要になった場合などに、過去の本運用証明書の発行可否の判断結果をさらに利用して本運用証明書の発行可否を判断してもよい。
【0143】
図26は、本発明の実施の形態1の変形例2におけるCAサーバ20Bの機能構成を示すブロック図である。
【0144】
図26を参照して、CAサーバ20Bは、図6に示した構成に加えて、判断結果保存テーブル209をさらに含む。また、判断部204に代えて、判断部204Bを含む。
【0145】
図27は、判断結果保存テーブル209のデータ構造例を示す図である。判断結果保存テーブル209は、判断部204Bでの判断結果を保存する。判断結果保存テーブル209では、各判断結果データは、シリアル番号が付与され、発行先、発行者、判断日時、判断結果、および、理由の項目を含む。
【0146】
判断結果保存テーブル209は、図2に示したハードディスク27に含まれてよい。
本変形例において、判断部204Bは、本運用証明書の発行可否を判断するときに、条件判断テーブル207と通信ログとに基づいた判断に加え、判断結果保存テーブル209に保存された過去の判断結果から、証明書発行の可否を判断する。
【0147】
たとえば、判断対象のサーバアプリ30に対し、過去に3回以上発行OKと判断されていた場合には、通信ログによる判断を行なうことなく本運用証明書の発行を可能と判断する。または、シリアル番号5に示されるように、判断結果NGの理由として通信データ量が多すぎるという結果が記録されていれば、通信ログを判断することなく本運用証明書の発行を不可と判断してもよい。
【0148】
このように、本変形例では、過去の判断結果を利用することで、定期的に本運用証明書の発行可否を判断するような場合であっても、毎回、通信ログによる判断を行なう必要がないので、通信量の削減ならびに、CPU21の処理負荷を軽減することができる。
【0149】
なお、本変形例においては、証明書発行可否の判断時に、判断結果保存テーブル209より読みだした過去の判断結果に応じて、条件判断テーブル207の判断条件を変更することもできる。
【0150】
一例として、サーバアプリケーションが再インストールされた場合や、本運用証明書の有効期限切れにより証明書の再発行が必要になった場合に、前回に発行可能と判断された場合は、判断条件を緩くする。具体的には、たとえば、通常(デフォルト)の判断条件が「サーバアプリの通信回数が1日10回以上」のとき、前回は発行許可と判断されていれば、「サーバアプリの通信回数が1日5回以上」に条件を変更する。
【0151】
あるいは、前回に発行拒否と判断された場合には、判断条件を厳しくする。例えば、通常の判断条件が、「サーバアプリの接続MFP数が5台以上」のとき、前回は発行拒否と判断されていれば、「サーバアプリの接続MFP数が10台以上」に条件を変更する。
【0152】
このような変更を実現するためには、たとえば、サーバアプリ30ごとに、条件判断テーブル207が設けられる。
【0153】
なお、試用版証明書の残りの有効期間が一定値以下となってから試用版証明書の有効期間が終わるまでの間、定期的に発行可否を判断し続けるような場合に、本変形例を適用してもよい。このような場合、試用期間の有効期限まで、本運用証明書の発行可否判断をし続けるため、有効期限切れ間際に不正通信を行なったサーバアプリをも排除することができる。
【0154】
または、上述したように、一度、本運用証明書の発行が不可と判断されたとしても、新たな試用版証明書を発行して経過を観察するような形態の場合に、本変形例が適用されてもよい。
【0155】
[実施の形態2]
次に、本発明の実施の形態2について説明する。
【0156】
上記実施の形態1およびその変形例1,2では、サーバアプリに対して、試用版証明書と本運用証明書との2種類の証明書を発行することで、MFPとの通信制限を変更するものであった。これに対し、本実施の形態では、本運用証明書に相当する1種類の証明書のみサーバアプリに発行され、後に、証明書の失効判断が行なわれる。
【0157】
以下に、上記実施の形態1との相違点について説明する。
図28は、本発明の実施の形態2におけるCAサーバ20Cの機能構成を示すブロック図である。
【0158】
図28を参照して、CAサーバ20Cは、図6に示した構成に加え、定期チェック部210をさらに含む。また、証明書発行部202および判断部204それぞれに代えて、証明書発行部202Cおよび判断部204Cを含む。定期チェック部210の機能は、図2に示したCPU21により実現されてよい。
【0159】
証明書発行部202Cは、サーバアプリ30からはじめに(サーバアプリケーションのインストール時に)証明書発行要求がくると、通信制限が設定されていない通常の電子証明書を無条件で発行する。
【0160】
定期チェック部210および判断部204Cの処理については、図29のフローチャートを参照して説明する。
【0161】
図29は、本発明の実施の形態2において、CAサーバ20Bが実行する証明書失効判断処理を示すフローチャートである。
【0162】
図29を参照して、定期チェック部210は、証明書発行日からの経過日数をチェックし、証明書発行日から所定の期間(たとえば1週間)経過しているか否かを判断する(ステップS102)。規定日数が経過していれば(ステップS102においてYES)、定期チェック部210は判断部204Cに失効可否判断を行なうよう指示する。
【0163】
判断部204Cが、ログ収集部205にログ収集を要求すると、ログ収集部205は、通信部201を介して、ログ収集サーバ50からサーバアプリ30とMFP40との間の通信ログを取得(収集)する(ステップS104)。
【0164】
判断部204Cは、条件判断テーブル207に記録された条件および取得した通信ログに基づいて、サーバアプリ30の証明書の失効の可否を判断する(ステップS106)。これにより、サーバアプリ30に設定された通信制限を緩和するか否か、つまり、証明書の継続利用を許可するか否かが決定される。なお、ここでの判断方法も、実施の形態1における、本運用証明書の発行可否判断と同様であってよい。
【0165】
判断部204Cにより証明書の利用拒否と判断された場合には(ステップS106において「NG」)、CRL発行部203が、証明書管理テーブル206に失効情報を記録し、CRLを生成する(ステップS110)。そして、生成したCRLを、通信部201を介してサーバアプリ30およびMFP40に対し送信する(ステップS112)。
【0166】
これに対し、判断部204Cにより証明書の利用許可と判断された場合には(ステップS106において「OK」)、判断部204Cは、通信部201を介して、証明書の利用許可通知をサーバアプリ30に対し送信する(ステップS108)。
【0167】
このように、本実施の形態によると、CAサーバ20は、試用版証明書と本運用証明書の2種類の証明書を生成する必要はないので、処理負担を軽減しつつ、実施の形態1と同様の効果を奏することができる。
【0168】
[実施の形態3]
次に、本発明の実施の形態3について説明する。
【0169】
上記各実施の形態では、電子証明書を発行するCAサーバにおいて、サーバアプリケーションの不正な運用を排除するための処理を実行した。これに対し、本実施の形態では、サーバアプリ自身において、サーバアプリケーションの不正な運用を排除するための処理を実行する。つまり、本実施の形態では、サーバアプリ自身が監視装置として機能する。
【0170】
以下に、上記実施の形態1との相違点について説明する。
(構成について)
図30は、本発明の実施の形態3における通信システムの構成例を示す図である。
【0171】
図30を参照して、本実施の形態における通信システムは、上記実施の形態1で示したようなログ収集サーバ50を含まない。また、CAサーバ20およびサーバアプリ30それぞれに代えて、CAサーバ20♯およびサーバアプリ30♯を含む。
【0172】
図31は、本発明の実施の形態3におけるCAサーバ20♯の機能構成を示すブロック図である。
【0173】
CAサーバ20♯は、図6に示したCAサーバ20の構成のうち、判断部204、ログ収集部205および条件判断テーブル207を含まない。したがって、CAサーバ20♯は、通信部201、証明書発行部202、CRL発行部203および証明書管理テーブル206を含む。
【0174】
図32は、本発明の実施の形態3におけるサーバアプリ30♯の機能構成を示すブロック図である。
【0175】
サーバアプリ30♯は、図10に示したサーバアプリ30の構成に加え、通信ログ取得部305、通信ログ保存部306、証明書発行判断部307および条件判断テーブル308をさらに含む。通信ログ取得部305の機能は、実施の形態1におけるログ収集サーバ50のログ収集部502の機能に相当する。通信ログ保存部306の機能は、ログ収集サーバ50のログ保存部503の機能に相当する。証明書発行判断部307の機能は、CAサーバ20の判断部204の機能に相当する。条件判断テーブル308は、CAサーバ20の条件判断テーブル207に相当する。したがって、これらの機能部の詳細な説明は繰返さない。
【0176】
通信ログ保存部306および条件判断テーブル308は、ともに、図3に示したハードディスク37に含まれてよい。また、通信ログ取得部305および証明書発行判断部307の機能は、CPU31により実現されてよい。
【0177】
なお、本実施の形態では、サーバアプリ30#自身において、サーバアプリケーションの不正な運用を排除するための処理を実行するため、通信ログ取得部305、通信ログ保存部306、証明書発行判断部307および条件判断テーブル308は、保護部304によって保護されていることが望ましい。つまり、保護部304外から保護部304内へのアクセスおよび保護部304内の改変はできないようにすることが望ましい。保護の方法としてはたとえば次のようなものが考えられる。第1の例として、保護している部分のメモリイメージをハッシュ値として保存する。第2の例として、保護部は、保護している部分用に仮想環境を設ける。保護部304は、保護している部分用に別ハードウェアを設ける。また、判断の内容が通信部301で加工されないように、通信パケットにもハッシュ値を付与したり、判断の内容を暗号化したりして、パケット自体を改ざんできないようにすることも望ましい。
【0178】
本実施の形態では、図3に示したCPU31がソフトウェアプログラムを実行することにより実現されてよい。たとえば、図10で説明したように、証明書保存部302,303と同様に、保護部304内の各機能部に対応するモジュールを含んだプログラムがハードディスク37に格納されていても良く、当該プログラムを実行することにより各機能が実現されるようにすることが可能である。ハードディスク37への格納は、例えば、記録媒体38Aに格納されたソフトウェアをメディアドライブ38を用いてアクセスすることにより格納しても良いし、あるいは、通信インターフェース35を用いて外部からインターネット10を介してインストールしても良い。
【0179】
また、サーバアプリ30#を形成するために保護部304内の各機能部に対応するモジュールを耐タンパー性の専用デバイスとして予め組み込むようにすることも可能であるし、あるいは、USB(Universal Serial Bus)端子等を用いて当該専用デバイスを外付けで接続するようにしても良い。
【0180】
(動作について)
本発明の実施の形態3においても、まず、サーバアプリ30♯は、試用版証明書を要求して、当該試用版証明書を取得するが、当該処理は、図18で説明したのと同様であるのでその詳細な説明は繰り返さない。
【0181】
図33は、本発明の実施の形態3において、サーバアプリ30♯が本運用証明書の発行可否判断を行なう際に実行される処理を示すフローチャートである。
【0182】
図33を参照して、証明書発行判断部307は、自装置の証明書保存部302に保存された試用版証明書の有効期限をチェックし、証明書の更新が必要か否かを判断する(ステップS202)。ここでの処理は、図19に示したステップS42の処理と同様であってよい。
【0183】
試用版証明書の残りの有効期間が閾値以下と判断された場合(ステップS202においてNO)、証明書発行判断部307は、通信ログ保存部306から自装置とMFP40間の通信ログを読出す(ステップS204)。本実施の形態においては、通信ログ取得部305は、MFP40と通信する度に通信ログを取得し、通信ログ保存部306に保存しているものとする。
【0184】
証明書発行判断部307は、通信ログと、条件判断テーブル308に基づいて、本運用証明書発行の可否を判断する(ステップS206)。ここでの可否判断は、図17のステップS16に示した処理と同様であってよい。本運用証明書発行可能と判断された場合(ステップS206において「OK」)、証明書発行判断部307は、通信部301を介して、CAサーバ20に対し本運用証明書発行を要求する(ステップS208)。その後、通信部301は、CAサーバ20♯より、本運用証明書の発行通知を受信し、発行された本運用証明書を証明書保存部302に保存する(ステップS210)。
【0185】
これに対し、本運用証明書の発行が不可能と判断された場合には(ステップS206において「NG」)、証明書発行判断部307は、通信部301を介して、CAサーバ20♯に対して、試用版証明書の失効を要求する(ステップS212)。その後、通信部301は、CAサーバ20♯より試用版証明書の失効通知を受信し、発行されたCRLを受信する(ステップS214)。
【0186】
なお、本実施の形態において、CAサーバ20♯は、本運用証明書の発行要求を受信すると、証明書発行部202は、(発行可否の判断を行なうことなく、)証明書管理テーブル206に記録されたサーバアプリ30の試用版証明書の情報に基づいて、サーバアプリ30の本運用証明書を新たに生成し、生成した本運用証明書の情報を証明書管理テーブル206に記録する。証明書発行部202は、通信部201を介して、サーバアプリ30♯に対し証明書発行通知とともに本運用証明書を送信する。
【0187】
また、通信部201が、サーバアプリ30♯から、試用版証明書の失効要求を受信すると、CRL発行部203が、サーバアプリ30の試用版証明書を失効し、CRLを生成する。そして、通信部201を介し、サーバアプリ30♯に対して、CRL発行通知とともにCRLを送信する。
【0188】
このように、本実施の形態によると、サーバアプリ自身で不正運用の有無を判断できる。したがって、複数のサーバアプリが存在する場合、実施の形態1の通信システムであれば、サーバアプリごとに本運用証明書の発行可否判断をする必要があるため、CAサーバの処理負担が大きくなるが、本実施の形態によれば、CAサーバの処理負担を軽減することができる。
【0189】
なお、上記各実施の形態および各変形例を組合わせてもよい。
また、本実施の形態の監視装置(CAサーバまたは管理サーバ)が行なう、サーバアプリケーションの不正な運用を排除するための方法を、プログラムとして提供することもできる。このようなプログラムは、当該プログラムをコンピュータが読取可能な一時的でない(non-transitory)記録媒体に記録される。このような「コンピュータ読取可能な記録媒体」は、たとえば、CD−ROM(Compact Disc-ROM)などの光学媒体や、メモリカードなどの磁気記録媒体などを含む。また、このようなプログラムをコンピュータ読み取り可能な記録媒体に記録させて、プログラム製品として提供することもできる。また、ネットワークを介したダウンロードによって、プログラムを提供することもできる。
【0190】
なお、本実施の形態に係るプログラムは、コンピュータのオペレーティングシステム(OS)の一部として提供されるプログラムモジュールのうち、必要なモジュールを所定の配列で所定のタイミングで呼出して処理を実行させるものであってもよい。その場合、プログラム自体には上記モジュールが含まれずOSと協働して処理が実行される。このようなモジュールを含まないプログラムも、本実施の形態に係るプログラムに含まれ得る。
【0191】
また、本実施の形態に係るプログラムは他のプログラムの一部に組込まれて提供されるものであってもよい。その場合にも、プログラム自体には上記他のプログラムに含まれるモジュールが含まれず、他のプログラムと協働して処理が実行される。このような他のプログラムに組込まれたプログラムも、本実施の形態に係るプログラムに含まれ得る。なお、プログラム製品は、プログラム自体と、プログラムが記憶された記憶媒体とを含む。
【0192】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0193】
10 インターネット、12 イントラネット、20,20A,20B,20C CAサーバ、21,31,51 CPU、22,32,52 RAM、23,33,53 ROM、24,34,54 入力部、25,35,45,55 通信インターフェイス、26,36,56 モニタ、27,37,57 ハードディスク、28,38,58 メディアドライブ、28A,38A,58A 記録媒体、30 サーバアプリ、40 MFP、41 制御部、42 メモリ部、43 画像読取部、44 プリント部、46 操作パネル部、47 記憶部、50 ログ収集サーバ、201,301,401,501 通信部、202,202C 証明書発行部、203 CRL発行部、204,204A,204B,204C 判断部、205,205A,502 ログ収集部、206 証明書管理テーブル、207 条件判断テーブル、208 判断開始条件テーブル、209 判断結果保存テーブル、210 定期チェック部、302,402 証明書保存部、303 証明書リクエスト部、304 保護部、305 通信ログ取得部、306,404 通信ログ保存部、307 証明書発行判断部、308 条件判断テーブル、403 通信判断部、405 通信ログ出力部、406 判断ポリシーテーブル、503 ログ保存部、504 ログ出力部、505 管理テーブル。

【特許請求の範囲】
【請求項1】
画像処理装置を管理するためのサーバアプリケーションの運用を監視するための監視装置であって、
前記サーバアプリケーションの使用頻度を示す第1の条件を少なくとも含む判断条件を格納した記憶手段と、
前記サーバアプリケーションをインストールし、第1の証明書が発行された管理サーバと、前記画像処理装置との間の通信履歴を取得するための取得手段と、
前記判断条件と前記通信履歴とに基づいて、前記管理サーバの使用実績を判断することで、前記管理サーバに設定された通信制限を緩和するか否かを決定するための判断手段とを備えた、監視装置。
【請求項2】
前記第1の証明書を発行するための発行手段をさらに備えた、請求項1に記載の監視装置。
【請求項3】
前記第1の証明書は、試用版の証明書であり、
前記発行手段は、前記判断手段により使用実績があると判断された場合に、前記通信制限が緩和された第2の証明書を発行する、請求項2に記載の監視装置。
【請求項4】
前記発行手段は、前記判断手段により使用実績がないと判断された場合には、前記第2の証明書の発行を拒絶する、請求項3に記載の監視装置。
【請求項5】
前記発行手段は、前記判断手段において前記管理サーバが満たしていると判断された前記判断条件に応じて、前記第2の証明書の前記通信制限のレベルを設定する、請求項3に記載の監視装置。
【請求項6】
前記通信制限とは、前記画像処理装置との通信可能期間を表わす、請求項1に記載の監視装置。
【請求項7】
前記通信可能期間とは、電子証明書の有効期間を表わす、請求項6に記載の監視装置。
【請求項8】
前記判断手段は、前記第1の証明書の残りの前記有効期間が閾値以下になった場合に、前記管理サーバの使用実績を判断する、請求項7に記載の監視装置。
【請求項9】
前記判断手段は、前記第1の証明書が発行されてから所定の期間が経過した場合に、前記管理サーバの使用実績を判断し、
使用実績があると判断された場合に、前記第1の証明書の継続利用を許可し、使用実績がないと判断された場合に、前記第1の証明書を失効させるための手段をさらに備えた、請求項6に記載の監視装置。
【請求項10】
前記判断手段は、前記通信履歴の累積数、通信データ総量、および、通信している前記画像処理装置の個数のうち少なくともいずれかが、規定値以上となった場合に、前記管理サーバの使用実績を判断する、請求項1に記載の監視装置。
【請求項11】
前記判断条件は、さらに、前記管理サーバの不正通信の有無を示す第2の条件を含み、
前記判断手段は、前記管理サーバの前記通信制限を緩和するか否かの決定に、前記管理サーバの不正通信の有無の判断結果をさらに用いる、請求項1に記載の監視装置。
【請求項12】
前記記憶手段は、さらに、前記判断手段による過去の判断結果を記憶し、
前記判断手段は、前記過去の判断結果を利用して、前記管理サーバに設定された通信制限を緩和するか否かを決定する、請求項1に記載の監視装置。
【請求項13】
前記監視装置は、前記管理サーバ内に含まれ、
前記記憶手段、前記取得手段および前記判断手段を保護するための保護手段をさらに備えた、請求項1に記載の監視装置。
【請求項14】
画像処理装置を管理するためのサーバアプリケーションの運用を監視するための監視方法であって、
前記サーバアプリケーションをインストールし、第1の証明書が発行された管理サーバと、前記画像処理装置との間の通信履歴を取得するステップと、
前記サーバアプリケーションの使用頻度を示す第1の条件を少なくとも含む判断条件と前記通信履歴とに基づいて、前記管理サーバの使用実績を判断することで、前記管理サーバの通信制限を緩和するか否かを決定するステップとを備えた、監視方法。
【請求項15】
画像処理装置を管理するためのサーバアプリケーションの運用を監視するための監視プログラムであって、
前記サーバアプリケーションをインストールし、第1の証明書が発行された管理サーバと、前記画像処理装置との間の通信履歴を取得するステップと、
前記サーバアプリケーションの使用頻度を示す第1の条件を少なくとも含む判断条件と前記通信履歴とに基づいて、前記管理サーバの使用実績を判断することで、前記管理サーバの通信制限を緩和するか否かを決定するステップとをコンピュータに実行させる、監視プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33】
image rotate


【公開番号】特開2011−160383(P2011−160383A)
【公開日】平成23年8月18日(2011.8.18)
【国際特許分類】
【出願番号】特願2010−22922(P2010−22922)
【出願日】平成22年2月4日(2010.2.4)
【出願人】(303000372)コニカミノルタビジネステクノロジーズ株式会社 (12,802)
【Fターム(参考)】