説明

ソフトウェアモジュールに対するライセンス認証・管理方式

【課題】画像処理装置と通信し外部のハードウェア装置上で動作する通信ソフトウェアモジュールのライセンスを管理し、ライセンス料の徴収を可能とする。
【解決手段】外部コントローラ装置103は、接続された画像処理装置104の設定情報に基づき自己の動作を決定する動作決定手段とを備え、画像処理装置104に、一時的に、画像処理装置104の設定情報と固有情報を読み取ることのできる外部装置108を接続し、外部装置108にはドングル装置109を接続する。外部装置109は、ドングルメモリに上記固有情報が書き込まれているかどうかを調べ、書き込まれていない場合には、上記固有情報を書き込むと共に、書き込まれている場合には上記固有情報と比較し、一致するときにのみ外部コントローラ装置103の設定情報の書き換えを行う。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ソフトウェアのライセンス認証・管理方式に関し、特に、画像処理装置と所定の通信プロトコルに従い通信し、画像データおよびプリント、スキャン等のジョブの実行を指令するコマンドシーケンスを送受信することが可能であって、画像処理装置ではない外部の装置にインストールされ実行される、通信ソフトウェアモジュールに対するライセンス認証・管理方式に関する。
【背景技術】
【0002】
従来、複写機などの画像処理装置に接続される外部コントローラ装置が提供されている。この外部コントローラ装置は、例えば、ホストコンピュータのプリント・ドライバで生成されたPDLプリントジョブをネットワーク経由で受信し、PDL言語を解釈してプリントジョブをページ画像に展開し、ジョブコントロールコマンドと共に画像処理装置に送って、用紙媒体上に画像を形成するという目的で使用されている。
【0003】
近年、複写機はMFP化してきており、実行することのできるジョブも、リモートコピーやBox画像の送信など、多種多様になってきている。これに伴い、外部装置との通信I/Fプロトコルも複雑化してきており、特定目的の外部装置を作成する場合、複雑なプロトコルの中から目的とする動作をさせるコマンドを選択するだけでも、プロトコルに精通している必要があって、困難となってきている。
【0004】
そのため、特定目的に特化したより簡単なプロトコルを、外部コントローラ装置ベンに提供する目的で、外部コントローラOS上で動作するプロトコル変換モジュールが開発された。これにより、外部コントローラ装置ベンダーは、複雑な直MFPプロトコルを理解すること無しに、目的とする機能を提供する外部コントローラ装置を速やかに開発できるようになり、また複写機メーカーとしては、対自社製機器・ソフトの通信のみで使用する、特定目的以外の外部ベンダーに触らせたくないコマンドを使えないようにするなど機密保持することを可能とするとともに、このプロトコル変換機能を外部装置側で実行させることにより、複写機CPUに余分な負荷を与えず処理を最適化することが可能となった。
【0005】
また、一方で、MFP自体の高機能化に伴い、MFP自体の持つ各種機能について、必要なユーザにのみ必要な機能を使用可能とし、提供する機能に応じた料金を徴収するため、一部機能のオプション化が行なわれている。このオプション化においては、追加ハードウェアを必要とするものに関しては、そのハードウェアを取り付けることによって行うが、ソフトウェアによって実現する機能の場合には、追加ソフトウェアをインストール手法も取られているが、機能の規模によっては管理のしやすさから、予めインストールされている機能にすいて、その機能を使用可・不可とする設定を可能としているものもある。このようなソフトウェア・オプション機能の使用可能設定を行うため、ドングルと呼ばれる専用のライセンス認証器具を使用する手法が使用されている。
【0006】
このドングルを使ったライセンス認証システムにおいては、例えばサービスマンが持ち歩くノートPCに設定ツールをインストールし、機能毎に対応する種類のドングルをこのノートPC取り付け、ノートPCとMFP装置をネットワークあるいは専用のI/Fでもって接続し、上記の使用可・不可の設定を行うことが可能である。すなわち、設定ツールは、対応するドングルが取り付けられているときにのみ、その機能の設定を可能とするようになっている。このドングルは、セントロニクス仕様パラレルや、USBといったノートPCのI/Fに接続される。
【0007】
また、ドングルには1回のみ書き込みのできるメモリ領域が内蔵されており、初回のMFPとの接続時において、設定ツールによって、そのMFP固有の情報、例えばシリアル番号を書き込むようになっている。以降の接続時においては、シリアル番号が一致しない限り、設定変更をすることはできないようにする仕組みとなっている。
【0008】
すなわち、複写機メーカーとしては、ドングルを提供することによって、機能毎のMFPデバイス1台ずつのライセンス管理を可能として運用している。
【0009】
また、上記で説明した外部コントローラ装置においても、その装置で使用可能とするオプション機能のライセンス管理において、同様のドングルを使った仕組みを用いている(例えば、特許文献1参照)。
【0010】
この場合は、オプション機能ソフトウェア自体にドングルの有無をチェックする仕組みが内蔵されており、オプションソフトウェアを起動する際にドングルの有無をチェックして、有りのときのみ動作するという仕組みになっている。すなわち、オプション機能を利用する際には、常にその外部コントローラ装置にドングルが取り付けられている必要がある。
【特許文献1】特開2000−137590号公報
【発明の開示】
【発明が解決しようとする課題】
【0011】
パソコンなどの高機能化および普及に伴って、汎用ハードウェアの機能は年々進化してきており、コストは下がってきている。このため、上記の外部コントローラ装置としては、そのハードウェアに汎用ハードウェアまたはその部分的カスタマイズ品を使用し、汎用OSで動作するシステムが採用されるようになってきている。従って、上記プロトコル変換モジュールは、汎用OS上で動作するバイナリ・ソフトモジュールとして、ベンダーに提供されることが多い。
【0012】
しかしながら、汎用ハードウェア汎用OSを使った外部コントローラ装置は、一方で、第三者に解析されやすいという面も持っている。そのため、例えばHDD装置等に格納された上記のプロトコル変換モジュールが、提供メーカーの望まない第三者によって取り出され、流用されるという危険性がある。
【0013】
また、メーカーが提供したベンダーであっても、上記モジュールを搭載した装置の実数をメーカー側が把握し辛く、これによって正確なライセンス料の徴収を妨げるという問題点があった。
【0014】
さらには、提供するモジュールが複数の機能を備える場合において、使用可能とする機能に応じたライセンス料の徴収をしたいという要求もあった。
【0015】
また、これらのライセンス管理を実現する上で、複写機メーカーとして、従来のMFPのオプション機能のライセンス管理の仕組みを極力流用したいという要求もあった。
【0016】
そこで、本発明の第一の目的は、画像処理装置と通信し外部のハードウェア装置上で動作する通信ソフトウェアモジュールを提供する上で、接続される画像処理装置1台につき1ライセンスを管理し、接続される画像処理装置の数を把握することによって、ライセンス管理することである。
【0017】
また、本発明の第二の目的としては、同時に提供する通信ソフトウェアモジュールの機能の制限を行い、使用可能とする機能に応じたライセンス料の徴収を可能とすることである。
【0018】
さらに、本発明の第三の目的としては、従来MFPのオプション機能で行っているライセンス管理の仕組みを極力流用できるような、外部通信ソフトウェアモジュールのライセンス管理方式を提案することである。
【0019】
本発明は、以上の点に着目して成されたもので前記目的を実現できる、ソフトウェアモジュールに対するライセンス認証・管理方式を提供することを目的とする。
【課題を解決するための手段】
【0020】
本発明は、上記の問題点を解消するための、画像処理装置と第一の外部装置からなる画像処理システムにおける、外部装置上に搭載される所定の通信ハードウェアおよび通信プロトコルを用いて通信を行うソフトウェアモジュールに対するライセンス認証・管理方式であって、前記画像処理装置は、装置固有の情報を記憶する固有情報記憶手段と、特定の機能に対する設定情報を記憶する機能設定情報記憶手段と、前記機能設定情報記憶手段に記憶された設定情報に応じて、対応する機能の実行または制限を行う機能実行制御手段と、前記機能設定情報記憶手段に記憶された設定情報および前記固有情報記憶手段に記憶された固有情報を、外部装置に通知する情報通知手段とを備え、前記第一の外部装置は、接続された前記画像処理装置の前記設定情報記憶手段に記憶された前記設定情報の少なくとも一部の情報を読み出し受信することのできる第一の情報受信手段と、前記第一の情報受信手段により受信した情報に基づき、自己の動作を決定する動作決定手段とを備え、前記情報処理装置に一時的に接続される、第二の外部装置が存在し、前記第二の外部装置は、前記情報処理装置の前記設定情報記憶手段に記憶された前記設定情報と前記固有情報記憶手段に記憶された前記固有情報を読み取ることのできる第二の情報受信手段と、所定の不揮発性メモリ領域を備えたドングル装置と接続するドングル接続手段と、前記ドングルの不揮発性メモリ領域を読み出すドングルメモリ領域読み出し手段とを備え、前記第二の外部装置は、前記ドングルメモリ領域読み出し手段により読み出された所定の領域に、前記固有情報が書き込まれているかどうかを調べ、書き込まれていない場合には、前記第二の情報受信手段から受信した前記固有情報を書き込むと共に、書き込まれている場合には前記第二の情報受信手段から受信した前記固有情報と比較し、一致するときにのみ、前記設定情報の書き換えを可能とする制御を行い、前記ドングルを提供することによって管理を実現することを特徴とする。
【0021】
また、前記情報処理装置は、機能毎に異なった前記設定情報を記憶する複数の前記設定情報記憶手段を備え、前記第二の外部装置に接続される前記ドングルは、対応する機能毎に異なった複数の種類が存在し、接続されたドングルの種類に応じた前記設定情報記憶領域の書き換えのみを可能とすることを特徴とする。
【0022】
また、前記複数の設定情報記憶手段の少なくとも一部においては、前記画像処理装置単独で実行される機能に対しての設定情報であることを特徴とする。
【発明の効果】
【0023】
本発明によれば、画像処理装置と通信し外部のハードウェア装置上で動作する通信ソフトウェアモジュールを提供する上で、接続される画像処理装置1台につき1ライセンスを管理し、接続される画像処理装置の数を把握することによって、ライセンス管理することが可能となる。
【0024】
また、同時に本発明によれば、提供する通信ソフトウェアモジュールの機能の制限を行い、使用可能とする機能に応じたライセンス料の徴収することが可能となる。
【0025】
さらに、本発明によれば、従来MFP等の画像処理装置のオプション機能をユーザに提供する上で行っている、ライセンス管理の仕組みを、そのまま流用して、外部通信ソフトウェアモジュールのライセンスを管理することが可能となっている。
【発明を実施するための最良の形態】
【0026】
以下に図面を参照して本発明の好適な実施例を示す。
【実施例1】
【0027】
図1は、本発明の第1の実施例を示す画像処理システムのハードウェア構成を説明する概略ブロック図である。この画像処理システムは、ネットワーク(101)を介して1台以上のホストコンピュータ(102)と、PDLプリントジョブなどのジョブを解釈し画像展開するなどの画像処理を行う外部コントローラ装置(103)と、外部コントローラ装置が接続する画像処理装置(104)から構成されている。
【0028】
外部コントローラ装置(103)は、HDD(114)またはROMメモリ(115)等に格納されたプログラムを、CPU(113)が実行することにより動作しており、プログラムに応じて、受け取ったPDLジョブをビットマップ画像データに画像展開(RIP)したり、画像処理装置にジョブを表すコマンドスクリプトや画像データを送受信したり、あるいは内部バスに接続されている各機器部の制御を行うことができる。内部バスにはネットワークI/F1(112)およびネットワークI/F2(117)も接続されている。外部コントローラ装置(103)は、ネットワークI/F1(112)を介して外部ネットワーク(101)に接続され、ネットワークI/F2(117)を介して画像処理装置と接続されている。また、ユーザ・インタフェースあるいは他のインタフェース、その他の装置(116)も備えている。
【0029】
そして、外部ネットワークに接続されているホストコンピュータ(102)等の機器から、ジョブを受信したり、画像データを送受信することが可能であって、外部機器からの指令に基づき、画像処理装置(104)に、用紙媒体上に画像形成するプリントジョブや、原稿画像を読み取るスキャンジョブの実行を指示することが可能である。
【0030】
また、画像処理装置(104)は、MFPタイプの複写機であって、MFPコントローラ部(105)、画像読取装置部(106)および画像形成装置部(107)を備えている。
【0031】
MFPコントローラ部(105)は、HDD(114)またはROMメモリ(125)等に格納されたプログラムを、CPU(123)が実行することにより、画像やジョブのハンドリングや、画像読取装置部(106)および画像形成装置部(107)の制御動作を行う。また、ユーザとのI/F装置であるUI部(126)、外部装置と接続するためのI/FであるネットワークI/F(122)とセントロニクス仕様パラレルI/F(127)、および画像読取装置部(106)や画像形成装置部(107)と接続して通信を行うための内部専用I/F部(128)を備えており、これらの装置は内部バス(121)に接続されCPU(123)から制御可能となっている。
【0032】
本実施例においては、外部と通信を行うためのネットワークI/F(122)に、外部コントローラ装置(103)が接続されている。すなわち外部ネットワークからの通信は、全て外部コントローラ装置(103)を介してやり取りする。
【0033】
なお、本実施例においては、外部コントローラ装置(103)の外部接続用I/Fと画像処理装置接続用I/Fを共にネットワークI/F(イーサネット(登録商標))で構成しているが、外部ネットワークあるいは画像処理装置(104)の外部I/Fに合わせて、どちらか一方あるいは両方を、他のI/Fハードウェア構成にしてももちろん良い。
【0034】
次に、外部コントローラ装置(103)で処理するジョブの一例として、PDLプリントジョブを記述するPDLデータについて説明する。
【0035】
アドビ(ADOBE)社のPostScript(登録商標)言語に代表されるPDL(Page Description Language)は、1ページの画像を、(i)文字コードによる画像記述、(ii)図形コードによる図形記述、(iii)ラスタ画像データによる画像記述などの要素を組み合わせて記述するための言語であり、それで記述されたデータがPDLデータである。
【0036】
該PDLデータは、このように文字コードや図形コード、言い換えると図形描画コマンドを中心として構成されているので、ラスタ画像データのみの場合に比べて、一般にプリントジョブのデータ量が少なくて済む。このため、多数の機器が接続されるネットワークを介してジョブを送る場合、トラフィックを減らして高速にジョブを転送することが可能である。
【0037】
このようなPDLデータよりなるPDLプリントジョブを、1ページずつラスタ画像データの形式に展開することをRIP処理という。すなわちPDLプリントジョブを印刷するためには、RIP処理を行ってラスタ画像データ(ビットマップ)に変換する必要がある。
【0038】
画像処理装置(104)のMFPコントローラ部が、ある特定のPDL言語に対するRIP機能を持っていない場合は、本実施例のように外部コントローラ装置(103)を接続し、外部コントローラ装置(103)に特定PDLのRIP機能を持たせることによって、画像処理装置(104)をシステムとして機能拡張し、特定PDLプリントシステムとして利用できるようにすることができる。
【0039】
このとき、外部コントローラ装置(103)は、図1においてHDD(114)上に格納されたプログラムにより、CPU(113)が動作することにより、RIP機能を実現している。展開されたラスタ画像は、RAM(115)上に圧縮された状態で一時保持され、ネットワークI/F2(117)を介してプリントジョブコマンドスクリプトと共に画像処理装置(104)へと送られてプリント処理される。
【0040】
プリントジョブのコマンドスクリプトを受け取った画像処理装置(104)においては、CPU(123)の制御動作によって、スクリプトに基づく印刷動作指令を画像形成部(107)に送り、同時に送られてくる画像データを、ページ毎のタイミングを取って、画像形成部(107)に送ることによって、用紙媒体上に画像形成する印刷動作を実行する。
【0041】
以上はPDLプリント処理機能を持たせた外部コントローラ装置(103)とプリント機能に関わる画像処理装置(104)の動作についての説明であるが、同様の仕組みで、これ以外にも例えば、画像処理装置(104)に原稿画像をスキャンさせ、読み取った画像に対してOCR等の何らかの処理を行う機能や、あるいは画像処理装置(104)の不図示のUI等を制御して所望のユーザに対するメッセージ等を表示する機能を実現する外部コントローラ装置(103)を提供することももちろん可能である。
【0042】
また、画像処理装置(104)は、内蔵するセントロニクスI/F(127)に、サービスマンの使用するノートPC(108)を接続することができる。ノートPC(108)には、画像処理装置(104)に対する各種設定ツールがインストールされており、サービスマンが必要時のみ画像処理装置(104)に接続して、各種設定を行うツールとして機能する。尚、図1では、セントロニクスI/F(127)にノートPC(108)を接続しているが、使用するノートPCがセントロニクスI/Fを内蔵していない場合などは、ネットワークインターフェース(122)に接続することも可能である。この場合、画像処理装置(104)は、外部コントローラ装置(103)と一時的に切り離され、クロスケーブルを介して接続されるか、もしくはHUBをかまして接続できる。もちろん無線LANを使用する構成とすることも可能である。
【0043】
ノートPC(108)には、特定の機能に対するライセンス管理を目的とするドングル(109)を接続可能である。ドングル(109)は、セントロニクスI/FもしくはUSB I/Fのどちらか都合の良い方に接続できるようになっている。ドングル(109)の機能についての詳細は後述する。
【0044】
次に図2を用いて、外部コントローラ装置(103)内部で動作するソフトウェア構成について説明する。
【0045】
図2におけるハードウェア201とは、図1で説明したネットワークI/F1および2(112、117)を含む、外部コントローラ装置103のハードウェア全般を模式的に示している。これの上に、ハードウェア制御のためのデバイスドライバを含むOS(202)プログラムが動作する。
【0046】
そして、OS上で動作するプログラムモジュールとして、コントローラ制御ソフトウェア(203)、前述のプロトコル変換モジュール(204)、および転送モジュール(205)が動作する。
【0047】
コントローラ制御ソフトウェア(203)とは、例えば前述のPDLジョブのRIP処理機能を備えたプリントジョブ制御機能であって、外部コントローラ装置(103)の目的とする特定機能を提供するための制御ソフトウェアである。もちろん、装置全般の必要なハードウェア制御も含めて動作する。
【0048】
プロトコル変換モジュール(204)は、前述の通り、画像処理装置を制御する複雑なプロトコル(B)を、より簡単な特定機能に特化したプロトコル(A)に変換するソフトウェアモジュールであって、プロトコル(A)を持ってコントローラ制御ソフトウェア(203)からジョブ送信指令等のコマンドを受けると、画像処理装置が直接解釈することのできるプロトコル(B)に変換し、送信する。
【0049】
同様に、画像処理装置からプロトコル(B)で来たコントローラ制御ソフト(203)に対するコマンドを、プロトコル(A)に変換して伝える。実際には両プロトコルのコマンドやパラメータは1対1とは限らず、複数のコマンドやパラメータを一つのコマンドにまとめたり、その逆を行ったり、あるいはプロトコル変換モジュール(204)としての内部状態を持ち、内部状態に応じた特定コマンドシーケンスやパラメータに変換したり、複数の種類の異なったプロトコル(B)を組み合わせて送受信するなど、複雑な変換アルゴリズムを実現している。
【0050】
さらに、転送モジュール(202)というモジュールも内蔵される。これは、コントローラ制御ソフトウェア(203)が使用しないコマンドプロトコル(B)について、画像処理コントローラがネットワーク上のホストコンピュータ等他の機器と、直接やりとりをするためのものであって、OSを通じてネットワークI/F2(117)での通信とネットワークI/F1(112)での通信をアドレス変換して直接結びつけるスルー転送動作を行う。これによって、画像処理装置は、外部コントローラ装置(103)を増設する前の対ネットワーク機能を損なうことなく外部コントローラ装置(103)による機能拡張が可能になる。
【0051】
例えば、SNMPやHTTPなどの汎用プロトコルを使用するサービスを、画像処理装置が外部ネットワーク上の機器に対して公開する場合、スルーモジュールによって、この機能はそのまま外部機器から利用可能となる。さらに、外部機器からは、アドレス的に一つの装置として、外部装置を含んだ画像処理装置システムとして認識することができ、IPアドレスを1つのみ割り当てれば良いようにできる。
【0052】
次に、図3の本発明に関わるソフトウェアモジュール構成を用いて、ノートPC(108)とドングル(109)を用いた、画像処理装置(104)の特定機能に対する設定変更方法について説明する。
【0053】
図3において301は、図1における画像処理装置(104)のHDD(114)またはメモリ領域(115)に格納されCPU(113)から読み出されて実行されるプログラムモジュールの一部と、HDD(114)またはメモリ領域(115)に格納されたデータの一部を示している。
【0054】
320〜322は、各機能に対する設定情報を格納する領域であって、書き換え可能な不揮発性メモリ領域に保持されている。もちろん実際にはこれら以外の多々の設定情報も格納されているが、説明を簡単にするためここでは省略する。
【0055】
320はA機能に対する設定情報であって、ここでは簡単のため、機能の使用許可する/しないの設定のみ格納しているものとしている。321はB機能に対する設定情報であって、同じく簡単のため、機能の使用許可する/しないの設定のみ格納しているものとしている。尚、これらA機能およびB機能とは、画像処理装置(104)内で実行される機能である。
【0056】
322は外部装置に対する機能設定情報が格納されている領域である。ここでは本実施例で説明しているプロトコル変換モジュールに対する機能設定を格納するものとしている。
【0057】
323は個々の情報処理装置(104)に固有のシリアルナンバー情報であって、ROM領域に格納されており、出荷後は書き換えることができない。
【0058】
311および312は、それぞれA機能およびB機能に対する機能実行モジュールであって、例えば特殊なプリントジョブの処理をつかさどる制御モジュールであったり、HDD上のデータを完全に消去するための機能制御モジュールであったり、あるいは、読み取った画像データを外部機器に送信するSend機能を制御するモジュールである。
【0059】
これらのモジュールは、それぞれ320、321の各機能に対する設定情報を読み出すことができ、設定情報が使用許可に設定されているときには、UIその他より入力されるユーザからの指示に基づき、その機能を実行するが、使用禁止に設定されているときには実行せず、UI等にオプション機能であってインストールされていない旨のメッセージを出力する。
【0060】
313は外部装置に対する機能の管理モジュールであって、外部装置に対する機能設定情報である322を読み取って、図1で説明したネットワークI/F(122)を経由して、外部装置へ設定内容を通知することが可能である。
【0061】
314は、上記で説明した機能ごとの設定変更を行うモジュールであって、図1におけるセントロニクスI/F(127)またはネットワークI/F(122)を経由して、外部の設定用ノートPCと通信することが可能である。そして、通信上の指示に従い、320から322の各機能設定を読み出したり、値を変更したりする制御を行う。また、シリアルNo.(323)も読み出すことが出来、これら読み出した値を外部の設定用ノートPCに送信することができる。
【0062】
302は、図1における設定用ノートPC(108)にインストールされているソフトウェアの一部を表しており、330が本発明に関わる設定ツールである。303は図1におけるドングル(109)の内部の不揮発性メモリを表し、不揮発性メモリには340に示すような、ドングルID、設定変更可能な機能の情報が格納されている。さらに、MFPシリアルNo.領域があって、この領域は設定ツール(330)から、1回のみシリアルNo.を書き込むことのできるメモリとなっている。
【0063】
設定ツール330は、設定変更モジュール314と通信してコマンドのやりとりを行う。また、ドングル内の情報(340)を読み出したり、MFPシリアルNo.情報を書き込む機能を備えている。また、不図示のノートPCのUI機能を用いて、サービスマンからの指令をうけたりメッセージを表示したりすることが可能である。
【0064】
次にサービスマンによる各オプション機能の設定変更の一連の流れを、設定ツールの動作フローを中心に説明する。図4が設定ツール(330)の動作フローである。
【0065】
設定ツールは、ノートPC(108)上で起動されると、まずS401にて、ドングル(109)との通信を試み、ドングルが付いているかどうかを確認する。これは専用のデバイスドライバソフトウェアモジュールを介して行なわれる。ドングルが無いと判断された場合は、S421のドングルの必要のない設定動作を実行する。尚、設定ツールの目的によっては、ドングルの必要のない設定動作を実装しない場合もあり、このときはプログラムはUIにドングルが無い旨を伝えるメッセージを表示して終了する。
【0066】
ドングルがあると判断された場合には、次にS402にて、情報処理装置の設定モジュール(314)と初期化通信を行い、設定モジュール(314)を介して情報処理装置固有のシリアルNo.(323)を読み出す。
【0067】
そして、S403にて、ドングルとの初期化通信を行って、ドングル内の不揮発性メモリ領域(340)のシリアルNo.を読み出す。
【0068】
S404においては、このシリアルNo.として、すでに何らかの値が書き込まれているかどうかを調べ、書き込みが無かった場合にはS405の処理として、S402で読み取った情報処理装置のシリアルNo.を、ドングルのメモリ領域(340)に書き込み、S407の処理へ移る。
【0069】
S404にて、すでに何らかの値が書き込まれていると判断された場合には、S406に進み、これがS402にて読み取った接続されている情報処理装置固有のシリアルNo.と一致するかどうかを調べる。
【0070】
もし、一致しない場合、ノートPCに接続されているドングルはすでに他の情報処理装置の設定で用いられたものであることになるので、ドングルがマッチしない旨のメッセージを表示した後、ドングルが無い場合と同様の動作となり、S421の処理へと飛ぶ。一致した場合にはS407の処理へと移る。
【0071】
次にS407においては、ドングルと所定の通信を行って、メモリ(340)内の設定可能機能情報を読み出す。この機能情報は、ドングルの種類によって、出荷時に予め定められた、それぞれ異なった設定となっている。例えば、A機能のライセンス管理を目的とするドングルであれば、A機能設定可という情報が書き込まれている。
【0072】
読み取った設定可能機能情報に基づき、S408にて、それぞれの機能設定動作へと分岐する。A機能設定可であれば、処理S409のA機能設定動作を行い、B機能設定可であれば、処理S410のB機能設定動作を行う。外部機能設定可である場合には、外部機能設定動作S411を行うが、例えば、外部動作設定可の中に、複数のレベルを設け、レベルに応じた機能のみを設定するということももちろん可能である。
【0073】
S409〜S411の設定動作においては、ノートPCのUI機能を用いて、サービスマンと対話的に処理を行っていく。例えば、A機能設定動作においては、図3におけるA機能設定(320)を設定モジュール(314)を介して読み取り、これを画面に表示する。サービスマンはUIを用いて、例えばOffである設定となっていればこれをOnに変えるように指令を出す。この指令を受けて、設定ツール(330)はS409の処理の中で、設定モジュール(314)に対して、A機能設定をOnとするように指令し、設定モジュール(314)がメモリ領域のA機能設定(320)をOnに書き換える。B機能についても全く同様の処理を行う。
【0074】
外部機能に対しても同様の処理を行うが、図3に示したとおり、本実施例では複数の機能のOn/Off設定を持たせているので、それぞれを表示し、それぞれを変更する指令をうけるUIを表示して、指令に基づきそれぞれの設定値を変更していく。
【0075】
設定変更が完了したら、サービスマンは、UIにより設定ツールを終了する。
【0076】
尚、これら一連の処理の中で、設定ツール(330)は、必要に応じて、設定モジュール(314)およびドングル(303)と所定のプロトコルを用いて通信を行っているが、これらの通信プロトコルは、所定の暗号化処理が施されており、簡単には解析できないようになっている。
【0077】
また、画像処理装置の設定モジュール(314)は、常に設定ツール(330)と通信可能な状態にあるのではなく、所定の特殊モードにて画像処理装置を起動したときにのみ、起動され通信可能となるように実装している。
【0078】
次に本発明に関わるプロトコル変換モジュール(204)の動作を、動作フロー図5を用いて説明する。
【0079】
図2のプロトコル変換モジュール(204)は、図1の外部コントローラ装置(103)内で、コントローラ制御ソフト(203)から、あるいはOSの初期起動機能によって起動される。
【0080】
起動すると、所定の内部初期化処理(S501)を行った後、S502にて、ネットワークI/F2(117)を介して画像処理装置と初期化通信を行う。このときに図3における外部機能管理モジュール(313)を通じて、外部機能設定情報(322)を読み出す。
【0081】
そしてS503において、まず、読み出した情報のうち、プロトコル変換モジュール全体の使用可否を表す情報である、プロトコル変換モジュール使用許可情報をチェックする。これが許可状態になっていなければ(Off)、処理S504へと進み、内蔵するUIもしくは画像処理装置UIに、「このオプション機能は使用できません」というメッセージを表示して、終了する。以後、プロトコル変換モジュールを通じた機能は、許可状態で再起動されるまでユーザには使用不可の状態となる。
【0082】
許可状態(On)であれば、S505にて他の全ての許可動作一覧を読み出し、内蔵するそれぞれに対応する動作許可フラグを、対応付けて設定する。そして初期化動作を完了し、S506以降の通常動作状態へと移行する。
【0083】
S506においては、コントローラ制御ソフト(203)より、コマンドが送られてくるのを待っている。
【0084】
コマンドを受信すると、S507にてコマンドを判別する。各コマンドには対応付けられた動作許可フラグがある一つ以上場合があって、もしこれらが存在する場合には、Onとなっている場合にのみ、そのコマンドは受け付け許可コマンドであると判定される。
【0085】
例えば、プリントジョブを送信するためのコマンド群は、プリント動作許可フラグと関連付けられており、これがOnのときにのみ、受付可能な許可コマンドであると判定される。また、「UIを使用するScan動作許可」フラグのように、複数のコマンドの組み合わせに関連付けられている機能もある。このような場合には、今まで送られたコマンドによって内部状態を遷移させており、例えば直前にUI表示コマンドが来ていれば、特定のScan関連コマンドは不許可であると判定される。
【0086】
受け付けたコマンドが許可コマンドでないと判定された場合には、情報処理装置となんら通信することなく、S510の処理へと移り、コントローラ制御ソフトにコマンドに対するNG返信(Nack)を返して、S506のコマンド待受け処理へと戻る。
【0087】
許可コマンドであると判定された場合には、S508のコマンド別の処理へと移り、必要に応じて、画像処理装置と通信し、ジョブ指令やステータス通知等のコマンドに対応する処理を行い、それらの処理が完了したら、処理結果に基づいて、S509にてコントローラ制御ソフトに返信を返して、S506のコマンド待受けへと戻る。
【0088】
このようにして、外部装置に対しても、情報処理装置単位での機能別のオプション化およびライセンス管理を実現している。
【実施例2】
【0089】
本発明を、図6に示す接続形態の外部拡張装置に適用することも可能である。
【0090】
図6において、601〜616の各部/各装置については、それぞれ図1の101〜116と全く同等であるので、詳細な説明は省略する。
【0091】
図6においては、図1におけるネットワークI/F2(117)を取り外したハードウェア構成となっている。そして、画像処理装置604は、図1の実施形態のように、直接外部コントローラ装置603と接続するのではなく、ネットワーク601と接続され、ネットワーク601を介して外部コントローラ装置603と通信する。
【0092】
すなわち、外部コントローラ装置603においては、同一のI/Fハードウェアを用いて、ホストコンピュータ602とも、画像処理装置604とも通信することになる。また、このような形態であるため、外部コントローラ装置603を、特定の画像処理装置(604)1台のための機能拡張装置とするのではなく、複数の画像処理装置に対して機能拡張を行う、機能拡張サーバとして構築し、本発明を適用することももちろん可能である。
【0093】
図6における外部コントローラ装置のソフトウェア構成図は、図7のようになる。図2と比較し、701〜712の構成部分は、それぞれ201〜212における構成部分と全く同等であるので、詳細な説明は省略する。
【0094】
703のコントローラ制御ソフトは、実施例1における図2の203のコントローラ制御ソフトと少なくとも通信手段に関しては全く同等で、プロトコル(A)を用いて、プロトコル変換モジュールと装置内部で通信し、画像処理装置に対する通信手段としており、その他のホストコンピュータ等の装置とは、ネットワークI/F1を介して直接通信を行う。
【0095】
もちろん実現する機能としては、実施例1と同等でも良いし、複数台の画像処理装置と通信可能であることを利用した新しい機能を実現することも可能である。
【0096】
また、ホストコンピュータ等の外部装置と画像処理装置との通信は、ネットワークを介して直接行なわれるため、図2における転送モジュール(205)は必要ない。
【0097】
プロトコル変換モジュール704に関しては、実施例1における変換モジュール204と全く同じものが使用可能である。変換モジュール704はOSの機能を利用して外部との通信を行っているので、単に通信の宛先アドレスを、内側のネットワークのものから外側のネットワークのものに変更するのみでよい。もちろんTCP/IPプロトコルを用いるならば、プロトコル(B)のポート番号は、他のホストコンピュータ等との通信で用いるプロトコルとバッティングしないようにする必要はある。
【0098】
プロトコル変換モジュール704の本発明に関わる動作についても、図5の動作フローと全く同等でよい。また、情報処理装置604とノートPC上にインストールされた設定ツールのやりとりは、図4のフローと同等になる。
【0099】
このような接続形態をもって、外部コントローラ装置を複数台情報処理装置の機能拡張のために用いるサーバタイプ運用をする場合、本発明を適用することによって、インストールされるプロトコル変換モジュール自体は1台の外部コントローラ装置603における一つのみであるが、その接続を許可する画像処理装置の数で、ライセンスを管理するということが可能となる。
【実施例3】
【0100】
また、本発明の本質によれば、実施例1および実施例2で説明したプロトコル変換モジュールに限らず、画像処理装置と通信する、外部ソフトウェアすべてのライセンス管理に適用可能であるのは自明である。
【0101】
さらに、同様の手法を、画像処理装置に限らず同様の内部設定情報と所定のI/Fを持つ装置に対して、その装置に接続する外部ソフトウェアのライセンス管理手法として活用することができるのも明らかであろう。もちろん、装置の固有情報は、シリアルNo.に限らず固有であればどんな情報でも使用するように実装可能である。
【図面の簡単な説明】
【0102】
【図1】本発明の1実施形態である外部コントローラ装置と画像処理装置を含む画像処理システムの構成を示すブロック図である。
【図2】図1に示した外部コントローラ装置上で動作するプログラムのソフトウェア構成を示すソフトウェア構成概念図である。
【図3】図1に示した画像処理装置とノートPCおよびドングル装置の、本発明のライセンス管理方式に関わるソフト構成を示すソフトウェア構成概念図である。
【図4】本発明の1実施形態におけるノートPC上で動作する設定ツールの動作を示すフローチャートである。
【図5】本発明の1実施形態における外部コントローラ装置上で動作するプロトコル変換モジュールの、本発明のライセンス認証・管理に関わる動作を示す動作フローチャートである。
【図6】本発明の第二の実施形態である外部コントローラ装置を含む画像処理システムの構成を示すブロック図である。
【図7】図6に示した外部コントローラ装置上で動作するプログラムのソフトウェア構成を示すソフトウェア構成概念図である。
【符号の説明】
【0103】
101 ネットワーク
102 ホストコンピュータ
103 外部コントローラ装置
104 画像処理装置
105 MFPコントローラ部
106 画像読取装置部
107 画像形成装置部
108 ノートPC
109 ドングル
112 ネットワークI/F1
113 CPU
114 HDD
115 ROMメモリ
116 その他の装置
117 ネットワークI/F2
121 内部バス
122 ネットワークI/F
123 CPU
125 ROMメモリ
126 UI部
127 パラレルI/F
128 内部専用I/F部

