説明

情報処理装置、情報処理方法、及びプログラム

【課題】複数のソフトウェア部品を組み合わせて構築される処理フローに関する認証情報の入力操作を簡便化することのできる情報処理装置、情報処理方法、及びプログラムの提供を目的とする。
【解決手段】画像読み取り手段によって読み取られた画像データに対する処理フローが定義されたフロー定義情報を記憶するフロー定義記憶手段と、前記フロー定義情報に基づいて、それぞれが前記処理フローにおける一部の処理を実行する複数の処理実行手段を特定し、前記複数の処理実行手段の中で認証を必要とする各処理実行手段に対応する認証情報の項目を示す認証情報項目情報を前記認証を必要とする各処理実行手段より取得し、取得された前記認証情報項目情報を統合して一つの認証画面を表示させる認証画面定義情報を生成する認証画面生成手段とを有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法、及びプログラムに関し、特に複数のソフトウェア部品を組み合わせて構築される処理フローを実行する情報処理装置、情報処理方法、及びプログラムに関する。
【背景技術】
【0002】
近年の画像形成装置では、ソフトウェアプログラムに関するインタフェースが公開され、サードベンダ等、画像形成装置のメーカー以外によって開発されたソフトウェアプログラムによって機能強化が可能とされている。斯かる機能強化により、ユーザの業務システムと画像形成装置との連携等が可能となり、画像形成装置とユーザの業務との密接度を高めることができる。
【0003】
画像形成装置と業務システムとの連携例として、ネットワーク配信システムが挙げられる。ネットワーク配信システムは、画像形成装置においてスキャンされた画像データを所定のコンピュータに自動的に配信するというものである。例えば、特許文献1には、一つ以上の処理部を任意に組み合わせて配信処理の一連の流れを構築可能なネットワーク配信システムが記載されている。特許文献1に記載された技術によれば、ユーザの業務フローに即して処理部の組み合わせを変化させることにより、ユーザの業務フローに適した配信フローを簡便に構築することができる。
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、特許文献1における処理部に関しても、当該処理部を実装するためのインタフェースを公開し、処理部をプラグインとして構成可能とすることが考えられる。各プラグインを必要に応じて実装することにより、ユーザの業務フローとの密接度をより高めることが可能となる。
【0005】
処理部がプラグイン化されることにより、プラグインごとにユーザに利用制限をかけることも可能となる。例えば、或るプラグインについては、所定のユーザに限って利用を許可するといった具合である。この場合、プラグインの実行時に認証処理が必要とされる
また、プラグイン自体に利用制限がかけられていなくても、プラグインが実行する処理において認証が必要される場合もある。例えば、配信処理を実行するプラグインにおいて、配信処理に利用する通信プロトコル上の認証が必要とされる場合等である。この場合にも、プラグインの実行時に認証処理が必要とされる。
【0006】
プラグインの自由度(ひいては、ネットワーク配信システムの拡張性)を高めることを考慮すれば、各プラグインが必要とする認証情報は、それぞれのプラグインで決定可能であることが望ましい。
【0007】
しかしながら、配信フローのステップが進むごとに当該ステップを実行するプラグインに対応した認証画面が表示され、認証情報の入力が要求とされるのは、ユーザにとって非常に煩雑であるという問題がある。極端な例では、配信フローの最後のステップが完了するまで、認証情報の入力のためにユーザはその場(配信フローの実行指示を入力した場所)を離れることができない可能性もある。
【0008】
本発明は、上記の点に鑑みてなされたものであって、複数のソフトウェア部品を組み合わせて構築される処理フローに関する認証情報の入力操作を簡便化することのできる情報処理装置、情報処理方法、及びプログラムの提供を目的とする。
【課題を解決するための手段】
【0009】
そこで上記課題を解決するため、本発明は、画像読み取り手段によって読み取られた画像データに対する処理フローが定義されたフロー定義情報を記憶するフロー定義記憶手段と、前記フロー定義情報に基づいて、それぞれが前記処理フローにおける一部の処理を実行する複数の処理実行手段を特定し、前記複数の処理実行手段の中で認証を必要とする各処理実行手段に対応する認証情報の項目を示す認証情報項目情報を前記認証を必要とする各処理実行手段より取得し、取得された前記認証情報項目情報を統合して一つの認証画面を表示させる認証画面定義情報を生成する認証画面生成手段とを有する。
【0010】
このような情報処理装置では、複数のソフトウェア部品を組み合わせて構築される処理フローに関する認証情報の入力操作を簡便化することができる。
【発明の効果】
【0011】
複数のソフトウェア部品を組み合わせて構築される処理フローに関する認証情報の入力操作を簡便化することができる。
【図面の簡単な説明】
【0012】
【図1】本発明の実施の形態におけるネットワーク配信システムの構成例を示す図である。
【図2】本発明の実施の形態における配信サーバのハードウェア構成例を示す図である。
【図3】本発明の実施の形態における配信サーバの機能構成例を示す図である。
【図4】本発明の実施の形態における複合機のハードウェア構成例を示す図である。
【図5】フロー定義生成時の配信サーバによる処理手順を説明するためのシーケンス図である。
【図6】フロー定義生成画面の表示例を示す図である。
【図7】フロー定義データの例を示す図である。
【図8】本実施の形態において画像変換プラグインに対応するプラグイン認証画面データの例を示す図である。
【図9】本実施の形態においてフォルダ配信プラグインに対応するプラグイン認証画面データの例を示す図である。
【図10】本実施の形態における認証画面の表示例を示す図である。
【図11】本実施の形態の認証画面定義データの例を示す図である。
【図12】本実施の形態の認証画面定義データの例を示す図である。
【図13】処理フロー実行時の処理手順を説明するためのシーケンス図である。
【図14】フロー選択画面の表示例を示す図である。
【図15】認証情報の構成例を示す図である。
【図16】認証処理の処理手順を説明するためのシーケンス図である。
【図17】認証制御部による統合的な認証結果の判定処理の処理手順を説明するためのフローチャートである。
【図18】統合的な認証結果の具体例を示す図である。
【図19】処理フローの実行処理の処理手順を説明するためのシーケンス図である。
【発明を実施するための形態】
【0013】
以下、図面に基づいて本発明の実施の形態を説明する。図1は、本発明の実施の形態におけるネットワーク配信システムの構成例を示す図である。同図において、ネットワーク配信システム1は、配信サーバ10、複合機20、ファイルサーバ30、Webサーバ40、及びSMTP(Simple Mail Transfer Protocol)サーバ50等を有する。配信サーバ10と、ファイルサーバ30、Webサーバ40、及びSMTPサーバ50とはLAN(Local Area Network)又はインターネット等のネットワーク61(有線又は無線の別は問わない。)を介して接続されている。また、配信サーバ10と複合機20とは、LAN又はインターネット等のネットワーク62(有線又は無線の別は問わない。)を介して接続されている。
【0014】
複合機20は、スキャン機能、コピー機能、プリンタ機能、ファクシミリ機能などを一つの筐体に搭載した画像形成装置である。複合機20は、スキャナ機能により紙媒体等をスキャン処理して画像データを生成し、生成された画像データを配信サーバ10に送信する。なお、本実施の形態では、画像データを入力する画像形成装置として、複合機を適用した例を示しているが、画像データを入力可能な画像形成装置であれば、スキャナ装置、ファクシミリ装置、コピー装置等いずれの装置を適用してもよい。
【0015】
配信サーバ10は、複合機20でスキャンされた画像データを受信して、後述するフロー定義データに従って種種の処理や配信処理を実行するPC(Personal Computer)又はワークステーション等のコンピュータである。
【0016】
ファイルサーバ30は、ネットワーク61上で共有するファイルを蓄積して管理するコンピュータである。Webサーバ40は、いわゆるWebサーバである。SMTPサーバ50は、メール送信プロトコルであるSMTPに準拠した電子メールの送信処理を実行するサーバである。ファイルサーバ30、Webサーバ40、及びSMTP103の各サーバは、配信サーバ10による配信処理における配信先として位置付けられる。
【0017】
次に、配信サーバ10の詳細について説明する。図2は、本発明の実施の形態における配信サーバのハードウェア構成例を示す図である。図2の配信サーバ10は、それぞれバスBで相互に接続されているドライブ装置100と、補助記憶装置102と、メモリ装置103と、CPU104と、インタフェース装置105と、表示装置106と、入力装置107とを有する。
【0018】
配信サーバ10での処理を実現するプログラムは、CD−ROM等の記録媒体101によって提供される。プログラムを記録した記録媒体101がドライブ装置100にセットされると、プログラムが記録媒体101からドライブ装置100を介して補助記憶装置102にインストールされる。但し、プログラムのインストールは必ずしも記録媒体101より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置102は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
【0019】
メモリ装置103は、プログラムの起動指示があった場合に、補助記憶装置102からプログラムを読み出して格納する。CPU104は、メモリ装置103に格納されたプログラムに従って配信サーバ10に係る機能を実現する。インタフェース装置105は、ネットワークに接続するためのインタフェースとして用いられる。表示装置106はプログラムによるGUI(Graphical User Interface)等を表示する。入力装置107はキーボード及びマウス等で構成され、様々な操作指示を入力させるために用いられる。
【0020】
図3は、本発明の実施の形態における配信サーバの機能構成例を示す図である。同図において、配信サーバ10は、フィルタプラグイン11、出力プラグイン12、認証プラグイン13、フロー実行制御部14、認証制御部15、フロー定義生成部16、認証画面生成部17、フロー選択画面生成部18、フロー定義データ180、及び認証画面定義データ190等を有する。
【0021】
フロー定義データ180は、複合機20によってスキャン入力され、複合機20から受信される画像データを配信するために実行される処理の流れ(処理フロー)が定義されたデータである。
【0022】
フィルタプラグイン11及び出力プラグイン12は、処理フローを構成する一部又は全部の処理(ステップ)を実行するソフトウェアコンポーネントである。フィルタプラグイン11は、画像データに対する変換処理等、配信に至るまでの中間的な処理を実行する。出力プラグイン12は、配信(出力)処理を実行する。なお、本実施の形態では、フィルタプラグイン11又は出力プラグイン12を処理順に組み合わせることによって処理フローが定義される。
【0023】
図3では、フィルタプラグイン11として画像変換プラグイン111が例示されている。画像変換プラグイン111は、所定の形式(例えば、TIFF形式)の画像データを他の所定の形式(例えば、PDF形式)のデータへ変換する。
【0024】
また、出力プラグイン121として、Web配信プラグイン121、フォルダ配信プラグイン122、メール配信プラグイン123、及びFTP配信プラグイン124が例示されている。Web配信プラグイン121は、自らに入力されたデータをWebDAV(Web-based Distributed Authoring and Versioning)によってWebサーバ40に配信する。フォルダ配信プラグイン122は、自らに入力されたデータをファイルサーバ30のファイルシステムにおける所定のフォルダに配信する。メール配信プラグイン123は、自らに入力されたデータをSMTPサーバ50を介して所定のメールアドレス宛に配信する。FTP配信プラグイン124は、自らに入力されたデータをFTP(File Transfer Protocol)によってファイルサーバ30等に配信する。
【0025】
フロー実行制御部14は、フロー定義データ180の定義内容にしたがって処理フローの実行を制御する。より詳しくは、フロー実行制御部14は、フロー定義データ180に定義された順番でフィルタプラグイン11又は出力プラグイン12に処理を実行させる。
【0026】
フロー定義生成部16は、ユーザの指示入力にしたがってフロー定義データ16を生成又は編集する。
【0027】
フロー選択画面生成部18は、実行対象とする処理フローを選択させるための画面(フロー選択画面)の定義データ(フロー選択画面データ)を生成する。
【0028】
認証画面定義データ190は、処理フローの実行前に行われるユーザ認証に利用される認証画面の構成情報が定義されたデータである。
【0029】
認証プラグイン13は、認証画面に入力された認証情報に基づいて認証処理を実行するソフトウェアコンポーネントである。同図では、認証プラグイン13として、認証プラグインA131及び認証プラグインB132が例示されている。
【0030】
各認証プラグイン13が、認証情報を構成するいずれのパラメータ(以下、「認証情報項目」という。)を利用してどのような認証処理を実行するかについては、各認証プラグイン13の実装に依存する。
【0031】
なお、各認証プラグイン13は、いずれかのフィルタプラグイン11又は出力プラグイン12に関連付き、各認証プラグイン13による認証結果は、関連付けられたフィルタプラグイン11又は出力プラグイン12の利用の許否の判定材料や処理フローの実行の可否の判定材料等として利用される。本実施の形態において、認証プラグインA131は、画像変換プラグイン111に関連付いていることとし、認証プラグインB132は、フォルダ配信プラグイン122に関連付いていることとする。フィルタプラグイン11又は出力プラグイン12と認証プラグイン13との関連は、フィルタプラグイン11又は出力プラグイン12において管理される。すなわち、フィルタプラグイン11又は出力プラグイン12は、自らの利用の許否を判定させるための認証プラグイン13の識別情報を有して(例えば、内蔵して)いる。又は、ファイル等の編集可能なデータ内においてフィルタプラグイン11又は出力プラグイン12と認証プラグイン13との関連が定義されていてもよい。なお、認証を必要としないフィルタプラグイン11又は出力プラグイン12は、認証プラグイン12への関連を有さない。認証の要否は、各フィルタプラグイン11又は出力プラグイン12の実装に依存する。
【0032】
ところで、本実施の形態では、任意に追加(インストール)又は削除(アンインストール)可能なソフトウェアコンポーネントを「プラグイン」という。したがって、フィルタプラグイン11、出力プラグイン12、及び認証プラグイン13は、必要に応じて配信サーバ10に追加又は削除される。各プラグインが利用するAPI(Application Program Interface)は公開されており、サードベンダによっても各プラグインを開発することが可能である。ここでいうAPIとは、例えば、フィルタプラグイン11及び出力プラグイン12であれば、フロー実行制御部14とのインタフェースをいう。また、認証プラグイン13であれば、認証制御部15とのインタフェースをいう。
【0033】
認証制御部15は、認証処理全体を制御する。より詳しくは、認証制御部15は、実行対象とされている処理フローにおいて利用されるフィルタプラグイン11又は出力プラグイン12に関連付けられている各認証プラグイン13に認証処理を実行させ、各認証プラグイン13による応答(認証の成否)を統合して、全体としての認証の成否を判定する。
【0034】
認証画面生成部17は、フロー定義データ180に定義されている処理フローにおいて利用対象とされているフィルタプラグイン11又は出力プラグイン12より、各フィルタプラグイン11又は出力プラグイン12の利用の許否を判定するための必要な認証情報項目を取得し、取得された情報に基づいて認証画面定義データ190を生成する。
【0035】
次に、複合機の詳細について説明する。図4は、本発明の実施の形態における複合機のハードウェア構成例を示す図である。
【0036】
図4において、複合機20は、コントローラ21、スキャナ22、プリンタ23、モデム24、操作パネル25、ネットワークインタフェース26、及びSDカードスロット27等のハードウェアを有する。
【0037】
コントローラ21は、CPU211、RAM212、ROM213、及びHDD214等を有する。ROM213には、各種のプログラム(例えば、配信サーバ10と連携して配信ジョブを実行する配信アプリケーション等)やプログラムによって利用されるデータ等が記録されている。RAM212は、プログラムをロードするための記憶領域や、ロードされたプログラムのワーク領域等として用いられる。CPU211は、RAM212にロードされたプログラムを処理することにより、各種の機能を実現する。HDD214には、プログラムやプログラムが利用する各種のデータ等が記録される。
【0038】
スキャナ22は、原稿より画像データを読み取るためのハードウェアである。プリンタは13、画像データを印刷用紙に印刷するためのハードウェアである。モデム24は、電話回線に接続するためのハードウェアであり、FAX通信による画像データの送受信を実行するために用いられる。操作パネル25は、ユーザからの入力の受け付けを行うめのボタン等の入力手段や、液晶パネル等の表示手段を備えたハードウェアである。ネットワークインタフェース26は、LAN等のネットワーク(有線又は無線の別は問わない。)に接続するためのハードウェアである。SDカードスロット27は、SDカード80に記録されたプログラムを読み取るために利用される。すなわち、複合機20では、ROM213に記録されたプログラムだけでなく、SDカード80に記録されたプログラムもRAM212にロードされ、実行されうる。
【0039】
以下、ネットワーク配信システム1の処理手順について説明する。図5は、フロー定義生成時の配信サーバによる処理手順を説明するためのシーケンス図である。
【0040】
配信サーバ10に対するユーザ(例えば、システム管理者)による指示入力に応じ、フロー定義生成部16は、フロー定義生成画面を表示装置106に表示させる(S101)。
【0041】
図6は、フロー定義生成画面の表示例を示す図である。同図において、フロー定義生成画面500は、フィルタプラグイン一覧表示領域510、出力プラグイン一覧表示領域520、及び編集領域530等を有する。
【0042】
フィルタプラグイン一覧表示領域510には、配信サーバ10にインストールされているフィルタプラグイン11ごとにボタンが表示される。出力プラグイン一覧表示領域520には、配信サーバ10にインストールされている出力プラグイン12ごとにボタンが表示される。
【0043】
編集領域530は、処理フローの定義を生成するための領域である。すなわち、ユーザは、フィルタプラグイン一覧表示領域510又は出力プラグイン一覧表示領域520におけるボタンをドラッグアンドドロップにより編集領域530の所望の位置に配置することにより、処理フローを定義することができる。同図では、スキャンされた画像データに対して二つのパスが並列的に実行される処理フローが定義された例が示されている。一つ目のパスは、スキャンされた画像データを画像変換プラグイン111によって変換し、変換結果をフォルダ配信プラグイン123が配信するといったものである。二つ目のパスは、スキャンされた画像データをメール配信プラグイン123がメール配信するといったものである。本実施の形態において「パス」とは、処理フローにおける末端の出力プラグイン12から上流(前段)に遡ることにより辿ることのできる処理経路をいう。一つの処理フローは少なくとも一つのパスを有する。
【0044】
なお、編集領域530において処理フローの起点に示されている○印はスキャン処理を示す。また、各プラグインに対応するボタン間の矢印は、当該矢印によって接続されたプラグイン間の処理の順序関係を示す。
【0045】
ところで、編集領域530に配置されたボタンに対してクリック操作が行われると、フロー定義生成部16は、ボタンに対応したプラグインに対する設定画面を表示させる。ユーザは、当該設定画面を介して、プラグインの実行条件に関するパラメータの値を設定することができる。設定画面を介して設定された値は、各プラグインに関連付けられてメモリ装置103に記録される。
【0046】
ユーザが、編集領域530における編集を完了し、非図示の保存ボタンをクリックすると、フロー定義生成部16は、編集領域530の内容に基づいて、フロー定義データ180を生成し、補助記憶装置102に保存する(S102)。
【0047】
図7は、フロー定義データの例を示す図である。同図では、XML(eXtensible Markup Language)によってフロー定義データ180が記述された例が示されている。但し、フロー定義データ180は、他の記述形式によって記述されてもよい。なお、同図のフロー定義データ180は、図6の編集領域530の内容に対応する。
【0048】
フロー定義データ180は、<Distribution>タグで囲まれたDistribution要素をルート要素として含む。Distribution要素は、処理フローと一対一に対応する要素であり、ID要素及びPlugin要素等を子要素として含む。
【0049】
ID要素は、各処理フローを識別するためのフローIDを値として有する。同図のID要素181では、「TESTフロー」がフローIDとされている。フローIDは、例えば、フロー定義生成画面500の表示前に、フローID入力ダイアログが表示され、当該フローID入力ダイアログを介してユーザによって入力される。
【0050】
Plugin要素は、処理フローにおいて利用されるプラグインに関する情報を値として有する。なお、Distribution要素の子要素であるPlugin要素は、プラグインの接続関係において先端に位置するプラグインに対応する。図6では、画像変換プラグイン111とメール配信プラグイン123とがプラグインの接続関係において先端に配置されている。したがって、図7では、画像プラグイン111に対応するPlugin要素182と、メール配信プラグイン123に対応するPlugin要素183とがDistribution要素の子要素として定義されている。
【0051】
各Plugin要素は、PluginID要素、PluginType要素、及びParameters要素等を子要素として含む。
【0052】
PluginID要素の値は、プラグインのID(プラグインID)である。すなわち、Plugin要素182の子要素であるPluginID要素の値「ImageConverter」は、画像処理プラグイン111のプラグインIDを示す。また、Plugin要素183の子要素であるPluginID要素の値「ToEmail」は、メール配信プラグイン123のプラグインIDを示す。
【0053】
PluginType要素の値は、プラグインの種別(フィルタプラグイン11又は出力プラグイン12の別)を示す。「Filter」は、フィルタプラグイン11を示し、「Output」は、出力プラグイン12を示す。
【0054】
Parameters要素の値は、プラグインの実行条件を構成するパラメータに対する設定値を示す。
【0055】
なお、後段に他のプラグインが接続されたプラグインに対応するPlugin要素は、更にNext要素を含む。Next要素は、後段のプラグインに対応するPlugin要素を子要素として含む。図6では、画像変換プラグイン111の後段にフォルダ配信プラグイン122が接続されている。したがって、Plugin要素182は、Next要素を含み、当該Next要素はフォルダ配信プラグイン122に対応するPlugin要素184を子要素として含む。
また、出力プラグイン12のPlugin要素(値が「Output」であるPluginType要素を子要素として有するPlugin要素)は、required要素を有する。required要素の値は、処理フローにおいて当該出力プラグイン12の実行が必須であるか(true)否か(false)を示す。図7では、フォルダ配信プラグイン122(Plugin要素184)は必須でないとされ、メール配信プラグイン123(Plugin要素183)は必須であるとされている。必須である出力プラグイン12が実行できない場合(例えば、当該出力プラグイン12に関する認証に失敗した場合)、処理フロー全体が実行されない。一方、必須でない出力プラグイン12が実行できない場合、当該出力プラグイン12を除いて実行可能な部分について処理フローが実行される。なお、本実施の形態では、出力プラグイン12に対してのみ必須であるか否かという概念を適用しているが、フィルタプラグイン11に対して同様の概念を適用してもよい。
【0056】
フロー定義データ180の生成が完了すると、フロー定義生成部16は、生成されたフロー定義データ180に対応するフローIDを指定して認証画面の生成を認証画面生成部17に要求する(S103)。続いて、認証画面生成部17は、指定されたフローIDに対応するフロー定義データ180を参照し、当該フロー定義データ180に定義されている処理フローにおいて利用される各プラグインより、当該プラグインに対応する認証画面情報を示すデータ(プラグイン認証画面データ)を取得する。
【0057】
本実施の形態では、まず、Plugin要素182に基づいて、画像変換プラグイン111に対してプラグイン認証画面データの取得が要求される(S104)。画像変換プラグイン111は、当該要求に応じ、自らに関連付いている認証プラグイン13である認証プラグインA131に対し、プラグイン認証画面データの取得を要求する(S105)。認証プラグインA131は、自らが実行する認証処理において必要とされる認証情報項目を入力させるための画面情報を含むプラグイン認証画面データを画像変換プラグイン111に返信する(S106)。なお、プラグイン認証画面データは、各認証プラグイン13に関連付けられて補助記憶装置102に予め保存されていてもよいし、取得が要求された際に各認証プラグイン13によって生成されてもよい。画像変換プラグイン111は、認証プラグインA131より返信されたプラグイン認証画面データを画像変換プラグイン111に対応するプラグイン認証画面データとして認証画面生成部17に返信する(S107)。また、画像変換プラグイン111は、当該認証画面データに対応する認証プラグインA131のID(認証プラグインID)も認証画面データ生成部17に返信する。
【0058】
図8は、本実施の形態において画像変換プラグインに対応するプラグイン認証画面データの例を示す図である。同図では、XMLによってプラグイン認証画面データが記述された例が示されている。但し、プラグイン認証画面データは、他の記述形式によって記述されてもよい。
【0059】
プラグイン認証画面データには、対応するプラグインの認証に利用される認証情報項目ごとに、認証画面に表示させる表示情報等が定義されている。図8のプラグイン認証画面データ610は、認証プラグインA131による認証処理において利用されるOption1とOption2との二つの認証情報項目に関する表示情報等を含む。なお、OptionNという名前は、便宜的なものである。
【0060】
記述611は、Option1に関する定義であり、記述612はOption2に関する定義である。記述611及び記述612は、それぞれLabel要素とEditBox要素とを含む。
【0061】
Label要素は、認証情報項目のラベルに関する定義である。Label要素は、id属性及びlabel属性等を含む。id属性の値は、ラベルに対するIDである。label属性の値は、ラベルに表示させる文字列である。
【0062】
EditBox要素は、認証情報項目の値を入力させるための表示部品(エディットボックス)に関する定義である。EditBox要素は、id属性、及びrequired属性を含む。id属性の値は、エディットボックスに対するIDである。required属性の値は、エディットボックスへの入力が必須であるか(true)否か(false)を示す。
【0063】
EditBox要素は、更に、parameterID要素及びvalue要素等を子要素として含む。parameterID要素の値は、エディットボックスに対応する認証情報項目を識別するためのID(認証情報項目ID)を示す。value要素は、エディットボックスに対する入力値の初期値である。初期値を有さないエディットボックスに対してはvalue要素は定義されていない。
【0064】
続いて、認証画面生成部17は、Plugin要素184に基づいて、フォルダ配信プラグイン122に対してプラグイン認証画面データの取得を要求する(S108)。フォルダ配信プラグイン122は、当該要求に応じ、自らに関連付いている認証プラグイン13である認証プラグインB132に対し、プラグイン認証画面データの取得を要求する(S109)。認証プラグインB132は、自らが実行する認証処理において必要とされる認証情報項目を入力させるための画面情報を含むプラグイン認証画面データをフォルダ配信プラグイン122に返信する(S110)。フォルダ配信プラグイン122は、認証プラグインB132より返信されたプラグイン認証画面データをフォルダ配信プラグイン122に対応するプラグイン認証画面データとして認証画面生成部17に返信する(S111)。また、フォルダ配信プラグイン122は、当該認証画面データに対応する認証プラグインB132の認証プラグインIDも認証画面データ生成部17に返信する。
【0065】
図9は、本実施の形態においてフォルダ配信プラグインに対応するプラグイン認証画面データの例を示す図である。
【0066】
同図のプラグイン認証画面データ620は、認証プラグインB132による認証処理において利用されるOption3とOption4との二つの認証情報項目に関する表示情報等を含む。記述621は、Option3に関する定義であり、記述622はOption4に関する定義である。
【0067】
記述621は、Label要素とComboBox要素とを含む。Label要素については図8において説明した通りである。ComboBox要素は、認証情報項目の値を選択させるための表示部品(コンボボックス)に関する定義である。
【0068】
ComboBox要素は、id属性、required属性、及びviewableItemNum属性等を有する。id属性の値は、コンボボックスに対するIDである。required属性の値は、コンボボックスにおける選択が必須であるか(true)否か(false)を示す。ComboBox要素は、parameterID要素及びData要素等を子要素として含む。parameterID要素の値は、コンボボックスに対応する認証情報項目の認証情報項目IDを示す。Data要素は、コンボボックスにおける選択肢(選択項目)に関する定義であり、選択項目ごとにitem要素を子要素として含む。各item要素においては、選択項目の値がvalue要素の値として定義されている。
【0069】
なお、ラベル、エディットボックス、及びコンボボックス以外の表示部品を利用する場合、当該表示部品に対応した要素をプラグイン認証画面データに定義すればよい。
【0070】
続いて、認証画面生成部17は、Plugin要素183に基づいて、メール配信プラグイン123に対してプラグイン認証画面データの取得を要求する(S112)。本実施の形態においてメール配信プラグイン123に関連付いている認証プラグイン13は無い。したがって、メール配信プラグイン123は、プラグイン認証画面データは無いことを示す応答を行う(S113)。
【0071】
続いて、認証画面生成部17は、各プラグインより取得された認証画面データ及び認証プラグインID等を統合し、認証画面定義データ190を生成する(S114)。本実施の形態では、図10に示される認証画面を表示させるための認証画面定義データ190が生成される。
【0072】
図10は、本実施の形態における認証画面の表示例を示す図である。同図において、認証画面700は、ラベル701〜706、エディットボックス711〜714及び716、コンボボックス715、キャンセルボタン721、ログインボタン722、並びにラベル723等を有する。
【0073】
ラベル701及びエディットボックス711は、認証情報項目の一つであるユーザ名に対応する表示部品である。ラベル702及びエディットボックス712は、認証情報項目の一つであるパスワードに対応する表示部品である。ラベル703及びエディットボックス713は、認証情報項目の一つであるOption1に対応する表示部品である。ラベル704及びエディットボックス714は、認証情報項目の一つであるOption2
に対応する表示部品である。ラベル705及びコンボボックス715は、認証情報項目の一つであるOption3に対応する表示部品である。ラベル706及びエディットボックス716は、認証情報項目の一つであるOption4に対応する表示部品である。
【0074】
認証画面700を表示させるための認証画面定義データ190、すなわち、ステップS114において生成される認証画面定義データ190は、例えば、図11及び図12に示されるように定義される。
【0075】
図11及び図12は、本実施の形態の認証画面定義データの例を示す図である。図11と図12とで一つの認証画面定義データ190の内容を示す。すなわち、図11の続きが図12である。
【0076】
認証画面定義データ190は、ルート要素として<window>タグに囲まれたwindow要素と、<authentication>タグに囲まれたauthentication要素1950(図12参照)とを有する。
【0077】
window要素は、主として認証画面700の表示内容に関する定義である。具体的には、window要素は、表示部品ごとにpart要素を子要素として含む。一つのpart要素は、一つの表示部品に関する定義である。同図において、各part要素の参照番号の下二桁は、図10において対応する表示部品の参照番号の下二桁と一致する。
【0078】
各part要素は、共通属性として、type属性、id属性、x属性、y属性、width属性、及びheight属性を有する。type属性の値は、表示部品の種別(Label(ラベル)、EditBox(エディットボックス)、ComboBox(コンボボックス)、又はButton(ボタン)の別)を示す。id属性の値は、表示部品のIDを示す、x属性の値、y属性の値は、表示部品の左上頂点の認証画面700上におけるx座標値、y座標値を示す。width属性の値、height属性の値は、表示部品の幅、高さ示す。
【0079】
ラベルに対応するpart要素(すなわち、type属性の値が「Label」であるpart要素1901〜1906及び1923)は、共通属性に加えlabel属性を有する。label属性の値は、ラベルに表示させる文字列を示す。
【0080】
また、エディットボックス又はコンボボックス等、認証情報項目の値が入力される表示部品に対応するpart要素(すなわち、type属性の値が「EditBox」又は「ComboBox」であるpart要素1911〜1916)は、required属性を有し、parameterID要素を子要素として含む。required属性の値は、値の入力が必須であるか(true)否か(false)を示す。parameterID要素の値は、表示部品対応する認証情報項目IDを示す。
【0081】
また、コンボボックスに対応するpart要素は、item要素を含む。item要素の内容は、プラグイン認証画面データにおけるitem要素の内容と同じである。
【0082】
また、ボタンに対応するpart要素(すなわち、type属性の値が「Button」であるpart要素1921及び1922)は、action要素を子要素として含む。action要素は、表示部品が操作されたとき(ボタンがクリックされたとき)に実行すべき処理に関する定義である。
【0083】
一方、authentication要素1950は、認証画面定義データ190対して入力された認証情報に基づいて認証処理を実行する認証プラグイン13に関する定義である。具体的には、authentication要素1950は、当該認証プラグイン13ごとにpulugin要素を含む。各plugin要素は、id属性及びrequired属性を有する。id属性の値は、認証プラグインIDを示す。「authA」は、認証プラグインA131の認証プラグインIDである。「authB」は、認証プラグインB132の認証プラグインIDである。required属性の値は、id属性の認証プラグインIDで識別される認証プラグイン13が関連付くプラグインは必須のプラグインであるか否かを示す。なお、id属性の値には、各プラグイン(画像変換プラグイン111、フォルダ配信プラグイン122等)からの認証画面生成部17への応答(S107、S111等)において返却される認証プラグインIDが記録される。また、required属性の値には、当該応答元のプラグイン(画像変換プラグイン111、フォルダ配信プラグイン122等)のフロー定義データ180におけるPlugin要素の子要素であるrequired要素の値が記録される。
【0084】
ところで、図11及び図12の認証画面定義データ190において、part要素1903〜1906及びpart要素1913〜1916、並びにauthentication要素1950(以下、「拡張定義部分」という。)は、認証画面生成部17が、画像変換プラグイン111及びフォルダ配信プラグイン122より収集した情報(プラグイン認証画面データ等)に基づいて生成される。すなわち、拡張定義部分は、処理フローに応じて定義内容が変化する部分である。
【0085】
一方、拡張定義部分以外の部分は、認証画面生成部17が生成する全ての認証画面データに対して共通的に含まれる部分(以下、「基本定義部分」という。)である。ここで、基本定義部分には、ユーザ名及びパスワードに対応するpart要素を含む。すなわち、本実施の形態において、ユーザ名及びパスワードは、いずれの処理フローに対しても入力される認証情報項目である。基本定義部分は、認証画面定義データ190の雛形として予めファイルに保存されていてもよいし、認証画面生成部17内にハードコーディングされていてもよい。
【0086】
なお、認証画面定義データ190は、処理フロー(フロー定義データ180)と関連付けられて補助記憶装置102に保存される。本実施の形態において、当該関連付けは認証画面定義データ190のファイル名にフローIDが付与されることにより行われる。但し、他の方法によって関連付けが行われてもよい。例えば、認証画面定義データ190にフロー定義データ180を識別可能な情報(フローID又はフロー定義データ180のファイル名等)が記述されていてもよい。
【0087】
以上によって、フロー定義データ180及び認証画面定義データ190は生成された。これにより、処理フローの実行が可能となる。そこで、続いて、処理フロー実行時の処理手順について説明する。
【0088】
図13は、処理フロー実行時の処理手順を説明するためのシーケンス図である。
【0089】
ステップS201では、複合機20の操作パネル25を介してユーザによって入力される所定の指示入力に応じ、複合機20において配信アプリケーション(以下、「配信アプリ」という。)が起動される。配信アプリは、起動されると、フロー選択画面データの送信要求を配信サーバ10に送信する(S202)。なお、ネットワーク62において配信サーバ10を識別するための識別情報(例えば、IPアドレス)は、複合機20のHDD214に記録されている。配信アプリは、当該識別情報に基づいて、フロー選択画面データの送信要求の送信先を識別する。
【0090】
配信サーバ10のフロー選択画面生成部18は、フロー選択画面データの送信要求を受信すると、フロー選択画面データを生成し、配信アプリに返信する(S203)。なお、フロー選択画面生成部18は、配信サーバ10の補助記憶装置102に生成されている各フロー定義データ180よりフローIDを取得し、当該フローIDの一覧が選択肢として表示されるようにフロー選択画面データを生成する。なお、フロー選択画面データは、予め生成されていてもよい。例えば、認証画面定義データ190の生成の前又は後において生成されてもよい。
【0091】
続いて、配信アプリは、フロー選択画面データを受信すると、当該フロー選択画面データに基づいてフロー選択画面を操作パネル25に表示させる(S204)。
【0092】
図14は、フロー選択画面の表示例を示す図である。同図において、フロー選択画面810には、実行可能な(すなわち、フロー定義データ180が定義されている)処理フローごとに、フローIDをラベルとするボタンが表示されている。
【0093】
続いて、フロー選択画面810上のボタンがユーザによって押下されると、配信アプリは、押下されたボタンに割り当てられているフローIDを、実行対象の処理フローのフローIDとして認識する(S205)。なお、ここでは、ボタン811が押下されたこととする。したがって、実行対象のフローID(以下、「カレントフローID」という。)は「TESTフロー」である。続いて、配信アプリは、カレントフローIDを配信サーバ10に送信する(S206)。
【0094】
配信サーバ10においてカレントフローIDが受信されると、認証制御部15は、カレントフローIDに対応する認証画面定義データ190を補助記憶装置102より検索する(S207)。なお、認証制御部15は、カレントフローIDを実行対象の処理フローのフローIDとしてメモリ装置103に記録しておく。認証画面定義データ190の検索に成功すると、認証制御部15は、検索された認証画面定義データ190を配信アプリに送信する(S208)。
【0095】
配信アプリは、認証画面定義データ190を受信すると、当該認証画面定義データ190に基づいて認証画面700(図10参照)を操作パネル25に表示させる(S209)。続いて、認証画面700を介してユーザによって認証情報項目の値の入力が行われる(S210)。ここで、認証画面700には、デフォルトの認証情報項目(ユーザ名及びパスワード)に加え、実行対象とされている処理フローにおいて利用されるプラグインに対する認証情報項目(本実施の形態では、Option1〜4)の値も入力可能とされている。したがって、ユーザは、一つの認証画面700において、実行対象の処理フローに対して入力が必要とされる全ての認証情報項目に対する値を入力することができる。
【0096】
認証画面700を介して認証情報項目の値が入力され、ログインボタン722が押下されると、配信アプリは、認証情報を配信サーバ10に送信する(S211)。
【0097】
図15は、認証情報の構成例を示す図である。同図に示されるように、認証情報は、認証情報項目ごとに認証情報項目ID及び入力値を含む。配信アプリは、認証画面定義データ190に含まれているparameterID要素に基づいて各認証情報項目の認証情報項目IDを識別する。入力値は、認証画面700を介して入力された値がそのまま認証情報に含まれる。
【0098】
続いて、配信サーバ10において認証情報が受信されると、認証制御部15は、当該認証情報に基づく認証処理の実行を制御する(S212)。認証処理が終了すると、認証制御部15は、認証結果を配信アプリに返信する(S213)。配信アプリは、受信された認証結果が認証の失敗を示すものである場合、認証失敗を示すエラー情報を操作パネル25に表示させ、処理を中止する。一方、受信された認証結果が認証の成功を示すものである場合、認証アプリは、スキャナ22に原稿の読み取りを実行させる(S214)。なお、原稿は、配信アプリの起動前にスキャナ22にセットされてもよいし、認証の成功を受けてセットされてもよい。
【0099】
続いて、配信アプリは、スキャナ22によって原稿より読み取られた画像データ(スキャン画像データ)を配信サーバ10に送信する(S215)。配信サーバ10においてスキャン画像データが受信されると、フロー実行制御部14は、メモリ装置103に記録されているカレントフローIDに対応するフロー定義データ180を補助記憶装置102より取得し、当該フロー定義データ180に定義されている処理フローの実行を制御する(S216)。処理フローが実行されることにより、スキャン画像データの配信処理が実行される。
【0100】
続いて、図13のステップS212の詳細について説明する。図16は、認証処理の処理手順を説明するためのシーケンス図である。
【0101】
ステップS301において、認証制御部15は、受信された認証情報について必須の認証情報項目に対する値が入力されているか(入力値が空でないか)否かを判定する。当該判定は、認証情報における各認証情報項目IDに対応するrequired属性の値を認証画面定義データ190より取得することにより行われる。値が入力されていない必須の認証情報項目が有る場合、認証制御部15は、認証失敗を示す認証結果を配信アプリに返信する。この場合、配信アプリは、再度認証画面700を操作パネル25に表示させ、当該必須の認証情報項目に対する値を入力させるようにしてもよい。
【0102】
全ての必須の認証情報項目に値が入力されている場合、認証制御部15は、実行対象とされている処理フローにおいて利用されるプラグインに関連付いている各認証プラグイン13を認証画面定義データ190のauthentication要素1950に基づいて判定し、当該各認証プラグイン13に認証処理を実行させる。
【0103】
本実施の形態では、認証制御部15は、authentication要素1950内のpulugin要素1951のid属性に基づいて、認証プラグインA131に対し認証情報に基づく認証処理の実行を要求する(S302)。認証プラグインA131は、認証情報に基づいて認証処理を実行し、認証結果(認証の成否)を認証制御部19に返却する(S303)。認証制御部19は、認証プラグインA131による認証結果を、認証プラグインA131の認証プラグインIDと関連付けてメモリ装置103に記録しておく。なお、認証処理の内容や、どのような場合に認証を成功とするか又は失敗するかについては各認証プラグイン13の実装に依存する。また、各認証プラグイン13には、認証情報の全部が入力されてもよいし、それぞれの認証プラグイン13が必要とする認証情報項目に係る部分のみが入力されてもよい。
【0104】
続いて、認証制御部15は、authentication要素1950内のpulugin要素1952のid属性に基づいて、認証プラグインB132に対し認証情報に基づく認証処理の実行を要求する(S304)。認証プラグインB132は、認証情報に基づいて認証処理を実行し、認証結果(認証の成否)を認証制御部19に返却する(S305)。認証制御部19は、認証プラグインB132による認証結果を、認証プラグインB132の認証プラグインIDと関連付けてメモリ装置103に記録しておく。
【0105】
続いて、認証制御部15は、メモリ装置103に記録されている、各認証プラグイン13による認証結果に基づいて統合的又は総合的な認証結果(認証処理全体としての結果)を判定する(S306)。当該統合的な認証結果が図13のステップS213において配信アプリに返信される。
【0106】
続いて、図16のステップS306の詳細について説明する。図17は、認証制御部による統合的な認証結果の判定処理の処理手順を説明するためのフローチャートである。
【0107】
ステップS361において、認証制御部15は、処理フローにおいて実行が必須とされている出力プラグイン12の有無を認証画面定義データ190のauthentication要素内の各plugin要素のrequried属性の値に基づいて判定する。必須の出力プラグイン12が有る場合(S361でYes)、認証制御部15は、当該出力プラグイン12に対する認証の成否を、メモリ装置103に認証プラグインIDごとに関連付けて記録されている認証結果に基づいて判定する(S362)。当該必須の出力プラグイン12に対する認証が成功している場合(S362でYes)、認証制御部15は、処理フローにおいて、当該必須の出力プラグイン12の前段に接続されている全てのプラグインに対する認証は成功しているか否かをメモリ装置103に記録されている認証結果に基づいて判定する(S363)。なお、当該必須の出力プラグイン12の前段のプラグインは、フロー定義データ180に基づいて判定される。当該必須の出力プラグイン12の前段に接続されている全てのプラグインに対する認証が成功している場合(当該必須の出力プラグイン12に前段のプラグインが無い場合も含む)(S363でYes)、認証制御部15は、統合的な認証結果は成功であると判定する(S364)。
【0108】
一方、必須の出力プラグイン12に対する認証が失敗している場合(S362でNo)、認証制御部15は、統合的な認証結果は失敗であると判定する(S365)。
【0109】
また、必須の出力プラグイン12が無い場合(S361でNo)、認証制御部15は、処理フローの中で、実行可能なパスか少なくとも一つ有るか否かを判定する(S366)。ここで、実行可能なパスとは、認証に成功したプラグイン又は認証が不要なプラグインのみが属しているパス(すなわち、認証が必要とされている全てのプラグインに対する認証が成功しているパス)をいう。実行可能なパスが有る場合(S366でYes)、認証制御部15は、統合的な認証結果は成功であると判定する(S367)。実行可能なパスが無い場合(S366でNo)、証制御部15は、統合的な認証結果は失敗であると判定する(S368)。
【0110】
図17の判定結果の具体例を説明する。図18は、統合的な認証結果の具体例を示す図である。
【0111】
同図に示される各テーブルは、それぞれが統合的な認証結果の具体例を示す。各テーブルの1列目(A、B、C)は、処理フローにおいて利用されるプラグインに対する識別子である。A、B、Cは、それぞれ、画像変換プラグイン111、フィルタ配信プラグイン122、及びメール配信プラグイン123を示すこととし、処理フローの構成は、図6に示される通りであるとする。また、図17に限ってメール配信プラグイン123にも認証プラグイン13が関連付いていることとする。なお、識別子が囲まれているプラグインは必須の出力プラグイン12であることを示す。
【0112】
各テーブルの2列目は(OK又はNG)は、プラグインごとの認証の成否を示す。3列目は統合的な認証結果を示す。
【0113】
同図では、ケース(1)〜(10)が示されている。ケース(1)では、全ての認証結果がNG(失敗)であるため(ステップS366でNo)、統合的な認証結果はNGと判定されている。ケース(2)及び(5)では、必須であるBに対する認証結果がNGであるため(ステップS362でNo)、統合的な認証結果はNGと判定されている。ケース(3)及び(8)では、必須であるBの前段のAに対する認証結果がNGであるため(ステップS363でNo)、統合的な認証結果はNGと判定されている。ケース(4)では、必須であるB及びその前段であるAに対する認証結果がOK(成功)であるため(ステップS363でYes)、統合的な認証結果はOKと判定されている。
【0114】
ケース(6)では、必須であるCに対する認証結果がOKであり(ステップS362でYes)、Cに対する前段のプラグインは無いため(ステップS363でYes)、統合的な認証結果はOKと判定されている。ケース(7)では、Cによって構成されるパスが実行可能であるため(S366でYes)、統合的な認証結果はOKと判定されている。ケース(9)では、必須であるCに対する認証結果がNGであるため(ステップS362でNo)、統合的な認証結果はNGと判定されている。ケース(10)では、全てのプラグインに対する認証結果がOKであり、全てのパスを実行可能であるため(ステップS366でYes)、統合的な認証結果はOKと判定されている。
【0115】
続いて、図13のステップS216の詳細について説明する。図19は、処理フローの実行処理の処理手順を説明するためのシーケンス図である。
【0116】
ステップS401において、フロー実行制御部14は、受信されたスキャン画像データを補助記憶装置102に保存する。続いて、フロー実行制御部14は、メモリ装置103に記録されているカレントフローIDに対応するフロー定義データ180を補助記憶装置102より取得する(S402)。ここでは、図7に示されるフロー定義データ180が取得される。
【0117】
続いて、フロー実行制御部14は、フロー定義データ180のPlugin要素182に基づいて、画像変換プラグイン111に対し、認証の要否(認証プラグイン13関連付いているか否か)を問い合わせる(S403)。本実施の形態において、画像変換プラグイン111には認証プラグインA131が関連付いている。したがって、画像変換プラグイン111は、認証は必要であること、及び認証プラグインA131の認証プラグインIDをフロー実行制御部14に応答する(S404)。
【0118】
認証は必要であるとの応答に応じ、フロー実行制御部14は、応答された認証プラグインIDを指定して認証制御部15に認証の実行を要求する(S405)。認証制御部15は、メモリ装置103に保持してある認証情報(すなわち、ステップS211において受信された図15に示される認証情報)を指定して、当該認証プラグインIDによって識別される認証プラグインA131に認証の実行を要求する(S406)。認証プラグインA131は、認証情報を利用して認証処理を実行し、認証結果を認証制御部15に返却する(S407)。認証制御部15は、当該認証結果をフロー実行制御部14に返却する(S408)。
【0119】
認証に成功した場合、フロー実行制御部14は、画像変換プラグイン111に対し、スキャン画像データの識別情報(例えば、ファイル名)を指定して処理の実行を要求する(S409)。画像変換プラグイン111は、指定された識別情報に基づいてスキャン画像データに対して画像変換を実行し、生成されたデータを補助記憶装置102に保存する。画像変換プラグイン111は、生成されたデータの識別情報(例えば、ファイル名)をフロー実行制御部14に返却する(S410)。
【0120】
続いて、フロー実行制御部14は、フロー定義データ180のPlugin要素184に基づいて、フォルダ配信プラグイン122に対し、認証の要否を問い合わせる(S411)。本実施の形態において、フォルダ配信プラグイン122には認証プラグインB132が関連付いている。したがって、フォルダ配信プラグイン122は、認証は必要であること、及び認証プラグインB132の認証プラグインIDをフロー実行制御部14に応答する(S412)。
【0121】
認証は必要であるとの応答に応じ、フロー実行制御部14は、応答された認証プラグインIDを指定して認証制御部15に認証の実行を要求する(S413)。認証制御部15は、メモリ装置103に保持してある認証情報を指定して、当該認証プラグインIDによって識別される認証プラグインB132に認証の実行を要求する(S414)。認証プラグインB132は、認証情報を利用して認証処理を実行し、認証結果を認証制御部15に返却する(S415)。認証制御部15は、当該認証結果をフロー実行制御部14に返却する(S416)。
【0122】
認証に成功した場合、フロー実行制御部14は、フォルダ配信プラグイン122に対し、画像変換プラグイン111より返却された識別情報(例えば、ファイル名)を指定して処理の実行を要求する(S417)。フォルダ配信プラグイン122は、指定された識別情報に係るデータに関して配信処理を実行し、配信処理の結果(成否)をフロー実行制御部14に返却する(S418)。
【0123】
続いて、フロー実行制御部14は、フロー定義データ180のPlugin要素183に基づいて、メール配信プラグイン123に対し、認証の要否を問い合わせる(S419)。本実施の形態において、メール配信プラグイン123には認証プラグイン13は関連付いていない。したがって、メール配信プラグイン123は、認証は不要であることをフロー実行制御部14に応答する(S420)。
【0124】
認証は不要であるとの応答に応じ、フロー実行制御部14は、メール配信プラグイン123に対し、スキャン画像データの識別情報(例えば、ファイル名)を指定して処理の実行を要求する(S421)。ここで、メール配信プラグイン123にスキャン画像データが処理対象として指定されるのは、メール配信プラグイン123は、画像変換プラグイン111と並んで、処理フローにおいて先端に位置するプラグインだからである。
【0125】
続いて、メール配信プラグイン123は、スキャン画像データに関してメール配信を実行し、配信処理の結果をフロー実行制御部14に返却する(S422)。
【0126】
ところで、認証が必要であるプラグイン(画像変換プラグイン111、フォルダ配信プラグイン122)について認証に失敗した場合、フロー実行制御部14は、当該プラグインの実行及び処理フロー上において当該プラグインが属するパスに属する他のプラグインの実行を中止する。具体的には、画像変換プラグイン111の認証に失敗した場合は、画像変換プラグイン111だけでなく、後段のフォルダ配信プラグイン122についても実行されない。
【0127】
但し、処理フロー上で別のパスに属するプラグインについては実行対象から除外されない。したがって、画像変換プラグイン111の認証に失敗した場合、ステップS407〜S416までは実行されないが、ステップS417以降は実行されうる。
【0128】
このように、認証に失敗したパスについてのみ実行対象から除外し、処理フロー全体を中止しないことにより、ユーザが利用可能な範囲内で処理フローを実行させることができる。したがって、処理フローの実行に柔軟性を持たせることができる。
【0129】
なお、図19では、順次認証を確認しつつプラグインの実行を行う例について説明したが、最初に認証の必要なプラグインに関する認証を行い、利用可能なプラグインを判定し、実行可能なパスを判定した後に、実行可能なパスに属するプラグインに対して実行を指示するようにしてもよい。
【0130】
また、利用可能なプラグインの判定には、ステップS212における認証結果を利用するようにしてもよい。その場合、図19において認証処理は行う必要はない。
【0131】
また、図19では、メール配信プラグイン123の処理が、フォルダ配信プラグイン122の後に実行されるように説明したが、処理フローにおける並列的なパスは、並列的に実行されてもよい。すなわち、メール配信プラグイン123に関する処理は、画像変換プラグイン111に関する処理と並列的に実行されてもよい。
【0132】
上述したように、本実施の形態の配信サーバ10によれば、プラグインごとに別々に必要とされる認証情報を一つの画面で入力させる統合的な認証画面の認証画面定義データ190を生成することができる。したがって、当該認証画面を介した一度の入力操作によって、処理フローにおいて必要とされる全ての認証情報を入力させることができる。その結果、プラグインごとに認証処理を可能としたことによる、ユーザによる認証情報の入力負担の増加を抑制することができる。
【0133】
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【0134】
1 ネットワーク配信システム
10 配信サーバ
11 フィルタプラグイン
12 出力プラグイン
13 認証プラグイン
14 フロー実行制御部
15 認証制御部
16 フロー定義生成部
17 認証画面生成部
18 フロー選択画面生成部
20 複合機
21 コントローラ
22 スキャナ
23 プリンタ
24 モデム
25 操作パネル
26 ネットワークインタフェース
27 SDカードスロット
30 ファイルサーバ
40 Webサーバ
50 SMTPサーバ
100 ドライブ装置
101 記録媒体
102 補助記憶装置
103 メモリ装置
104 CPU
105 インタフェース装置
106 表示装置
107 入力装置
111 画像変換プラグイン
121 Web配信プラグイン
122 フォルダ配信プラグイン
123 メール配信プラグイン
124 FTP配信プラグイン
180 フロー定義データ
190 認証画面定義データ
211 CPU
212 RAM
213 ROM
214 HDD
B バス
【先行技術文献】
【特許文献】
【0135】
【特許文献1】特開2008−97586号公報

