JP5133387B2 - 複合機、制御プログラムおよび記録媒体 - Google Patents

複合機、制御プログラムおよび記録媒体 Download PDF

Info

Publication number
JP5133387B2
JP5133387B2 JP2010237453A JP2010237453A JP5133387B2 JP 5133387 B2 JP5133387 B2 JP 5133387B2 JP 2010237453 A JP2010237453 A JP 2010237453A JP 2010237453 A JP2010237453 A JP 2010237453A JP 5133387 B2 JP5133387 B2 JP 5133387B2
Authority
JP
Japan
Prior art keywords
unit
control command
storage
position information
software
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.)
Active
Application number
JP2010237453A
Other languages
English (en)
Other versions
JP2012090229A (ja
Inventor
明洋 岡村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sharp Corp
Original Assignee
Sharp Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sharp Corp filed Critical Sharp Corp
Priority to JP2010237453A priority Critical patent/JP5133387B2/ja
Priority to US13/273,574 priority patent/US8751764B2/en
Priority to CN201410482965.9A priority patent/CN104202495B/zh
Priority to CN201110322451.3A priority patent/CN102457638B/zh
Publication of JP2012090229A publication Critical patent/JP2012090229A/ja
Application granted granted Critical
Publication of JP5133387B2 publication Critical patent/JP5133387B2/ja
Priority to US14/263,028 priority patent/US9170762B2/en
Priority to US14/858,331 priority patent/US9762771B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/44Secrecy systems
    • H04N1/4406Restricting access, e.g. according to user identity
    • H04N1/4433Restricting access, e.g. according to user identity to an apparatus, part of an apparatus or an apparatus function
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1222Increasing security of the print job
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1224Client or server resources management
    • G06F3/1225Software update, e.g. print driver, modules, plug-ins, fonts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1236Connection management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00344Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a management, maintenance, service or repair apparatus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0094Multifunctional device, i.e. a device capable of all of reading, reproducing, copying, facsimile transception, file transception

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Transfer Between Computers (AREA)
  • Facsimiles In General (AREA)

Description

本発明は、制御サーバと接続されている複合機であって、制御サーバに格納されているアプリケーションソフトウェアによって生成された制御コマンドを実行する複合機に関する。
従来、コピー機能、スキャン機能、印刷機能及びFAX送受信機能などの複数の機能を併せ持つ複合機が知られている。近年では、このような複合機が制御サーバ(アプリケーションサーバ)などと通信ネットワークを介して接続され、多種多様な処理を行うようになっている。すなわち、制御サーバにて動作するアプリケーションソフトウェア(以下、単に「アプリケーション」と称す)と複合機の機能とを連携させ、複合機がトータルアプリケーションシステムの一部となって動作することができる。これにより、複合機の機能と制御サーバの機能とを適宜組み合わせた柔軟性のあるサービスの構築を容易に行うことができる。
上記のようなシステムでは、制御サーバのアプリケーションが複合機に対して制御コマンドを送信し、複合機のウェブサーバに当該制御コマンドに応じた処理を実行させることにより、複合機の有する機能が制御サーバのアプリケーションによって制御されるようになっている。
また、上記のような複合機では、セキュリティ維持の観点から、信頼度の高いアプリケーション(信頼度の高いベンダーにて開発されたアプリケーション)からの制御コマンドを実行し、信頼度の低いアプリケーションからの制御コマンドを受信しても当該制御コマンドの実行を禁止するように設定されていることがある。その一例として、アプリケーションから複合機へ送信される制御コマンドに、制御コマンドの有効性を示すセキュリティ識別子(ベンダーキー)を含め、複合機側において、受信した制御コマンドに含まれるセキュリティ識別子の有効性を確認することで制御コマンドの実行の可否を判定する手法がある。
ところが、この手法では通信路にセキュリティ識別子が流れるため、通信データを盗聴可能な通信路を利用する場合には、SSL(Secure Socket Layer)等の暗号化プロトコルによって通信データ(制御コマンド)を暗号化する必要がある。しかし、この手法は、暗号化プロトコルによる処理を施せないアプリケーションに適用できないという問題があった。
特開2002−259339号公報
特許文献1は、予め許可されているURL(Uniform Resource Locator)にのみアクセスを許可するアクセス制限プログラムを開示している。しかし、このアクセス制限プログラムでは、アクセス制限されているURLとの間では前記の制御コマンド以外の情報通信もブロックされてしまうといった問題があった。例えば、前述した複合機にアクセス制限プログラムを適用した場合、複合機からのサイト閲覧を行えず、また、複合機から制御サーバへの状態情報(複合機の状態を示す状態情報)の送信もブロックされてしまうといった問題が生じる。
本発明は、前記の問題に鑑みてなされたものであり、制御コマンド以外の情報通信をブロックすることなく、高信頼度のソフトウェアによって発信された制御コマンドの実行を禁止せずに低信頼度のソフトウェアによって発信された制御コマンドの実行を禁止できる複合機を提供することを目的とする。
上記の課題を解決するために、本発明は、ソフトウェアによって送信される制御コマンドを受信するウェブサーバ部と、実行が許可される制御コマンドを送信するソフトウェアの格納位置を示した位置情報を少なくとも1つ記憶する記憶部とを備え、前記ウェブサーバ部は、受信した制御コマンドの送信に携わったソフトウェアの格納位置を検出する格納位置検出部と、前記位置情報に示されている格納位置が前記格納位置検出部にて検出されているか否かを判定する判定部と、前記位置情報に示されている格納位置が前記格納位置検出部にて検出されていないと前記判定部にて判定された場合は受信した制御コマンドの実行を禁じ、前記位置情報に示されている格納位置が前記格納位置検出部にて検出されていると前記判定部にて判定された場合は受信した制御コマンドの実行を許可するコマンド許否部とを含むことを特徴とする。
本発明の構成によれば、低信頼度のソフトウェアの格納位置を示す位置情報を記憶部に保存せず、高信頼度のソフトウェアの格納位置を示す位置情報を記憶部に保存しておけば、高信頼度のソフトウェアによって送信された制御コマンドの実行を禁止することなく、低信頼度のソフトウェアによって送信された制御コマンドの実行を禁止することが可能になる。また、本発明では、記憶部に記憶されている位置情報に示される格納位置が格納位置検出部にて検出されていないと判定部に判定された場合、制御コマンドの実行を禁止するようになっているだけであり、その判定結果をもたらした制御コマンドの送信に携わったソフトウェアとの情報通信までを禁止するわけではない。それゆえ、本発明の複合機によれば、制御コマンド以外の情報通信をブロックすることなく、高信頼度のソフトウェアによって送信された制御コマンドの実行を禁止せずに低信頼度のソフトウェアによって送信された制御コマンドの実行を禁止できるという効果を奏する。
本発明の複合機は、上記構成に加えて、前記ウェブサーバ部に受信される前記制御コマンドには、複数のソフトウェアが連携して送信する第1制御コマンドがあり、前記記憶部に記憶される位置情報のうちの少なくとも1つは、実行が許可される第1制御コマンドの送信に携わる複数のソフトウェアの各々の格納位置を列挙した第1位置情報であり、前記ウェブサーバ部が第1制御コマンドを受信した場合、(a)前記格納位置検出部は、受信した第1制御コマンドの送信に携わった複数のソフトウェアの各々の格納位置を検出し、(b)前記判定部は、前記記憶部を参照して、第1位置情報にて列挙されている全ての格納位置が前記格納位置検出部にて検出されているか否かを判定し、(c)前記コマンド許否部は、第1位置情報にて列挙されている全ての格納位置が前記格納位置検出部にて検出されていないと前記判定部にて判定された場合は前記第1制御コマンドの実行を禁じ、第1位置情報にて列挙されている全ての格納位置が前記格納位置検出部にて検出されていると前記判定部にて判定された場合は前記第1制御コマンドの実行を許可することを特徴とする。
この構成によれば、複数のソフトウェアの連携によって発信される第1制御コマンドについても実行の可否を正確に判定できる。例えば、ブラウザAと低信頼度のアプリケーションソフトウェアBとが連携して発信した制御コマンドについては実行を禁止する一方、前記のブラウザAと高信頼度のアプリケーションソフトウェアCとが連携して発信した制御コマンドについては実行を許可するといった設定が可能になる。
本発明の複合機は、上記構成に加えて、前記記憶部には、前記位置情報と、この位置情報に示される格納位置に格納されているソフトウェアを示すソフトウェア情報とが対応付けて記憶されており、前記判定部は、前記記憶部に記憶されている位置情報のうち、前記複合機にて利用されている最中のソフトウェアを示すソフトウェア情報に対応付けられている位置情報のみを参照して前記判定を行うことを特徴とする。
この構成によれば、高信頼度のソフトウェアが発行した制御コマンドであっても、複合機にて現在使用されていないソフトウェアが発行した制御コマンドの実行が禁止されるので、セキュリティが強化されるという効果を奏する。
本発明の複合機は、上記構成に加えて、前記複合機に挿入されたリムーバブルメディアから前記位置情報を含むパッケージ情報が前記複合機にインストールされると、前記パッケージ情報に含まれる前記位置情報を前記記憶部に登録する登録部を備えることを特徴とする。
この構成によれば、前記位置情報を含むパッケージ情報をインストールするだけで位置情報を複合機に登録でき、簡易に位置情報の登録を行えるというメリットを有する。また、前記位置情報の他に前記ソフトウェアを作動するために必要な各種情報を前記パッケージに含ませておけば、これら情報も一括して登録でき、登録作業の簡素化を図ることができる。
なお、本発明は、コンピュータによって実現されてもよく、この場合には、コンピュータを上記ウェブサーバ部として動作させるプログラム、およびそれを記録したコンピュータ読み取り可能な記録媒体も、本発明の範疇に入る。
本発明によれば、制御コマンド以外の情報通信をブロックすることなく、高信頼度のソフトウェアによって送信された制御コマンドの実行を禁止せずに低信頼度のソフトウェアによって送信された制御コマンドの実行を禁止できるという効果を奏する。
図1は、本実施形態の複合機制御システムの構成を示すブロック図である。 図2は、本実施形態の複合機の記憶部に記憶されている判定テーブルの一例を示す図である。 図3は、図1のウェブサーバ部17が制御コマンドを受信した際の処理の流れを示すフローチャートである。 図4(a)は、変形例にて用いられるアプリケーション登録テーブルを示す図であり、図4(b)は、変形例にて用いられる判定テーブルを示す図である。 図5(a)は、アプリケーションパッケージに含まれるアプリケーション名およびURLを示す図であり、図5(b)は、アプリケーションパッケージに含まれる項目種別、項目名、位置情報を示す図である。 図6は、あるアプリケーションに対応する位置情報等を記憶部の判定テーブルに登録する際の処理の流れを示したフローチャートである。
本発明の一実施形態について図1から図6に基づいて説明すると以下の通りである。以下では、本発明に係る複合機制御システムの一実施形態について説明する。
<複合機制御システム100の構成>
図1は、本実施形態に係る複合機制御システムの構成を示す図である。本実施形態に係る複合機制御システム100は、図1に示すように、複合機1と情報処理装置3とを含んでおり、複合機1と情報処理装置3とは通信ネットワーク50を介して接続されている。もちろん、複合機制御システム100に含まれる複合機1の台数は複数であってもよく、情報処理装置3の台数も複数であってもよい。
なお、通信ネットワーク50としては、LAN(Local Area Network)、シリアルケーブル、インターネット、または、他の有線回線もしくは無線回線などの通信回線を利用できる。そして、複合機1と情報処理装置3とは、HTTP(Hypertext Transfer Protocol)によって通信を行うようになっている。
本実施形態の複合機1は、情報処理装置3のアプリケーションと連携して複合機1の各種機能を実行するようになっている。
例えば、利用者が所望のアプリケーションの起動要求を複合機1に入力すると、この起動要求が複合機1から情報処理装置3へ送られ、情報処理装置3は、起動要求のあったアプリケーションを起動するようになっている。そして、情報処理装置3において起動中のアプリケーションが、HTTPによって、HTML(Hypertext Markup Language)形式の制御コマンド(例えば、スキャンジョブ、印刷ジョブ)を複合機1へ送信すると、複合機1のウェブサーバ部17が、この制御コマンドを受け取り、この制御コマンドの実行の可否を判定する。さらに、複合機1のウェブサーバ部17が当該制御コマンドの実行を許可すると、複合機1の各部がこの制御コマンドを実行するようになっている。
また、例えば、情報処理装置3のアプリケーションは、複合機1からの起動要求に応じて起動すると、当該アプリケーションの操作画面を示すHTMLデータを複合機1に送信するようになっている。複合機1のウェブブラウザ部15は、このHTMLデータを情報処理装置3から受信し、当該HTMLデータで示される操作画面を表示部11bに表示し、操作画面を介して入力された指示に応じた制御コマンドをウェブサーバ部17に送信するようになっている(つまり、ウェブブラウザ部15と情報処理装置3のアプリケーションとの連携によって制御コマンドがウェブブラウザ部15からウェブサーバ部17へ送信される)。その後、ウェブサーバ部17が、この制御コマンドを受け取り、この制御コマンドの実行の可否を判定する。そして、ウェブサーバ部17が当該制御コマンドの実行を許可すると、複合機1の各部がこの制御コマンドを実行するようになっている。
以下では複合機1および情報処理装置3の各々について詳細に説明する。
<複合機1の構成>
複合機1は、スキャナ、プリンタ、ファックス等が一体化された多機能装置であり、複数の機能(例えば、スキャン機能、印刷機能、通信機能など)を実行するものである。複合機1は、機器制御部10、操作部11、画像読取部12、画像形成部13、第1通信部14、ウェブブラウザ部15、記憶部16、および、ウェブサーバ部17を備えている。
操作部11は、ユーザに対して各種情報を通知(表示)するとともに、ユーザからの入力を受け付けるユーザインターフェイスである。操作部11は、各種の入力キーを含む入力部11aと、LCD(Liquid Crystal Display:液晶ディスプレイ)などの表示部11bとを備えている。なお、操作部11は、入力部11aと表示部11bとが一体として構成されたタッチパネルであってもよい。
画像読取部12は、スキャナと、原稿をスキャナの位置まで搬送する原稿搬送部とを含んでおり、原稿に示された文字や画像などを画像データとして読み取るものである。画像形成部13は、電子写真方式のプリンタであり、外部装置または画像読取部12から入力された画像データに対応する画像を印刷する装置である。
第1通信部14は、通信ネットワーク50を介して、情報処理装置3などの外部装置との間で通信するインターフェイスである。本実施形態では、第1通信部14は、情報処理装置3とHTTPを用いて通信する。なお、第1通信部14は、情報処理装置3から制御コマンド(HTTPリクエスト)を受信した場合、機器制御部10を介して前記制御コマンドをウェブサーバ部17へ送信し、操作画面を示すHTMLデータを情報処理装置3から受信した場合、機器制御部10を介して当該HTMLデータをウェブブラウザ部15へ送信するようになっている。
ウェブブラウザ部15は、ウェブブラウザのソフトウェアに従った動作を行うものである。特に、本実施形態のウェブブラウザ部15は、情報処理装置3が備える外部アプリケーション部31から、操作画面を示すHTMLデータを受信し、当該HTMLデータで示される操作画面を表示部11bに表示する。そして、ウェブブラウザ部15は、表示部11bに表示されている操作画面を介して入力された指示に応じた制御コマンドを、機器制御部10を介してウェブサーバ部17へ送信するようになっている。
記憶部16は、複合機1の制御に必要な各種情報、複合機1において取り扱われる画像データ等が保存される記憶装置である。また、本実施形態では、図2に示す判定テーブルが記憶部16に記憶されている。この判定テーブルについては後に詳述する。
機器制御部10は、複合機1が備える各部を制御する。具体的に、機器制御部10は、操作部11、画像読取部12、画像形成部13、第1通信部14、ウェブブラウザ部15、ウェブサーバ部17などの各部の動作を制御する。例えば、機器制御部10は、画像読取部12の動作を制御してスキャン処理を行い、画像データを取得する。また、機器制御部10は、画像形成部13の動作を制御して印刷処理を行い、入力された画像データに示される画像の印刷された用紙を出力する。
ウェブサーバ部17は、ウェブサーバのソフトウェアに従って動作するものである。ここで、ウェブサーバとは、インターネット上の情報システムであるWWW(World Wide Web)を構成するサーバ装置の機能を提供するソフトウェアである。
本実施形態のウェブサーバ部17は、第1通信部14および機器制御部10を介して情報処理装置3から制御コマンド(HTTPリクエスト)を受信した場合、または、ウェブブラウザ部15から機器制御部10を介して制御コマンドを受信した場合、この制御コマンドの実行を許可するか否かを判定する。なお、ウェブサーバ部17によって行われる判定の具体的内容については後に詳述する。
なお、ウェブサーバ部17は、制御コマンドの実行を許可すると判定した場合、制御コマンドに応じた処理の実行命令を機器制御部10に伝達する。この実行命令を受けた機器制御部10は、制御コマンドに応じた処理を複合機1の各部に実行させるようになっている。例えば、制御コマンドがスキャンジョブである場合、機器制御部10はスキャン処理を画像読取部12に実行させ、制御コマンドが印刷ジョブである場合、機器制御部10は印刷処理を画像形成部13に実行させるようになっている。
これに対し、ウェブサーバ部17は、制御コマンドの実行を許可しないと判定した場合、制御コマンドの実行が許可されなかった事を示すエラー通知を出力する。そして、情報処理装置3のアプリケーションから送信された制御コマンドに対するエラー通知は、ウェブサーバ部17から機器制御部10に送られ、機器制御部10から当該アプリケーションに送られるようになっている。これに対し、ウェブブラウザ部15と情報処理装置3のアプリケーションとの連携によってウェブブラウザ部15から送信された制御コマンドに対するエラー通知は、ウェブサーバブ17から機器制御部10に送られ、機器制御部10からウェブブラウザ部15に送られるようになっている。
そして、エラー通知を受けた機器制御部10は、制御コマンドに応じた処理の実行を複合機1に行わせず、エラー通知を受けた情報処理装置3のアプリケーションまたはウェブブラウザ15は、制御コマンドの実行が許可されなかったことを認識するようになっている。
なお、ウェブブラウザ部15は、エラー通知を受けた場合、表示部11bを介してエラー発生を利用者に通知するようになっていてもよい。
例えば、エラー通知を受けたウェブブラウザ部15が、当該ウェブブラウザ15と連携して制御コマンドを送信した情報処理装置3のアプリケーションに当該エラー通知を転送し、このエラー通知を受けた情報処理装置3のアプリケーションが、エラー画面の表示指示をウェブブラウザ部15へ送り、ウェブブラウザ部15がエラー画面を表示部11bに表示させるようになっていてもよい。
また、エラー通知を受けたウェブブラウザ部15が、エラー画面のリクエストを情報処理装置3のアプリケーションに送り、このリクエストを受けた情報処理装置3のアプリケーションが、エラー画面を示すHTMLデータをウェブブラウザ15に送り、ウェブブラウザ15がエラー画面を表示部11bに表示させるようになっていてもよい。
また、エラー通知を受けたウェブブラウザ15が、情報処理装置3のアプリケーションから受信済のHTMLデータに基づいてエラー画面を表示部11bに表示させるようになっていてもよい。
以上のように、本実施形態の複合機1は、(a)情報処理装置3から受信した制御コマンドに基づく処理を実行し、(b)情報処理装置3から供給されたHTMLデータに応じた操作画面を表示し、当該操作画面からの指示入力によって内部生成した制御コマンドに基づく処理を実行するようになっている。つまり、複合機1は、情報処理装置3と連携して各種処理を実行するようになっている。
<情報処理装置3の構成>
つぎに、情報処理装置3について説明する。情報処理装置3は、CPU(Central Processing Unit)や専用プロセッサなどの演算処理部、および、RAM(Random Access Memory)、ROM(Read Only memory)、ハードディスクなどの記憶装置により構成されるコンピュータであり、複合機1に対する制御サーバとして機能するものである。情報処理装置3は、図1に示されるように、第2通信部30と、外部アプリケーション部31と、外部アプリケーション記憶部32とを備えている。
第2通信部30は、通信ネットワーク50を介して複合機1と通信するものである。また、第2通信部30は、HTTPの通信プロトコルを用いて複合機1と通信する。外部アプリケーション記憶部32は、複合機1を制御するための各種の外部アプリケーション33を格納するものである。
外部アプリケーション部31は、複合機1から外部アプリケーション33の起動要求を受けると、起動要求された外部アプリケーション33を外部アプリケーション記憶部32から読み出し、読み出した外部アプリケーション33に基づいて各種情報処理を実行するものである。
例えば、外部アプリケーション部31は、複合機1から起動要求を受けた外部アプリケーション33に応じて、この外部アプリケーション33の操作画面を示すHTMLデータを複合機1へ送信する処理を行う。また、例えば、複合機1の操作部11から入力された利用者コマンドが複合機1から情報処理装置3へ伝送された場合、外部アプリケーション部31は、当該利用者コマンドに基づいて情報処理を行って制御コマンドを生成し、生成した制御コマンドを、第2通信部30を介して複合機1へ送信するようになっている。
<ウェブサーバ部17について>
つぎに、複合機1のウェブサーバ部17において実行される処理について詳細に説明する。図1に示すように、ウェブサーバ部17は、格納位置検出部17a、判定部17b、コマンド許否部17cを有する構成である。
格納位置検出部17aは、ウェブサーバ部17が制御コマンドを受け付けると、受け付けた制御コマンドの送信に携わったソフトウェアのURL(格納位置)を検出するブロックである。なお、情報処理装置3の外部アプリケーション33からウェブサーバ部17へ制御コマンドが送信されるパターンの場合、この制御コマンドの送信に携わったソフトウェアは情報処理装置3の外部アプリケーション33ということになる(以下では当該パターンを「第1パターン」と称すことがある)。また、情報処理装置3から供給されたHTMLデータに応じた操作画面をウェブブラウザ部15が表示部11bに表示し、当該操作画面からの指示入力によって生成した制御コマンドをウェブブラウザ部15がウェブサーバ部17へ送信するパターンの場合、この制御コマンドの送信に携わったソフトウェアは情報処理装置3の外部アプリケーション33とウェブブラウザ部15のウェブブラウザということになる(以下では当該パターンを「第2パターン」と称すことがある)。
まず、格納位置検出部17aは、ウェブサーバ部17のウェブサーバによって生成されるサーバ変数の「REMOTE_ADDR」を参照することにより、ウェブサーバ部17との間で通信接続されているソフトウェアのURLを検出するようになっている。それゆえ、情報処理装置3の外部アプリケーション33からウェブサーバ部17に制御コマンドが送信される第1パターンの場合、格納位置検出部17aは、サーバ変数の「REMOTE_ADDR」を参照することによって、外部アプリケーション33のURLを検出するようになっている。また、ウェブブラウザ部15からウェブサーバ部17へ制御コマンドが送信される第2パターンの場合、格納位置検出部17aは、サーバ変数の「REMOTE_ADDR」を参照することによって、ウェブブラウザ部15のウェブブラウザのURLを検出するようになっている。
また、ウェブブラウザ部15は、表示部11bに表示している操作画面からの指示に応じた制御コマンドをウェブサーバ部17へ送信する際、操作画面のHTMLデータの供給元である外部アプリケーション33のURLを当該制御コマンドのHTTPヘッダの「REFERER」に書き込むようになっている。そこで、格納位置検出部17aは、受信した制御コマンドのHTTPヘッダの「REFERER」を参照することによって、ウェブブラウザ部15にHTMLデータを供給している外部アプリケーション33のURLを検出するようになっている。
以上を纏めると、情報処理装置3の外部アプリケーション33から複合機1のウェブサーバ部17へ制御コマンドが送信される第1パターンの場合、格納位置検出部17aは、サーバ変数の「REMOTE_ADDR」を参照することで、外部アプリケーション33のURLを検出できる。これに対し、情報処理装置3から供給されたHTMLデータに応じた操作画面をウェブブラウザ部15が表示部11bに表示し、当該操作画面からの指示入力によって生成した制御コマンドをウェブブラウザ部15がウェブサーバ部17へ送信する第2パターンの場合、格納位置検出部17aは、サーバ変数の「REMOTE_ADDR」を参照することによってウェブブラウザ部15のURLを検出し、制御コマンドのHTTPヘッダの「REFERER」を参照することによって外部アプリケーション33のURLを検出できる。つまり、第1パターンの場合、外部アプリケーション33のURLが検出され、第2パターンの場合、外部アプリケーション33のURLとウェブブラウザ部15のウェブブラウザのURLとの組み合わせが検出されることになる。
なお、サーバ変数の「REMOTE_ADDR」に示されている情報は、ウェブサーバ17の通信先のIPアドレスであり、このIPアドレスはウェブサーバ17の通信先から得られる情報である。
また、ウェブブラウザ部15からウェブサーバ部17へ送られる制御コマンドのHTTPヘッダの「REFERER」には、ウェブブラウザ部15と接続されている外部アプリケーション33(ウェブブラウザ部15へHTML画面を供給している外部アプリケーション33)のURLが記入されているが、このURLは、ウェブブラウザ部15が外部アプリケーション33から得られた情報に基づいて記入したものである。
それゆえ、サーバ変数の「REMOTE_ADDR」やHTTPヘッダの「REFERER」に基づいて送信元ソフトウェアのURLを検出する格納位置検出部17aは、送信元から得られた情報に基づいて送信元のURLを検出するものといえる。
判定部17bは、記憶部16に格納されている判定テーブル(図2参照)に示されているID番号毎に、各ID番号に属する項目に示されている位置情報のURLと格納位置検出部17aにて検出されたURLとを対比することによって、各ID番号に属する項目に示されている位置情報のURLが格納位置検出部17aに検出されているものであるか否かを判定するブロックである。以下では、判定テーブル(制御コマンド許可情報テーブル)の詳細、判定部17bの処理の詳細を順に説明する。
図2は、判定テーブルの一例を示す図である。図2に示すように、判定テーブルには、ID番号が順に示され、各ID番号に属する項目種別,項目名,位置情報が示されている。ここで、本実施形態では、1つのID番号に属するURLの集合をもって位置情報とする。よって、図2では、ID番号1には1つのURL(http://example.com/app1/)が属しており、ID番号1に属する1つのURLが1つの位置情報に相当する。また、ID番号2には2つのURL(「http://localhost」と「http://example.com/app2/」)が属しており、この2つのURLの組み合わせが1つの位置情報に相当する。
言い換えると、図2では、ID番号1には、1つのURL(http://example.com/app1/)からなる位置情報が属しており、ID番号2には、2つのURL(「http://localhost」および「http://example.com/app2/」)からなる位置情報が属していることになる。
なお、複数のURLの組み合わせを示す位置情報の属するID番号(ID番号2)には、複数のサブID番号が付されており、各サブID番号にURLが1つずつ対応付けられている。
また、図2の判定テーブルにおいて、項目種別および項目名は、後述の判定処理において、その項目種別および項目名の属する項目に示されているURLと対比される対比対象を示したものである。つまり、ID番号が「1」の項目のURLは、サーバ変数の「REMOTE_ADDR」に記述されているURLと対比される。また、ID番号が「2」の項目のうち、サブID番号が「1」の項目のURLは、サーバ変数の「REMOTE_ADDR」に記述されているURLと対比され、サブID番号が「2」の項目のURLは、HTTPヘッダの「REFERER」に記述されているURLと対比される。
また、前記の位置情報は、実行が許可される制御コマンドの送信に携わるソフトウェアのURL、または、実行が許可される制御コマンドの送信に携われるソフトウェアのURLの組み合わせを示したものである。
すなわち、ウェブサーバ部17が制御コマンドを受信した際、サーバ変数の「REMOTE_ADDR」に記述されているURLと「http://example.com/app1/」とが一致する場合、判定部17bは、後述の判定処理において当該制御コマンドの実行を許可するものと判定することになる(図2のID番号1の位置情報を参照)。また、ウェブサーバ部17が制御コマンドを受信した際、サーバ変数の「REMOTE_ADDR」に記述されているURLと「http://localhost」とが一致し、且つ、HTTPヘッダの「REFERER」に記述されているURLと「http://example.com/app2/」とが一致する場合、判定部17bは、後述の判定処理において当該制御コマンドの実行を許可するものと判定する(図2のID番号2の位置情報を参照)。
なお、図2の「http://example.com/app1/」は、外部アプリケーション記憶部32に記憶されている外部アプリケーション33のうちの1つのURLを示したものであり、図2の「http://localhost」はウェブブラウザ部15のウェブブラウザのURLを示したものであり、図2の「http://example.com/app2/」は、外部アプリケーション記憶部32に記憶されている外部アプリケーション33のうちの1つのURLを示したものである。
つぎに、判定部17bの判定処理を説明する。判定部17bは、判定テーブルのID番号毎に、各ID番号に属する位置情報に含まれる全てのURLが格納位置検出部17aにて検出されたか否かを判定する判定処理を行う。なお、この判定処理は、値の小さなID番号から順に行う。
具体的に、判定部17bは、あるID番号において、当該ID番号に属する位置情報に含まれる全てのURLが格納位置検出部17aにて検出されたと判定した場合、その時点で判定処理を終了し、「真」の判定結果をコマンド許否部17cに伝達する。これに対し、判定部17bは、あるID番号において、当該ID番号に属する位置情報に含まれる全てのURLのうちの少なくとも1つが格納位置検出部17aにて検出されていないと判定した場合、そのID番号に対する判定処理を終了し、次のID番号に対して同様の判定処理を繰り返す。そして、判定部17bは、判定処理を繰り返した結果、全てのID番号について、位置情報に含まれるURLのうちの少なくとも1つが格納位置検出部17aにて検出されていないと判定した場合、「偽」の判定結果をコマンド許否部17cに伝達する。
つまり、1つのURLからなる位置情報の属するID番号(ID番号1)に対して判定処理が行われ、そのURLが格納位置検出部17aにて検出されたものと判定された場合、その時点で判定処理が打ち切られ、「真」の判定結果がコマンド許否部17cに伝達される。これに対し、1つのURLからなる位置情報の属するID番号(ID番号1)に対して判定処理が行われ、そのURLが格納位置検出部17aにて検出されていないと判定された場合、そのID番号に対する判定処理を終了し、次のID番号に対する判定処理が行われる。
また、複数のURLからなる位置情報の属するID番号(ID番号2)に対して判定処理が行われ、その位置情報に含まれる全てのURLが格納位置検出部17aにて検出されたものと判定された場合、その時点で判定処理が打ち切られ、「真」の判定結果がコマンド許否部17cに伝達される。これに対し、複数のURLからなる位置情報の属するID番号(ID番号2)に対して判定処理が行われ、その位置情報に含まれるURLのうちの少なくとも1つが格納位置検出部17aにて検出されていないと判定された場合、そのID番号に対する判定処理を終了し、次のID番号に対する判定処理が行われる。
したがって、ウェブサーバ部17が情報処理装置3から制御コマンドを受信する第1パターンにおいて、サーバ変数の「REMOTE_ADDR」に「http://example.com/app1/」が記述されている場合、格納位置検出部17aは、サーバ変数の「REMOTE_ADDR」から「http://example.com/app1/」を検出し、判定部17bは、ID番号1に対する判定処理において、ID番号1に属する位置情報に示されているURLが格納位置検出部17aにて検出されたものと判定し、「真」の判定結果をコマンド許否部17cに伝達する。
また、情報処理装置3から供給されたHTMLデータに応じた操作画面をウェブブラウザ部15が表示部11bに表示し、当該操作画面からの指示入力によって生成された制御コマンドをウェブサーバ部17がブラウザ部15から受信する第2パターンにおいて、サーバ変数の「REMOTE_ADDR」に「http://localhost」が記述され、HTTPヘッダの「REFERER」に「http://example.com/app2/」が記述されている場合、格納位置検出部17aおよび判定部17bは以下のように処理を行う。まず、格納位置検出部17aがサーバ変数の「REMOTE_ADDR」から「http://localhost」を検出し且つHTTPヘッダの「REFERER」から「http://example.com/app2/」を検出する。そして、判定部17bは、格納位置検出部17aがサーバ変数の「REMOTE_ADDR」から「http://localhost」を検出しているが「http://example.com/app1/」を検出していないため、ID番号1に対する判定処理において、ID番号1に属する位置情報に示されているURLが格納位置検出部17aにて検出されていないと判定する。これに対し、判定部17bは、格納位置検出部17aがサーバ変数の「REMOTE_ADDR」から「http://localhost」を検出し且つHTTPヘッダの「REFERER」から「http://example.com/app2/」を検出しているため、ID番号2に対する判定処理において、ID番号2に属する位置情報に含まれる全てのURLが格納位置検出部17aにて検出されたものと判定し、「真」の判定結果をコマンド許否部17cに伝達する。
コマンド許否部17cは、判定部17bから伝達された判定結果が「真」である場合、ウェブサーバ部17が受信した制御コマンドの実行を許可すると判定し、この制御コマンドに応じた処理の実行命令を機器制御部10に伝達する。これに対し、コマンド許否部17cは、判定部17bから伝達された判定結果が「偽」である場合、ウェブサーバ部17が受信した制御コマンドの実行を禁止すると判定し、エラー応答処理(エラー通知の出力)を行うようになっている。
つぎに、ウェブサーバ部17が制御コマンドを受信する際の処理の流れを図3のフローチャートに基づいて説明する。ウェブサーバ部17は、S101においてHTTPリクエストの受信を待機している。ウェブサーバ部17は、HTTPリクエストを受信すると(S101にてYES)、受信したHTTPリクエストが制御コマンドであるか否かを判定する(S102)。
ウェブサーバ部17は、受信したHTTPリクエストが制御コマンドでないと判定した場合は処理をS101へ戻し(S102にてNO)、受信したHTTPリクエストが制御コマンドであると判定した場合は処理をS103へ移行する(S102にてYES)。
S103において、ウェブサーバ部17は、受信した制御コマンドの送信に携わったソフトウェア(アプリケーション,ウェブブラウザ)のURLを検出する。S104において、ウェブサーバ部17は、記憶部16の判定テーブルの位置情報毎に、各位置情報に示されるURL(またはURLの組み合わせ)がS103にて検出されているか否かを判定する。ウェブサーバ部17は、検出されていると判定した場合、制御コマンドの実行を許可し(S105)、検出されていないと判定した場合、エラー応答処理(エラー通知の出力)を行う(S106)。S105またはS106の後、ウェブサーバ部17は、処理をS101へ戻すことになる。
以上のように、本実施形態の複合機1は、ソフトウェアによって送信される制御コマンドを受信するウェブサーバ部17と、実行が許可される制御コマンドを送信するソフトウェアのURLからなる位置情報が少なくとも1つ記述されている判定テーブルを記憶する記憶部16とを備えている。そして、ウェブサーバ部17は、受信した制御コマンドの送信に携わったソフトウェアのURLを検出する格納位置検出部17aと、前記位置情報のURLが格納位置検出部17aにて検出されているか否かを判定する判定部17bと、前記位置情報のURLが格納位置検出部17aにて検出されていないと判定部17bにて判定された場合は受信した制御コマンドの実行を禁じ、前記位置情報のURLが格納位置検出部17aにて検出されていると判定部17bにて判定された場合は受信した制御コマンドの実行を許可するコマンド許否部17cとを含む構成である。
このような構成によれば、低信頼度のソフトウェアのURLを示す位置情報を前記判定テーブルに記述せず、高信頼度のソフトウェアのURLを示す位置情報を前記判定テーブルに記述しておけば、高信頼度のソフトウェアによって送信された制御コマンドの実行を禁止することなく、低信頼度のソフトウェアによって送信された制御コマンドの実行を禁止することが可能になる。また、本実施形態の構成では、前記判定テーブルに記述されている位置情報のURLが格納位置検出部17aにて検出されていないと判定部17bに判定された場合は制御コマンドの実行を禁止するようになっているだけであり、その判定結果をもたらした制御コマンドの送信に携わったソフトウェアとの情報通信までを禁止するわけではない。それゆえ、本実施形態の複合機1によれば、制御コマンド以外の情報通信をブロックすることなく、高信頼度のソフトウェアによって送信された制御コマンドの実行を禁止せずに低信頼度のソフトウェアによって送信された制御コマンドの実行を禁止できるという効果を奏する。
また、本実施形態において、ウェブサーバ部17は、複数のソフトウェア(アプリケーション33およびウェブブラウザ)が連携して発信する制御コマンド(第1制御コマンドと称す)をも受信するものである。また、記憶部16に記憶されている判定テーブルに記述されている位置情報のうちの少なくとも1つは、実行が許可される第1制御コマンドの送信に携わる複数のソフトウェアの各々のURLを列挙した第1位置情報である。そして、ウェブサーバ部17が前記第1制御コマンドを受信した場合、(a)格納位置検出部17aは、第1制御コマンドの送信に携わった複数のソフトウェアの各々の格納位置を検出し、(b)判定部17bは、記憶部16の判定テーブルを参照して、第1位置情報にて列挙されている全ての格納位置が格納位置検出部17aにて検出されているか否かを判定し、(c)コマンド許否部17cは、第1位置情報にて列挙されている全てのURLが格納位置検出部17aにて検出されていないと判定部17bにて判定された場合は第1制御コマンドの実行を禁じ、第1位置情報にて列挙されている全ての格納位置が格納位置検出部17aにて検出されていると判定部17bにて判定された場合は第1制御コマンドの実行を許可するようになっている。
この構成によれば、複数のソフトウェアの連携によって発信される制御コマンドについても実行の可否を正確に判定できる。例えば、ウェブブラウザ部15のウェブブラウザと低信頼度のアプリケーションソフトウェアとの連携によって送信された第1制御コマンドについては実行を禁止する一方、前記のウェブブラウザと高信頼度のアプリケーションソフトウェアとの連携によって送信された第1制御コマンドについては実行を許可するといった設定が可能になる。
<変形例>
つぎに変形例について説明する。以下の変形例では、上記の実施の形態と異なる点について説明し、同じ点については大部分を省略し、一部のみ述べる。
本変形例においては、記憶部16には、図2の判定テーブルが示されておらず、図4(a)に示すアプリケーション登録テーブルと、図4(b)に示す判定テーブルとが記憶部16に記憶されている。
図4(a)のアプリケーション登録テーブルは、複合機1にて利用されるアプリケーションの名称と、当該アプリケーションを識別するためのアプリケーション番号と、当該アプリケーションのURLとが対応付けられているテーブルである。
図4(b)の判定テーブルは、基本的に図2の判定テーブルと同様であるが、アプリケーションのURLが記述されている各項目または各サブ項目において、その項目またはそのサブ項目に記されているURLに格納されているアプリケーションの番号が付されている点が図2の判定テーブルにない点である。つまり、図4(b)の判定テーブルでは、アプリケーションのURLを含む位置情報と、当該アプリケーションのアプリケーション番号とが対応付けられている。
そして、本変形例では、ウェブサーバ部17は、制御コマンドを受信した時、現在複合機1にて利用されているアプリケーションの名称を検出し、検出したアプリケーションの名称と図4(a)のアプリケーション登録テーブルとに基づいて、現在複合機1にて利用されているアプリケーションのアプリケーション番号を検出する番号検出部(不図示)を有している。
その後、格納位置検出部17aが制御コマンドの送信に携わったソフトウェアの格納位置を検出するが、この点は上記の実施の形態にて述べた内容と同じである。判定部17bは、記憶部16に格納されている判定テーブル(図4(b)参照)に示されているID番号のうち、番号検出部にて検出されたアプリケーション番号に対応付けられているID番号のみを選択する。そして、判定部17bは、選択したID番号についてのみ、当該ID番号に属する位置情報に示される全てのURLが格納位置検出部17aにて検出されたか否かの判定処理を行うようになっている。
そして、判定部17bが、あるID番号において、当該ID番号に属する位置情報に含まれる全てのURLが格納位置検出部17aにて検出されたと判定した場合、その時点で判定処理を終了し、「真」の判定結果をコマンド許否部17cに伝達する点は上記した実施の形態と同じである。これに対し、判定部17bは、あるID番号において、当該ID番号に属する位置情報に含まれる全てのURLのうちの少なくとも1つが格納位置検出部17aにて検出されていないと判定した場合、そのID番号に対する判定処理を終了し、次のID番号に対して同様の判定処理を繰り返す。そして、判定部17bは、判定処理を繰り返した結果、選択した全てのID番号について、位置情報に含まれるURLのうちの少なくとも1つが格納位置検出部17aにて検出されていないと判定した場合、「偽」の判定結果をコマンド許否部17cに伝達する。
つまり、本変形例では、記憶部16において、アプリケーション(ソフトウェア)のURLを示す位置情報と、このアプリケーションを示すアプリケーション番号(ソフトウェア情報)とが対応付けて記憶されている。そして、判定部17bは、記憶部16に記憶されている位置情報のうち、複合機1にて利用されている最中のアプリケーションを示すアプリケーション番号に対応付けられている位置情報のみを参照して前記判定を行うようになっている。
これにより、複合機にて現在利用されていないソフトウェアによって送信された制御コマンドについては実行されないことになるため、セキュリティが強化されることになる。なお、複合機にて現在利用されていないソフトウェアによって送信された制御コマンドの実行を禁止することによってセキュリティが強化される理由を以下にて説明する。
例えば、操作画面が同一または類似のアプリケーションAとBとがあり、アプリケーションAは、スキャンした画像データをアドレスaに送信する処理を行うソフトであり、アプリケーションBは、スキャンした画像データをアドレスbへ送信する処理を行うソフトであるとする。そして、アプリケーションAが複合機1にて利用(実行)されている最中において(つまりアプリケーションAの操作画面が複合機1にて表示されている最中)、複合機1が、操作画面の表示命令を示す制御コマンドをアプリケーションBから受信した場合、仮に当該制御コマンドの実行を許可してしまうと、複合機1に表示される画像はアプリケーションAの操作画面からアプリケーションBの操作画面に切り替わってしまい、且つ、アプリケーションAが実行されている状態からアプリケーションBが実行されている状態に移行されてしまう。このとき、アプリケーションAの操作画面とアプリケーションBの操作画面とは同一または類似であるため、ユーザーは実行されているアプリケーションが変わったことに気づくことなく、操作を続行してしまう危険性がある。そして、実行されているアプリケーションの変化に気づくことなく利用者が操作を続行すると、本来アドレスaに送信されるべき画像データがアドレスbに送信されてしまうことになり、情報漏洩が生じてしまう。これに対し、本変形例の構成によれば、複合機1にて利用されている最中ではないアプリケーションからの制御コマンドの実行は禁止されるため、以上のような情報漏洩を抑制できるのである(つまりセキュリティが強化される)。
<アプリケーションパッケージ>
つぎに、あるアプリケーション(以下では「アプリケーションC」とする)に対応する位置情報、項目名、項目種別、アプリケーション番号を図4(b)の判定テーブルに登録する方法を、図6のフローチャートに基づいて説明する。
まず、アプリケーションCに対応する位置情報、URL、項目種別、項目名、アプリケーション番号、アプリケーション名、識別情報を示したアプリケーションパッケージをリムーバブル記録媒体(例えばUSBメモリ)に保存する。なお、図5(a)は、アプリケーションパッケージに含まれるアプリケーション名およびURLを示す図であり、図5(b)は、アプリケーションパッケージに含まれる項目種別、項目名、位置情報を示す図である。
そして、アプリケーションパッケージ(パッケージ情報)を保存したリムーバブル記録媒体(リムーバブルメディア)を複合機1のスロットに挿入し、リムーバブル記録媒体に格納されているアプリケーションパッケージを複合機1にインストールする。
このインストールが開始されると、複合機1の機器制御部10は、アプリケーションパッケージに含まれている各情報を複合機1のメモリ(不図示)に展開する(S11)。
つぎに、機器制御部10は、メモリに展開された識別情報が有効であるか否かを判定する(S12)。この点について、以下具体的に説明する。まず、識別情報とは、アプリケーションパッケージの真正性を示す識別子であり、例えば、ベンダーキーが用いられる。この識別情報と同じ情報が複合機1に予め登録されている。そして、S12において、機器制御部10は、メモリに展開された識別情報と予め登録されている識別情報とを対比し、両情報が同一であれば「有効」と判定し、両情報が異なる場合は「無効」と判定するようになっている。
機器制御部10は、メモリに展開された識別情報を無効と判定した場合(S12にてNO)、メモリに展開されたアプリケーションパッケージの情報を記憶部16に登録することなく処理を終了する。
これに対し、機器制御部10は、メモリに展開された識別情報を有効と判定した場合(S12にてYES)、図5(a)に示されているアプリケーション名およびURLを、図4(a)のアプリケーション登録テーブルに登録する(S13)。このとき、図4(a)に示されるアプリケーション番号は機器制御部10によって割り振られる。
S13の処理の終了後、機器制御部10は、図5(b)に示される項目種別、項目名、位置情報と、S13にて割り振ったアプリケーション番号とを図4(b)の判定テーブルに登録する(S14)。この時、図4(b)の判定テーブルにおけるID番号は機器制御部10によって割り振られ、図5(b)のテーブルに示されるID番号は図4(b)の判定テーブルにおいてサブID番号として用いられる。機器制御部10は、S14の後、処理を終了する。
なお、以上にて説明した図6の処理は、図4(b)に示される判定テーブルに対する登録処理であるが、図2に示される判定テーブルに対する登録処理にも適用可能である。但し、図2に示される判定テーブルに対する登録処理では、S13の手順が省略され、且つ、S14において、アプリケーション番号の登録が省略される。また、図2に示される判定テーブルに対する登録処理では、図5(a)に示されるアプリケーション名およびURLをアプリケーションパッケージに含める必要はない。
以上示した処理によれば、アプリケーションパッケージが複合機1にインストールされると、機器制御部(登録部)10は、アプリケーションパッケージに含まれる位置情報、項目種別、項目名、アプリケーション名等の各情報を一括して記憶部16に登録することになる。それゆえ、登録処理の簡素化が図られるというメリットを有する。
また、アプリケーションパッケージにおいて、図5(a)や図5(b)に示される各情報の他、アプリケーションを作動するために必要な各種情報を前記パッケージに含ませておけば、当該情報も一括して登録でき、より一層の登録作業の簡素化を図ることができる。
さらに、以上の処理によれば、アプリケーションパッケージの識別情報の有効性を判定し、有効である場合にS13およびS14の登録が行われるようになっているため、信頼度の高いアプリケーションに対応する位置情報のみの登録が可能になる。また、本実施形態のアプリケーションパッケージは、リムーバブルメディアから複合機1にインストールされるものであり、通信ネットワーク50にて通信されるものではないので、前記の識別情報が通信ネットワーク50にて流出される危険性もない。
なお、以上の実施形態において、判定部17bは、ID番号毎に、各ID番号に属する位置情報に含まれる全てのURLが格納位置検出部17aにて検出されたか否かを判定する判定処理を行っている。この判定処理において、判定部17bは、位置情報の第1のURLと格納位置検出部17aにて検出されたURLとが完全同一の場合に限って前記位置情報の前記第1のURLが格納位置検出部17aにて検出されたものと認識するようになっていてもよいし、位置情報の第1のURLと格納位置検出部17aにて検出されたURLの先頭部分とが同一の場合も前記位置情報の第1のURLが格納位置検出部17aにて検出されたものと認識するようになっていてもよい。例えば、格納位置検出部17aにて検出されたURLが「http://example.com/app1/」の場合に限って図2のID番号1のURLが格納位置検出部17aにて検出されたものと判定されるようになっていてもよいし、格納位置検出部17aにて検出されたURLが「http://example.com/app1/」の場合のみならず、格納位置検出部17aにて「http://example.com/app1/page1.html」や「http://example.com/app1/somepage.html」が検出された場合も、図2のID番号1のURLが格納位置検出部17aにて検出されたものと判定されるようになっていてもよい。
また、本実施形態では、外部アプリケーションおよびウェブブラウザ等のソフトウェアの格納位置を示す情報としてURLが用いられているが、IPアドレスが用いられてもよい。
本発明は上述した実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能である。すなわち、請求項に示した範囲で適宜変更した技術的手段を組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
最後に、ウェブサーバ部17、ウェブブラウザ部15、機器制御部10の各ブロックは、ハードウェアロジックによって構成してもよいし、次のようにCPUを用いてソフトウェアによって実現してもよい。
すなわち、以上の各ブロックは、各機能を実現する制御プログラムの命令を実行するCPU(central processing unit)、上記プログラムを格納したROM(read only memory)、上記プログラムを展開するRAM(random access memory)、上記プログラムおよび各種データを格納するメモリ等の記憶装置(記録媒体)などを備えている。そして、本発明の目的は、上述した機能を実現するソフトウェアである制御プログラムのプログラムコード(実行形式プログラム、中間コードプログラム、ソースプログラム)をコンピュータで読み取り可能に記録した記録媒体を、上記複合機1に供給し、そのコンピュータ(またはCPUやMPU)が記録媒体に記録されているプログラムコードを読み出し実行することによっても、達成可能である。
上記記録媒体としては、例えば、磁気テープやカセットテープ等のテープ系、フロッピー(登録商標)ディスク/ハードディスク等の磁気ディスクやCD−ROM/MO/MD/DVD/CD−R等の光ディスクを含むディスク系、ICカード(メモリカードを含む)/光カード等のカード系、あるいはマスクROM/EPROM/EEPROM/フラッシュROM等の半導体メモリ系などを用いることができる。
また、複合機1を通信ネットワークと接続可能に構成し、上記プログラムコードを通信ネットワークを介して供給してもよい。この通信ネットワークとしては、特に限定されず、例えば、インターネット、イントラネット、エキストラネット、LAN、ISDN、VAN、CATV通信網、仮想専用網(virtual private network)、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、通信ネットワークを構成する伝送媒体としては、特に限定されず、例えば、IEEE1394、USB、電力線搬送、ケーブルTV回線、電話線、ADSL回線等の有線でも、IrDAやリモコンのような赤外線、Bluetooth(登録商標)、802.11無線、HDR、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。
本発明は、複写、スキャン、FAXなどの複数の機能を実現する複合機に適用できる。
1 複合機
3 情報処理装置
10 機器制御部(登録部)
11 操作部
11a 入力部
11b 表示部
15 ウェブブラウザ部
16 記憶部
17 ウェブサーバ部
17a 格納位置検出部
17b 判定部
17c コマンド許否部
31 外部アプリケーション部
32 外部アプリケーション記憶部
33 外部アプリケーション
50 通信ネットワーク
100 複合機制御システム


Claims (5)

  1. ソフトウェアによって送信される制御コマンドを受信すると、この制御コマンドの実行を許可するか否かを判定する実行許可判定部と、
    実行が許可される制御コマンドを送信するソフトウェアの格納位置を示した位置情報を少なくとも1つ記憶する記憶部とを備え、
    前記実行許可判定部は、
    受信した制御コマンドの送信に携わったソフトウェアの格納位置を検出する格納位置検出部と、
    前記位置情報に示されている格納位置が前記格納位置検出部にて検出されているか否かを判定する判定部と、
    前記位置情報に示されている格納位置が前記格納位置検出部にて検出されていないと前記判定部にて判定された場合は受信した制御コマンドの実行を禁じ、前記位置情報に示されている格納位置が前記格納位置検出部にて検出されていると前記判定部にて判定された場合は受信した制御コマンドの実行を許可するコマンド許否部とを含み、
    前記実行許可判定部に受信される前記制御コマンドには、複数のソフトウェアが連携して送信する第1制御コマンドがあり、
    前記記憶部に記憶される位置情報のうちの少なくとも1つは、実行が許可される第1制御コマンドの送信に携わる複数のソフトウェアの各々の格納位置を列挙した第1位置情報であり、
    前記実行許可判定部が第1制御コマンドを受信した場合、(a)前記格納位置検出部は、受信した第1制御コマンドの送信に携わった複数のソフトウェアの各々の格納位置を検出し、(b)前記判定部は、前記記憶部を参照して、第1位置情報にて列挙されている全ての格納位置が前記格納位置検出部にて検出されているか否かを判定し、(c)前記コマンド許否部は、第1位置情報にて列挙されている全ての格納位置が前記格納位置検出部にて検出されていないと前記判定部にて判定された場合は前記第1制御コマンドの実行を禁じ、第1位置情報にて列挙されている全ての格納位置が前記格納位置検出部にて検出されていると前記判定部にて判定された場合は前記第1制御コマンドの実行を許可することを特徴とする複合機。
  2. 前記記憶部には、前記位置情報と、この位置情報に示される格納位置に格納されているソフトウェアを示すソフトウェア情報とが対応付けて記憶されており、
    前記判定部は、前記記憶部に記憶されている位置情報のうち、前記複合機にて利用されている最中のソフトウェアを示すソフトウェア情報に対応付けられている位置情報のみを参照して前記判定を行うことを特徴とする請求項1に記載の複合機。
  3. 前記複合機に挿入されたリムーバブルメディアから前記位置情報を含むパッケージ情報が前記複合機にインストールされると、前記パッケージ情報に含まれる前記位置情報を前記記憶部に登録する登録部を備えることを特徴とする請求項1または2に記載の複合機。
  4. 請求項1の複合機を制御する制御プログラムであって、コンピュータを前記実行許可判定部として動作させる制御プログラム。
  5. 請求項4に記載の制御プログラムを記憶したコンピュータ読み取り可能な記録媒体。


JP2010237453A 2010-10-22 2010-10-22 複合機、制御プログラムおよび記録媒体 Active JP5133387B2 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2010237453A JP5133387B2 (ja) 2010-10-22 2010-10-22 複合機、制御プログラムおよび記録媒体
US13/273,574 US8751764B2 (en) 2010-10-22 2011-10-14 Multifunction peripheral and storage medium
CN201410482965.9A CN104202495B (zh) 2010-10-22 2011-10-21 复合机、复合机控制系统
CN201110322451.3A CN102457638B (zh) 2010-10-22 2011-10-21 复合机
US14/263,028 US9170762B2 (en) 2010-10-22 2014-04-28 Multifunction peripheral and storage medium
US14/858,331 US9762771B2 (en) 2010-10-22 2015-09-18 Multifunction peripheral and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010237453A JP5133387B2 (ja) 2010-10-22 2010-10-22 複合機、制御プログラムおよび記録媒体

Publications (2)

Publication Number Publication Date
JP2012090229A JP2012090229A (ja) 2012-05-10
JP5133387B2 true JP5133387B2 (ja) 2013-01-30

Family

ID=45973965

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010237453A Active JP5133387B2 (ja) 2010-10-22 2010-10-22 複合機、制御プログラムおよび記録媒体

Country Status (3)

Country Link
US (3) US8751764B2 (ja)
JP (1) JP5133387B2 (ja)
CN (2) CN102457638B (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102009032821A1 (de) * 2008-10-28 2010-04-29 Giesecke & Devrient Gmbh Speichermedium mit unterschiedlichen Zugriffsmöglichkeiten
JP5133387B2 (ja) 2010-10-22 2013-01-30 シャープ株式会社 複合機、制御プログラムおよび記録媒体
US20140184854A1 (en) * 2012-12-28 2014-07-03 Motorola Mobility Llc Front camera face detection for rear camera zoom function
US9455876B1 (en) * 2013-02-01 2016-09-27 Ingram Micro Inc. Method and standard for integrating applications into a cloud
JP6642031B2 (ja) * 2016-01-20 2020-02-05 株式会社リコー 情報処理システム、情報処理方法、情報処理装置および情報処理プログラム
JP7205130B2 (ja) * 2018-09-21 2023-01-17 京セラドキュメントソリューションズ株式会社 情報処理装置、ウェブアプリケーションプログラム及び情報処理システム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002259339A (ja) 2001-02-26 2002-09-13 Toshiba Tec Corp ネット上資源アクセス制限処理プログラム及びネット上資源アクセス制限処理方法並びに装置
JP3940356B2 (ja) 2002-12-27 2007-07-04 日本アイ・ビー・エム株式会社 プロキシ・サーバ、アクセス制御方法、アクセス制御プログラム
US20040168047A1 (en) * 2003-02-24 2004-08-26 Matsushita Electric Industrial Co., Ltd. Processor and compiler for creating program for the processor
WO2005052769A1 (ja) * 2003-11-28 2005-06-09 Matsushita Electric Industrial Co.,Ltd. データ処理装置
JP2005242994A (ja) * 2004-01-27 2005-09-08 Ricoh Co Ltd サービス提供装置、情報処理装置、サービス提供方法、情報処理方法、サービス提供プログラム、情報処理プログラム及び記録媒体
CN100474302C (zh) * 2004-12-28 2009-04-01 佳能株式会社 图像处理装置及控制方法
JP4358203B2 (ja) 2006-05-01 2009-11-04 シャープ株式会社 複合機、複合機の制御方法、制御装置、制御装置の制御方法、複合機制御システム、制御プログラム、およびコンピュータ読み取り可能な記録媒体
JP2008186160A (ja) * 2007-01-29 2008-08-14 Fuji Xerox Co Ltd 文書表示装置およびプログラム
JP4939382B2 (ja) * 2007-11-28 2012-05-23 ルネサスエレクトロニクス株式会社 情報処理装置及びそのプログラム実行制御方法
JP5448542B2 (ja) * 2009-04-15 2014-03-19 キヤノン株式会社 情報処理装置、制御方法、及びプログラム
JP5133387B2 (ja) 2010-10-22 2013-01-30 シャープ株式会社 複合機、制御プログラムおよび記録媒体

Also Published As

Publication number Publication date
US20140233054A1 (en) 2014-08-21
CN104202495B (zh) 2017-08-25
US8751764B2 (en) 2014-06-10
US9762771B2 (en) 2017-09-12
CN102457638B (zh) 2014-10-29
US9170762B2 (en) 2015-10-27
CN104202495A (zh) 2014-12-10
JP2012090229A (ja) 2012-05-10
US20160156809A1 (en) 2016-06-02
CN102457638A (zh) 2012-05-16
US20120102283A1 (en) 2012-04-26

Similar Documents

Publication Publication Date Title
US8910304B2 (en) Information processing device and multifunction peripheral
US9143651B2 (en) Image forming apparatus, charging information recording method, and recording medium
JP5987656B2 (ja) 情報処理システム、情報処理装置、情報処理方法、及び情報処理プログラム
JP5240264B2 (ja) 画像情報処理装置、画像情報処理システムおよびコンピュータプログラム
JP5133387B2 (ja) 複合機、制御プログラムおよび記録媒体
JP5471642B2 (ja) 電子機器、利用制限方法、及び利用制限プログラム
US7430669B2 (en) Image forming apparatus, launching method of program in the apparatus, image forming system, and program and storage medium therefor
JP4602947B2 (ja) ファクシミリ通信システムおよび画像処理装置
US20110067088A1 (en) Image processing device, information processing method, and recording medium
US20080289051A1 (en) Information processing apparatus and system, computer readable recording medium, and information processing method
JP6160753B2 (ja) 情報処理システム、情報処理装置、情報処理方法、及び情報処理プログラム
JP2006092182A (ja) 画像処理装置およびその制御方法および制御プログラム
JP5175629B2 (ja) アクティベーションシステム
JP2012105000A (ja) 複合機制御システム、制御プログラム、記録媒体
JP5285970B2 (ja) キー管理サーバ装置
JP5124241B2 (ja) 情報処理装置、情報処理方法、情報処理プログラム及び記録媒体
JP2005267405A (ja) 情報処理装置
JP5456704B2 (ja) 画像形成装置
JP2011257983A (ja) セキュリティ管理システム、セキュリティ管理方法およびセキュリティ管理プログラム
JP5094689B2 (ja) プリンタドライバ、プログラム及び記録媒体
JP2009301474A (ja) 画像形成装置、キー管理サーバ装置およびアクティベーションシステム
JP2009303117A (ja) 画像形成装置、キー管理サーバ装置およびアクティベーションシステム
JP5091777B2 (ja) 画像形成装置、キー管理サーバ装置およびディアクティベーションシステム
JP5014191B2 (ja) 機器及び操作権限判定方法
JP2010125712A (ja) 画像形成装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120806

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120821

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120910

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20121009

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121107

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151116

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5133387

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150