【特許請求の範囲】
【請求項1】
画像処理装置と第一の外部装置からなる画像処理システムにおいて、外部装置上に搭載される所定の通信ハードウェアおよび通信プロトコルを用いて通信を行うソフトウェアモジュールに対するライセンス認証・管理方式であって、
前記画像処理装置は、装置固有の情報を記憶する固有情報記憶手段と、
特定の機能に対する設定情報を記憶する機能設定情報記憶手段と、
前記機能設定情報記憶手段に記憶された設定情報に応じて、対応する機能の実行または制限を行う機能実行制御手段と、
前記機能設定情報記憶手段に記憶された設定情報および前記固有情報記憶手段に記憶された固有情報を、外部装置に通知する情報通知手段とを備え、
前記第一の外部装置は、接続された前記画像処理装置の前記設定情報記憶手段に記憶された前記設定情報の少なくとも一部の情報を読み出し受信することのできる第一の情報受信手段と、
前記第一の情報受信手段により受信した情報に基づき、自己の動作を決定する動作決定手段とを備え、
前記情報処理装置に一時的に接続される、第二の外部装置が存在し、
前記第二の外部装置は、前記情報処理装置の前記設定情報記憶手段に記憶された前記設定情報と前記固有情報記憶手段に記憶された前記固有情報を読み取ることのできる第二の情報受信手段と、
所定の不揮発性メモリ領域を備えたドングル装置と接続するドングル接続手段と、
前記ドングルの不揮発性メモリ領域を読み出すドングルメモリ領域読み出し手段とを備え、
前記第二の外部装置は、前記ドングルメモリ領域読み出し手段により読み出された所定の領域に、前記固有情報が書き込まれているかどうかを調べ、書き込まれていない場合には、前記第二の情報受信手段から受信した前記固有情報を書き込むと共に、書き込まれている場合には前記第二の情報受信手段から受信した前記固有情報と比較し、一致するときにのみ、前記設定情報の書き換えを可能とする制御行い、
前記ドングルを提供することによって実現することを特徴とするソフトウェアモジュールに対するライセンス認証・管理方式。
【請求項2】
前記情報処理装置は、機能毎に異なった前記設定情報を記憶する複数の前記設定情報記憶手段を備え、前記第二の外部装置に接続される前記ドングルは、対応する機能毎に異なった複数の種類が存在し、接続されたドングルの種類に応じた前記設定情報記憶領域の書き換えのみを可能とすることを特徴とする請求項1に記載のソフトウェアモジュールに対するライセンス認証・管理方式。
【請求項3】
前記複数の設定情報記憶手段の少なくとも一部においては、前記画像処理装置単独で実行される機能に対しての設定情報であることを特徴とする請求項1に記載のソフトウェアモジュールに対するライセンス認証・管理方式。

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図7】
image rotate

【図1】
image rotate

【図6】
image rotate


【公開番号】特開2006−277527(P2006−277527A)
【公開日】平成18年10月12日(2006.10.12)
【国際特許分類】
【出願番号】特願2005−98093(P2005−98093)
【出願日】平成17年3月30日(2005.3.30)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】