情報処理装置、サービス提供方法、サービス提供プログラム
【課題】ソフトウェアの開発・カスタマイズを容易に行うことができるサービス利用システム、情報処理装置、外部処理装置及びサービス利用プログラムを提供することを目的とする。
【解決手段】ネットワーク400を介して外部処理装置200と接続されており、所定のサービスに掛かる処理の少なくとも一部を自装置に代わって外部処理装置200に行わせる情報処理装置100であって、処理の少なくとも一部を要求する外部処理装置200の認証の為の情報を保持する保持手段104と、外部処理装置200に処理の少なくとも一部を要求する要求手段102と、処理により制御される機能108等と、保持手段104が保持する情報に基づき、要求手段102から行った要求に対応する外部処理装置200からの要求であると認証すると、外部処理装置200の処理により機能108等を外部から制御させるサービス提供手段103とを備えることにより上記課題を解決する。
【解決手段】ネットワーク400を介して外部処理装置200と接続されており、所定のサービスに掛かる処理の少なくとも一部を自装置に代わって外部処理装置200に行わせる情報処理装置100であって、処理の少なくとも一部を要求する外部処理装置200の認証の為の情報を保持する保持手段104と、外部処理装置200に処理の少なくとも一部を要求する要求手段102と、処理により制御される機能108等と、保持手段104が保持する情報に基づき、要求手段102から行った要求に対応する外部処理装置200からの要求であると認証すると、外部処理装置200の処理により機能108等を外部から制御させるサービス提供手段103とを備えることにより上記課題を解決する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、サービス提供方法、サービス提供プログラムに係り、特に所定のネットワークを介して外部処理装置と接続された情報処理装置、その情報処理装置で利用されるサービス提供方法、サービス提供プログラムに関する。
【背景技術】
【0002】
例えば特許文献1には、プリンタ,コピー,ファクシミリおよびスキャナなどの各装置の機能を1つの筐体内に収納した情報処理装置の一例としての画像形成装置が記載されている。この画像形成装置は、1つの筐体内に表示部,印刷部および撮像部などを設けると共に、プリンタ,コピー,ファクシミリおよびスキャナにそれぞれ対応する4種類のソフトウェア(アプリケーション)を設け、そのアプリケーションを切り替えることより、プリンタ,コピー,ファクシミリおよびスキャナとして動作させるものである。
【特許文献1】特開2002−84383号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
従来、画像形成装置上で動作するアプリケーションを開発する場合は、アプリケーション自身のロジックの構築だけでなく、独自のデバイスコントロール用のI/F、ユーザインターフェース(UI)用のI/F、画像形成装置特有のプログラミング作法(例えば電源制御や後述するSCSへの登録など)に従う必要があるという問題があった。
【0004】
また、アプリケーションのカスタマイズをするには、上記のような独自のデバイスコントロール用のI/F、独自のUI用のI/F、画像形成装置特有のプログラミング作法を習熟していなければならず、容易でないという問題があった。
【0005】
本発明は、上記の点に鑑みなされたもので、ソフトウェアの開発・カスタマイズを容易に行うことができるサービス利用システム、情報処理装置、外部処理装置及びサービス利用プログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
上記課題を解決するため、本発明は、所定のネットワークを介して外部処理装置と接続されており、所定のサービスに掛かる処理の少なくとも一部を自装置に代わって前記外部処理装置に行わせる情報処理装置であって、前記処理の少なくとも一部を要求する前記外部処理装置の認証の為の情報を保持する保持手段と、前記外部処理装置に前記処理の少なくとも一部を要求する要求手段と、前記処理により制御される機能と、前記保持手段が保持する情報に基づき、前記要求手段から行った要求に対応する前記外部処理装置からの要求であると認証すると、前記外部処理装置の処理により前記機能を外部から制御させるサービス提供手段とを備えることを特徴とする。
【0007】
また、本発明は、所定のネットワークを介して外部処理装置と接続されており、所定のサービスに掛かる処理の少なくとも一部を自装置に代わって前記外部処理装置に行わせる情報処理装置におけるサービス提供方法であって、前記処理の少なくとも一部を要求する前記外部処理装置の認証の為の情報を保持手段に保持する保持ステップと、前記外部処理装置に前記処理の少なくとも一部を要求手段から要求する要求ステップと、前記保持手段が保持する情報に基づき、前記要求手段から行った要求に対応する前記外部処理装置からの要求であると認証すると、サービス提供手段が前記外部処理装置の処理により前記機能を外部から制御させるサービス提供ステップとを備えることを特徴とする。
【0008】
また、本発明は、所定のネットワークを介して外部処理装置と接続されており、所定のサービスに掛かる処理の少なくとも一部を自装置に代わって前記外部処理装置に行わせる情報処理装置を、前記処理の少なくとも一部を要求する前記外部処理装置の認証の為の情報を保持する保持手段と、前記外部処理装置に前記処理の少なくとも一部を要求する要求手段と、前記処理により制御される機能と、前記保持手段が保持する情報に基づき、前記要求手段から行った要求に対応する前記外部処理装置からの要求であると認証すると、前記外部処理装置の処理により前記機能を外部から制御させるサービス提供手段として機能させる為のサービス提供プログラムであることを特徴とする。
【0009】
本発明では、サービスに掛かる処理の少なくとも一部を情報処理装置に代わって外部処理装置で行い、その外部処理装置からの要求を契機に、情報処理装置の機能(例えばアプリケーション挙動の制御や、画面制御)を制御させることができる。
【0010】
また、本発明では、情報処理装置の機能を外部処理装置からの要求を契機に制御することで、Webアプリケーション(Webアプリ)等を構築する程度の技術で、情報処理装置の機能を制御するソフトウェアの開発・カスタマイズが可能である。
【0011】
さらに、本発明では、ネットワークを介して接続されている外部処理装置からの要求を契機に、情報処理装置の機能を制御するため、サービスに掛かる処理の少なくとも一部を要求した外部処理装置であるか認証を行うことでなりすましを防ぎ、セキュリティを向上させることができる。
【0012】
なお、本発明の構成要素、表現または構成要素の任意の組合せを、方法、装置、システム、コンピュータプログラム、記録媒体、データ構造などに適用したものも本発明の態様として有効である。
【発明の効果】
【0013】
本発明によれば、ソフトウェアの開発・カスタマイズを容易に行うことができるサービス利用システム、情報処理装置、外部処理装置及びサービス利用プログラムを提供可能である。
【発明を実施するための最良の形態】
【0014】
次に、本発明を実施するための最良の形態を、以下の実施例に基づき図面を参照しつつ説明していく。なお、本実施例では、機能をネットワーク経由で制御させるサービスの一例としてWebサービスを例に説明するが、Webサービスに限るものではない。
【0015】
図1は本発明によるWebサービス利用システムの一例の概念図である。Webサービス利用システムは、1つ以上の情報処理装置1a,1bと、サーバ装置2とが、LANやインターネット等のネットワーク3を介して接続されている。
【0016】
サーバ装置2は、アプリを備えている。また、情報処理装置1a,1bは、1つ以上の機能を備え、その機能をネットワーク経由でサーバ装置2のアプリから制御させるWebサービスを提供する。さらに、情報処理装置1aは、Webブラウザを表示可能な操作部を備えている。
【0017】
Webサービス利用システムでは、情報処理装置1a,1bが提供するWebサービスを利用してサーバ装置2上でアプリを構築し、そのアプリのUIをサーバ装置2のWebサーバで提供する。情報処理装置1aは、WebクライアントとしてのWebブラウザでアプリのUI4を操作部に表示する。ユーザは、操作部に表示されたアプリのUI4からサーバ装置2上に構築されたアプリを操作することができる。
【0018】
ユーザがアプリのUI4から動作を指示すると、指示が情報処理装置1aのWebブラウザからサーバ装置2のWebサーバに送信される。サーバ装置2のアプリは指示に応じて、Webサービスクライアントから情報処理装置1aのWebサービスサーバに動作指示を送信する。なお、情報処理装置1aと情報処理装置1bとの連携時には、サーバ装置2のWebサービスクライアントから情報処理装置1bのWebサービスサーバに動作指示を送信する。情報処理装置1a,1b及びサーバ装置2間の通信は、セキュリティを考慮してSSL等を利用できる。
【0019】
また、情報処理装置1a,1b及びサーバ装置2間の通信では、情報処理装置1aのWebブラウザがアクセスしたサーバ装置2のアプリ以外が、サーバ装置2のアプリになりすまして、情報処理装置1a又は1bのWebサービスを利用することを防ぐ仕組みを設けている。
【0020】
すなわち、本発明によるWebサービス利用システムでは、情報処理装置1aのWebブラウザからサーバ装置2のWebサーバへの指示と、サーバ装置2のWebサービスクライアントから情報処理装置1a又は1bのWebサービスサーバへの動作指示とに関連性を持たせることにより、動作指示を行ったアプリが正規のアプリであるか否かを容易に判定できるようにしている。なお、なりすましを防ぐ仕組みの詳細は後述する。
【0021】
このように、図1のWebサービス利用システムでは、独自のデバイスコントロール用のI/F、UI用のI/F、情報処理装置特有のプログラミング作法を、情報処理装置1a,1bが提供するWebサービスで隠蔽することができるので、Webアプリを構築する程度の技術で情報処理装置1a,1bの機能を制御するアプリケーションの開発・カスタマイズが可能である。
【0022】
次に、情報処理装置1a,1bの一例の構成について説明する。なお、何れかの情報処理装置を指す場合は、単に参照番号1を用いる。図2は、本発明の情報処理装置の一実施例の構成図である。情報処理装置1は、ハードウェア資源10,起動部20,ソフトウェア群30を含むように構成されている。
【0023】
ハードウェア資源10は、操作部,機能A,機能B等の複数のデバイス(ハードウェアリソース)を含む。情報処理装置1が画像形成装置である場合、ハードウェア資源10はプロッタやスキャナ等を含む。
【0024】
また、ソフトウェア群30は、UNIX(登録商標)などのOS上で実行されているアプリケーション40とプラットフォーム50とを含む。起動部20は情報処理装置1の電源投入時に最初に実行され、アプリケーション40やプラットフォーム50をOS上に起動するものである。
【0025】
アプリケーション40はWebサービス実行アプリを含む。また、プラットフォーム50はコントロールサービス51,SRM(システムリソースマネージャ)52,ハンドラ層53を含む。さらに、プラットフォーム50はAPI(アプリケーションプログラムインターフェース)54を含むように構成されている。なお、情報処理装置1は必要最小限のアプリケーション40を搭載しておき、サーバ装置2との通信がオフラインのときに利用するようにしてもよい。
【0026】
コントロールサービス51は、OCS(操作部コントロールサービス)と,SCS(システムコントロールサービス)と,ECS(エンジンコントロールサービス)と,MCS(メモリコントロールサービス)と,NCS(ネットワークコントロールサービス)とを含むように構成されている。また、ハンドラ層53は、CUH(コントロールユニットハンドラ)及びIMH(イメージメモリハンドラ)を含む。
【0027】
なお、OSは、アプリケーション40およびプラットフォーム50の各ソフトウェアをプロセスとして並列実行する。OCSのプロセスは、ユーザと本体制御との間の情報伝達手段となる操作部の制御を行う。SCSのプロセスは、システムを制御するための処理を行う。ECSのプロセスは、ハードウェア資源10のエンジン部の制御を行う。
【0028】
MCSのプロセスは、メモリ制御を行う。NCSのプロセスは、データを送受信する際の仲介を行う。SRM52のプロセスは、SCSと共にシステムの制御およびハードウェア資源10の管理を行う。
【0029】
また、ハンドラ層53は後述するCU(コントロールユニット)の管理を行うCUH(コントロールユニットハンドラ)と、プロセスに対するメモリ領域の割り振り及びプロセスに割り振ったメモリ領域の管理を行うIMH(イメージメモリハンドラ)とを含む。SRM52およびCUHは、エンジンI/Fを利用して、ハードウェア資源10に対する処理要求を行う。図2の構成により、情報処理装置1はアプリケーション40で共通的に必要な処理をプラットフォーム50で一元的に処理することができる。
【0030】
図3は、本発明の情報処理装置の一実施例のハードウェア構成図である。情報処理装置1は、コントローラ60と,操作部61と,CU62と,エンジン部63とを含むように構成されている。
【0031】
コントローラ60は、CPU,システムメモリ,ローカルメモリ,HDD(ハードディスクドライブ),NB(ノースブリッジ),ASIC,SB(サウスブリッジ),NIC(ネットワークインターフェースカード),USBI/F,IEEE1394I/F,セントロニクスI/Fなどを含む。
【0032】
CPUは、情報処理装置1の全体制御を行うものである。例えばCPUは、OS上にプロセスを起動して実行させる。NBはブリッジである。SBは、PCIバスとROMや周辺デバイス等とを接続するためのブリッジである。システムメモリは、情報処理装置1の処理用メモリなどとして用いるメモリである。ローカルメモリは、処理用バッファなどとして用いるメモリである。
【0033】
ASICは、処理用のハードウェア要素を有する処理用途向けのICである。HDDは各種データ,プログラム等の蓄積を行うストレージ(補助記憶装置)の一例である。NICは、情報処理装置1をネットワーク3に接続するインターフェース機器である。USBデバイス,IEEE1394デバイスおよびセントロニクスは、夫々の規格に準じたインターフェースである。操作部61は、ユーザからの入力操作を受け付けると共に、ユーザに向けた表示を行うものである。CU62及びエンジン部63は情報処理装置1のハードウェア資源10を制御する。
【0034】
情報処理装置1が画像形成装置である場合、図2に示す構成図及び図3に示すハードウェア構成図は例えば特開2002−84383号公報に記載されているようになる。したがって、図2の情報処理装置1を構成する各ブロックの機能や動作の詳細および図3の情報処理装置1を構成する各ブロックの機能や動作の詳細は、例えば特開2002−84383号公報に記載されている内容から容易に理解できる。
【0035】
以下、本発明によるWebサービス利用システムの詳細について説明していく。ここではWebサービス利用システムに含まれる情報処理装置1がコピー機などの画像形成装置である例を説明する。図4は本発明によるWebサービス利用システムの一実施例のシステム構成図である。図4のWebサービス利用システムは、画像形成装置100,サーバ装置200,認証サーバ300がネットワーク400を介して接続されている。
【0036】
図4の画像形成装置100は、ネットワークI/F101,Webブラウザ102,Webサービスサーバ103,認証証明書104,操作部105,証明情報106,プロッタ107及びスキャナ108を含むように構成されている。Webブラウザ102は、HTML解析部106,表示管理部107を含むように構成されている。
【0037】
サーバ装置200は、アプリケーション201,ネットワークI/F202を含むように構成されている。アプリケーション201は、画面フロー制御部203,画面構築部204,鍵情報205,認証部206,Webサーバ207,Webサービスクライアント208を含むように構成されている。
【0038】
認証サーバ300は、認証モジュール301,ネットワークI/F302を含むように構成されている。認証モジュール301は、認証部303,鍵管理情報304を含むように構成されている。
【0039】
図4の構成のうち、認証サーバ300は後述する鍵を認証サーバ300で生成する実施例で必要な構成であり、必須な構成ではない。また、サーバ装置200の認証部206及び鍵情報205は鍵をサーバ装置200で生成する実施例で必要な構成である。なお、鍵を画像形成装置100で生成する場合は、画像形成装置100に認証部および鍵情報が必要となる。
【0040】
サーバ装置200は、アプリケーション201を備えている。画像形成装置100はプロッタ107,スキャナ108等の1つ以上の機能を備えている。画像形成装置100は機能をネットワーク400経由でサーバ装置200のアプリケーション201から制御させるWebサービスをWebサービスサーバ103によって提供する。さらに、画像形成装置100はWebブラウザ102を表示可能な操作部105を備えている。
【0041】
図4のWebサービス利用システムでは、画像形成装置100が提供するWebサービスを利用してサーバ装置200上でアプリケーション201を構築し、そのアプリケーション201のUIをサーバ装置200のWebサーバ207で提供する。画像形成装置100は、WebクライアントとしてのWebブラウザ102でアプリケーション201のUIを操作部105に表示する。ユーザは、操作部105に表示されたアプリケーション201のUIからサーバ装置200上に構築されたアプリケーション201を操作することができる。
【0042】
ユーザがアプリケーション201のUIから動作を指示すると、その指示は、画像形成装置100のWebブラウザ102からサーバ装置200のWebサーバ207に送信される。サーバ装置200のアプリケーション201は指示に応じて、Webサービスクライアント208から画像形成装置100のWebサービスサーバ103に動作指示を送信する。なお、画像形成装置100の連携時には、サーバ装置200のWebサービスクライアント208から他の画像形成装置のWebサービスサーバに動作指示を送信する。
【0043】
また、画像形成装置100及びサーバ装置200間の通信では、画像形成装置100のWebブラウザ102がアクセスしたサーバ装置200のアプリケーション201以外がサーバ装置200のアプリケーション201になりすまして、画像形成装置100のWebサービスを利用することを防ぐ仕組みを設けている。
【0044】
即ち、本発明によるWebサービス利用システムでは、画像形成装置100のWebブラウザ102からサーバ装置200のWebサーバ207への指示と、サーバ装置200のWebサービスクライアント208から画像形成装置100のWebサービスサーバ103への動作指示とに、例えば身元情報の照会などによる認証で関連性を持たせることにより、動作指示を行ったアプリケーション201が正規のアプリケーションであるか否かを容易に判定できるようにしている。
【0045】
図4のWebサービス利用システムは、Model,View及びControllerから成るMVCモデルを構築している。Modelは、ロジックを担当する。Viewは、表示や入出力を担当する。Controllerは、Model及びViewの制御を担当する。具体的に、ControllerはViewからの入力に応じて必要なロジックの実行をModelに依頼し、結果の表示をViewに依頼する。
【0046】
例えば図4のWebサービス利用システムにおけるViewは、UIをサーバ装置200上で構築し、画像形成装置100上のWebブラウザ102で表示し、設定値などの入出力を行うものである。例えばViewは、情報の表示,情報の表示変更,情報の変更指示,処理の実行指示などを行う。
【0047】
Modelは、プロッタ107,スキャナ108などの機能を制御するWebサービスである。例えばModelは、スキャナ108を起動し、画像を電子データ化する。Controllerは、Webブラウザ102からの要求に応じて適切なWebサービスをサーバ装置200から利用するものである。
【0048】
例えばControllerはコピー処理の動作指示を受けると、処理内容に従ってスキャナ108でスキャンを実行し、プロッタ107で印字を実行する。即ち、Controllerは画像形成アプリのロジックが実装されている。
【0049】
画像形成装置100上の操作部105に表示されているViewからの指示は、サーバ装置200のControllerによって、画像形成装置100の適切なModelを実行する。これにより、画像形成装置100のユーザは、画像形成装置100上のアプリケーションを使っているのと同じように、サーバ装置200上の画像形成アプリを利用することができる。
【0050】
このように、本発明によるWebサービス利用システムでは、UI構築をWebブラウザ用のUI、デバイスコントロールをWebサービスクライアント、実行環境をサーバ装置200、プログラミング作法をWebサービスサーバ103内で行う為、アプリケーションの開発・カスタマイズが容易である。
【0051】
本発明によるWebサービス利用システムは図5のクラス図で表すことができる。図5は本発明によるWebサービス利用システムを表したクラス図である。図5のクラス図では、Webサービス利用システムを、機器クラス501,ブラウザクラス502,WebServiceクラス503,認証証明書クラス504,Webアプリクラス505,WS連携アプリフレームワーククラス506,WS連携アプリケーションクラス507,機器制御コンポーネントクラス508,鍵による証明書クラス509,身元情報による証明書クラス510,署名による証明書クラス511,排他ありWSクラス512,排他なしWSクラス513,CopyServiceクラス514,ScanServiceクラス515,PrintServiceクラス516,画面クラス517及びビジネスロジッククラス518と、各クラスの関係とにより表している。
【0052】
例えば機器クラス501は画像形成装置100に相当する。機器クラス501はブラウザクラス502及びWebServiceクラス503を構成要素として含む。ブラウザクラス502はWebブラウザ102に相当する。WebServiceクラス503はWebサービスサーバ103に相当する。
【0053】
WebServiceクラス503は、排他ありWSクラス512,排他なしWSクラス513が更に定義されている。排他ありWSクラス512は、CopyServiceクラス514,ScanServiceクラス515が更に定義されている。排他なしWSクラス513は、PrintService516が更に定義されている。
【0054】
ブラウザクラス502は、認証証明書クラス504と一対一に対応している。認証証明書クラス504は認証証明書104に相当する。認証証明書クラス504は、鍵による証明書クラス509,身元情報による証明書クラス510,署名による証明書クラス511が更に定義されている。認証証明書クラス504は排他ありWSクラス512の場合にWebServiceクラス503と1つだけ対応する。認証証明書クラス504は排他なしWSクラス513の場合にWebServiceクラス503と対応しない。
【0055】
ブラウザクラス502は、Webアプリクラス505と1つだけ対応するが、対応しないときもある。Webアプリクラス505はWebサーバ207に相当する。WS連携アプリフレームワーククラス506は、Webアプリクラス505を構成要素として含む。WS連携アプリフレームワーククラス506はWebアプリクラス505と1つだけ対応する。
【0056】
WS連携アプリフレームワーククラス506は、WS連携アプリケーションクラス507が更に定義されている。WS連携アプリケーションクラス507は、アプリケーション201に相当する。WS連携アプリケーションクラス507は、画面クラス517及びビジネスロジッククラス518を構成要素として含む。画面クラス517及びビジネスロジッククラス518は画面フロー制御部203及び画面構築部204に相当する。
【0057】
更に、WS連携アプリフレームワーククラス506は、機器制御コンポーネントクラス508を構成要素として含む。機器制御コンポーネントクラス508はWebサービスクライアント208に相当する。機器制御コンポーネントクラス508はWebServiceクラス503と対応するが、対応しないときもある。
【0058】
図5の各クラスにより実現されるモジュールの処理フローを図6に示す。なお、図6の処理フローでは一例としてスキャン処理を示している。ステップS1に進み、ブラウザクラス502により実現されるブラウザモジュール601がユーザにより起動される。ステップS2に進み、ブラウザモジュール601はWebアプリクラス505により実現されるWebアプリモジュール606に、トップページへアクセスする為のhttpリクエストメッセージを送信する。
【0059】
ステップS3に進み、Webアプリモジュール606はブラウザモジュール601からトップページへアクセスする為のhttpリクエストメッセージを受け付ける。ステップS4に進み、Webアプリモジュール606はhttpリクエストメッセージを送信した機器の機器アドレスを保持する。
【0060】
ステップS5に進み、WS連携アプリケーションクラス507により実現されるWS連携アプリケーションモジュール605はWebアプリモジュール606からhttpリクエストメッセージに対応するリクエスト情報(トップページへのアクセス)を取得する。
【0061】
ステップS6に進み、WS連携アプリケーションモジュール605はリクエスト情報に応じてビジネスロジックの処理を行う。ステップS7に進み、WS連携アプリケーションモジュール605はビジネスロジックの処理に応じて画面作成を行う。
【0062】
ステップS8に進み、Webアプリモジュール606は自機の身元を証明する身元情報をトップページの画面情報に添付する。ステップS9に進み、Webアプリモジュール606はブラウザモジュール601へ、httpリクエストメッセージに対するレスポンスを送信する。
【0063】
ステップS10に進み、ブラウザモジュール601は受信したレスポンスに応じて画面描画を行う。ステップS11に進み、認証証明書クラス504により実現される認証証明書モジュール602はWebアプリモジュール606から受信した身元情報をもとに証明書を作成する。
【0064】
ステップS12に進み、ブラウザモジュール601がユーザによりSubmitボタンを押される。ステップS13に進み、ブラウザモジュール601は、httpリクエストメッセージをWebアプリモジュール606に送信する。ステップS14に進み、Webアプリモジュール606はブラウザモジュール601からhttpリクエストメッセージを受け付ける。
【0065】
ステップS15に進み、WS連携アプリケーションモジュール605は、Webアプリモジュール606からリクエスト情報を取得する。ステップS16に進み、WS連携アプリケーションモジュール605は、リクエスト情報に応じてビジネスロジックの処理を行う。ステップS17に進み、WS連携アプリケーションモジュール605はビジネスロジックの処理に応じて画面作成を行う。
【0066】
ステップS18に進み、Webアプリモジュール606は作成した画面をhttpリクエストメッセージに対するレスポンスとしてブラウザモジュール601へ送信する。ブラウザモジュール601は受信したレスポンスに応じて画面描画を行う。
【0067】
また、ステップS16に続いてステップS19に進み、機器制御コンポーネントクラス508により実現される機器制御コンポーネントモジュール607は、自機の身元を証明する身元情報を添付したスキャン要求メッセージを作成する。ステップS20に進み、機器制御コンポーネントモジュール607はステップS4で保存した機器アドレスの機器を特定し、その機器のWebServiceクラス503により実現されるWebServiceモジュール603に身元情報を添付したスキャン要求メッセージを送信する。
【0068】
ステップS21に進み、WebServiceモジュール603は機器制御コンポーネントモジュール607から身元情報を添付したスキャン要求メッセージを受信する。ステップS22に進み、認証証明書モジュール602はスキャン要求メッセージに添付されている身元情報と、証明書の身元情報との照会を行う。
【0069】
ステップS23に進み、身元情報が一致すれば、WebServiceモジュール603はステップS24に進み、WebServiceモジュール603の処理としてスキャン処理を実行する。なお、身元情報が一致しなければ、WebServiceモジュール603はステップS25に進み、例えば機器制御コンポーネントモジュール607等にエラーを返す。
【0070】
このように、本発明によるWebサービス利用システムではブラウザモジュール601からWebアプリモジュール606へのリクエストと、機器制御コンポーネントモジュール607からWebServiceモジュール603へのリクエストとに、身元情報の照会等による認証で関連性を持たせることにより、リクエストを行った機器制御コンポーネントモジュール607が正規のアプリケーションであるか否かを容易に判定することができる。
【0071】
なお、認証は身元情報を使用する認証方式の他、鍵を使った認証方式や署名による認証方式であってもよい。図7は本発明によるWebサービス利用システムに利用可能な認証方式の一例を示した表である。
【0072】
鍵を使った認証方式では、Webサーバ207へのアクセス時に登録する情報として鍵を利用し、Webサービスクライアント208がWebサービスサーバ103に送る情報として鍵を利用し、Webサービスクライアント208がWebサービスサーバ103に送った鍵とWebサーバ207へのアクセス時に登録された鍵とが一致するかどうかによる照会方法を利用する。
【0073】
なお、鍵は例えば図8の構造を利用できる。鍵に含まれる情報としては、機器のホスト名,アプリケーション(Webアプリケーション)のURL,アプリケーションにアクセスした時刻,ランダムな文字列などが考えられる。
【0074】
身元情報を使った認証方式では、Webサーバ207へのアクセス時に登録する情報としてWebサーバ207の身元情報(例えばホスト名やSSL証明書など)を利用し、Webサービスクライアント208がWebサービスサーバ103に送る情報として身元情報を利用し、Webサービスクライアント208がWebサービスサーバ103に送った身元情報とWebサーバ207へのアクセス時に登録された身元情報とが一致するかどうかによる照会方法を利用する。
【0075】
署名による認証方式では、Webサーバ207へのアクセス時に登録する情報としてWebサーバ207の公開鍵を利用し、Webサービスクライアント208がWebサービスサーバ103に送る情報として署名付きのSOAPメッセージを利用し、署名付きのSOAPメッセージがWebサーバ207の公開鍵で解読できるかどうかによる照会方法を利用する。
【0076】
上述したWebサービス利用システムにおける処理のバリエーションを、以下の実施例に基づき説明していく。なお、以下の説明では一例としてスキャン処理を示す。本発明は具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【実施例1】
【0077】
図9は認証サーバで生成した鍵を使う認証方式を表したシーケンス図である。ステップS101に進み、ユーザは画像形成装置902の操作部105を操作することで画像形成装置902にブラウザモジュール910を起動させる。
【0078】
ステップS102に進み、ブラウザモジュール910はサーバ装置903のWebアプリモジュール913にスタート画面取得をリクエストする。ステップS103に進み、Webアプリモジュール913はブラウザモジュール910からのリクエストに対するレスポンスとして、スタート画面及び自機の身元情報M1をブラウザモジュール910に送信する。
【0079】
ブラウザモジュール910は操作部105にスタート画面を表示する。ステップS104に進み、ユーザは操作部105のスキャン開始キーを押下する。ユーザによりスキャン開始キーが押下されると、ブラウザモジュール910はステップS105に進み、鍵による証明書モジュール911に鍵の登録をリクエストする。鍵による証明書モジュール911は、鍵による証明書クラス509により実現される。
【0080】
ステップS106に進み、鍵による証明書モジュール911は認証サーバ904の認証モジュール914に対し、身元情報M1の身元情報登録をリクエストする。ステップS107に進み、認証モジュール914は身元情報M1から鍵PK1を生成し、その鍵PK1を登録すると共に、鍵による証明書モジュール911に鍵PK1を送信する。ステップS108に進み、鍵による証明書モジュール911は鍵の登録のリクエストに対するレスポンスとして、鍵PK1をブラウザモジュール910に送信する。
【0081】
ステップS109に進み、ブラウザモジュール910はサーバ装置903のWebアプリモジュール913に対し、鍵PK1を添付してスキャン実行をリクエストする。スキャン実行をリクエストされたWebアプリモジュール913はステップS110に進み、スキャン中画面をブラウザモジュール910に送信する。ブラウザモジュール910は操作部105にスキャン中画面を表示して、ユーザにスキャン中であることを示す。
【0082】
また、ステップS111に進み、Webアプリモジュール913はスキャン開始指示および鍵PK1を含むSOAPリクエストを、ScanServiceクラス515により実現される画像形成装置902のスキャンサービスモジュール912に送信する。ステップS112に進み、スキャンサービスモジュール912は鍵による証明書モジュール911に鍵PK1の照会をリクエストする。
【0083】
ステップS113に進み、鍵による証明書モジュール911は認証サーバ904の認証モジュール914に対し、鍵PK1の照合をリクエストする。認証モジュール914は照合のリクエストのあった鍵PK1と既に登録されている鍵とが一致するかどうかによって照合を行う。すなわち、本発明によるWebサービス利用システムでは、ステップS109でスキャン実行を指示する指示先と、ステップS111でスキャン開始を指示される指示元とが同一であるか否かを容易に判定できる。照合が成功すると、認証モジュール914はステップS114に進み、鍵による証明書モジュール911に鍵PK1の照合が成功したことを通知する。
【0084】
ステップS115に進み、鍵による証明書モジュール911は鍵PK1の照合OKをスキャンサービスモジュール912に通知する。ステップS116に進み、スキャンサービスモジュール912はスキャンを実行する。ステップS117に進み、スキャンサービスモジュール912はステップS111のSOAPリクエストに対するレスポンスをWebアプリモジュール913に送信する。
【実施例2】
【0085】
図10は画像形成装置で生成した鍵を使う認証方式を表したシーケンス図である。ステップS201に進み、ユーザは画像形成装置902の操作部105を操作することで画像形成装置902にブラウザモジュール910を起動させる。
【0086】
ステップS202に進み、ブラウザモジュール910はサーバ装置903のWebアプリモジュール913にスタート画面取得をリクエストする。ステップS203に進み、Webアプリモジュール913はブラウザモジュール910からのリクエストに対するレスポンスとして、スタート画面及び自機の身元情報M1をブラウザモジュール910に送信する。
【0087】
ステップS204に進み、ブラウザモジュール910は鍵による証明書モジュール911に鍵の登録をリクエストする。ステップS205に進み、鍵による証明書モジュール911は身元情報M1から鍵K1を生成し、その鍵K1を登録する。鍵による証明書モジュール911は鍵の登録のリクエストに対するレスポンスとして、鍵K1をブラウザモジュール910に送信する。
【0088】
ブラウザモジュール910は操作部105にスタート画面を表示する。ステップS207に進み、ユーザは操作部105のスキャン開始キーを押下する。ユーザによりスキャン開始キーが押下されると、ブラウザモジュール910はステップS208に進み、サーバ装置903のWebアプリモジュール913に対し、鍵K1を添付してスキャン実行をリクエストする。スキャン実行をリクエストされたWebアプリモジュール913はステップS209に進み、スキャン中画面をブラウザモジュール910に送信する。ブラウザモジュール910は操作部105にスキャン中画面を表示して、ユーザにスキャン中であることを示す。
【0089】
また、ステップS211に進み、Webアプリモジュール913はスキャン開始指示および鍵K1を含むSOAPリクエストを、画像形成装置902のスキャンサービスモジュール912に送信する。ステップS212に進み、スキャンサービスモジュール912は鍵による証明書モジュール911に鍵K1の照会をリクエストする。
【0090】
ステップS213に進み、鍵による証明書モジュール911は照合のリクエストのあった鍵K1と既に登録されている鍵とが一致するかどうかによって照合を行う。即ち、本発明によるWebサービス利用システムでは、ステップS208でスキャン実行を指示する指示先と、ステップS211でスキャン開始を指示される指示元とが同一であるか否かを容易に判定できる。照合が成功すると、鍵による証明書モジュール911は、スキャンサービスモジュール912に鍵K1の照合が成功したことを通知する。
【0091】
鍵K1の照合が成功したことを通知されると、スキャンサービスモジュール912はステップS214に進み、スキャンを実行する。スキャンの実行が開始されると、スキャンサービスモジュール912はステップS215に進み、ステップS211のSOAPリクエストに対するレスポンスをWebアプリモジュール913に送信する。
【0092】
なお、サーバ装置903以外のサーバ装置905に含まれるWebアプリモジュール915からスキャン開始指示および鍵K2を含むSOAPリクエストを、画像形成装置902のスキャンサービスモジュール912に送信する例を説明する。
【0093】
ステップS216に進み、Webアプリモジュール915はスキャン開始指示および鍵K2を含むSOAPリクエストを、画像形成装置902のスキャンサービスモジュール912に送信する。ステップS217に進み、スキャンサービスモジュール912は鍵による証明書モジュール911に鍵K2の照会をリクエストする。
【0094】
ステップS218に進み、鍵による証明書モジュール911は照合のリクエストのあった鍵K2と既に登録されている鍵K1とが一致しないため、照合が失敗したことをスキャンサービスモジュール912に通知する。鍵K2の照合が失敗したことを通知されると、スキャンサービスモジュール912はステップS219に進み、ステップS216のSOAPリクエストに対するレスポンスとして照合の失敗をWebアプリモジュール915に送信する。
【実施例3】
【0095】
図11はサーバ装置で生成した鍵を使う認証方式を表したシーケンス図である。ステップS301に進み、ユーザは画像形成装置902の操作部105を操作することで画像形成装置902にブラウザモジュール910を起動させる。
【0096】
ステップS302に進み、ブラウザモジュール910はサーバ装置903のWebアプリモジュール913にスタート画面取得をリクエストする。ステップS303に進み、Webアプリモジュール913は自機の身元情報M1から鍵K1を生成する。ステップS304に進み、Webアプリモジュール913はブラウザモジュール910からのリクエストに対するレスポンスとして、スタート画面及び鍵K1をブラウザモジュール910に送信する。
【0097】
ステップS305に進み、ブラウザモジュール910は鍵による証明書モジュール911に鍵の登録をリクエストする。ステップS306に進み、鍵による証明書モジュール911は鍵K1を登録する。鍵による証明書モジュール911は鍵の登録のリクエストに対するレスポンスをブラウザモジュール910に送信する。
【0098】
ブラウザモジュール910は操作部105にスタート画面を表示する。ステップS307に進み、ユーザは操作部105のスキャン開始キーを押下する。ユーザによりスキャン開始キーが押下されると、ブラウザモジュール910はステップS308に進み、サーバ装置903のWebアプリモジュール913に対し、鍵K1を添付してスキャン実行をリクエストする。スキャン実行をリクエストされたWebアプリモジュール913はステップS309に進み、スキャン中画面をブラウザモジュール910に送信する。ブラウザモジュール910は操作部105にスキャン中画面を表示して、ユーザにスキャン中であることを示す。
【0099】
ステップS310に進み、Webアプリモジュール913はスキャン開始指示および鍵K1を含むSOAPリクエストを、画像形成装置902のスキャンサービスモジュール912に送信する。ステップS311に進み、スキャンサービスモジュール912は鍵による証明書モジュール911に鍵K1の照会をリクエストする。
【0100】
ステップS312に進み、鍵による証明書モジュール911は照合のリクエストのあった鍵K1と既に登録されている鍵とが一致するかどうかによって照合を行う。即ち、本発明によるWebサービス利用システムでは、ステップS308でスキャン実行を指示する指示先と、ステップS310でスキャン開始を指示される指示元とが、同一であるか否かを容易に判定できる。照合が成功すると、鍵による証明書モジュール911は、スキャンサービスモジュール912に鍵K1の照合が成功したことを通知する。
【0101】
鍵K1の照合が成功したことを通知されると、スキャンサービスモジュール912はステップS313に進み、スキャンを実行する。スキャンの実行が開始されたあと、スキャンサービスモジュール912はステップS314に進み、ステップS310のSOAPリクエストに対するレスポンスをWebアプリモジュール913に送信する。
【0102】
なお、サーバ装置903以外のサーバ装置905に含まれるWebアプリモジュール915からスキャン開始指示および鍵K2を含むSOAPリクエストを、画像形成装置902のスキャンサービスモジュール912に送信する例を説明する。
【0103】
ステップS315に進み、ユーザは画像形成装置902の操作部105を操作することで画像形成装置902にブラウザモジュール910を起動させる。ステップS316に進み、Webアプリモジュール915はスキャン開始指示および鍵K2を含むSOAPリクエストを、画像形成装置902のスキャンサービスモジュール912に送信する。ステップS317に進み、スキャンサービスモジュール912はブラウザモジュール910に鍵K2の照会をリクエストする。
【0104】
ステップS318に進み、ブラウザモジュール910は照合のリクエストのあった鍵K2と既に登録されている鍵K1とが一致しない為、照合が失敗したことをスキャンサービスモジュール912に通知する。
【0105】
鍵K2の照合が失敗したことを通知されると、スキャンサービスモジュール912はステップS319に進み、ステップS316のSOAPリクエストに対するレスポンスとして照合の失敗をWebアプリモジュール915に送信する。
【実施例4】
【0106】
図12は身元情報を使う認証方式を表したシーケンス図である。ステップS401に進み、ユーザは画像形成装置902の操作部105を操作することで画像形成装置902にブラウザモジュール910を起動させる。
【0107】
ステップS402に進み、ブラウザモジュール910はサーバ装置903のWebアプリモジュール913にスタート画面取得をリクエストする。ステップS403に進み、Webアプリモジュール913はブラウザモジュール910からのリクエストに対するレスポンスとして、スタート画面及び自機の身元情報M1をブラウザモジュール910に送信する。自機の身元情報M1としては、SSL証明書、IPアドレス等がある。
【0108】
ステップS404に進み、ブラウザモジュール910は身元情報による証明書クラス510により実現される、身元情報による証明書モジュール916に身元情報M1の登録をリクエストする。身元情報による証明書モジュール916は身元情報M1を登録する。
【0109】
ブラウザモジュール910は操作部105にスタート画面を表示する。ステップS405に進み、ユーザは操作部105のスキャン開始キーを押下する。ユーザによりスキャン開始キーが押下されると、ブラウザモジュール910はステップS406に進み、サーバ装置903のWebアプリモジュール913に対し、スキャン実行をリクエストする。
【0110】
Webアプリモジュール913はステップS407に進み、スキャン中画面をブラウザモジュール910に送信する。ブラウザモジュール910は操作部105にスキャン中画面を表示して、ユーザにスキャン中であることを示す。
【0111】
また、ステップS408に進み、Webアプリモジュール913はスキャン開始指示および身元情報M1を含むSOAPリクエストを、画像形成装置902のスキャンサービスモジュール912に送信する。ステップS409に進み、スキャンサービスモジュール912は身元情報による証明書モジュール916に身元情報M1の照会をリクエストする。
【0112】
ステップS410に進み、身元情報による証明書モジュール916は、照合のリクエストのあった身元情報M1と既に登録されている身元情報とが一致するかどうかによって照合を行っている。すなわち、本発明によるWebサービス利用システムでは、ステップS406でスキャン実行を指示する指示先と、ステップS408でスキャン開始を指示される指示元とが同一であるか否かを容易に判定できる。照合が成功すると、身元情報による証明書モジュール916は、スキャンサービスモジュール912に身元情報M1の照合が成功したことを通知する。
【0113】
身元情報M1の照合が成功したことを通知されると、スキャンサービスモジュール912はステップS411に進み、スキャンを実行する。スキャンの実行が開始されると、スキャンサービスモジュール912はステップS412に進み、ステップS408のSOAPリクエストに対するレスポンスをWebアプリモジュール913に送信する。
【0114】
なお、サーバ装置903以外のサーバ装置905に含まれるWebアプリモジュール915からスキャン開始指示および身元情報M2を含むSOAPリクエストを、画像形成装置902のスキャンサービスモジュール912に送信する例を説明する。
【0115】
ステップS413に進み、ユーザは画像形成装置902の操作部105を操作することで画像形成装置902にブラウザモジュール910を起動させる。ステップS414に進み、ブラウザモジュール910はサーバ装置905のWebアプリモジュール915にスタート画面取得をリクエストする。ステップS415に進み、Webアプリモジュール915はブラウザモジュール910からのリクエストに対するレスポンスとして、スタート画面及び自機の身元情報M2をブラウザモジュール910に送信する。ステップS416に進み、ブラウザモジュール910は身元情報による証明書モジュール916に身元情報M2の登録をリクエストする。身元情報による証明書モジュール916は身元情報M2を登録する。
【0116】
ブラウザモジュール910は操作部105にスタート画面を表示する。ステップS417に進み、サーバ装置903のWebアプリモジュール913はスキャン開始指示および身元情報M1を含むSOAPリクエストを、画像形成装置902のスキャンサービスモジュール912に送信する。ステップS418に進み、スキャンサービスモジュール912は身元情報による証明書モジュール916に身元情報M1の照会をリクエストする。
【0117】
ステップS419に進み、身元情報による証明書モジュール916は照合のリクエストのあった身元情報M1と既に登録されている身元情報M2とが一致しないため、照合が失敗したことをスキャンサービスモジュール912に通知する。そして、身元情報M1の照合が失敗したことを通知されると、スキャンサービスモジュール912はステップS420に進み、ステップS417のSOAPリクエストに対するレスポンスとして照合の失敗をWebアプリモジュール913に送信する。
【実施例5】
【0118】
また、図13は署名による認証方式を表したシーケンス図である。ステップS501に進み、ユーザは画像形成装置902の操作部105を操作することで画像形成装置902にブラウザモジュール910を起動させる。
【0119】
ステップS502に進み、ブラウザモジュール910はサーバ装置903のWebアプリモジュール913にスタート画面取得をリクエストする。ステップS503に進み、Webアプリモジュール913はブラウザモジュール910からのリクエストに対するレスポンスとして、スタート画面及び自機の公開鍵PK1をブラウザモジュール910に送信する。
【0120】
ステップS504に進み、ブラウザモジュール910は署名による証明書クラス511により実現される、署名による証明書モジュール917に公開鍵PK1の登録をリクエストする。署名による証明書モジュール917は公開鍵PK1を登録する。
【0121】
ブラウザモジュール910は操作部105にスタート画面を表示する。ステップS505に進み、ユーザは操作部105のスキャン開始キーを押下する。ユーザによりスキャン開始キーが押下されると、ブラウザモジュール910はステップS506に進み、サーバ装置903のWebアプリモジュール913に対し、スキャン実行をリクエストする。
【0122】
Webアプリモジュール913はステップS507に進み、スキャン中画面をブラウザモジュール910に送信する。ブラウザモジュール910は操作部105にスキャン中画面を表示して、ユーザにスキャン中であることを示す。
【0123】
ステップS508に進み、Webアプリモジュール913はスキャン開始メッセージに秘密鍵PK1で署名する。ステップS509に進み、Webアプリモジュール913は署名M1付きスキャン開始メッセージを含むSOAPリクエストを、画像形成装置902のスキャンサービスモジュール912に送信する。
【0124】
ステップS510に進み、スキャンサービスモジュール912は、署名による証明書モジュール917に署名M1の照会をリクエストする。ステップS511に進み、署名による証明書モジュール917は、照合のリクエストのあった署名M1が既に登録されている公開鍵PK1で解読できるかどうかによって照合を行っている。
【0125】
即ち、本発明によるWebサービス利用システムでは、ステップS506でスキャン実行を指示する指示先と、ステップS509でスキャン開始を指示される指示元とが同一であるか否かを容易に判定できる。照合が成功すると、署名による証明書モジュール917は、スキャンサービスモジュール912に署名M1の照合が成功したことを通知する。
【0126】
署名M1の照合が成功したことを通知されると、スキャンサービスモジュール912はステップS512に進み、スキャンを実行する。スキャンの実行が開始されると、スキャンサービスモジュール912はステップS513に進み、ステップS509のSOAPリクエストに対するレスポンスをWebアプリモジュール913に送信する。
【0127】
なお、サーバ装置903以外のサーバ装置905に含まれるWebアプリモジュール915からWebアプリモジュール915の公開鍵PK2を含むSOAPリクエストを画像形成装置902のスキャンサービスモジュール912に送信する例を説明する。
【0128】
ステップS514に進み、ユーザは画像形成装置902の操作部105を操作することで画像形成装置902にブラウザモジュール910を起動させる。ステップS515に進み、ブラウザモジュール910はサーバ装置905のWebアプリモジュール915にスタート画面取得をリクエストする。ステップS516に進み、Webアプリモジュール915はブラウザモジュール910からのリクエストに対するレスポンスとして、スタート画面及び自機の公開鍵PK2をブラウザモジュール910に送信する。ステップS517に進み、ブラウザモジュール910は、署名による証明書モジュール917に公開鍵PK2の登録をリクエストする。署名による証明書モジュール917は公開鍵PK2を登録する。ブラウザモジュール910は操作部105にスタート画面を表示する。
【0129】
ステップS518に進み、サーバ装置903のWebアプリモジュール913は署名M1付きスキャン開始メッセージを含むSOAPリクエストを、画像形成装置902のスキャンサービスモジュール912に送信する。
【0130】
ステップS519に進み、スキャンサービスモジュール912は、署名による証明書モジュール917に署名M1の照会をリクエストする。ステップS520に進み、署名による証明書モジュール917は、照合のリクエストのあった署名M1と既に登録されている署名M2とが一致しないため、照合が失敗したことをスキャンサービスモジュール912に通知する。そして、スキャンサービスモジュール912はステップS521に進み、ステップS518のSOAPリクエストに対するレスポンスとして照合の失敗をWebアプリモジュール913に送信する。
【図面の簡単な説明】
【0131】
【図1】本発明によるWebサービス利用システムの一例の概念図である。
【図2】本発明の情報処理装置の一実施例の構成図である。
【図3】本発明の情報処理装置の一実施例のハードウェア構成図である。
【図4】本発明によるWebサービス利用システムの一実施例のシステム構成図である。
【図5】本発明によるWebサービス利用システムを表したクラス図である。
【図6】各クラスにより実現されるモジュールの処理フローである。
【図7】本発明によるWebサービス利用システムに利用可能な認証方式の一例を示した表である。
【図8】鍵の構造を示す図である。
【図9】認証サーバで生成した鍵を使う認証方式を表したシーケンス図である。
【図10】画像形成装置で生成した鍵を使う認証方式を表したシーケンス図である。
【図11】サーバ装置で生成した鍵を使う認証方式を表したシーケンス図である。
【図12】身元情報を使う認証方式を表したシーケンス図である。
【図13】署名による認証方式を表したシーケンス図である。
【符号の説明】
【0132】
1,1a,1b 情報処理装置
2 サーバ装置
3 ネットワーク
4 UI
100 画像形成装置
101 ネットワークI/F
102 Webブラウザ
103 Webサービスサーバ
104 認証証明書
105 操作部
106 証明情報
107 プロッタ
108 スキャナ
109 HTML解析部
110 表示管理部
200 サーバ装置
201 アプリケーション
202 ネットワークI/F
203 画面フロー制御部
204 画面構築部
205 鍵情報
206 認証部
207 Webサーバ
208 Webサービスクライアント
300 認証サーバ
301 認証モジュール
302 ネットワークI/F
303 認証部
304 鍵管理情報
400 ネットワーク
【技術分野】
【0001】
本発明は、情報処理装置、サービス提供方法、サービス提供プログラムに係り、特に所定のネットワークを介して外部処理装置と接続された情報処理装置、その情報処理装置で利用されるサービス提供方法、サービス提供プログラムに関する。
【背景技術】
【0002】
例えば特許文献1には、プリンタ,コピー,ファクシミリおよびスキャナなどの各装置の機能を1つの筐体内に収納した情報処理装置の一例としての画像形成装置が記載されている。この画像形成装置は、1つの筐体内に表示部,印刷部および撮像部などを設けると共に、プリンタ,コピー,ファクシミリおよびスキャナにそれぞれ対応する4種類のソフトウェア(アプリケーション)を設け、そのアプリケーションを切り替えることより、プリンタ,コピー,ファクシミリおよびスキャナとして動作させるものである。
【特許文献1】特開2002−84383号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
従来、画像形成装置上で動作するアプリケーションを開発する場合は、アプリケーション自身のロジックの構築だけでなく、独自のデバイスコントロール用のI/F、ユーザインターフェース(UI)用のI/F、画像形成装置特有のプログラミング作法(例えば電源制御や後述するSCSへの登録など)に従う必要があるという問題があった。
【0004】
また、アプリケーションのカスタマイズをするには、上記のような独自のデバイスコントロール用のI/F、独自のUI用のI/F、画像形成装置特有のプログラミング作法を習熟していなければならず、容易でないという問題があった。
【0005】
本発明は、上記の点に鑑みなされたもので、ソフトウェアの開発・カスタマイズを容易に行うことができるサービス利用システム、情報処理装置、外部処理装置及びサービス利用プログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
上記課題を解決するため、本発明は、所定のネットワークを介して外部処理装置と接続されており、所定のサービスに掛かる処理の少なくとも一部を自装置に代わって前記外部処理装置に行わせる情報処理装置であって、前記処理の少なくとも一部を要求する前記外部処理装置の認証の為の情報を保持する保持手段と、前記外部処理装置に前記処理の少なくとも一部を要求する要求手段と、前記処理により制御される機能と、前記保持手段が保持する情報に基づき、前記要求手段から行った要求に対応する前記外部処理装置からの要求であると認証すると、前記外部処理装置の処理により前記機能を外部から制御させるサービス提供手段とを備えることを特徴とする。
【0007】
また、本発明は、所定のネットワークを介して外部処理装置と接続されており、所定のサービスに掛かる処理の少なくとも一部を自装置に代わって前記外部処理装置に行わせる情報処理装置におけるサービス提供方法であって、前記処理の少なくとも一部を要求する前記外部処理装置の認証の為の情報を保持手段に保持する保持ステップと、前記外部処理装置に前記処理の少なくとも一部を要求手段から要求する要求ステップと、前記保持手段が保持する情報に基づき、前記要求手段から行った要求に対応する前記外部処理装置からの要求であると認証すると、サービス提供手段が前記外部処理装置の処理により前記機能を外部から制御させるサービス提供ステップとを備えることを特徴とする。
【0008】
また、本発明は、所定のネットワークを介して外部処理装置と接続されており、所定のサービスに掛かる処理の少なくとも一部を自装置に代わって前記外部処理装置に行わせる情報処理装置を、前記処理の少なくとも一部を要求する前記外部処理装置の認証の為の情報を保持する保持手段と、前記外部処理装置に前記処理の少なくとも一部を要求する要求手段と、前記処理により制御される機能と、前記保持手段が保持する情報に基づき、前記要求手段から行った要求に対応する前記外部処理装置からの要求であると認証すると、前記外部処理装置の処理により前記機能を外部から制御させるサービス提供手段として機能させる為のサービス提供プログラムであることを特徴とする。
【0009】
本発明では、サービスに掛かる処理の少なくとも一部を情報処理装置に代わって外部処理装置で行い、その外部処理装置からの要求を契機に、情報処理装置の機能(例えばアプリケーション挙動の制御や、画面制御)を制御させることができる。
【0010】
また、本発明では、情報処理装置の機能を外部処理装置からの要求を契機に制御することで、Webアプリケーション(Webアプリ)等を構築する程度の技術で、情報処理装置の機能を制御するソフトウェアの開発・カスタマイズが可能である。
【0011】
さらに、本発明では、ネットワークを介して接続されている外部処理装置からの要求を契機に、情報処理装置の機能を制御するため、サービスに掛かる処理の少なくとも一部を要求した外部処理装置であるか認証を行うことでなりすましを防ぎ、セキュリティを向上させることができる。
【0012】
なお、本発明の構成要素、表現または構成要素の任意の組合せを、方法、装置、システム、コンピュータプログラム、記録媒体、データ構造などに適用したものも本発明の態様として有効である。
【発明の効果】
【0013】
本発明によれば、ソフトウェアの開発・カスタマイズを容易に行うことができるサービス利用システム、情報処理装置、外部処理装置及びサービス利用プログラムを提供可能である。
【発明を実施するための最良の形態】
【0014】
次に、本発明を実施するための最良の形態を、以下の実施例に基づき図面を参照しつつ説明していく。なお、本実施例では、機能をネットワーク経由で制御させるサービスの一例としてWebサービスを例に説明するが、Webサービスに限るものではない。
【0015】
図1は本発明によるWebサービス利用システムの一例の概念図である。Webサービス利用システムは、1つ以上の情報処理装置1a,1bと、サーバ装置2とが、LANやインターネット等のネットワーク3を介して接続されている。
【0016】
サーバ装置2は、アプリを備えている。また、情報処理装置1a,1bは、1つ以上の機能を備え、その機能をネットワーク経由でサーバ装置2のアプリから制御させるWebサービスを提供する。さらに、情報処理装置1aは、Webブラウザを表示可能な操作部を備えている。
【0017】
Webサービス利用システムでは、情報処理装置1a,1bが提供するWebサービスを利用してサーバ装置2上でアプリを構築し、そのアプリのUIをサーバ装置2のWebサーバで提供する。情報処理装置1aは、WebクライアントとしてのWebブラウザでアプリのUI4を操作部に表示する。ユーザは、操作部に表示されたアプリのUI4からサーバ装置2上に構築されたアプリを操作することができる。
【0018】
ユーザがアプリのUI4から動作を指示すると、指示が情報処理装置1aのWebブラウザからサーバ装置2のWebサーバに送信される。サーバ装置2のアプリは指示に応じて、Webサービスクライアントから情報処理装置1aのWebサービスサーバに動作指示を送信する。なお、情報処理装置1aと情報処理装置1bとの連携時には、サーバ装置2のWebサービスクライアントから情報処理装置1bのWebサービスサーバに動作指示を送信する。情報処理装置1a,1b及びサーバ装置2間の通信は、セキュリティを考慮してSSL等を利用できる。
【0019】
また、情報処理装置1a,1b及びサーバ装置2間の通信では、情報処理装置1aのWebブラウザがアクセスしたサーバ装置2のアプリ以外が、サーバ装置2のアプリになりすまして、情報処理装置1a又は1bのWebサービスを利用することを防ぐ仕組みを設けている。
【0020】
すなわち、本発明によるWebサービス利用システムでは、情報処理装置1aのWebブラウザからサーバ装置2のWebサーバへの指示と、サーバ装置2のWebサービスクライアントから情報処理装置1a又は1bのWebサービスサーバへの動作指示とに関連性を持たせることにより、動作指示を行ったアプリが正規のアプリであるか否かを容易に判定できるようにしている。なお、なりすましを防ぐ仕組みの詳細は後述する。
【0021】
このように、図1のWebサービス利用システムでは、独自のデバイスコントロール用のI/F、UI用のI/F、情報処理装置特有のプログラミング作法を、情報処理装置1a,1bが提供するWebサービスで隠蔽することができるので、Webアプリを構築する程度の技術で情報処理装置1a,1bの機能を制御するアプリケーションの開発・カスタマイズが可能である。
【0022】
次に、情報処理装置1a,1bの一例の構成について説明する。なお、何れかの情報処理装置を指す場合は、単に参照番号1を用いる。図2は、本発明の情報処理装置の一実施例の構成図である。情報処理装置1は、ハードウェア資源10,起動部20,ソフトウェア群30を含むように構成されている。
【0023】
ハードウェア資源10は、操作部,機能A,機能B等の複数のデバイス(ハードウェアリソース)を含む。情報処理装置1が画像形成装置である場合、ハードウェア資源10はプロッタやスキャナ等を含む。
【0024】
また、ソフトウェア群30は、UNIX(登録商標)などのOS上で実行されているアプリケーション40とプラットフォーム50とを含む。起動部20は情報処理装置1の電源投入時に最初に実行され、アプリケーション40やプラットフォーム50をOS上に起動するものである。
【0025】
アプリケーション40はWebサービス実行アプリを含む。また、プラットフォーム50はコントロールサービス51,SRM(システムリソースマネージャ)52,ハンドラ層53を含む。さらに、プラットフォーム50はAPI(アプリケーションプログラムインターフェース)54を含むように構成されている。なお、情報処理装置1は必要最小限のアプリケーション40を搭載しておき、サーバ装置2との通信がオフラインのときに利用するようにしてもよい。
【0026】
コントロールサービス51は、OCS(操作部コントロールサービス)と,SCS(システムコントロールサービス)と,ECS(エンジンコントロールサービス)と,MCS(メモリコントロールサービス)と,NCS(ネットワークコントロールサービス)とを含むように構成されている。また、ハンドラ層53は、CUH(コントロールユニットハンドラ)及びIMH(イメージメモリハンドラ)を含む。
【0027】
なお、OSは、アプリケーション40およびプラットフォーム50の各ソフトウェアをプロセスとして並列実行する。OCSのプロセスは、ユーザと本体制御との間の情報伝達手段となる操作部の制御を行う。SCSのプロセスは、システムを制御するための処理を行う。ECSのプロセスは、ハードウェア資源10のエンジン部の制御を行う。
【0028】
MCSのプロセスは、メモリ制御を行う。NCSのプロセスは、データを送受信する際の仲介を行う。SRM52のプロセスは、SCSと共にシステムの制御およびハードウェア資源10の管理を行う。
【0029】
また、ハンドラ層53は後述するCU(コントロールユニット)の管理を行うCUH(コントロールユニットハンドラ)と、プロセスに対するメモリ領域の割り振り及びプロセスに割り振ったメモリ領域の管理を行うIMH(イメージメモリハンドラ)とを含む。SRM52およびCUHは、エンジンI/Fを利用して、ハードウェア資源10に対する処理要求を行う。図2の構成により、情報処理装置1はアプリケーション40で共通的に必要な処理をプラットフォーム50で一元的に処理することができる。
【0030】
図3は、本発明の情報処理装置の一実施例のハードウェア構成図である。情報処理装置1は、コントローラ60と,操作部61と,CU62と,エンジン部63とを含むように構成されている。
【0031】
コントローラ60は、CPU,システムメモリ,ローカルメモリ,HDD(ハードディスクドライブ),NB(ノースブリッジ),ASIC,SB(サウスブリッジ),NIC(ネットワークインターフェースカード),USBI/F,IEEE1394I/F,セントロニクスI/Fなどを含む。
【0032】
CPUは、情報処理装置1の全体制御を行うものである。例えばCPUは、OS上にプロセスを起動して実行させる。NBはブリッジである。SBは、PCIバスとROMや周辺デバイス等とを接続するためのブリッジである。システムメモリは、情報処理装置1の処理用メモリなどとして用いるメモリである。ローカルメモリは、処理用バッファなどとして用いるメモリである。
【0033】
ASICは、処理用のハードウェア要素を有する処理用途向けのICである。HDDは各種データ,プログラム等の蓄積を行うストレージ(補助記憶装置)の一例である。NICは、情報処理装置1をネットワーク3に接続するインターフェース機器である。USBデバイス,IEEE1394デバイスおよびセントロニクスは、夫々の規格に準じたインターフェースである。操作部61は、ユーザからの入力操作を受け付けると共に、ユーザに向けた表示を行うものである。CU62及びエンジン部63は情報処理装置1のハードウェア資源10を制御する。
【0034】
情報処理装置1が画像形成装置である場合、図2に示す構成図及び図3に示すハードウェア構成図は例えば特開2002−84383号公報に記載されているようになる。したがって、図2の情報処理装置1を構成する各ブロックの機能や動作の詳細および図3の情報処理装置1を構成する各ブロックの機能や動作の詳細は、例えば特開2002−84383号公報に記載されている内容から容易に理解できる。
【0035】
以下、本発明によるWebサービス利用システムの詳細について説明していく。ここではWebサービス利用システムに含まれる情報処理装置1がコピー機などの画像形成装置である例を説明する。図4は本発明によるWebサービス利用システムの一実施例のシステム構成図である。図4のWebサービス利用システムは、画像形成装置100,サーバ装置200,認証サーバ300がネットワーク400を介して接続されている。
【0036】
図4の画像形成装置100は、ネットワークI/F101,Webブラウザ102,Webサービスサーバ103,認証証明書104,操作部105,証明情報106,プロッタ107及びスキャナ108を含むように構成されている。Webブラウザ102は、HTML解析部106,表示管理部107を含むように構成されている。
【0037】
サーバ装置200は、アプリケーション201,ネットワークI/F202を含むように構成されている。アプリケーション201は、画面フロー制御部203,画面構築部204,鍵情報205,認証部206,Webサーバ207,Webサービスクライアント208を含むように構成されている。
【0038】
認証サーバ300は、認証モジュール301,ネットワークI/F302を含むように構成されている。認証モジュール301は、認証部303,鍵管理情報304を含むように構成されている。
【0039】
図4の構成のうち、認証サーバ300は後述する鍵を認証サーバ300で生成する実施例で必要な構成であり、必須な構成ではない。また、サーバ装置200の認証部206及び鍵情報205は鍵をサーバ装置200で生成する実施例で必要な構成である。なお、鍵を画像形成装置100で生成する場合は、画像形成装置100に認証部および鍵情報が必要となる。
【0040】
サーバ装置200は、アプリケーション201を備えている。画像形成装置100はプロッタ107,スキャナ108等の1つ以上の機能を備えている。画像形成装置100は機能をネットワーク400経由でサーバ装置200のアプリケーション201から制御させるWebサービスをWebサービスサーバ103によって提供する。さらに、画像形成装置100はWebブラウザ102を表示可能な操作部105を備えている。
【0041】
図4のWebサービス利用システムでは、画像形成装置100が提供するWebサービスを利用してサーバ装置200上でアプリケーション201を構築し、そのアプリケーション201のUIをサーバ装置200のWebサーバ207で提供する。画像形成装置100は、WebクライアントとしてのWebブラウザ102でアプリケーション201のUIを操作部105に表示する。ユーザは、操作部105に表示されたアプリケーション201のUIからサーバ装置200上に構築されたアプリケーション201を操作することができる。
【0042】
ユーザがアプリケーション201のUIから動作を指示すると、その指示は、画像形成装置100のWebブラウザ102からサーバ装置200のWebサーバ207に送信される。サーバ装置200のアプリケーション201は指示に応じて、Webサービスクライアント208から画像形成装置100のWebサービスサーバ103に動作指示を送信する。なお、画像形成装置100の連携時には、サーバ装置200のWebサービスクライアント208から他の画像形成装置のWebサービスサーバに動作指示を送信する。
【0043】
また、画像形成装置100及びサーバ装置200間の通信では、画像形成装置100のWebブラウザ102がアクセスしたサーバ装置200のアプリケーション201以外がサーバ装置200のアプリケーション201になりすまして、画像形成装置100のWebサービスを利用することを防ぐ仕組みを設けている。
【0044】
即ち、本発明によるWebサービス利用システムでは、画像形成装置100のWebブラウザ102からサーバ装置200のWebサーバ207への指示と、サーバ装置200のWebサービスクライアント208から画像形成装置100のWebサービスサーバ103への動作指示とに、例えば身元情報の照会などによる認証で関連性を持たせることにより、動作指示を行ったアプリケーション201が正規のアプリケーションであるか否かを容易に判定できるようにしている。
【0045】
図4のWebサービス利用システムは、Model,View及びControllerから成るMVCモデルを構築している。Modelは、ロジックを担当する。Viewは、表示や入出力を担当する。Controllerは、Model及びViewの制御を担当する。具体的に、ControllerはViewからの入力に応じて必要なロジックの実行をModelに依頼し、結果の表示をViewに依頼する。
【0046】
例えば図4のWebサービス利用システムにおけるViewは、UIをサーバ装置200上で構築し、画像形成装置100上のWebブラウザ102で表示し、設定値などの入出力を行うものである。例えばViewは、情報の表示,情報の表示変更,情報の変更指示,処理の実行指示などを行う。
【0047】
Modelは、プロッタ107,スキャナ108などの機能を制御するWebサービスである。例えばModelは、スキャナ108を起動し、画像を電子データ化する。Controllerは、Webブラウザ102からの要求に応じて適切なWebサービスをサーバ装置200から利用するものである。
【0048】
例えばControllerはコピー処理の動作指示を受けると、処理内容に従ってスキャナ108でスキャンを実行し、プロッタ107で印字を実行する。即ち、Controllerは画像形成アプリのロジックが実装されている。
【0049】
画像形成装置100上の操作部105に表示されているViewからの指示は、サーバ装置200のControllerによって、画像形成装置100の適切なModelを実行する。これにより、画像形成装置100のユーザは、画像形成装置100上のアプリケーションを使っているのと同じように、サーバ装置200上の画像形成アプリを利用することができる。
【0050】
このように、本発明によるWebサービス利用システムでは、UI構築をWebブラウザ用のUI、デバイスコントロールをWebサービスクライアント、実行環境をサーバ装置200、プログラミング作法をWebサービスサーバ103内で行う為、アプリケーションの開発・カスタマイズが容易である。
【0051】
本発明によるWebサービス利用システムは図5のクラス図で表すことができる。図5は本発明によるWebサービス利用システムを表したクラス図である。図5のクラス図では、Webサービス利用システムを、機器クラス501,ブラウザクラス502,WebServiceクラス503,認証証明書クラス504,Webアプリクラス505,WS連携アプリフレームワーククラス506,WS連携アプリケーションクラス507,機器制御コンポーネントクラス508,鍵による証明書クラス509,身元情報による証明書クラス510,署名による証明書クラス511,排他ありWSクラス512,排他なしWSクラス513,CopyServiceクラス514,ScanServiceクラス515,PrintServiceクラス516,画面クラス517及びビジネスロジッククラス518と、各クラスの関係とにより表している。
【0052】
例えば機器クラス501は画像形成装置100に相当する。機器クラス501はブラウザクラス502及びWebServiceクラス503を構成要素として含む。ブラウザクラス502はWebブラウザ102に相当する。WebServiceクラス503はWebサービスサーバ103に相当する。
【0053】
WebServiceクラス503は、排他ありWSクラス512,排他なしWSクラス513が更に定義されている。排他ありWSクラス512は、CopyServiceクラス514,ScanServiceクラス515が更に定義されている。排他なしWSクラス513は、PrintService516が更に定義されている。
【0054】
ブラウザクラス502は、認証証明書クラス504と一対一に対応している。認証証明書クラス504は認証証明書104に相当する。認証証明書クラス504は、鍵による証明書クラス509,身元情報による証明書クラス510,署名による証明書クラス511が更に定義されている。認証証明書クラス504は排他ありWSクラス512の場合にWebServiceクラス503と1つだけ対応する。認証証明書クラス504は排他なしWSクラス513の場合にWebServiceクラス503と対応しない。
【0055】
ブラウザクラス502は、Webアプリクラス505と1つだけ対応するが、対応しないときもある。Webアプリクラス505はWebサーバ207に相当する。WS連携アプリフレームワーククラス506は、Webアプリクラス505を構成要素として含む。WS連携アプリフレームワーククラス506はWebアプリクラス505と1つだけ対応する。
【0056】
WS連携アプリフレームワーククラス506は、WS連携アプリケーションクラス507が更に定義されている。WS連携アプリケーションクラス507は、アプリケーション201に相当する。WS連携アプリケーションクラス507は、画面クラス517及びビジネスロジッククラス518を構成要素として含む。画面クラス517及びビジネスロジッククラス518は画面フロー制御部203及び画面構築部204に相当する。
【0057】
更に、WS連携アプリフレームワーククラス506は、機器制御コンポーネントクラス508を構成要素として含む。機器制御コンポーネントクラス508はWebサービスクライアント208に相当する。機器制御コンポーネントクラス508はWebServiceクラス503と対応するが、対応しないときもある。
【0058】
図5の各クラスにより実現されるモジュールの処理フローを図6に示す。なお、図6の処理フローでは一例としてスキャン処理を示している。ステップS1に進み、ブラウザクラス502により実現されるブラウザモジュール601がユーザにより起動される。ステップS2に進み、ブラウザモジュール601はWebアプリクラス505により実現されるWebアプリモジュール606に、トップページへアクセスする為のhttpリクエストメッセージを送信する。
【0059】
ステップS3に進み、Webアプリモジュール606はブラウザモジュール601からトップページへアクセスする為のhttpリクエストメッセージを受け付ける。ステップS4に進み、Webアプリモジュール606はhttpリクエストメッセージを送信した機器の機器アドレスを保持する。
【0060】
ステップS5に進み、WS連携アプリケーションクラス507により実現されるWS連携アプリケーションモジュール605はWebアプリモジュール606からhttpリクエストメッセージに対応するリクエスト情報(トップページへのアクセス)を取得する。
【0061】
ステップS6に進み、WS連携アプリケーションモジュール605はリクエスト情報に応じてビジネスロジックの処理を行う。ステップS7に進み、WS連携アプリケーションモジュール605はビジネスロジックの処理に応じて画面作成を行う。
【0062】
ステップS8に進み、Webアプリモジュール606は自機の身元を証明する身元情報をトップページの画面情報に添付する。ステップS9に進み、Webアプリモジュール606はブラウザモジュール601へ、httpリクエストメッセージに対するレスポンスを送信する。
【0063】
ステップS10に進み、ブラウザモジュール601は受信したレスポンスに応じて画面描画を行う。ステップS11に進み、認証証明書クラス504により実現される認証証明書モジュール602はWebアプリモジュール606から受信した身元情報をもとに証明書を作成する。
【0064】
ステップS12に進み、ブラウザモジュール601がユーザによりSubmitボタンを押される。ステップS13に進み、ブラウザモジュール601は、httpリクエストメッセージをWebアプリモジュール606に送信する。ステップS14に進み、Webアプリモジュール606はブラウザモジュール601からhttpリクエストメッセージを受け付ける。
【0065】
ステップS15に進み、WS連携アプリケーションモジュール605は、Webアプリモジュール606からリクエスト情報を取得する。ステップS16に進み、WS連携アプリケーションモジュール605は、リクエスト情報に応じてビジネスロジックの処理を行う。ステップS17に進み、WS連携アプリケーションモジュール605はビジネスロジックの処理に応じて画面作成を行う。
【0066】
ステップS18に進み、Webアプリモジュール606は作成した画面をhttpリクエストメッセージに対するレスポンスとしてブラウザモジュール601へ送信する。ブラウザモジュール601は受信したレスポンスに応じて画面描画を行う。
【0067】
また、ステップS16に続いてステップS19に進み、機器制御コンポーネントクラス508により実現される機器制御コンポーネントモジュール607は、自機の身元を証明する身元情報を添付したスキャン要求メッセージを作成する。ステップS20に進み、機器制御コンポーネントモジュール607はステップS4で保存した機器アドレスの機器を特定し、その機器のWebServiceクラス503により実現されるWebServiceモジュール603に身元情報を添付したスキャン要求メッセージを送信する。
【0068】
ステップS21に進み、WebServiceモジュール603は機器制御コンポーネントモジュール607から身元情報を添付したスキャン要求メッセージを受信する。ステップS22に進み、認証証明書モジュール602はスキャン要求メッセージに添付されている身元情報と、証明書の身元情報との照会を行う。
【0069】
ステップS23に進み、身元情報が一致すれば、WebServiceモジュール603はステップS24に進み、WebServiceモジュール603の処理としてスキャン処理を実行する。なお、身元情報が一致しなければ、WebServiceモジュール603はステップS25に進み、例えば機器制御コンポーネントモジュール607等にエラーを返す。
【0070】
このように、本発明によるWebサービス利用システムではブラウザモジュール601からWebアプリモジュール606へのリクエストと、機器制御コンポーネントモジュール607からWebServiceモジュール603へのリクエストとに、身元情報の照会等による認証で関連性を持たせることにより、リクエストを行った機器制御コンポーネントモジュール607が正規のアプリケーションであるか否かを容易に判定することができる。
【0071】
なお、認証は身元情報を使用する認証方式の他、鍵を使った認証方式や署名による認証方式であってもよい。図7は本発明によるWebサービス利用システムに利用可能な認証方式の一例を示した表である。
【0072】
鍵を使った認証方式では、Webサーバ207へのアクセス時に登録する情報として鍵を利用し、Webサービスクライアント208がWebサービスサーバ103に送る情報として鍵を利用し、Webサービスクライアント208がWebサービスサーバ103に送った鍵とWebサーバ207へのアクセス時に登録された鍵とが一致するかどうかによる照会方法を利用する。
【0073】
なお、鍵は例えば図8の構造を利用できる。鍵に含まれる情報としては、機器のホスト名,アプリケーション(Webアプリケーション)のURL,アプリケーションにアクセスした時刻,ランダムな文字列などが考えられる。
【0074】
身元情報を使った認証方式では、Webサーバ207へのアクセス時に登録する情報としてWebサーバ207の身元情報(例えばホスト名やSSL証明書など)を利用し、Webサービスクライアント208がWebサービスサーバ103に送る情報として身元情報を利用し、Webサービスクライアント208がWebサービスサーバ103に送った身元情報とWebサーバ207へのアクセス時に登録された身元情報とが一致するかどうかによる照会方法を利用する。
【0075】
署名による認証方式では、Webサーバ207へのアクセス時に登録する情報としてWebサーバ207の公開鍵を利用し、Webサービスクライアント208がWebサービスサーバ103に送る情報として署名付きのSOAPメッセージを利用し、署名付きのSOAPメッセージがWebサーバ207の公開鍵で解読できるかどうかによる照会方法を利用する。
【0076】
上述したWebサービス利用システムにおける処理のバリエーションを、以下の実施例に基づき説明していく。なお、以下の説明では一例としてスキャン処理を示す。本発明は具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【実施例1】
【0077】
図9は認証サーバで生成した鍵を使う認証方式を表したシーケンス図である。ステップS101に進み、ユーザは画像形成装置902の操作部105を操作することで画像形成装置902にブラウザモジュール910を起動させる。
【0078】
ステップS102に進み、ブラウザモジュール910はサーバ装置903のWebアプリモジュール913にスタート画面取得をリクエストする。ステップS103に進み、Webアプリモジュール913はブラウザモジュール910からのリクエストに対するレスポンスとして、スタート画面及び自機の身元情報M1をブラウザモジュール910に送信する。
【0079】
ブラウザモジュール910は操作部105にスタート画面を表示する。ステップS104に進み、ユーザは操作部105のスキャン開始キーを押下する。ユーザによりスキャン開始キーが押下されると、ブラウザモジュール910はステップS105に進み、鍵による証明書モジュール911に鍵の登録をリクエストする。鍵による証明書モジュール911は、鍵による証明書クラス509により実現される。
【0080】
ステップS106に進み、鍵による証明書モジュール911は認証サーバ904の認証モジュール914に対し、身元情報M1の身元情報登録をリクエストする。ステップS107に進み、認証モジュール914は身元情報M1から鍵PK1を生成し、その鍵PK1を登録すると共に、鍵による証明書モジュール911に鍵PK1を送信する。ステップS108に進み、鍵による証明書モジュール911は鍵の登録のリクエストに対するレスポンスとして、鍵PK1をブラウザモジュール910に送信する。
【0081】
ステップS109に進み、ブラウザモジュール910はサーバ装置903のWebアプリモジュール913に対し、鍵PK1を添付してスキャン実行をリクエストする。スキャン実行をリクエストされたWebアプリモジュール913はステップS110に進み、スキャン中画面をブラウザモジュール910に送信する。ブラウザモジュール910は操作部105にスキャン中画面を表示して、ユーザにスキャン中であることを示す。
【0082】
また、ステップS111に進み、Webアプリモジュール913はスキャン開始指示および鍵PK1を含むSOAPリクエストを、ScanServiceクラス515により実現される画像形成装置902のスキャンサービスモジュール912に送信する。ステップS112に進み、スキャンサービスモジュール912は鍵による証明書モジュール911に鍵PK1の照会をリクエストする。
【0083】
ステップS113に進み、鍵による証明書モジュール911は認証サーバ904の認証モジュール914に対し、鍵PK1の照合をリクエストする。認証モジュール914は照合のリクエストのあった鍵PK1と既に登録されている鍵とが一致するかどうかによって照合を行う。すなわち、本発明によるWebサービス利用システムでは、ステップS109でスキャン実行を指示する指示先と、ステップS111でスキャン開始を指示される指示元とが同一であるか否かを容易に判定できる。照合が成功すると、認証モジュール914はステップS114に進み、鍵による証明書モジュール911に鍵PK1の照合が成功したことを通知する。
【0084】
ステップS115に進み、鍵による証明書モジュール911は鍵PK1の照合OKをスキャンサービスモジュール912に通知する。ステップS116に進み、スキャンサービスモジュール912はスキャンを実行する。ステップS117に進み、スキャンサービスモジュール912はステップS111のSOAPリクエストに対するレスポンスをWebアプリモジュール913に送信する。
【実施例2】
【0085】
図10は画像形成装置で生成した鍵を使う認証方式を表したシーケンス図である。ステップS201に進み、ユーザは画像形成装置902の操作部105を操作することで画像形成装置902にブラウザモジュール910を起動させる。
【0086】
ステップS202に進み、ブラウザモジュール910はサーバ装置903のWebアプリモジュール913にスタート画面取得をリクエストする。ステップS203に進み、Webアプリモジュール913はブラウザモジュール910からのリクエストに対するレスポンスとして、スタート画面及び自機の身元情報M1をブラウザモジュール910に送信する。
【0087】
ステップS204に進み、ブラウザモジュール910は鍵による証明書モジュール911に鍵の登録をリクエストする。ステップS205に進み、鍵による証明書モジュール911は身元情報M1から鍵K1を生成し、その鍵K1を登録する。鍵による証明書モジュール911は鍵の登録のリクエストに対するレスポンスとして、鍵K1をブラウザモジュール910に送信する。
【0088】
ブラウザモジュール910は操作部105にスタート画面を表示する。ステップS207に進み、ユーザは操作部105のスキャン開始キーを押下する。ユーザによりスキャン開始キーが押下されると、ブラウザモジュール910はステップS208に進み、サーバ装置903のWebアプリモジュール913に対し、鍵K1を添付してスキャン実行をリクエストする。スキャン実行をリクエストされたWebアプリモジュール913はステップS209に進み、スキャン中画面をブラウザモジュール910に送信する。ブラウザモジュール910は操作部105にスキャン中画面を表示して、ユーザにスキャン中であることを示す。
【0089】
また、ステップS211に進み、Webアプリモジュール913はスキャン開始指示および鍵K1を含むSOAPリクエストを、画像形成装置902のスキャンサービスモジュール912に送信する。ステップS212に進み、スキャンサービスモジュール912は鍵による証明書モジュール911に鍵K1の照会をリクエストする。
【0090】
ステップS213に進み、鍵による証明書モジュール911は照合のリクエストのあった鍵K1と既に登録されている鍵とが一致するかどうかによって照合を行う。即ち、本発明によるWebサービス利用システムでは、ステップS208でスキャン実行を指示する指示先と、ステップS211でスキャン開始を指示される指示元とが同一であるか否かを容易に判定できる。照合が成功すると、鍵による証明書モジュール911は、スキャンサービスモジュール912に鍵K1の照合が成功したことを通知する。
【0091】
鍵K1の照合が成功したことを通知されると、スキャンサービスモジュール912はステップS214に進み、スキャンを実行する。スキャンの実行が開始されると、スキャンサービスモジュール912はステップS215に進み、ステップS211のSOAPリクエストに対するレスポンスをWebアプリモジュール913に送信する。
【0092】
なお、サーバ装置903以外のサーバ装置905に含まれるWebアプリモジュール915からスキャン開始指示および鍵K2を含むSOAPリクエストを、画像形成装置902のスキャンサービスモジュール912に送信する例を説明する。
【0093】
ステップS216に進み、Webアプリモジュール915はスキャン開始指示および鍵K2を含むSOAPリクエストを、画像形成装置902のスキャンサービスモジュール912に送信する。ステップS217に進み、スキャンサービスモジュール912は鍵による証明書モジュール911に鍵K2の照会をリクエストする。
【0094】
ステップS218に進み、鍵による証明書モジュール911は照合のリクエストのあった鍵K2と既に登録されている鍵K1とが一致しないため、照合が失敗したことをスキャンサービスモジュール912に通知する。鍵K2の照合が失敗したことを通知されると、スキャンサービスモジュール912はステップS219に進み、ステップS216のSOAPリクエストに対するレスポンスとして照合の失敗をWebアプリモジュール915に送信する。
【実施例3】
【0095】
図11はサーバ装置で生成した鍵を使う認証方式を表したシーケンス図である。ステップS301に進み、ユーザは画像形成装置902の操作部105を操作することで画像形成装置902にブラウザモジュール910を起動させる。
【0096】
ステップS302に進み、ブラウザモジュール910はサーバ装置903のWebアプリモジュール913にスタート画面取得をリクエストする。ステップS303に進み、Webアプリモジュール913は自機の身元情報M1から鍵K1を生成する。ステップS304に進み、Webアプリモジュール913はブラウザモジュール910からのリクエストに対するレスポンスとして、スタート画面及び鍵K1をブラウザモジュール910に送信する。
【0097】
ステップS305に進み、ブラウザモジュール910は鍵による証明書モジュール911に鍵の登録をリクエストする。ステップS306に進み、鍵による証明書モジュール911は鍵K1を登録する。鍵による証明書モジュール911は鍵の登録のリクエストに対するレスポンスをブラウザモジュール910に送信する。
【0098】
ブラウザモジュール910は操作部105にスタート画面を表示する。ステップS307に進み、ユーザは操作部105のスキャン開始キーを押下する。ユーザによりスキャン開始キーが押下されると、ブラウザモジュール910はステップS308に進み、サーバ装置903のWebアプリモジュール913に対し、鍵K1を添付してスキャン実行をリクエストする。スキャン実行をリクエストされたWebアプリモジュール913はステップS309に進み、スキャン中画面をブラウザモジュール910に送信する。ブラウザモジュール910は操作部105にスキャン中画面を表示して、ユーザにスキャン中であることを示す。
【0099】
ステップS310に進み、Webアプリモジュール913はスキャン開始指示および鍵K1を含むSOAPリクエストを、画像形成装置902のスキャンサービスモジュール912に送信する。ステップS311に進み、スキャンサービスモジュール912は鍵による証明書モジュール911に鍵K1の照会をリクエストする。
【0100】
ステップS312に進み、鍵による証明書モジュール911は照合のリクエストのあった鍵K1と既に登録されている鍵とが一致するかどうかによって照合を行う。即ち、本発明によるWebサービス利用システムでは、ステップS308でスキャン実行を指示する指示先と、ステップS310でスキャン開始を指示される指示元とが、同一であるか否かを容易に判定できる。照合が成功すると、鍵による証明書モジュール911は、スキャンサービスモジュール912に鍵K1の照合が成功したことを通知する。
【0101】
鍵K1の照合が成功したことを通知されると、スキャンサービスモジュール912はステップS313に進み、スキャンを実行する。スキャンの実行が開始されたあと、スキャンサービスモジュール912はステップS314に進み、ステップS310のSOAPリクエストに対するレスポンスをWebアプリモジュール913に送信する。
【0102】
なお、サーバ装置903以外のサーバ装置905に含まれるWebアプリモジュール915からスキャン開始指示および鍵K2を含むSOAPリクエストを、画像形成装置902のスキャンサービスモジュール912に送信する例を説明する。
【0103】
ステップS315に進み、ユーザは画像形成装置902の操作部105を操作することで画像形成装置902にブラウザモジュール910を起動させる。ステップS316に進み、Webアプリモジュール915はスキャン開始指示および鍵K2を含むSOAPリクエストを、画像形成装置902のスキャンサービスモジュール912に送信する。ステップS317に進み、スキャンサービスモジュール912はブラウザモジュール910に鍵K2の照会をリクエストする。
【0104】
ステップS318に進み、ブラウザモジュール910は照合のリクエストのあった鍵K2と既に登録されている鍵K1とが一致しない為、照合が失敗したことをスキャンサービスモジュール912に通知する。
【0105】
鍵K2の照合が失敗したことを通知されると、スキャンサービスモジュール912はステップS319に進み、ステップS316のSOAPリクエストに対するレスポンスとして照合の失敗をWebアプリモジュール915に送信する。
【実施例4】
【0106】
図12は身元情報を使う認証方式を表したシーケンス図である。ステップS401に進み、ユーザは画像形成装置902の操作部105を操作することで画像形成装置902にブラウザモジュール910を起動させる。
【0107】
ステップS402に進み、ブラウザモジュール910はサーバ装置903のWebアプリモジュール913にスタート画面取得をリクエストする。ステップS403に進み、Webアプリモジュール913はブラウザモジュール910からのリクエストに対するレスポンスとして、スタート画面及び自機の身元情報M1をブラウザモジュール910に送信する。自機の身元情報M1としては、SSL証明書、IPアドレス等がある。
【0108】
ステップS404に進み、ブラウザモジュール910は身元情報による証明書クラス510により実現される、身元情報による証明書モジュール916に身元情報M1の登録をリクエストする。身元情報による証明書モジュール916は身元情報M1を登録する。
【0109】
ブラウザモジュール910は操作部105にスタート画面を表示する。ステップS405に進み、ユーザは操作部105のスキャン開始キーを押下する。ユーザによりスキャン開始キーが押下されると、ブラウザモジュール910はステップS406に進み、サーバ装置903のWebアプリモジュール913に対し、スキャン実行をリクエストする。
【0110】
Webアプリモジュール913はステップS407に進み、スキャン中画面をブラウザモジュール910に送信する。ブラウザモジュール910は操作部105にスキャン中画面を表示して、ユーザにスキャン中であることを示す。
【0111】
また、ステップS408に進み、Webアプリモジュール913はスキャン開始指示および身元情報M1を含むSOAPリクエストを、画像形成装置902のスキャンサービスモジュール912に送信する。ステップS409に進み、スキャンサービスモジュール912は身元情報による証明書モジュール916に身元情報M1の照会をリクエストする。
【0112】
ステップS410に進み、身元情報による証明書モジュール916は、照合のリクエストのあった身元情報M1と既に登録されている身元情報とが一致するかどうかによって照合を行っている。すなわち、本発明によるWebサービス利用システムでは、ステップS406でスキャン実行を指示する指示先と、ステップS408でスキャン開始を指示される指示元とが同一であるか否かを容易に判定できる。照合が成功すると、身元情報による証明書モジュール916は、スキャンサービスモジュール912に身元情報M1の照合が成功したことを通知する。
【0113】
身元情報M1の照合が成功したことを通知されると、スキャンサービスモジュール912はステップS411に進み、スキャンを実行する。スキャンの実行が開始されると、スキャンサービスモジュール912はステップS412に進み、ステップS408のSOAPリクエストに対するレスポンスをWebアプリモジュール913に送信する。
【0114】
なお、サーバ装置903以外のサーバ装置905に含まれるWebアプリモジュール915からスキャン開始指示および身元情報M2を含むSOAPリクエストを、画像形成装置902のスキャンサービスモジュール912に送信する例を説明する。
【0115】
ステップS413に進み、ユーザは画像形成装置902の操作部105を操作することで画像形成装置902にブラウザモジュール910を起動させる。ステップS414に進み、ブラウザモジュール910はサーバ装置905のWebアプリモジュール915にスタート画面取得をリクエストする。ステップS415に進み、Webアプリモジュール915はブラウザモジュール910からのリクエストに対するレスポンスとして、スタート画面及び自機の身元情報M2をブラウザモジュール910に送信する。ステップS416に進み、ブラウザモジュール910は身元情報による証明書モジュール916に身元情報M2の登録をリクエストする。身元情報による証明書モジュール916は身元情報M2を登録する。
【0116】
ブラウザモジュール910は操作部105にスタート画面を表示する。ステップS417に進み、サーバ装置903のWebアプリモジュール913はスキャン開始指示および身元情報M1を含むSOAPリクエストを、画像形成装置902のスキャンサービスモジュール912に送信する。ステップS418に進み、スキャンサービスモジュール912は身元情報による証明書モジュール916に身元情報M1の照会をリクエストする。
【0117】
ステップS419に進み、身元情報による証明書モジュール916は照合のリクエストのあった身元情報M1と既に登録されている身元情報M2とが一致しないため、照合が失敗したことをスキャンサービスモジュール912に通知する。そして、身元情報M1の照合が失敗したことを通知されると、スキャンサービスモジュール912はステップS420に進み、ステップS417のSOAPリクエストに対するレスポンスとして照合の失敗をWebアプリモジュール913に送信する。
【実施例5】
【0118】
また、図13は署名による認証方式を表したシーケンス図である。ステップS501に進み、ユーザは画像形成装置902の操作部105を操作することで画像形成装置902にブラウザモジュール910を起動させる。
【0119】
ステップS502に進み、ブラウザモジュール910はサーバ装置903のWebアプリモジュール913にスタート画面取得をリクエストする。ステップS503に進み、Webアプリモジュール913はブラウザモジュール910からのリクエストに対するレスポンスとして、スタート画面及び自機の公開鍵PK1をブラウザモジュール910に送信する。
【0120】
ステップS504に進み、ブラウザモジュール910は署名による証明書クラス511により実現される、署名による証明書モジュール917に公開鍵PK1の登録をリクエストする。署名による証明書モジュール917は公開鍵PK1を登録する。
【0121】
ブラウザモジュール910は操作部105にスタート画面を表示する。ステップS505に進み、ユーザは操作部105のスキャン開始キーを押下する。ユーザによりスキャン開始キーが押下されると、ブラウザモジュール910はステップS506に進み、サーバ装置903のWebアプリモジュール913に対し、スキャン実行をリクエストする。
【0122】
Webアプリモジュール913はステップS507に進み、スキャン中画面をブラウザモジュール910に送信する。ブラウザモジュール910は操作部105にスキャン中画面を表示して、ユーザにスキャン中であることを示す。
【0123】
ステップS508に進み、Webアプリモジュール913はスキャン開始メッセージに秘密鍵PK1で署名する。ステップS509に進み、Webアプリモジュール913は署名M1付きスキャン開始メッセージを含むSOAPリクエストを、画像形成装置902のスキャンサービスモジュール912に送信する。
【0124】
ステップS510に進み、スキャンサービスモジュール912は、署名による証明書モジュール917に署名M1の照会をリクエストする。ステップS511に進み、署名による証明書モジュール917は、照合のリクエストのあった署名M1が既に登録されている公開鍵PK1で解読できるかどうかによって照合を行っている。
【0125】
即ち、本発明によるWebサービス利用システムでは、ステップS506でスキャン実行を指示する指示先と、ステップS509でスキャン開始を指示される指示元とが同一であるか否かを容易に判定できる。照合が成功すると、署名による証明書モジュール917は、スキャンサービスモジュール912に署名M1の照合が成功したことを通知する。
【0126】
署名M1の照合が成功したことを通知されると、スキャンサービスモジュール912はステップS512に進み、スキャンを実行する。スキャンの実行が開始されると、スキャンサービスモジュール912はステップS513に進み、ステップS509のSOAPリクエストに対するレスポンスをWebアプリモジュール913に送信する。
【0127】
なお、サーバ装置903以外のサーバ装置905に含まれるWebアプリモジュール915からWebアプリモジュール915の公開鍵PK2を含むSOAPリクエストを画像形成装置902のスキャンサービスモジュール912に送信する例を説明する。
【0128】
ステップS514に進み、ユーザは画像形成装置902の操作部105を操作することで画像形成装置902にブラウザモジュール910を起動させる。ステップS515に進み、ブラウザモジュール910はサーバ装置905のWebアプリモジュール915にスタート画面取得をリクエストする。ステップS516に進み、Webアプリモジュール915はブラウザモジュール910からのリクエストに対するレスポンスとして、スタート画面及び自機の公開鍵PK2をブラウザモジュール910に送信する。ステップS517に進み、ブラウザモジュール910は、署名による証明書モジュール917に公開鍵PK2の登録をリクエストする。署名による証明書モジュール917は公開鍵PK2を登録する。ブラウザモジュール910は操作部105にスタート画面を表示する。
【0129】
ステップS518に進み、サーバ装置903のWebアプリモジュール913は署名M1付きスキャン開始メッセージを含むSOAPリクエストを、画像形成装置902のスキャンサービスモジュール912に送信する。
【0130】
ステップS519に進み、スキャンサービスモジュール912は、署名による証明書モジュール917に署名M1の照会をリクエストする。ステップS520に進み、署名による証明書モジュール917は、照合のリクエストのあった署名M1と既に登録されている署名M2とが一致しないため、照合が失敗したことをスキャンサービスモジュール912に通知する。そして、スキャンサービスモジュール912はステップS521に進み、ステップS518のSOAPリクエストに対するレスポンスとして照合の失敗をWebアプリモジュール913に送信する。
【図面の簡単な説明】
【0131】
【図1】本発明によるWebサービス利用システムの一例の概念図である。
【図2】本発明の情報処理装置の一実施例の構成図である。
【図3】本発明の情報処理装置の一実施例のハードウェア構成図である。
【図4】本発明によるWebサービス利用システムの一実施例のシステム構成図である。
【図5】本発明によるWebサービス利用システムを表したクラス図である。
【図6】各クラスにより実現されるモジュールの処理フローである。
【図7】本発明によるWebサービス利用システムに利用可能な認証方式の一例を示した表である。
【図8】鍵の構造を示す図である。
【図9】認証サーバで生成した鍵を使う認証方式を表したシーケンス図である。
【図10】画像形成装置で生成した鍵を使う認証方式を表したシーケンス図である。
【図11】サーバ装置で生成した鍵を使う認証方式を表したシーケンス図である。
【図12】身元情報を使う認証方式を表したシーケンス図である。
【図13】署名による認証方式を表したシーケンス図である。
【符号の説明】
【0132】
1,1a,1b 情報処理装置
2 サーバ装置
3 ネットワーク
4 UI
100 画像形成装置
101 ネットワークI/F
102 Webブラウザ
103 Webサービスサーバ
104 認証証明書
105 操作部
106 証明情報
107 プロッタ
108 スキャナ
109 HTML解析部
110 表示管理部
200 サーバ装置
201 アプリケーション
202 ネットワークI/F
203 画面フロー制御部
204 画面構築部
205 鍵情報
206 認証部
207 Webサーバ
208 Webサービスクライアント
300 認証サーバ
301 認証モジュール
302 ネットワークI/F
303 認証部
304 鍵管理情報
400 ネットワーク
【特許請求の範囲】
【請求項1】
所定のネットワークを介して外部処理装置と接続されており、所定のサービスに掛かる処理の少なくとも一部を自装置に代わって前記外部処理装置に行わせる情報処理装置であって、
前記処理の少なくとも一部を要求する前記外部処理装置の認証の為の情報を保持する保持手段と、
前記外部処理装置に前記処理の少なくとも一部を要求する要求手段と、
前記処理により制御される機能と、
前記保持手段が保持する情報に基づき、前記要求手段から行った要求に対応する前記外部処理装置からの要求であると認証すると、前記外部処理装置の処理により前記機能を外部から制御させるサービス提供手段と
を備えることを特徴とする情報処理装置。
【請求項2】
前記要求手段は、自装置の前記機能を利用する前記処理の少なくとも一部を前記外部処理装置に要求することを特徴とする請求項1記載の情報処理装置。
【請求項3】
前記要求手段は、前記サービス提供手段を利用して前記機能を外部から制御する前記外部処理装置の制御部に、前記処理の少なくとも一部を要求することを特徴とする請求項1又は2記載の情報処理装置。
【請求項4】
前記保持手段は、前記処理の少なくとも一部を要求する前記外部処理装置の認証の為の情報として、前記外部処理装置の身元情報を保持し、
前記サービス提供手段は、前記外部処理装置からの要求に含まれる身元情報と前記保持手段が保持する身元情報との比較結果に基づいて、前記認証を行うことを特徴とする請求項1乃至3何れか一項記載の情報処理装置。
【請求項5】
前記保持手段は、前記処理の少なくとも一部を要求する前記外部処理装置の認証の為の情報として、前記外部処理装置の身元情報から生成された鍵を保持し、
前記サービス提供手段は、前記外部処理装置からの要求に含まれる鍵と前記保持手段が保持する鍵との比較結果に基づいて、前記認証を行うことを特徴とする請求項1乃至3何れか一項記載の情報処理装置。
【請求項6】
前記鍵は、所定のネットワークを介して接続された認証サーバにより生成されることを特徴とする請求項5記載の情報処理装置。
【請求項7】
前記鍵は、自装置により生成されることを特徴とする請求項5記載の情報処理装置。
【請求項8】
前記鍵は、前記外部処理装置により生成されることを特徴とする請求項5記載の情報処理装置。
【請求項9】
前記鍵は、前記外部処理装置のホスト名,前記ネットワーク上での場所情報,前記外部処理装置に前記要求を行った時刻,ランダムな文字列の1つ以上を情報として含むことを特徴とする請求項5乃至8何れか一項記載の情報処理装置。
【請求項10】
前記保持手段は、前記処理の少なくとも一部を要求する前記外部処理装置の認証の為の情報として、前記外部処理装置の公開鍵を保持し、
前記サービス提供手段は、前記外部処理装置からの要求に含まれる署名付きメッセージの前記保持手段に保持されている前記公開鍵による解読結果に基づいて、前記認証を行うことを特徴とする請求項1乃至3何れか一項記載の情報処理装置。
【請求項11】
所定のネットワークを介して外部処理装置と接続されており、所定のサービスに掛かる処理の少なくとも一部を自装置に代わって前記外部処理装置に行わせる情報処理装置におけるサービス提供方法であって、
前記処理の少なくとも一部を要求する前記外部処理装置の認証の為の情報を保持手段に保持する保持ステップと、
前記外部処理装置に前記処理の少なくとも一部を要求手段から要求する要求ステップと、
前記保持手段が保持する情報に基づき、前記要求手段から行った要求に対応する前記外部処理装置からの要求であると認証すると、サービス提供手段が前記外部処理装置の処理により前記機能を外部から制御させるサービス提供ステップと
を備えることを特徴とするサービス提供方法。
【請求項12】
前記要求ステップは、自装置の前記機能を利用する前記処理の少なくとも一部を前記外部処理装置に要求することを特徴とする請求項11記載のサービス提供方法。
【請求項13】
前記要求ステップは、前記サービス提供手段を利用して前記機能を外部から制御する前記外部処理装置の制御部に、前記処理の少なくとも一部を要求することを特徴とする請求項11又は12記載のサービス提供方法。
【請求項14】
前記保持ステップは、前記処理の少なくとも一部を要求する前記外部処理装置の認証の為の情報として、前記外部処理装置の身元情報を保持し、
前記サービス提供ステップは、前記外部処理装置からの要求に含まれる身元情報と前記保持手段が保持する身元情報との比較結果に基づいて、前記認証を行うことを特徴とする請求項11乃至13何れか一項記載のサービス提供方法。
【請求項15】
前記保持ステップは、前記処理の少なくとも一部を要求する前記外部処理装置の認証の為の情報として、前記外部処理装置の身元情報から生成された鍵を保持し、
前記サービス提供ステップは、前記外部処理装置からの要求に含まれる鍵と前記保持手段が保持する鍵との比較結果に基づいて、前記認証を行うことを特徴とする請求項11乃至13何れか一項記載のサービス提供方法。
【請求項16】
前記鍵は、所定のネットワークを介して接続された認証サーバにより生成されることを特徴とする請求項15記載のサービス提供方法。
【請求項17】
前記鍵は、自装置により生成されることを特徴とする請求項15記載のサービス提供方法。
【請求項18】
前記鍵は、前記外部処理装置により生成されることを特徴とする請求項15記載のサービス提供方法。
【請求項19】
前記鍵は、前記外部処理装置のホスト名,前記ネットワーク上での場所情報,前記外部処理装置に前記要求を行った時刻,ランダムな文字列の1つ以上を情報として含むことを特徴とする請求項15乃至18何れか一項記載のサービス提供方法。
【請求項20】
前記保持ステップは、前記処理の少なくとも一部を要求する前記外部処理装置の認証の為の情報として、前記外部処理装置の公開鍵を保持し、
前記サービス提供ステップは、前記外部処理装置からの要求に含まれる署名付きメッセージの前記保持手段に保持されている前記公開鍵による解読結果に基づいて、前記認証を行うことを特徴とする請求項11乃至13何れか一項記載のサービス提供方法。
【請求項21】
所定のネットワークを介して外部処理装置と接続されており、所定のサービスに掛かる処理の少なくとも一部を自装置に代わって前記外部処理装置に行わせる情報処理装置を、
前記処理の少なくとも一部を要求する前記外部処理装置の認証の為の情報を保持する保持手段と、
前記外部処理装置に前記処理の少なくとも一部を要求する要求手段と、
前記処理により制御される機能と、
前記保持手段が保持する情報に基づき、前記要求手段から行った要求に対応する前記外部処理装置からの要求であると認証すると、前記外部処理装置の処理により前記機能を外部から制御させるサービス提供手段と
して機能させる為のサービス提供プログラム。
【請求項1】
所定のネットワークを介して外部処理装置と接続されており、所定のサービスに掛かる処理の少なくとも一部を自装置に代わって前記外部処理装置に行わせる情報処理装置であって、
前記処理の少なくとも一部を要求する前記外部処理装置の認証の為の情報を保持する保持手段と、
前記外部処理装置に前記処理の少なくとも一部を要求する要求手段と、
前記処理により制御される機能と、
前記保持手段が保持する情報に基づき、前記要求手段から行った要求に対応する前記外部処理装置からの要求であると認証すると、前記外部処理装置の処理により前記機能を外部から制御させるサービス提供手段と
を備えることを特徴とする情報処理装置。
【請求項2】
前記要求手段は、自装置の前記機能を利用する前記処理の少なくとも一部を前記外部処理装置に要求することを特徴とする請求項1記載の情報処理装置。
【請求項3】
前記要求手段は、前記サービス提供手段を利用して前記機能を外部から制御する前記外部処理装置の制御部に、前記処理の少なくとも一部を要求することを特徴とする請求項1又は2記載の情報処理装置。
【請求項4】
前記保持手段は、前記処理の少なくとも一部を要求する前記外部処理装置の認証の為の情報として、前記外部処理装置の身元情報を保持し、
前記サービス提供手段は、前記外部処理装置からの要求に含まれる身元情報と前記保持手段が保持する身元情報との比較結果に基づいて、前記認証を行うことを特徴とする請求項1乃至3何れか一項記載の情報処理装置。
【請求項5】
前記保持手段は、前記処理の少なくとも一部を要求する前記外部処理装置の認証の為の情報として、前記外部処理装置の身元情報から生成された鍵を保持し、
前記サービス提供手段は、前記外部処理装置からの要求に含まれる鍵と前記保持手段が保持する鍵との比較結果に基づいて、前記認証を行うことを特徴とする請求項1乃至3何れか一項記載の情報処理装置。
【請求項6】
前記鍵は、所定のネットワークを介して接続された認証サーバにより生成されることを特徴とする請求項5記載の情報処理装置。
【請求項7】
前記鍵は、自装置により生成されることを特徴とする請求項5記載の情報処理装置。
【請求項8】
前記鍵は、前記外部処理装置により生成されることを特徴とする請求項5記載の情報処理装置。
【請求項9】
前記鍵は、前記外部処理装置のホスト名,前記ネットワーク上での場所情報,前記外部処理装置に前記要求を行った時刻,ランダムな文字列の1つ以上を情報として含むことを特徴とする請求項5乃至8何れか一項記載の情報処理装置。
【請求項10】
前記保持手段は、前記処理の少なくとも一部を要求する前記外部処理装置の認証の為の情報として、前記外部処理装置の公開鍵を保持し、
前記サービス提供手段は、前記外部処理装置からの要求に含まれる署名付きメッセージの前記保持手段に保持されている前記公開鍵による解読結果に基づいて、前記認証を行うことを特徴とする請求項1乃至3何れか一項記載の情報処理装置。
【請求項11】
所定のネットワークを介して外部処理装置と接続されており、所定のサービスに掛かる処理の少なくとも一部を自装置に代わって前記外部処理装置に行わせる情報処理装置におけるサービス提供方法であって、
前記処理の少なくとも一部を要求する前記外部処理装置の認証の為の情報を保持手段に保持する保持ステップと、
前記外部処理装置に前記処理の少なくとも一部を要求手段から要求する要求ステップと、
前記保持手段が保持する情報に基づき、前記要求手段から行った要求に対応する前記外部処理装置からの要求であると認証すると、サービス提供手段が前記外部処理装置の処理により前記機能を外部から制御させるサービス提供ステップと
を備えることを特徴とするサービス提供方法。
【請求項12】
前記要求ステップは、自装置の前記機能を利用する前記処理の少なくとも一部を前記外部処理装置に要求することを特徴とする請求項11記載のサービス提供方法。
【請求項13】
前記要求ステップは、前記サービス提供手段を利用して前記機能を外部から制御する前記外部処理装置の制御部に、前記処理の少なくとも一部を要求することを特徴とする請求項11又は12記載のサービス提供方法。
【請求項14】
前記保持ステップは、前記処理の少なくとも一部を要求する前記外部処理装置の認証の為の情報として、前記外部処理装置の身元情報を保持し、
前記サービス提供ステップは、前記外部処理装置からの要求に含まれる身元情報と前記保持手段が保持する身元情報との比較結果に基づいて、前記認証を行うことを特徴とする請求項11乃至13何れか一項記載のサービス提供方法。
【請求項15】
前記保持ステップは、前記処理の少なくとも一部を要求する前記外部処理装置の認証の為の情報として、前記外部処理装置の身元情報から生成された鍵を保持し、
前記サービス提供ステップは、前記外部処理装置からの要求に含まれる鍵と前記保持手段が保持する鍵との比較結果に基づいて、前記認証を行うことを特徴とする請求項11乃至13何れか一項記載のサービス提供方法。
【請求項16】
前記鍵は、所定のネットワークを介して接続された認証サーバにより生成されることを特徴とする請求項15記載のサービス提供方法。
【請求項17】
前記鍵は、自装置により生成されることを特徴とする請求項15記載のサービス提供方法。
【請求項18】
前記鍵は、前記外部処理装置により生成されることを特徴とする請求項15記載のサービス提供方法。
【請求項19】
前記鍵は、前記外部処理装置のホスト名,前記ネットワーク上での場所情報,前記外部処理装置に前記要求を行った時刻,ランダムな文字列の1つ以上を情報として含むことを特徴とする請求項15乃至18何れか一項記載のサービス提供方法。
【請求項20】
前記保持ステップは、前記処理の少なくとも一部を要求する前記外部処理装置の認証の為の情報として、前記外部処理装置の公開鍵を保持し、
前記サービス提供ステップは、前記外部処理装置からの要求に含まれる署名付きメッセージの前記保持手段に保持されている前記公開鍵による解読結果に基づいて、前記認証を行うことを特徴とする請求項11乃至13何れか一項記載のサービス提供方法。
【請求項21】
所定のネットワークを介して外部処理装置と接続されており、所定のサービスに掛かる処理の少なくとも一部を自装置に代わって前記外部処理装置に行わせる情報処理装置を、
前記処理の少なくとも一部を要求する前記外部処理装置の認証の為の情報を保持する保持手段と、
前記外部処理装置に前記処理の少なくとも一部を要求する要求手段と、
前記処理により制御される機能と、
前記保持手段が保持する情報に基づき、前記要求手段から行った要求に対応する前記外部処理装置からの要求であると認証すると、前記外部処理装置の処理により前記機能を外部から制御させるサービス提供手段と
して機能させる為のサービス提供プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2008−3834(P2008−3834A)
【公開日】平成20年1月10日(2008.1.10)
【国際特許分類】
【出願番号】特願2006−172509(P2006−172509)
【出願日】平成18年6月22日(2006.6.22)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】
【公開日】平成20年1月10日(2008.1.10)
【国際特許分類】
【出願日】平成18年6月22日(2006.6.22)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】
[ Back to top ]