【特許請求の範囲】
【請求項1】
画像読み取り手段によって読み取られた画像データに対する処理フローが定義されたフロー定義情報を記憶するフロー定義記憶手段と、
前記フロー定義情報に基づいて、それぞれが前記処理フローにおける一部の処理を実行する複数の処理実行手段を特定し、前記複数の処理実行手段の中で認証を必要とする各処理実行手段に対応する認証情報の項目を示す認証情報項目情報を前記認証を必要とする各処理実行手段より取得し、取得された前記認証情報項目情報を統合して一つの認証画面を表示させる認証画面定義情報を生成する認証画面生成手段とを有する情報処理装置。
【請求項2】
前記認証画面生成手段は、前記項目に対する入力値に基づいて認証処理を実行する認証手段の識別子を前記認証を必要とする各処理実行手段より取得し、取得された前記識別子を前記認証画面定義情報に含める請求項1記載の情報処理装置。
【請求項3】
前記認証画面定義情報に基づいて表示装置に表示される認証画面を介して入力された入力値に基づく認証処理を前記認証画面定義情報に前記識別子が含まれている前記認証手段に実行させる認証制御手段を有する請求項2記載の情報処理装置。
【請求項4】
前記フロー定義情報に基づいて、前記処理実行手段を利用して前記処理フローの実行を制御するフロー制御手段を有し、
前記フロー制御手段は、少なくとも対応する前記項目に基づく認証に失敗した前記処理実行手段は利用しない請求項1乃至3いずれか一項記載の情報処理装置。
【請求項5】
コンピュータが実行する情報処理方法であって、
画像読み取り手段によって読み取られた画像データに対する処理フローが定義されたフロー定義情報を記憶するフロー定義記憶手段を用いて、それぞれが前記処理フローにおける一部の処理を実行する複数の処理実行手段を特定し、前記複数の処理実行手段の中で認証を必要とする各処理実行手段に対応する認証情報の項目を示す認証情報項目情報を前記認証を必要とする各処理実行手段より取得する取得手順と、
取得された前記認証情報項目情報を統合して一つの認証画面を表示させる認証画面定義情報を生成する認証画面生成手順とを有する情報処理方法。
【請求項6】
前記取得手順は、前記項目に対する入力値に基づいて認証処理を実行する認証手段の識別子を前記認証を必要とする各処理実行手段より取得し、
前記認証画面生成手順は、取得された前記識別子を前記認証画面定義情報に含める請求項5記載の情報処理方法。
【請求項7】
前記認証画面定義情報に基づいて表示装置に表示される認証画面を介して入力された入力値に基づく認証処理を前記認証画面定義情報に前記識別子が含まれている前記認証手段に実行させる認証制御手順を有する請求項6記載の情報処理方法。
【請求項8】
前記フロー定義情報に基づいて、前記処理実行手段を利用して前記処理フローの実行を制御するフロー制御手順を有し、
前記フロー制御手順は、少なくとも対応する前記項目に基づく認証に失敗した前記処理実行手段は利用しない請求項5乃至7いずれか一項記載の情報処理方法。
【請求項9】
コンピュータに、
画像読み取り手段によって読み取られた画像データに対する処理フローが定義されたフロー定義情報を記憶するフロー定義記憶手段を用いて、それぞれが前記処理フローにおける一部の処理を実行する複数の処理実行手段を特定し、前記複数の処理実行手段の中で認証を必要とする各処理実行手段に対応する認証情報の項目を示す認証情報項目情報を前記認証を必要とする各処理実行手段より取得する取得手順と、
取得された前記認証情報項目情報を統合して一つの認証画面を表示させる認証画面定義情報を生成する認証画面生成手順とを実行させるためのプログラム。
【請求項10】
前記取得手順は、前記項目に対する入力値に基づいて認証処理を実行する認証手段の識別子を前記認証を必要とする各処理実行手段より取得し、
前記認証画面生成手順は、取得された前記識別子を前記認証画面定義情報に含める請求項9記載のプログラム。
【請求項11】
前記認証画面定義情報に基づいて表示装置に表示される認証画面を介して入力された入力値に基づく認証処理を前記認証画面定義情報に前記識別子が含まれている前記認証手段に実行させる認証制御手順を有する請求項10記載のプログラム。
【請求項12】
前記フロー定義情報に基づいて、前記処理実行手段を利用して前記処理フローの実行を制御するフロー制御手順を有し、
前記フロー制御手順は、少なくとも対応する前記項目に基づく認証に失敗した前記処理実行手段は利用しない請求項9乃至11いずれか一項記載のプログラム。

【図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


【公開番号】特開2010−191610(P2010−191610A)
【公開日】平成22年9月2日(2010.9.2)
【国際特許分類】
【出願番号】特願2009−34263(P2009−34263)
【出願日】平成21年2月17日(2009.2.17)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】