(57)【要約】【課題】セキュアな通信環境でのＷｅｂサービスの利用における利便性を向上させる。【解決手段】第１の情報処理装置と第２の情報処理装置との通信を中継する中継手段と、前記中継手段により中継されている前記通信に対する第３の情報処理装置の接続を認証するか否かを判定する判定手段と、前記判定手段により前記接続を認証すると判定された場合であって、前記第３の情報処理装置から前記通信における通信内容の取得が要求された場合、前記要求に対して応答する応答手段と、を有することによって課題を解決する。【選択図】図５
2015179325.tif 000002
【特許請求の範囲】
【請求項１】
第１の情報処理装置と第２の情報処理装置との通信を中継する中継手段と、
前記中継手段により中継されている前記通信に対する第３の情報処理装置の接続を認証するか否かを判定する判定手段と、
前記判定手段により前記接続を認証すると判定された場合であって、前記第３の情報処理装置から前記通信における通信内容の取得が要求された場合、前記要求に対して応答する応答手段と、
を有するサーバ装置。
【請求項２】
前記中継手段は、前記第１の情報処理装置に入力された前記第２の情報処理装置に対する第１の形式の通信要求を変換した第２の形式の通信要求と、前記第２の形式の通信要求に対する前記第２の情報処理装置からの第２の形式の通信応答とを中継する請求項１に記載のサーバ装置。
【請求項３】
前記応答手段は、前記第３の情報処理装置からの前記通信内容の取得要求に対して、前記第２の情報処理装置からの前記第１の情報処理装置に対する前記第２の形式の通信応答を前記第３の情報処理装置に送信することで応答する請求項２に記載のサーバ装置。
【請求項４】
前記応答手段は、前記第３の情報処理装置からの前記通信内容の取得要求に対して、前記第２の情報処理装置に対する第２の形式の通信要求を前記第３の情報処理装置から受信するように切り替えることで応答する請求項２に記載のサーバ装置。
【請求項５】
前記第１の情報処理装置から第２の形式の通信要求が新たに要求された場合、前記新たに要求された第２の形式の通信要求を削除する削除手段を更に有する請求項４に記載のサーバ装置。
【請求項６】
前記第１の形式は、ＨＴＴＰに係る通信形式であり、
前記第２の形式は、ＵＲＩスキームでのＨＴＴＰに係る通信形式である請求項２乃至５の何れか１項に記載のサーバ装置。
【請求項７】
前記判定手段は、前記第３の情報処理装置からの認証情報と、登録されている認証情報との比較に基づいて、前記第３の情報処理装置の接続を認証するか否かを判定する請求項１乃至６の何れか１項に記載のサーバ装置。
【請求項８】
第１の情報処理装置と第２の情報処理装置との間における通信内容の取得を、前記第１の情報処理装置と前記第２の情報処理装置との通信を中継するサーバ装置に要求するか否かを判定する判定手段と、
前記判定手段により要求すると判定された場合、前記通信内容の取得要求に対する応答を前記サーバ装置から受信する受信手段と、
を有する情報処理装置。
【請求項９】
前記通信内容の取得を要求するか否かを選択する選択画面を表示する表示手段を更に有し、
前記判定手段は、前記表示手段により表示された前記選択画面を介して受け付けた指示に基づいて、前記通信内容の取得を前記サーバ装置に要求するか否かを判定する請求項８に記載の情報処理装置。
【請求項１０】
前記判定手段は、第１の形式から第２の形式に変換された通信形式での前記第１の情報処理装置と前記第２の情報処理装置との前記通信内容の取得を前記サーバ装置に要求するか否かを判定する請求項８又は９に記載の情報処理装置。
【請求項１１】
前記第１の形式は、ＨＴＴＰに係る通信形式であり、
前記第２の形式は、ＵＲＩスキームでのＨＴＴＰに係る通信形式である請求項１０に記載の情報処理装置。
【請求項１２】
サーバ装置が実行する情報処理方法であって、
第１の情報処理装置と第２の情報処理装置との通信を中継する中継ステップと、
前記中継ステップにより中継されている前記通信に対する第３の情報処理装置の接続を認証するか否かを判定する判定ステップと、
前記判定ステップにより前記接続を認証すると判定された場合であって、前記第３の情報処理装置から前記通信における通信内容の取得が要求された場合、前記要求に対して応答する応答ステップと、
を含む情報処理方法。
【請求項１３】
情報処理装置が実行する情報処理方法であって、
第１の情報処理装置と第２の情報処理装置との間における通信内容の取得を、前記第１の情報処理装置と前記第２の情報処理装置との通信を中継するサーバ装置に要求するか否かを判定する判定ステップと、
前記判定ステップにより要求すると判定された場合、前記通信内容の取得要求に対する応答を前記サーバ装置から受信する受信ステップと、
を含む情報処理方法。
【請求項１４】
請求項１２又は１３に記載の情報処理方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバ装置、情報処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
現在、画像形成装置では、音声や動画通信、遠隔操作による遠隔保守サービスが提案されている（例えば特許文献１）。
また、画像形成装置はＷｅｂサーバやファイルサーバといったサーバ機能を持つようになっており、ユーザは、ネットワークを介してリモートの端末から画像形成装置のサーバ機能を利用することが可能である。そのようなサーバ機能の一つとしてＲＵＩ（Ｒｅｍｏｔｅ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）といったＷｅｂサービスがある。
ユーザは、ＲＵＩ機能を持つ画像形成装置に対しては、ＰＣに搭載されているＷｅｂブラウザ等から画像形成装置の情報をＰＣへバックアップし別の画像形成装置へリストアすることができる（例えば特許文献２）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−２０８９７４号公報
【特許文献２】特開２００５−２０２９１８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、ユーザは、遠隔保守サービスを使用して遠隔地にある画像形成装置のＲＵＩへ接続しようとしても、画像形成装置がインターネット上のファイアウォールの内側に存在しているような環境ではＲＵＩに接続することができない。なぜなら、ファイアウォールは、その外側から内側の端末に対する接続を拒否するように構成されており、外側の端末からではインターネット上のＲＵＩに接続することができないためである。
そのため、画像形成装置の製造社のサービスマン等は、遠隔保守サービスを使用して顧客先の画像形成装置のＲＵＩに接続して情報のバックアップやリストアを行うことはできなかった。
本発明は、セキュアな通信環境でのＷｅｂサービスの利用における利便性を向上させることを目的とする。
【課題を解決するための手段】
【０００５】
そこで、本発明のサーバ装置は、第１の情報処理装置と第２の情報処理装置との通信を中継する中継手段と、前記中継手段により中継されている前記通信に対する第３の情報処理装置の接続を認証するか否かを判定する判定手段と、前記判定手段により前記接続を認証すると判定された場合であって、前記第３の情報処理装置から前記通信における通信内容の取得が要求された場合、前記要求に対して応答する応答手段と、を有する。
【発明の効果】
【０００６】
本発明によれば、セキュアな通信環境でのＷｅｂサービスの利用における利便性を向上させることができる。
【図面の簡単な説明】
【０００７】
【図１】システム構成の一例を示す図（その１）である。
【図２】ＭＦＰのハードウェア構成の一例を示す図である。
【図３】ＰＣ及び中継サーバのハードウェア構成の一例を示す図である。
【図４】ＭＦＰ、ＰＣ、中継サーバの機能構成の一例を示す図（その１）である。
【図５】ＭＦＰ、ＰＣ、中継サーバの処理の一例を示すシーケンス図である。
【図６】ＨＴＴＰデータの一例を示す図（その１）である。
【図７】ＩＤテーブルの一例を示す図（その１）である。
【図８】実施形態１のＭＦＰの処理の一例を示すフローチャートである。
【図９】ＭＦＰの操作画面の一例を示す図である。
【図１０】ＨＴＴＰデータの一例を示す図（その２）である。
【図１１】実施形態１のＰＣの処理の一例を示すフローチャートである。
【図１２】ＰＣの操作画面の一例を示す図である。
【図１３】ＨＴＴＰデータの一例を示す図（その３）である。
【図１４】実施形態１の中継サーバの処理の一例を示すフローチャートである。
【図１５】実施形態２のＰＣの処理の一例を示すフローチャートである。
【図１６】ＨＴＴＰデータの一例を示す図（その４）である。
【図１７】実施形態２の中継サーバの処理の一例を示すフローチャートである。
【図１８】ＩＤテーブルの一例を示す図（その２）である。
【図１９】ＨＴＴＰデータの一例を示す図（その５）である。
【図２０】実施形態３のＭＦＰの処理の一例を示すフローチャートである。
【図２１】ＨＴＴＰデータの一例を示す図（その６）である。
【図２２】実施形態３の中継サーバの処理の一例を示すフローチャートである。
【図２３】実施形態４のＭＦＰの処理の一例を示すフローチャートである。
【図２４】実施形態４のＰＣの処理の一例を示すフローチャートである。
【図２５】ＨＴＴＰデータの一例を示す図（その７）である。
【図２６】実施形態４の中継サーバの処理の一例を示すフローチャートである。
【図２７】システム構成の一例を示す図（その２）である。
【図２８】ＭＦＰ、ＰＣ、中継サーバの機能構成の一例を示す図（その２）である。
【図２９】実施形態５のＰＣの処理の一例を示すフローチャートである。
【図３０】実施形態５の中継サーバの処理の一例を示すフローチャートである。
【図３１】実施形態６のＰＣの処理の一例を示すフローチャート（その１）である。
【図３２】実施形態６のＰＣの処理の一例を示すフローチャート（その２）である。
【図３３】実施形態６の中継サーバの処理の一例を示すフローチャートである。
【図３４】実施形態７のＭＦＰの処理の一例を示すフローチャートである。
【図３５】実施形態８のＭＦＰの処理の一例を示すフローチャートである。
【発明を実施するための形態】
【０００８】
以下、本発明を実施するための形態について図面を用いて説明する。
＜実施形態１＞
図１は、ネットワークを介したセキュアな遠隔保守サービスを提供する通信システムのシステム構成の一例を示す図である。
ＭＦＰ（画像形成装置）１００は、ユーザ環境１０２の中に配置され、インターネット１３０にアクセス可能である。画像形成装置は、情報処理装置の一例である。なお、ＭＦＰは、Ｍｕｌｔｉｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌの略である。
ＰＣ１１０は、コールセンター１１２の中に配置され、インターネット１３０にアクセス可能である。ＰＣ１１０は、情報処理装置の一例である。
ユーザ環境１０２、コールセンター１１２、ＭＦＰ１００、ＰＣ１１０は、複数あってもよい。また、図１では、ＭＦＰ１００がユーザ環境１０２の中に配置されているものとして説明するが、他の情報処理装置が配置されていてもよい。ここでいう他の情報処理装置は、例えば、ＰＣ、サーバ装置、タブレット端末等であってもよい。
ユーザ環境１０２には、ファイアウォール１０１が設けられている。また、コールセンター１１２には、ファイアウォール１１１が設けられている。ファイアウォール１０１は、ユーザ環境１０２の内側にある端末からインターネット１３０への接続は許可するが、インターネット１３０側からユーザ環境１０２の内側にある端末への接続は拒否するように構成されている。ファイアウォール１１１は、コールセンター１１２の内側にある端末からインターネット１３０への接続は許可するが、インターネット１３０側からコールセンター１１２の内側にある端末への接続は拒否するように構成されている。
サーバ群１２１は、インターネット１３０を介してサービスを提供するサーバコンピュータからなるサーバ群であり、サーバコンピュータは１台であっても複数台であってもよい。図１では、サーバ群１２１が中継サーバ装置（以下、中継サーバ）１２０の１台のみで構成されているものとして図示している。中継サーバ１２０は、情報処理装置の一例である。
【０００９】
図２は、ＭＦＰ１００のハードウェア構成の一例を示す図である。
ＣＰＵ２１１を含む制御部２１０は、ＭＦＰ１００全体の動作を制御する。
ＣＰＵ２１１は、ＲＯＭ２１２やＨＤＤ２１４に記憶されたプログラムを実行することにより、ＭＦＰ１００の機能、後述するシーケンス図におけるＭＦＰ１００の処理及びＭＦＰ１００に関するフローチャートの処理を実現する。ここでは、１つのＣＰＵ２１１が１つのメモリ（ＲＡＭ２１３又はＨＤＤ２１４）を用いてＭＦＰ１００の機能、後述するシーケンス図におけるＭＦＰ１００の処理及びＭＦＰ１００に関するフローチャートの処理を実現するものとするが、他の構成でもよい。例えば、複数のＣＰＵが複数のＲＡＭ又はＨＤＤを用いてＭＦＰ１００の機能、後述するシーケンス図におけるＭＦＰ１００の処理及びＭＦＰ１００に関するフローチャートの処理を実現するようにしてもよい。
ＲＯＭ２１２は、ＣＰＵ２１１が実行する各種のプログラムを記憶する。
ＲＡＭ２１３は、ＣＰＵ２１１の主メモリ、ワークエリア等の一時記憶領域として用いられる。
ＨＤＤ２１４は、画像データや各種プログラムを記憶する。
【００１０】
操作部Ｉ／Ｆ２１５は、操作部２１９と制御部２１０とを接続する。
操作部２１９には、タッチパネル機能を有する液晶表示部やキーボード等が備えられている。
プリンタＩ／Ｆ２１６は、プリンタ２２０と制御部２１０とを接続する。制御部２１０は、印刷する画像データをプリンタＩ／Ｆ２１６を介してプリンタ２２０に送信する。
プリンタ２２０は、プリンタＩ／Ｆ２１６を介して制御部２１０から受け付けた画像データを記録媒体上に印刷する。
スキャナＩ／Ｆ２１７は、スキャナ２２１と制御部２１０とを接続する。
スキャナ２２１は、原稿上の画像を読み取って画像データ（画像ファイル）を生成し、スキャナＩ／Ｆ２１７を介して制御部２１０に入力する。ＭＦＰ１００は、スキャナ２２１で生成された画像データ（画像ファイル）をファイル送信又はメール送信することができる。
ネットワークＩ／Ｆ２１８は、制御部２１０をインターネット１３０に接続する。
【００１１】
図３は、ＰＣ１１０のハードウェア構成の一例を示す図である。
ＣＰＵ３１１を含む制御部３１０は、ＰＣ１１０全体の動作を制御する。
ＣＰＵ３１１は、ＲＯＭ３１２やＨＤＤ３１４に記憶されたプログラムを実行することにより、ＰＣ１１０の機能、後述するシーケンス図におけるＰＣ１１０の処理及びＰＣ１１０に関するフローチャートの処理を実現する。
ＲＯＭ３１２は、ＣＰＵ３１１が実行する各種のプログラムを記憶する。
ＲＡＭ３１３は、ＣＰＵ３１１の主メモリ、ワークエリア等の一時記憶領域として用いられる。
ＨＤＤ３１４は、画像データや各種プログラムを記憶する。
操作部Ｉ／Ｆ３１５は、操作部３１７と制御部３１０とを接続する。
操作部３１７には、タッチパネル機能を有する液晶表示部やキーボード、マウス等が備えられている。
ネットワークＩ／Ｆ３１６は、制御部３１０をインターネット１３０に接続する。
中継サーバ１２０のハードウェア構成も、ＰＣ１１０のハードウェア構成と同様であるものとする。即ち、中継サーバ１２０のＣＰＵ３１１は、中継サーバ１２０のＲＯＭ３１２やＨＤＤ３１４に記憶されたプログラムを実行する。これにより、中継サーバ１２０は、中継サーバ１２０の機能、後述するシーケンス図における中継サーバ１２０の処理及び中継サーバ１２０に関するフローチャートの処理を実現する。
【００１２】
図４は、ＭＦＰ１００、ＰＣ１１０、中継サーバ１２０の機能構成の一例を示す図である。
サーバサイドプロキシ４０１は、操作部２１９を介して接続指示を受けると、中継サービス４２０と接続を確立した後、中継サービス４２０とＷｅｂサーバ４０２との間の通信を仲介（中継）する。
Ｗｅｂサーバ４０２は、中継サーバ１２０からＨＴＴＰ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）通信要求を受けると、要求に応じた応答を返す機能を有する。
クライアントサイドプロキシ４１０は、Ｗｅｂブラウザ４１１と中継サービス４２０との間の通信を仲介（中継）する。
中継サービス４２０は、Ｗｅｂサーバ機能を提供しており、ＰＣ１１０及びＭＦＰ１００からＨＴＴＰ通信要求を受けると要求に応じた応答を返す機能を有する。
【００１３】
ここで、サーバサイドプロキシ４０１と中継サービス４２０との間で行われるＨＴＴＰ通信、及びクライアントサイドプロキシ４１０と中継サービス４２０との間で行われるＨＴＴＰ通信について説明する。
ＨＴＴＰは、ＲＦＣ（Ｒｅｑｕｅｓｔ  Ｆｏｒ  Ｃｏｍｍｅｎｔ）２６１６で定義されるクライアント／サーバ型のプロトコルであり、複数のメソッドがある。一般に、クライアントがサーバから情報を受信する場合はＧＥＴメソッドが使用され、クライアントからサーバに情報を送信する場合はＰＯＳＴメソッドが使用される。
本実施形態においては、サーバサイドプロキシ４０１が中継サービス４２０へデータ送信する際、及びクライアントサイドプロキシ４１０が中継サービス４２０へデータ送信する際はＰＯＳＴメソッドが使用される。また、サーバサイドプロキシ４０１が中継サービス４２０からデータ受信する際、及びクライアントサイドプロキシ４１０が中継サービス４２０からデータ受信する際はＧＥＴメソッドが使用される。更に、送信用と受信用とで別々の接続が使用される。
【００１４】
図５は、ＭＦＰ１００、ＰＣ１１０、中継サーバ１２０の処理の一例を示すシーケンス図である。本シーケンス図は、ＭＦＰ１００とＰＣ１１０とのＲＵＩ接続の一例を示す図である。
サーバサイドプロキシ４０１は、ユーザにより操作部２１９を介してコールセンターが起動され認証情報が入力されると、入力された認証情報を中継サービス４２０へ送信する（Ｓ５０１）。
中継サービス４２０は、サーバサイドプロキシ４０１から受信した認証情報を確認する（Ｓ５０２）。より具体的には、中継サービス４２０は、予め記憶している認証情報と、サーバサイドプロキシ４０１から受信した認証情報とを比較することにより、ＭＦＰ１００の接続を認証するか否かを判定する。
中継サービス４２０は、認証結果をサーバサイドプロキシ４０１へ通知する（Ｓ５０３）。
クライアントサイドプロキシ４１０は、ユーザからのアプリの起動と認証情報の入力とを受け付けると、認証情報を中継サービス４２０に通知する（Ｓ５０４）。
中継サービス４２０は、クライアントサイドプロキシ４１０から受信した認証情報を確認する（Ｓ５０５）。より具体的には、中継サービス４２０は、予め記憶している認証情報と、クライアントサイドプロキシ４１０から受信した認証情報とを比較することにより、ＰＣ１１０の接続を認証するか否かを判定する。
中継サービス４２０は、認証結果とコールセンター通知を行ったＭＦＰ一覧とをクライアントサイドプロキシ４１０へ送信する（Ｓ５０６）。
【００１５】
クライアントサイドプロキシ４１０は、ユーザにより選択されたＭＦＰの情報を中継サービス４２０へ通知する（Ｓ５０７）。
サーバサイドプロキシ４０１は、操作部２１９を介してＲＵＩ接続許可を受け付けると、中継サービス４２０にＲＵＩの接続許可を通知する（Ｓ５０８）。
中継サービス４２０は、ＲＵＩ要求データキューとＲＵＩ応答データキューとを作成する（Ｓ５０９）。ＲＵＩ要求データキューには、ＲＵＩに対する要求データが格納される。要求データは、例えば、図６の（ａ）に示すようなＲＵＩへのＨＴＴＰ要求（ＨＴＴＰデータ）である。ＲＵＩ応答データキューには、ＲＵＩからの応答データが格納される。応答データは、例えば、図６の（ｂ）に示すようなＲＵＩからのＨＴＴＰ応答（ＨＴＴＰデータ）である。
中継サービス４２０は、サーバサイドプロキシ４０１向けに、ＲＵＩ要求データキューから取り出すための搬出用ＵＲＬと、ＲＵＩ応答データキューへ格納するための格納用ＵＲＬとを作成する（Ｓ５１０）。中継サービス４２０は、サーバサイドプロキシ４０１から格納用ＵＲＬへのＰＯＳＴ要求を受けると、対応するキューにＰＯＳＴされたデータを格納する。また、中継サービス４２０は、サーバサイドプロキシ４０１から搬出用ＵＲＬへのＧＥＴ要求を受けると、対応するキューからデータを取り出し、ＧＥＴ要求の応答として、データを返す。
中継サービス４２０は、格納用ＵＲＬと搬出用ＵＲＬとをサーバサイドプロキシ４０１に通知する（Ｓ５１１）。
【００１６】
クライアントサイドプロキシ４１０は、中継サービス４２０にＲＵＩ接続が許可されているか確認する（Ｓ５１２）。ここで、クライアントサイドプロキシ４１０は、中継サービス４２０へポーリング等を行い、ＲＵＩ接続が許可されているかを定期的に確認する。
中継サービス４２０は、クライアントサイドプロキシ４１０にＭＦＰ１００からＲＵＩへの接続許可を受けたことを通知する（Ｓ５１３）。
クライアントサイドプロキシ４１０は、ＲＵＩ接続許可通知を受けると中継サービス４２０にＲＵＩ接続を通知する（Ｓ５１４）。
中継サービス４２０は、クライアントサイドプロキシ４１０向けに、ＲＵＩ要求データキューへの格納用ＵＲＬと、ＲＵＩ応答データキューからの搬出用ＵＲＬとを作成する（Ｓ５１５）。なお、本実施形態では、中継サービス４２０は、データキューへの格納用ＵＲＬと搬出用ＵＲＬとを別々に作成しているが、同じＵＲＬにしてもよい。この場合、中継サービス４２０は、ＰＯＳＴ要求かＧＥＴ要求かによって、格納するか搬出するかを切り分ける。
中継サービス４２０は、格納用ＵＲＬと搬出用ＵＲＬとをクライアントサイドプロキシ４１０へ通知する（Ｓ５１６）。
以降、サーバサイドプロキシ４０１とクライアントサイドプロキシ４１０と中継サービス４２０とは、Ｗｅｂサーバ４０２とＷｅｂブラウザ４１１とのデータの送受信を各ＵＲＬを用いて行う。
【００１７】
Ｗｅｂブラウザ４１１は、Ｗｅｂサーバ４０２に対するＨＴＴＰ要求（例えばＲＵＩ画面を取得するＧＥＴ要求や指示を行うＰＯＳＴ要求）をクライアントサイドプロキシ４１０へ通知する（Ｓ５１７）。
クライアントサイドプロキシ４１０は、Ｗｅｂブラウザ４１１からのＨＴＴＰ要求を受けると、中継サービス４２０のＲＵＩ要求データキューの格納用ＵＲＬへＨＴＴＰ要求をＰＯＳＴする（Ｓ５１８）。クライアントサイドプロキシ４１０が中継サービス４２０にＨＴＴＰ要求を送信する処理は、要求送信処理の一例である。
サーバサイドプロキシ４０１は、中継サービス４２０のＲＵＩ要求データキューの搬出用ＵＲＬにＨＴＴＰ要求のＧＥＴを送信する（Ｓ５１９）。ここで、サーバサイドプロキシ４０１は、ポーリング等を行い、中継サービス４２０へのＧＥＴ要求を定期的に送信する。
中継サービス４２０は、サーバサイドプロキシ４０１からのＧＥＴ要求に対してＲＵＩ要求データキューにＨＴＴＰ要求データがあれば応答として返す（Ｓ５２０）。サーバサイドプロキシ４０１が中継サービス４２０からＨＴＴＰ要求を受信する処理は、要求受信処理の一例である。
サーバサイドプロキシ４０１は、中継サービス４２０から受信したＨＴＴＰ要求をＷｅｂサーバ４０２へ送信する（Ｓ５２１）。
Ｗｅｂサーバ４０２は、サーバサイドプロキシ４０１から受けたＨＴＴＰ要求に対するＨＴＴＰ応答を返す（Ｓ５２２）。
サーバサイドプロキシ４０１は、Ｗｅｂサーバ４０２から受信したＨＴＴＰ応答をＲＵＩ応答データキューの格納用ＵＲＬへＰＯＳＴする（Ｓ５２３）。サーバサイドプロキシ４０１が中継サービス４２０にＨＴＴＰ応答を送信する処理は、応答送信処理の一例である。
【００１８】
クライアントサイドプロキシ４１０は、中継サービス４２０のＲＵＩ応答データキューの搬出用ＵＲＬに対してＧＥＴを送信する（Ｓ５２４）。ここで、クライアントサイドプロキシ４１０は、ポーリング等を行い、中継サービス４２０へのＧＥＴ要求を定期的に送信する。
中継サービス４２０は、クライアントサイドプロキシ４１０からのＧＥＴ要求に対してＲＵＩ要求データキューにＨＴＴＰ応答データがあれば応答として返す（Ｓ５２５）。クライアントサイドプロキシ４１０が中継サービス４２０からＨＴＴＰ応答を受信する処理は、応答受信処理の一例である。
クライアントサイドプロキシ４１０は、中継サービス４２０から受信したＨＴＴＰ応答をＷｅｂブラウザ４１１にＳ５１７の応答として返す（Ｓ５２６）。
なお、Ｗｅｂサーバ４０２とサーバサイドプロキシ４０１との間、及びＷｅｂブラウザ４１１とクライアントサイドプロキシ４１０との間で行われるＨＴＴＰ通信（通信要求、通信応答）は、第１の形式のＨＴＴＰ通信である。また、サーバサイドプロキシ４０１と中継サービス４２０との間、及びクライアントサイドプロキシ４１０と中継サービス４２０との間で行われるＨＴＴＰ通信（通信要求、通信応答）は、ＵＲＩスキームによる第２の形式のＨＴＴＰ通信である。即ち、サーバサイドプロキシ４０１は、第１の形式のＨＴＴＰ通信と第２の形式のＨＴＴＰ通信との通信形式を相互に変換して、Ｗｅｂサーバ４０２と中継サービス４２０と通信する。また、クライアントサイドプロキシ４１０は、第１の形式のＨＴＴＰ通信と第２の形式のＨＴＴＰ通信との通信形式を相互に変換して、Ｗｅｂブラウザ４１１と中継サービス４２０と通信する。
以上の処理により、ＰＣ１１０とＭＦＰ１００とが異なるファイアウォールの内側にある場合であっても、中継サーバ１２０を介した双方向の通信が可能となる。これにより、ファイアウォールの内側にある装置から、インターネットを介して異なるファイアウォールの内側にある装置にある装置のＷｅｂサービスに接続して利用することができるようになる。
【００１９】
図７は、ＰＣ１１０のＨＤＤ３１４に記憶されているＩＤ（識別情報）テーブルの一例を示す図である。
情報６０１は、ＰＣ１１０がＰＯＳＴしたＨＴＴＰ要求に対するＨＴＴＰ応答であるかを判定するためのＩＤを示す情報である。情報６０２は、ＰＣ１１０がＨＴＴＰ要求をＰＯＳＴした時刻を示す情報である。情報６０３は、ＰＣ１１０がＨＴＴＰ要求をＰＯＳＴしたユーザの名称を示す情報である。情報６０４は、ＰＣ１１０がＨＴＴＰ要求をＰＯＳＴした格納用ＵＲＬを示す情報である。
図７に示すＩＤは、後述する図８、図１１の処理において用いられる。
図８は、本実施形態におけるＭＦＰ１００の処理の一例を示すフローチャートである。
サーバサイドプロキシ４０１は、操作部２１９を介してコールセンターの起動指示があったか否かを判定する（Ｓ７０１）。より具体的には、サーバサイドプロキシ４０１は、図９の（ａ）で後述する操作画面のボタン８００が押下（選択）されたか否かを判定する。
図９の（ａ）は、操作部２１９に表示される操作画面の一例を示す図である。
図９の（ａ）に示す操作画面は、ユーザがＭＦＰ１００の機能を選択するときに表示されるメインメニューを表示する画面である。ボタン８００は、ユーザがコールセンター１１２内のＰＣ１１０へ接続を要求する際に押下するボタンである。サーバサイドプロキシ４０１は、ボタン８００が押下されると中継サーバ１２０との接続を開始する。
サーバサイドプロキシ４０１は、Ｓ７０１でコールセンターの起動指示があったと判定した場合、即ち、ボタン８００が押下されたと判定した場合、後述する図９の（ｂ）に示す認証情報入力画面を表示する（Ｓ７０２）。
【００２０】
図９の（ｂ）は、操作部２１９に表示される操作画面の一例を示す図である。
図９の（ｂ）に示す操作画面は、中継サーバ１２０に認証を行う際に表示される認証情報入力画面である。
入力欄８１０は、中継サーバ１２０にアクセスするために必要な認証情報であるユーザ名の入力欄である。
入力欄８１１は、中継サーバ１２０にアクセスするために必要な認証情報であるパスワードの入力欄である。
ボタン８１２は、入力欄８１０及び入力欄８１１に認証情報を入力したユーザがログインを指示するために押下するログインボタンである。
サーバサイドプロキシ４０１は、Ｓ７０２で表示した認証情報入力画面で認証情報が入力され、ボタン８１２が押下されたか否かを判定する（Ｓ７０３）。サーバサイドプロキシ４０１は、認証情報が入力され、ボタン８１２が押下されたと判定した場合はＳ７０４へ進む。また、サーバサイドプロキシ４０１は、認証情報が入力されていないと判定した場合、認証情報が入力されるまで待機する。なお、サーバサイドプロキシ４０１は、一定時間、認証情報の入力がなければ、図８の処理を終了するようにしてもよい。
【００２１】
サーバサイドプロキシ４０１は、入力された認証情報を中継サービス４２０へ送信し認証結果を待つ（Ｓ７０４）。
サーバサイドプロキシ４０１は、中継サービス４２０に送信した認証情報に対して通知された認証結果が成功か否かを判定する（Ｓ７０５）。サーバサイドプロキシ４０１は、判定の結果、認証が成功であれば、ＲＵＩ接続の許可／不可を選択する図９の（ｃ）に示す操作画面を表示する。そして、サーバサイドプロキシ４０１は、図９の（ｃ）に示す操作画面の操作を介したユーザの指示により、ＲＵＩ接続を許可するか否かを判定する（Ｓ７０６）。一方、サーバサイドプロキシ４０１は、認証が失敗であれば、図８の処理を終了する。
図９の（ｃ）は、操作部２１９に表示される操作画面の一例を示す図である。
図９の（ｃ）に示す操作画面は、コールセンターからのＲＵＩ接続を許可するかしないかを選択する際に表示される画面である。
ボタン８２０は、コールセンターからのＲＵＩ接続を許可する場合に押下するボタンである。サーバサイドプロキシ４０１は、ユーザによるボタン８２０の押下を受け付けるとＳ７０７へ進む。
ボタン８２１は、コールセンターからのＲＵＩ接続を許可しない場合に押下されるボタンである。サーバサイドプロキシ４０１は、ユーザによるボタン８２１の押下を受け付けると図８の処理を終了する。
【００２２】
サーバサイドプロキシ４０１は、中継サーバ１２０にＲＵＩ接続許可を送信する（Ｓ７０７）。
サーバサイドプロキシ４０１は、中継サービス４２０のＲＵＩ要求データキューからデータを取り出すための搬出用ＵＲＬと、ＲＵＩ応答データキューへデータを格納するための格納用ＵＲＬとを中継サーバ１２０から受信しＨＤＤ２１４に記憶する（Ｓ７０８）。
サーバサイドプロキシ４０１は、搬出用ＵＲＬからＲＵＩ要求データキューの図１０の（ａ）に示すＨＴＴＰ要求をＧＥＴする（Ｓ７０９）。
サーバサイドプロキシ４０１は、Ｓ７０９でＧＥＴした例えば図１０の（ｂ）に示すＧＥＴ応答（ＨＴＴＰ要求）のＢＯＤＹ部からＩＤとＨＴＴＰ要求とを取り出し、ＩＤをＨＤＤ２１４に記憶する（Ｓ７１０）。即ち、サーバサイドプロキシ４０１は、ＧＥＴ応答を変換して、ＩＤとＨＴＴＰ要求とを取得する。
サーバサイドプロキシ４０１は、取り出したＨＴＴＰ要求をＷｅｂサーバ４０２へ送信する（Ｓ７１１）。
サーバサイドプロキシ４０１は、Ｗｅｂサーバ４０２から図１０の（ｃ）に示すＨＴＴＰ応答を受信する（Ｓ７１２）。
【００２３】
サーバサイドプロキシ４０１は、受信したＨＴＴＰ応答にＨＤＤ２１４に記憶しているＩＤを付加し、ＲＵＩ応答データキューに格納するため格納用ＵＲＬへ送信する（Ｓ７１３）。
サーバサイドプロキシ４０１は、操作部２１９を介してユーザから終了指示を受けたか否かを判定する（Ｓ７１４）。サーバサイドプロキシ４０１は、終了指示を受けたと判定した場合、中継サービス４２０に切断指示を出し、図８の処理を終了する（Ｓ７１５）。一方、サーバサイドプロキシ４０１は、終了指示を受けていないと判定した場合、Ｓ７０９へ戻る。
以上の処理により、ＭＦＰ１００は、中継サーバ１２０から受け付けたＨＴＴＰ要求に対するＷｅｂサーバ４０２からのＨＴＴＰ応答に、前記ＨＴＴＰ要求に付加されているＩＤと同一のＩＤを付加して中継サーバ１２０に送信することができる。これにより、ＭＦＰ１００とＰＣ１１０との間におけるＨＴＴＰ要求とＨＴＴＰ応答とを一対にすることができ、要求と応答との整合性があるＨＴＴＰ通信を実現することができる。
【００２４】
図１１は、本実施形態におけるＰＣ１１０の処理の一例を示すフローチャートである。
クライアントサイドプロキシ４１０は、ＰＣ１１０の操作部３１７（以下、図１１の処理においては単に操作部３１７という）を介してアプリケーションが起動されたか否かを判定する（Ｓ９０１）。
クライアントサイドプロキシ４１０は、アプリケーションが起動されたと判定した場合、後述する図１２の（ａ）に示す認証情報入力画面を表示する（Ｓ９０２）。一方、クライアントサイドプロキシ４１０は、アプリケーションが起動されていないと判定した場合、Ｓ９０１の処理を繰り返す。
図１２の（ａ）は、操作部３１７に表示される操作画面の一例を示す図である。
図１２の（ａ）に示す操作画面は、中継サーバ１２０に認証を行う際に表示される画面である。
入力欄８３０は、中継サーバ１２０にアクセスするために必要な認証情報であるユーザ名の入力欄である。
入力欄８３１は、中継サーバ１２０にアクセスするために必要な認証情報であるパスワードの入力欄である。
ボタン８３２は、入力欄８３０及び入力欄８３１に認証情報を入力したユーザがログインを指示するために押下するログインボタンである。
【００２５】
クライアントサイドプロキシ４１０は、Ｓ９０２で表示した認証情報入力画面で認証情報が入力され、ボタン８３２が押下されたか否かを判定する（Ｓ９０３）。クライアントサイドプロキシ４１０は、認証情報が入力され、ボタン８３２が押下されたと判定した場合はＳ９０４へ進む。また、クライアントサイドプロキシ４１０は、認証情報が入力されていないと判定した場合、認証情報が入力されるまで待機する。なお、クライアントサイドプロキシ４１０は、一定時間、認証情報の入力がなければ、図１１の処理を終了するようにしてもよい。
クライアントサイドプロキシ４１０は、中継サービス４２０と接続を行い、入力された認証情報を中継サービス４２０へ送信し、認証結果を待つ（Ｓ９０４）。
クライアントサイドプロキシ４１０は、中継サービス４２０に送信した認証情報に対して通知された認証結果が成功か否かを判定する（Ｓ９０５）。クライアントサイドプロキシ４１０は、判定の結果、認証が成功であれば、後述する図１２の（ｂ）に示す支援するＭＦＰの選択画面を表示する（Ｓ９０６）。一方、クライアントサイドプロキシ４１０は、認証が失敗であれば、図１１の処理を終了する。
【００２６】
図１２の（ｂ）は、操作部３１７に表示される操作画面の一例を示す図である。
図１２の（ｂ）に示す操作画面は、支援するＭＦＰをユーザが選択する際に表示される画面である。
情報８４０は、図８のＳ７０６で中継サーバ１２０と接続を行ったＭＦＰが配置されているユーザ環境一覧である。図１２の（ｂ）では、一例として情報８４０が１件のみ表示されているが、他のユーザ環境にあるＭＦＰが中継サービス４２０に接続されると、情報８４０が追加される。
ボタン８４１は、ユーザが支援開始を指示する際に押下するボタンである。クライアントサイドプロキシ４１０は、ユーザによるボタン８４１の押下を受け付けると、Ｓ９０７へ進む。
クライアントサイドプロキシ４１０は、中継サーバ１２０からＲＵＩ接続許可を受信し、後述する図１２の（ｃ）に示すＲＵＩ接続画面を表示する（Ｓ９０７）。そして、クライアントサイドプロキシ４１０は、図１２の（ｃ）に示すＲＵＩ接続画面を介して受け付けたユーザの指示により、ＲＵＩ接続するか否かを判定する（Ｓ９０８）。
【００２７】
図１２の（ｃ）は、操作部３１７に表示される操作画面の一例を示す図である。
図１２の（ｃ）に示す操作画面は、ＭＦＰ１００のＲＵＩに接続するか否かをユーザが決定する際に表示される画面である。
ボタン８５０は、支援するＭＦＰ１００のＲＵＩ接続を行う場合に押下されるボタンである。クライアントサイドプロキシ４１０は、ユーザによるボタン８５０の押下を受け付けると、Ｓ９０９へ進む。
ボタン８５１は、支援するＭＦＰ１００のＲＵＩ接続を行わない場合に押下されるボタンである。クライアントサイドプロキシ４１０は、ユーザによるボタン８５１の押下を受け付けると、図１１の処理を終了する。
クライアントサイドプロキシ４１０は、中継サーバ１２０にＲＵＩ接続要求を送信する（Ｓ９０９）。
クライアントサイドプロキシ４１０は、中継サーバ１２０から受信したＲＵＩ要求データキューへの格納用ＵＲＬとＲＵＩ応答データキューからの搬出用ＵＲＬとをＰＣ１１０のＨＤＤ３１４に記憶する（Ｓ９１０）。以下、図１１の処理においては、ＰＣ１１０のＨＤＤ３１４のことを単にＨＤＤ３１４という。
【００２８】
クライアントサイドプロキシ４１０は、Ｗｅｂブラウザ４１１から図６の（ａ）を用いて上述したＨＴＴＰ要求を受信したか否かを判定する（Ｓ９１１）。クライアントサイドプロキシ４１０は、ＨＴＴＰ要求を受信したと判定した場合、Ｓ９１２へ進み、ＨＴＴＰ要求を受信していないと判定した場合、ＨＴＴＰ要求を受信するまで待つ。
クライアントサイドプロキシ４１０は、一意となるＩＤを発行する（Ｓ９１２）。例えば、クライアントサイドプロキシ４１０は、図７を用いて上述したＩＤテーブルでＩＤを管理する。
クライアントサイドプロキシ４１０は、発行したＩＤを受信したＨＴＴＰ要求に付加し、ＲＵＩ要求データキューに格納するためＨＤＤ３１４に記憶している格納用ＵＲＬへＰＯＳＴする（Ｓ９１３）。ここで、クライアントサイドプロキシ４１０は、ＰＯＳＴに対する応答として図１３の（ａ）に示す応答を得る。
クライアントサイドプロキシ４１０は、ＲＵＩ応答データキューからＨＴＴＰ応答を受信するため、搬出用ＵＲＬへ図１３の（ｂ）に示すＧＥＴを送信する（Ｓ９１４）。
クライアントサイドプロキシ４１０は、Ｓ９１４で送信したＧＥＴに対してＨＴＴＰ応答を受信したか否か判定する（Ｓ９１５）。クライアントサイドプロキシ４１０は、受信したと判定した場合、Ｓ９１６へ進み、受信していないと判定した場合、Ｓ９１４へ戻る。
【００２９】
クライアントサイドプロキシ４１０は、受信したＧＥＴ応答のＢＯＤＹ部からＩＤとＨＴＴＰ応答とを取り出す（Ｓ９１６）。即ち、クライアントサイドプロキシ４１０は、ＧＥＴ応答を変換して、ＩＤとＨＴＴＰ要求とを取得する。
クライアントサイドプロキシ４１０は、図７を用いて上述したＩＤテーブルを確認し、取り出したＩＤと、Ｓ９１３で送信したＨＴＴＰ要求に付加したＩＤとが一致するか否かを判定する（Ｓ９１７）。クライアントサイドプロキシ４１０は、ＩＤが一致すると判定した場合、Ｓ９１８へ進む。一方、クライアントサイドプロキシ４１０は、ＩＤが一致しないと判定した場合、Ｓ９１４へ戻る。これにより、クライアントサイドプロキシ４１０は、送信したＨＴＴＰ要求の対となるＨＴＴＰ応答をＩＤに基づいて判定して取得することができる。
クライアントサイドプロキシ４１０は、図１３の（ｃ）に示すようなＨＴＴＰ応答をＷｅｂブラウザ４１１からのＨＴＴＰ要求に対する応答として返す（Ｓ９１８）。
クライアントサイドプロキシ４１０は、操作部３１７を介してユーザから終了指示を受けたか否かを判定する（Ｓ９１９）。クライアントサイドプロキシ４１０は、終了指示を受けたと判定した場合、中継サービス４２０に切断指示を出し、図１１の処理を終了する（Ｓ９２０）。一方、クライアントサイドプロキシ４１０は、終了指示を受けていないと判定した場合、Ｓ９１１へ戻る。
以上の処理により、ＰＣ１１０は、送信したＨＴＴＰ要求に付加したＩＤと、受信したＨＴＴＰ応答に付加されているＩＤとを比較することで、ＭＦＰ１００とＰＣ１１０との間におけるＨＴＴＰ要求とＨＴＴＰ応答とを一対にすることができる。これにより、ＰＣ１１０は、要求と応答との整合性があるＨＴＴＰ通信を実現することができる。
【００３０】
図１４は、本実施形態における中継サーバ１２０の処理の一例を示すフローチャートである。
中継サービス４２０は、サーバサイドプロキシ４０１から認証情報を受信する（Ｓ１００１）。
中継サービス４２０は、受信した認証情報を確認する（Ｓ１００２）。
中継サービス４２０は、サーバサイドプロキシ４０１へ認証結果を通知する（Ｓ１００３）。
中継サービス４２０は、クライアントサイドプロキシ４１０から認証情報を受信する（Ｓ１００４）。
中継サービス４２０は、受信した認証情報を確認する（Ｓ１００５）。
中継サービス４２０は、クライアントサイドプロキシ４１０へ認証結果を通知する（Ｓ１００６）。
中継サービス４２０は、サーバサイドプロキシ４０１からＲＵＩ接続許可通知を受信する（Ｓ１００７）。
【００３１】
中継サービス４２０は、ＲＵＩ要求データキューとＲＵＩ応答データキューとを作成する（Ｓ１００８）。
中継サービス４２０は、サーバサイドプロキシ４０１向けに、ＲＵＩ要求データキューから取り出すための搬出用ＵＲＬと、ＲＵＩ応答データキューへ格納するための格納用ＵＲＬとを作成する（Ｓ１００９）。
中継サービス４２０は、サーバサイドプロキシ４０１に作成したＵＲＬを通知する（Ｓ１０１０）。
中継サービス４２０は、クライアントサイドプロキシ４１０にＲＵＩ接続可能通知を通知する（Ｓ１０１１）。
中継サービス４２０は、クライアントサイドプロキシ４１０からＲＵＩ接続要求を受ける（Ｓ１０１２）。
中継サービス４２０は、クライアントサイドプロキシ４１０向けに、ＲＵＩ要求データキューへの格納用ＵＲＬと、ＲＵＩ応答データキューからの搬出用ＵＲＬとを作成する（Ｓ１０１３）。
中継サービス４２０は、クライアントサイドプロキシ４１０に作成したＵＲＬを通知する（Ｓ１０１４）。
【００３２】
中継サービス４２０は、ＰＯＳＴの受信を待つ（Ｓ１０１５）。
中継サービス４２０は、受けたＰＯＳＴがクライアントサイドプロキシ４１０からのＰＯＳＴであるか否かを判定する（Ｓ１０１６）。中継サービス４２０は、クライアントサイドプロキシ４１０からのＰＯＳＴであると判定した場合、Ｓ１０１７へ進む。一方、中継サービス４２０は、クライアントサイドプロキシ４１０からのＰＯＳＴでないと判定した場合、Ｓ１０２１へ進む。
中継サービス４２０は、クライアントサイドプロキシ４１０からのＨＴＴＰ要求をＲＵＩ要求データキューに格納する（Ｓ１０１７）。
中継サービス４２０は、ＲＵＩ要求データキューから取り出すための搬出用ＵＲＬへのサーバサイドプロキシ４０１からのＧＥＴを待つ（Ｓ１０１８）。
中継サービス４２０は、ＲＵＩ要求データキューに格納したＨＴＴＰ要求をＧＥＴの応答としてサーバサイドプロキシ４０１に送信する（Ｓ１０１９）。
【００３３】
中継サービス４２０は、ＭＦＰ１００又はＰＣ１１０から切断処理を受けたか否かを判定する（Ｓ１０２０）。中継サービス４２０は、切断処理を受けたと判定した場合、図１４の処理を終了し、切断処理を受けていないと判定した場合、Ｓ１０１６へ戻る。
中継サービス４２０は、サーバサイドプロキシ４０１から受信したＨＴＴＰ応答をＲＵＩ応答データキューに格納する（Ｓ１０２１）。
中継サービス４２０は、ＲＵＩ応答データキューから取り出すための搬出用ＵＲＬへのクライアントサイドプロキシ４１０からのＧＥＴを待つ（Ｓ１０２２）。
中継サービス４２０は、ＲＵＩ応答データキューに格納したＨＴＴＰ応答をＧＥＴの応答としてクライアントサイドプロキシ４１０に送信し、Ｓ１０２０へ進む（Ｓ１０２３）。
以上の処理により、中継サーバ１２０は、ＰＣ１１０とＭＦＰ１００との通信を中継することができる。なお、本実施形態で説明したＨＴＴＰデータは、特定の形式のデータに限る必要はなく、説明した形式とは異なる形式のデータであってもよい。
【００３４】
以上、本実施形態によれば、ＰＣ１１０のクライアントサイドプロキシ４１０と、ＭＦＰ１００のサーバサイドプロキシ４０１とがＨＴＴＰデータにＩＤを付加して通信することで、ＨＴＴＰ要求とＨＴＴＰ応答とを一対にして双方向通信することができる。これにより、ファイアウォールの内側にある装置がインターネットを介して異なるファイアウォールの内側にある装置のＷｅｂサービスに接続してサービスを利用する際に、要求と応答とを対応させることができるシステムを実現することができる。
【００３５】
＜実施形態２＞
実施形態１では、クライアントサイドプロキシ４１０、及びサーバサイドプロキシ４０１がＨＴＴＰデータにＩＤを付与していた。本実施形態では、中継サービス４２０がＨＴＴＰデータにＩＤを付与する構成について説明する。なお、上述した実施形態１と同様の構成については詳細な説明を省略する。
図１５は、本実施形態におけるＰＣ１１０の処理の一例を示すフローチャートである。
Ｓ１２０１からＳ１２１０までの処理は、図１１のＳ９０１からＳ９１０までの処理と同様であるため説明を省略する。
クライアントサイドプロキシ４１０は、Ｗｅｂブラウザ４１１から図１６の（ａ）に示すＨＴＴＰ要求を受信したか否かを判定する（Ｓ１２１１）。クライアントサイドプロキシ４１０は、受信したと判定した場合、Ｓ１２１２へ進み、受信していないと判定した場合、受信するまで待つ。
クライアントサイドプロキシ４１０は、図１６の（ｂ）に示すように、ＨＴＴＰ要求をＲＵＩ要求データキューに格納するため、ＰＣ１１０のＨＤＤ３１４に記憶している格納用ＵＲＬへＰＯＳＴする（Ｓ１２１２）。
【００３６】
クライアントサイドプロキシ４１０は、図１６の（ｃ）に示すように、ＲＵＩ応答データキューからＨＴＴＰ応答を受信するため、搬出用ＵＲＬへＧＥＴを送信する（Ｓ１２１３）。
クライアントサイドプロキシ４１０は、Ｓ１２１３で出したＧＥＴに対するＨＴＴＰ応答を受信したか否かを判定する（Ｓ１２１４）。クライアントサイドプロキシ４１０は、受信したと判定した場合、Ｓ１２１５へ進み、受信していないと判定した場合、Ｓ１２１３へ戻る。
クライアントサイドプロキシ４１０は、図１６の（ｄ）に示すＨＴＴＰ応答をＷｅｂブラウザ４１１からのＨＴＴＰ要求に対する応答として返す（Ｓ１２１５）。
クライアントサイドプロキシ４１０は、ＰＣ１１０の操作部３１７を介してユーザから終了指示を受けたか否かを判定する（Ｓ１２１６）。クライアントサイドプロキシ４１０は、終了指示を受けたと判定した場合、中継サービス４２０に切断指示を出し、図１５の処理を終了する（Ｓ１２１７）。一方、クライアントサイドプロキシ４１０は、終了指示を受けていないと判定した場合、Ｓ１２１１へ戻る。
【００３７】
図１７は、本実施形態における中継サーバ１２０の処理の一例を示すフローチャートである。
Ｓ１３０１からＳ１３１６までの処理は、図１４のＳ１００１からＳ１０１６までの処理と同様であるため説明を省略する。
中継サービス４２０は、一意となるＩＤを作成し中継サーバ１２０のＨＤＤ３１４（以下、図１７の処理においては単にＨＤＤ３１４という）に記憶する（Ｓ１３１７）。例えば、中継サービス４２０は、図１８のようなＩＤテーブルでＩＤを管理する。
図１８は、中継サーバ１２０のＨＤＤ３１４に記憶されているＩＤテーブルの一例を示す図である。
情報１４０１は、ＨＴＴＰ要求に対するＨＴＴＰ応答であるか否かを判定するためのＩＤを示す情報である。情報１４０２は、支援するデバイス名を示す情報である。情報１４０３は、支援を行うクライアント名を示す情報である。情報１４０４は、サーバ（サーバサイドプロキシ）用格納用ＵＲＬを示す情報である。情報１４０５は、サーバ用搬出用ＵＲＬを示す情報である。情報１４０６は、クライアント（クライアントサイドプロキシ）用格納用ＵＲＬを示す情報である。情報１４０７は、クライアント用搬出用ＵＲＬを示す情報である。情報１４０８は、ＨＴＴＰ要求がＧＥＴされた時刻を示す情報である。
【００３８】
中継サービス４２０は、クライアントサイドプロキシ４１０からＰＯＳＴされたＨＴＴＰ要求にＳ１３１７で作成したＩＤを図１９のように付加し、ＲＵＩ要求データキューに記憶する（Ｓ１３１８）。
中継サービス４２０は、ＲＵＩ要求データキューから取り出すための搬出用ＵＲＬへのサーバサイドプロキシ４０１からのＧＥＴを待つ（Ｓ１３１９）。
中継サービス４２０は、ＲＵＩ要求データキューに格納したＨＴＴＰ要求をＧＥＴの応答としてサーバサイドプロキシ４０１に送信する（Ｓ１３２０）。
中継サービス４２０は、ＭＦＰ１００又はＰＣ１１０から切断処理を受けたか否かを判定する（Ｓ１３２１）。中継サービス４２０は、切断処理を受けたと判定した場合、図１７の処理を終了し、切断処理を受けていないと判定した場合、Ｓ１３１５へ戻る。
中継サービス４２０は、サーバサイドプロキシ４０１から受信したＨＴＴＰ応答データからＩＤを取得する（Ｓ１３２２）。
中継サービス４２０は、取得したＩＤと、図１８を用いて上述したＨＤＤ３１４に記憶しているＩＤテーブルのＩＤとが一致するか否かを判定する（Ｓ１３２３）。中継サービス４２０は、ＩＤが一致すると判定した場合、Ｓ１３２４へ進み、一致しないと判定した場合、Ｓ１３２１へ進む。
【００３９】
中継サービス４２０は、ＨＴＴＰ応答からＩＤを削除してＲＵＩ応答データキューに格納し、更に、ＨＤＤ３１４に記憶しているＩＤテーブルから前記削除したＩＤに対応するデータを削除する（Ｓ１３２４）。
中継サービス４２０は、ＲＵＩ応答データキューの搬出用ＵＲＬへのクライアントサイドプロキシ４１０からのＧＥＴを待つ（Ｓ１３２５）。
中継サービス４２０は、ＧＥＴ要求を受けるとＨＴＴＰ応答をＧＥＴの応答としてクライアントサイドプロキシ４１０に返し、Ｓ１３２１へ進む（Ｓ１３２６）。
以上の処理により、中継サーバ１２０は、ＨＴＴＰデータにＩＤを付加してＨＴＴＰ要求とＨＴＴＰ応答とを一対にして、ＰＣ１１０とＭＦＰ１００との通信を中継することができる。なお、本実施形態で説明したＨＴＴＰデータは、特定の形式のデータに限る必要はなく、説明した形式とは異なる形式のデータであってもよい。また、本実施形態におけるＭＦＰ１００の処理は、実施形態１と同じとなるため説明を省略する。
【００４０】
以上、本実施形態によれば、ＰＣ１１０とＭＦＰ１００との通信を中継する中継サーバ１２０がＨＴＴＰデータにＩＤを付加して管理することにより、ＰＣ１１０とＭＦＰ１００とがＨＴＴＰ要求とＨＴＴＰ応答とを一対にして双方向通信することができる。これにより、ファイアウォールの内側にある装置がインターネットを介して異なるファイアウォールの内側にある装置のＷｅｂサービスに接続してサービスを利用する際に、要求と応答とを対応させることができるシステムを実現することができる。
【００４１】
＜実施形態３＞
実施形態１、２ではプロキシ又は中継サービス４２０がＨＴＴＰデータにＩＤを付加することでＷｅｂブラウザ４１１からのＨＴＴＰ要求に対してＨＴＴＰ応答を一致させていた。
本実施形態では、図１のシステムにおいて、ＩＤを使用せずにＨＴＴＰ要求に対するＨＴＴＰ応答を一致させる構成について説明する。より具体的には、中継サーバ１２０が、ＰＣ１１０がＨＴＴＰ応答を受け取るまでＰＣ１１０からの新しいＨＴＴＰ要求のＰＯＳＴを受け付けない構成について説明する。なお、上述した実施形態１、２と同様の構成については詳細な説明を省略する。
図２０は、本実施形態におけるＭＦＰ１００の処理の一例を示すフローチャートである。
Ｓ１６０１からＳ１６０８までの処理は、図８のＳ７０１からＳ７０８までの処理と同様であるため説明を省略する。
サーバサイドプロキシ４０１は、ＲＵＩ要求データキューの搬出用ＵＲＬから図２１の（ａ）に示すＨＴＴＰ要求をＧＥＴする（Ｓ１６０９）。
サーバサイドプロキシ４０１は、図２１の（ｂ）に示すようにＧＥＴしたＨＴＴＰ要求をＷｅｂサーバ４０２へ送信する（Ｓ１６１０）。
サーバサイドプロキシ４０１は、Ｗｅｂサーバ４０２から図２１の（ｃ）に示すＨＴＴＰ応答を受信する（Ｓ１６１１）。
サーバサイドプロキシ４０１は、受信したＨＴＴＰ応答をＲＵＩ応答データキューに格納するため格納用ＵＲＬへ送信する（Ｓ１６１２）。
Ｓ１６１３からＳ１６１４までの処理は、図８のＳ７１４からＳ７１５までの処理と同様であるため説明を省略する。
【００４２】
図２２は、本実施形態における中継サーバ１２０の処理の一例を示すフローチャートである。
Ｓ１７０１からＳ１７１６までの処理は、図１４のＳ１００１からＳ１０１６までの処理と同様であるため説明を省略する。
中継サービス４２０は、既にクライアント側ＲＵＩデータ送信用ＵＲＬからＰＯＳＴを受けているか否かを判定する（Ｓ１７１７）。ここでは、中継サービス４２０は、ＰＯＳＴフラグを確認することで、前記ＰＯＳＴを受けているか否かを判定する。より具体的には、中継サービス４２０は、ＰＯＳＴフラグ＝０であれば、前記ＰＯＳＴを受けていないと判定し、Ｓ１７１８へ進む。一方、中継サービス４２０は、ＰＯＳＴフラグ＝１であれば、前記ＰＯＳＴを受けていると判定し、Ｓ１７１５へ戻る。
中継サービス４２０は、ＰＯＳＴを受付（ＰＯＳＴフラグ＝１）に変更する（Ｓ１７１８）。
中継サービス４２０は、クライアントサイドプロキシ４１０から受信したＨＴＴＰ要求をＲＵＩ要求データキューに格納する（Ｓ１７１９）。
中継サービス４２０は、ＲＵＩ要求データキューの搬出用ＵＲＬへのサーバサイドプロキシ４０１からのＧＥＴを待つ（Ｓ１７２０）。
【００４３】
中継サービス４２０は、ＲＵＩ要求データキューに格納したＨＴＴＰ要求をＧＥＴの応答としてサーバサイドプロキシ４０１に送信する（Ｓ１７２１）。
中継サービス４２０は、ＭＦＰ１００又はＰＣ１１０から切断処理を受けたか否かを判定する（Ｓ１７２２）。中継サービス４２０は、切断処理を受けたと判定した場合、図２２の処理を終了し、切断処理を受けていないと判定した場合、Ｓ１７１５へ戻る。
中継サービス４２０は、ＨＴＴＰ応答をＲＵＩ応答データキューに格納する（Ｓ１７２３）。
中継サービス４２０は、ＲＵＩ応答データキューの搬出用ＵＲＬへのクライアントサイドプロキシ４１０からのＧＥＴを待つ（Ｓ１７２４）。
中継サービス４２０は、送信要求を受けていない（ＰＯＳＴフラグ＝０）に変更する（Ｓ１７２５）。
中継サービス４２０は、クライアントサイドプロキシ４１０から要求を受けると、ＨＴＴＰ応答をＧＥＴの応答として返し、Ｓ１７２２へ進む（Ｓ１３２６）。
以上の処理により、中継サーバ１２０は、ＰＣ１１０がＨＴＴＰ応答を受け取るまでＰＣ１１０からの新しいＨＴＴＰ要求のＰＯＳＴを受け付けないことで、ＨＴＴＰ要求とＨＴＴＰ応答とを一対にして、ＰＣ１１０とＭＦＰ１００との通信を中継することができる。なお、本実施形態で説明したＨＴＴＰデータは、特定の形式のデータに限る必要はなく、説明した形式とは異なる形式のデータであってもよい。また、本実施形態におけるＰＣ１１０の処理は、実施形態２と同じとなるため説明を省略する。
【００４４】
以上、本実施形態によれば、ＰＣ１１０がＨＴＴＰ応答を受け取るまで、中継サーバ１２０がＰＣ１１０からの新しいＨＴＴＰ要求のＰＯＳＴを受け付けない構成とすることで、ＨＴＴＰ要求とＨＴＴＰ応答とを一致させることができる。そのため、ＰＣ１１０とＭＦＰ１００とがＨＴＴＰ要求とＨＴＴＰ応答とを一対にして双方向通信することができるようになる。これにより、ファイアウォールの内側にある装置がインターネットを介して異なるファイアウォールの内側にある装置のＷｅｂサービスに接続してサービスを利用する際に、要求と応答とを対応させることができるシステムを実現することができる。
【００４５】
＜実施形態４＞
本実施形態では、図１のシステムにおいて、ＵＲＬ（アドレス情報）を使用することでＷｅｂブラウザ４１１からのＨＴＴＰ要求と、その要求に対するＨＴＴＰ応答とを一致させる構成について説明する。より具体的には、中継サーバ１２０は、ＰＣ１１０からのＨＴＴＰ要求のＰＯＳＴ応答としてＨＴＴＰ応答のＧＥＴ用ＵＲＬを通知する。また、中継サーバ１２０は、ＭＦＰ１００からのＨＴＴＰ要求のＧＥＴ応答としてＨＴＴＰ応答のＰＯＳＴ用ＵＲＬを通知する。なお、上述した実施形態１、２、３と同様の構成については詳細な説明を省略する。
図２３は、本実施形態におけるＭＦＰ１００の処理の一例を示すフローチャートである。
Ｓ１９０１からＳ１９０７までの処理は、図８のＳ７０１からＳ７０７までの処理と同様であるため説明を省略する。
サーバサイドプロキシ４０１は、中継サーバ１２０から受信したＲＵＩ要求データキューへの格納用ＵＲＬをＨＤＤ２１４に記憶する（Ｓ１９０８）。
サーバサイドプロキシ４０１は、ＲＵＩ要求データキューのＨＴＴＰ要求を搬出用ＵＲＬからＧＥＴする（Ｓ１９０９）。
【００４６】
サーバサイドプロキシ４０１は、上述した図１０の（ｂ）に示すＧＥＴ応答を変換してＵＲＬとＨＴＴＰ要求とを取得し、取得したＵＲＬをＨＤＤ２１４に記憶する（Ｓ１９１０）。
サーバサイドプロキシ４０１は、取得したＨＴＴＰ要求をＷｅｂサーバ４０２へ送信する（Ｓ１９１１）。
サーバサイドプロキシ４０１は、Ｗｅｂサーバ４０２へ送信したＨＴＴＰ要求に対するＷｅｂサーバ４０２からのＨＴＴＰ応答を、ＨＤＤ２１４に記憶しているＵＲＬへＰＯＳＴする（Ｓ１９１２）。
サーバサイドプロキシ４０１は、ＨＤＤ２１４に記憶しているＵＲＬを削除する（Ｓ１９１３）。
Ｓ１９１４からＳ１９１５までの処理は、図８のＳ７１４からＳ７１５までの処理と同様であるため説明を省略する。
以上の処理により、ＭＦＰ１００は、ＧＥＴ応答から取得したＵＲＬを用いて、Ｗｅｂサーバ４０２からのＨＴＴＰ応答をＰＳＯＴすることができる。これにより、ＭＦＰ１００とＰＣ１１０との間におけるＨＴＴＰ要求とＨＴＴＰ応答とを一対にすることができ、要求と応答との整合性があるＨＴＴＰ通信を実現することができる。
【００４７】
図２４は、本実施形態におけるＰＣ１１０の処理の一例を示すフローチャートである。
Ｓ２００１からＳ２００９までの処理は、図１１のＳ９０１からＳ９０９までの処理と同様であるため説明を省略する。
クライアントサイドプロキシ４１０は、中継サーバ１２０から受信したＲＵＩ要求データキューへの格納用ＵＲＬをＰＣ１１０のＨＤＤ３１４（以下、図２４の処理においては単にＨＤＤ３１４という）に記憶する（Ｓ２０１０）。
クライアントサイドプロキシ４１０は、Ｗｅｂブラウザ４１１から図２５の（ａ）に示すＨＴＴＰ要求を受信したか否かを判定する（Ｓ２０１１）。クライアントサイドプロキシ４１０は、ＨＴＴＰ要求を受信したと判定した場合、Ｓ２０１２へ進み、ＨＴＴＰ要求を受信していないと判定した場合、ＨＴＴＰ要求を受信するまで待つ。
クライアントサイドプロキシ４１０は、Ｗｅｂブラウザ４１１から受信したＨＴＴＰ要求をＲＵＩ要求データキューに格納するため、図２５の（ｂ）に示すようにＨＤＤ３１４に記憶している格納用ＵＲＬへＰＯＳＴする（Ｓ２０１２）。
クライアントサイドプロキシ４１０は、格納用ＵＲＬへのＰＯＳＴの応答として中継サーバ１２０から受信した図２５の（ｃ）に示す応答内のＵＲＬをＨＤＤ３１４に記憶する（Ｓ２０１３）。
【００４８】
クライアントサイドプロキシ４１０は、図２５の（ｄ）に示すように、ＲＵＩ応答データキューからデータを受信するため、ＨＤＤ３１４に記憶しているＵＲＬへのＨＴＴＰ応答のＧＥＴを行う（Ｓ２０１４）。
クライアントサイドプロキシ４１０は、Ｓ２０１４で送信したＧＥＴに対してＨＴＴＰ応答を受信したか否かを判定する（Ｓ２０１５）。クライアントサイドプロキシ４１０は、受信したと判定した場合、Ｓ２０１６へ進み、受信していないと判定した場合、Ｓ２０１４へ戻る。
クライアントサイドプロキシ４１０は、Ｗｅｂブラウザ４１１からのＨＴＴＰ要求の応答として、図２５の（ｅ）に示すＨＴＴＰ応答を返す（Ｓ２０１６）。
クライアントサイドプロキシ４１０は、ＨＤＤ３１４に記憶しているＵＲＬを削除する（Ｓ２０１７）。
Ｓ２０１８からＳ２０１９までの処理は、図１１のＳ９１９からＳ９２０までの処理と同様であるため説明を省略する。
以上の処理により、ＰＣ１１０は、ＨＴＴＰ要求のＰＯＳＴの応答として中継サーバ１２０から通知されたＵＲＬに基づいて、ＨＴＴＰ応答のＧＥＴを行うことができる。これにより、ＭＦＰ１００とＰＣ１１０との間におけるＨＴＴＰ要求とＨＴＴＰ応答とを一対にすることができ、要求と応答との整合性があるＨＴＴＰ通信を実現することができる。
【００４９】
図２６は、本実施形態における中継サーバ１２０の処理の一例を示すフローチャートである。
中継サービス４２０は、サーバサイドプロキシ４０１から認証情報を受信する（Ｓ２１０１）。
中継サービス４２０は、受信した認証情報を確認する（Ｓ２１０２）。
中継サービス４２０は、サーバサイドプロキシ４０１へ認証結果を通知する（Ｓ２１０３）。
中継サービス４２０は、クライアントサイドプロキシ４１０から認証情報を受信する（Ｓ２１０４）。
中継サービス４２０は、受信した認証情報を確認する（Ｓ２１０５）。
中継サービス４２０は、クライアントサイドプロキシ４１０へ認証結果を通知する（Ｓ２１０６）。
中継サービス４２０は、サーバサイドプロキシ４０１からＲＵＩ接続許可通知を受信する（Ｓ２１０７）。
【００５０】
中継サービス４２０は、ＲＵＩ要求データキューとＲＵＩ応答データキューとを作成する（Ｓ２１０８）。
中継サービス４２０は、サーバサイドプロキシ４０１向けに、ＲＵＩ要求データキューから取り出すための搬出用ＵＲＬを作成する（Ｓ２１０９）。
中継サービス４２０は、サーバサイドプロキシ４０１に作成したＵＲＬを通知する（Ｓ２１１０）。
中継サービス４２０は、クライアントサイドプロキシ４１０にＲＵＩ接続可能通知を通知する（Ｓ２１１１）。
中継サービス４２０は、クライアントサイドプロキシ４１０からＲＵＩ接続要求を受ける（Ｓ２１１２）。
中継サービス４２０は、クライアントサイドプロキシ４１０向けに、ＲＵＩ要求データキューへの格納用ＵＲＬを作成する（Ｓ２１１３）。
中継サービス４２０は、クライアントサイドプロキシ４１０に作成したＵＲＬを通知する（Ｓ２１１４）。
【００５１】
中継サービス４２０は、ＰＯＳＴを受けるのを待つ（Ｓ２１１５）。
中継サービス４２０は、受けたＰＯＳＴがクライアントサイドプロキシ４１０からのＰＯＳＴであるか否かを判定する（Ｓ２１１６）。中継サービス４２０は、クライアントサイドプロキシ４１０からのＰＯＳＴであれば、Ｓ２１１７へ進み、クライアントサイドプロキシ４１０からのＰＯＳＴでなければ、Ｓ２１２４へ進む。
中継サービス４２０は、ＲＵＩ応答データキューを取得するためのクライアントサイドプロキシ４１０向けの搬出用ＵＲＬを作成する（Ｓ２１１７）。
中継サービス４２０は、作成したＵＲＬをクライアントサイドプロキシ４１０へのＰＯＳＴ応答に付加して送信する（Ｓ２１１８）。
中継サービス４２０は、ＲＵＩ応答データキューに送信するためのサーバサイドプロキシ４０１向けの格納用ＵＲＬを作成する（Ｓ２１１９）。
中継サービス４２０は、作成した格納用ＵＲＬをＨＴＴＰ要求に付加してＲＵＩ要求データキューに格納する（Ｓ２１２０）。
【００５２】
中継サービス４２０は、サーバサイドプロキシ４０１からのＲＵＩ要求データキューの搬出用ＵＲＬへのＧＥＴを待つ（Ｓ２１２１）。
中継サービス４２０は、ＲＵＩ要求データキューに格納したＨＴＴＰ要求をＧＥＴの応答として送信する（Ｓ２１２２）。
中継サービス４２０は、ＭＦＰ１００又はＰＣ１１０から切断処理を受けたか否かを判定する（Ｓ２１２３）。中継サービス４２０は、切断処理を受けたと判定した場合、図２６の処理を終了し、切断処理を受けていないと判定した場合、Ｓ２１１５へ戻る。
中継サービス４２０１は、サーバサイドプロキシ４０１から受信したＨＴＴＰ応答をＲＵＩ応答データキューに格納する（Ｓ２１２４）。
中継サービス４２０は、ＲＵＩ応答データキューから取り出すための搬出用ＵＲＬへのクライアントサイドプロキシ４１０からのＧＥＴを待つ（Ｓ２１２５）。
中継サービス４２０は、ＲＵＩ応答データキューに格納したＨＴＴＰ応答をＧＥＴの応答としてクライアントサイドプロキシ４１０に送信し、Ｓ２１２３へ進む（Ｓ２１２６）。
以上の処理により、中継サーバ１２０は、ＵＲＬを使用することで、ＨＴＴＰ要求とＨＴＴＰ応答とを一致させることができる。なお、本実施形態で説明したＨＴＴＰデータは、特定の形式のデータに限る必要はなく、説明した形式とは異なる形式のデータであってもよい。
【００５３】
以上、本実施形態によれば、ＵＲＬを使用することでＷｅｂブラウザ４１１からのＨＴＴＰ要求と、その要求に対するＨＴＴＰ応答とを一対にすることができる。これにより、ファイアウォールの内側にある装置がインターネットを介して異なるファイアウォールの内側にある装置のＷｅｂサービスに接続してサービスを利用する際に、要求と応答とを対応させることができるシステムを実現することができる。
【００５４】
＜実施形態５＞
本実施形態は、ＭＦＰ１００とＰＣ１１０との間のＲＵＩ通信内容を、後述する図２７のシステム構成図に示される他のＰＣであるＰＣ１０３から閲覧可能とするものである。一般的に、サービスマンがユーザの画像形成装置の保守を行う場合、その作業状況を顧客側でも確認できなければならない。例えば、画像形成装置の保守において、サービスマンが画像形成装置の修復のため設定値を変更する場合、画像形成装置の情報をＰＣにバックアップする作業がよく行われる。この場合、サービスマンがどの設定値をバックアップしているかを、ユーザ側は把握できなければならない。
本実施形態では、ＭＦＰ１００とＰＣ１１０との間におけるＲＵＩ通信の通信内容を、ユーザ側のＰＣ１０３から閲覧可能とする構成について説明する。なお、上述した実施形態１から４までと同様の構成については詳細な説明を省略する。
図２７は、本実施形態におけるネットワークを介したセキュアな遠隔保守サービスを提供する通信システムのシステム構成の一例を示す図である。
ＰＣ１０３がユーザ環境１０２の中に配置されており、インターネット１３０にアクセス可能である。その他の構成は上述した図１と同様であるため説明を省略する。
また、ＰＣ１０３のハードウェア構成は上述した図３と同様である。即ち、ＰＣ１０３のＣＰＵ３１１は、ＰＣ１０３のＲＯＭ３１２やＨＤＤ３１４に記憶されたプログラムを実行することにより、ＰＣ１０３の機能、及び後述するＰＣ１０３に関するフローチャートの処理を実現する。その他の構成については説明を省略する。
【００５５】
図２８は、本実施形態におけるＭＦＰ１００、ＰＣ１０３、ＰＣ１１０、中継サーバ１２０の機能構成の一例を示す図である。
ＭＦＰ１００、ＰＣ１１０、中継サーバ１２０の機能構成は図４と同様であるため説明を省略する。
ＰＣ１０３内のクライアントサイドプロキシ４３０は、Ｗｅｂブラウザ４３１と中継サービス４２０との間の通信を仲介（中継）する。クライアントサイドプロキシ４３０は、中継サービス４２０へのデータ送信に、ＰＯＳＴメソッドを使用する。また、クライアントサイドプロキシ４３０は、中継サーバ１２０からのデータ受信に、ＧＥＴメソッドを使用する。また、クライアントサイドプロキシ４３０は、送信用と受信用とで別々の接続を使用するものとする。
【００５６】
図２９は、本実施形態におけるＰＣ１０３の処理の一例を示すフローチャートである。
Ｓ２５０１からＳ２５０６までの処理は、図１１のＳ９０１からＳ９０６までの処理と同様であるため説明を省略する。本実施形態では、Ｓ２５０６で選択された支援先のＭＦＰ１００は既にＰＣ１１０と通信中であるものとする。
クライアントサイドプロキシ４３０は、中継サーバ１２０からＲＵＩ接続許可を受信する（Ｓ２５０７）。Ｓ２５０７でクライアントサイドプロキシ４３０が受信したＲＵＩ接続許可情報には、既にＭＦＰ１００とＰＣ１１０とがＲＵＩ通信状態である旨を示す情報が含まれる。
クライアントサイドプロキシ４３０は、ＲＵＩ閲覧を実行するか否かを判定する（Ｓ２５０８）。より具体的には、クライアントサイドプロキシ４３０は、ＲＵＩ閲覧を実行するか否かの選択を促す画面をＰＣ１０３の操作部３１７（以下、図２９の処理においては単に操作部３１７という）に表示する。そして、クライアントサイドプロキシ４３０は、操作部３１７を介してユーザによる閲覧実行の選択を受け付けると、Ｓ２５０９へ進む。一方、クライアントサイドプロキシ４３０は、操作部３１７を介してユーザによる閲覧実行の選択を受け付けなかった場合、即ち、ユーザが閲覧実行を選択せず終了する場合は、Ｓ２５１８へ進む。
【００５７】
クライアントサイドプロキシ４３０は、中継サーバ１２０にＲＵＩ閲覧を送信する（Ｓ２５０９）。
クライアントサイドプロキシ４３０は、中継サーバ１２０から受信したＲＵＩ要求データキューへの格納用ＵＲＬと、ＲＵＩ応答データキューからの搬出用ＵＲＬとをＰＣ１０３のＨＤＤ３１４（以下、図２９の処理においては単にＨＤＤ３１４という）に記憶する（Ｓ２５１０）。
クライアントサイドプロキシ４３０は、Ｗｅｂブラウザ４３１からＨＴＴＰ要求を受信したか否かを判定する（Ｓ２５１１）。クライアントサイドプロキシ４３０は、ＨＴＴＰ要求を受信したと判定した場合、Ｓ２５１２へ進み、ＨＴＴＰ要求を受信していないと判定した場合、ＨＴＴＰ要求の受信を待つ。
クライアントサイドプロキシ４３０は、Ｗｅｂブラウザ４３１から受信したＨＴＴＰ要求を、ＨＤＤ３１４に記憶している格納用ＵＲＬへＰＯＳＴする（Ｓ２５１２）。なお、本実施形態では、Ｓ２５１２でクライアントサイドプロキシ４３０がＰＯＳＴしたＨＴＴＰ要求は、中継サーバ１２０上で読み捨てられる。また、本実施形態では、Ｗｅｂブラウザ４３１からのＨＴＴＰ要求をクライアントサイドプロキシ４３０が中継サーバ１２０にＰＯＳＴしているが、クライアントサイドプロキシ４３０が読み捨てる構成であってもよい。
【００５８】
クライアントサイドプロキシ４３０は、ＲＵＩ応答データキューからＨＴＴＰ応答を受信するため搬出用ＵＲＬへＧＥＴを出す（Ｓ２５１３）。
クライアントサイドプロキシ４３０は、Ｓ２５１３で出したＧＥＴに対して中継サーバ１２０からＨＴＴＰ応答を受信したか否かを判定する（Ｓ２５１４）。クライアントサイドプロキシ４３０は、受信したと判定した場合、Ｓ２５１５へ進み、受信していないと判定した場合、Ｓ２５１３へ戻る。
クライアントサイドプロキシ４３０は、中継サーバ１２０から受信したＧＥＴ応答（ＨＴＴＰ応答）からＩＤ部分を取り出す（Ｓ２５１５）。より具体的には、クライアントサイドプロキシ４３０は、ＧＥＴ応答を変換して、ＩＤとＨＴＴＰ要求とを取得する。
クライアントサイドプロキシ４３０は、ＩＤ部分を取り除いたＨＴＴＰ応答を、Ｗｅｂブラウザ４３１からのＨＴＴＰ要求の応答として返す（Ｓ２５１６）。
クライアントサイドプロキシ４３０は、操作部３１７を介してユーザから終了指示を受けたか否かを判定する（Ｓ２５１７）。クライアントサイドプロキシ４３０は、終了指示を受けたと判定した場合、中継サービス４２０に切断指示を出し、図２９の処理を終了する（Ｓ２５１８）。一方、クライアントサイドプロキシ４３０は、終了指示を受けていないと判定した場合、Ｓ２５１１へ戻る。
以上の処理により、ＭＦＰ１００とＰＣ１１０との間におけるＲＵＩ通信の通信内容を、ユーザ側のＰＣ１０３から閲覧することができる。
【００５９】
図３０は、本実施形態における中継サーバ１２０の処理の一例を示すフローチャートである。
Ｓ２６０１からＳ２６１９までの処理は、図１４のＳ１００１からＳ１０１９までの処理と同様であるため説明を省略する。また、Ｓ２６２１からＳ２６２３までの処理は、図１４のＳ１０２１からＳ１０２３までの処理と同様であるため説明を省略する。なお、図３０において、第１のクライアントサイドプロキシとは、ＰＣ１１０のクライアントサイドプロキシ４１０のことである。また、第２のクライアントサイドプロキシとは、ＰＣ１０３のクライアントサイドプロキシ４３０のことである。
中継サービス４２０は、クライアントサイドプロキシ４３０から認証情報を受信したか否かを判定する（Ｓ２６２０）。中継サービス４２０は、認証情報を受信したと判定した場合、Ｓ２６２４へ進み、認証情報を受信していないと判定した場合、Ｓ２６１５へ戻る。
中継サービス４２０は、クライアントサイドプロキシ４３０から受信した認証情報を確認する（Ｓ２６２４）。より具体的には、中継サービス４２０は、予め記憶している認証情報と、クライアントサイドプロキシ４３０から受信した認証情報とを比較することにより、ＰＣ１０３の接続を認証するか否かを判定する。
中継サービス４２０は、クライアントサイドプロキシ４３０へ認証結果を通知する（Ｓ２６２５）。
【００６０】
中継サービス４２０は、クライアントサイドプロキシ４３０へＲＵＩ接続可能を通知する（Ｓ２６２６）。
中継サービス４２０は、クライアントサイドプロキシ４３０からＲＵＩ閲覧要求を受信する（Ｓ２６２７）。ＲＵＩ閲覧要求は、通信内容の取得要求の一例である。
中継サービス４２０は、クライアントサイドプロキシ４３０へ送受信用ＵＲＬを通知する（Ｓ２６２８）。ここで、中継サービス４２０は、Ｓ２６１３で作成したＵＲＬと同じＵＲＬをクライアントサイドプロキシ４３０へ通知する。より具体的には、中継サービス４２０は、ＲＵＩ要求データキューへ格納するための格納用ＵＲＬと、ＲＵＩ応答データキューから取り出すための搬出用ＵＲＬとをクライアントサイドプロキシ４３０へ通知する。これらのＵＲＬは、ＭＦＰ１００とＰＣ１１０とがＲＵＩ通信するためにも使用されている。
中継サービス４２０は、ＰＯＳＴの受信を待つ（Ｓ２６２９）。
中継サービス４２０は、受けたＰＯＳＴがクライアントサイドプロキシ４１０からのＰＯＳＴであるか否かを判定する（Ｓ２６３０）。中継サービス４２０は、クライアントサイドプロキシ４１０からのＰＯＳＴであると判定した場合、Ｓ２６３１へ進む。一方、中継サービス４２０は、クライアントサイドプロキシ４１０からのＰＯＳＴでないと判定した場合、Ｓ２６３４へ進む。
【００６１】
中継サービス４２０は、ＨＴＴＰ要求をＲＵＩ要求データキューに格納する（Ｓ２６３１）。
中継サービス４２０は、ＲＵＩ要求データキューから取り出すための搬出用ＵＲＬへのサーバサイドプロキシ４０１からのＧＥＴを待つ（Ｓ２６３２）。
中継サービス４２０は、ＲＵＩ要求データキューに格納したＨＴＴＰ要求をＧＥＴの応答としてサーバサイドプロキシ４０１へ送信する（Ｓ２６３３）。
中継サービス４２０は、ＭＦＰ１００、ＰＣ１１０、又はＰＣ１０３から切断処理を受けたか否かを判定する（Ｓ２６４２）。中継サービス４２０は、切断処理を受けたと判定した場合、図３０の処理を終了し、切断処理を受けていないと判定した場合、Ｓ２６２９へ戻る。
中継サービス４２０は、Ｓ２６２９で受けたＰＯＳＴがサーバサイドプロキシ４０１からのＰＯＳＴであるか否かを判定する（Ｓ２６３４）。中継サービス４２０は、サーバサイドプロキシ４０１からのＰＯＳＴであると判定した場合、Ｓ２６３５へ進む。一方、中継サービス４２０は、サーバサイドプロキシ４０１からのＰＯＳＴでないと判定した場合、Ｓ２６４０へ進む。
中継サービス４２０は、サーバサイドプロキシ４０１から受信したＨＴＴＰ応答をＲＵＩ応答データキューに格納する（Ｓ２６３５）。
【００６２】
中継サービス４２０は、搬出用ＵＲＬへのクライアントサイドプロキシ４１０からのＧＥＴを待つ（Ｓ２６３６）。
中継サービス４２０は、ＲＵＩ応答データキューに格納されているＨＴＴＰ応答をＧＥＴの応答として、クライアントサイドプロキシ４１０へ送信する（Ｓ２６３７）。
中継サービス４２０は、搬出用ＵＲＬへのクライアントサイドプロキシ４３０からのＧＥＴを待つ（Ｓ２６３８）。
中継サービス４２０は、ＲＵＩ応答データキューに格納されているＨＴＴＰ応答をＧＥＴの応答として、クライアントサイドプロキシ４３０へ送信する（Ｓ２６３９）。即ち、中継サービス４２０は、Ｓ２６３７でクライアントサイドプロキシ４１０へ送信したＨＴＴＰ応答と同じＨＴＴＰ応答をクライアントサイドプロキシ４３０へ送信する。これにより、ＰＣ１０３が、ＭＦＰ１００とＰＣ１１０との間におけるＲＵＩ通信の通信内容を取得することができるようになる。
【００６３】
中継サービス４２０は、Ｓ２６２９で受けたＰＯＳＴがクライアントサイドプロキシ４３０からのＰＯＳＴであるか否かを判定する（Ｓ２６４０）。中継サービス４２０は、クライアントサイドプロキシ４３０からＰＯＳＴであると判定した場合、Ｓ２６４１へ進む。一方、中継サービス４２０は、クライアントサイドプロキシ４３０からＰＯＳＴでないと判定した場合、Ｓ２６４２へ進む。
中継サービス４２０は、クライアントサイドプロキシ４３０からＰＯＳＴされたＨＴＴＰ要求を読み捨てる（Ｓ２６４１）。Ｓ２６４１における処理は、削除処理の一例である。これにより、中継サービス４２０は、ＰＣ１０３からのＧＥＴ要求に対して、ＰＣ１１０用にＲＵＩ応答データキューに格納されている最新のＨＴＴＰ応答を送信することができる。即ち、ＰＣ１０３は、ＭＦＰ１００とＰＣ１１０との間の最新のＲＵＩ通信における通信内容を取得することができる。
以上の処理により、中継サーバ１２０は、ＭＦＰ１００とＰＣ１１０との間のＲＵＩ通信の通信内容をＰＣ１０３に送信することができる。その際、中継サーバ１２０は、ＰＣ１０３からのＧＥＴ要求に対するＧＥＴ応答を、ＰＣ１１０用の最新のＧＥＴ応答に差し替えて応答することができる。
【００６４】
以上、本実施形態によれば、ＭＦＰ１００とＰＣ１１０との間におけるＲＵＩ通信の通信内容を、ユーザ側のＰＣ１０３から閲覧することができる。なお、本実施形態では、クライアントサイドプロキシ４３０とＷｅｂブラウザ４３１とはＰＣ１０３上にあるものとしたが、ＭＦＰ１００上にあってもよい。この場合、クライアントサイドプロキシ４３０が直接、サーバサイドプロキシ４０１と通信し、Ｗｅｂサーバ４０２からのＨＴＴＰ応答を横流しする構成であってもよい。また、ＰＣ１１０が実行する処理は、上述した図１１と同様であるため説明を省略する。
【００６５】
＜実施形態６＞
本実施形態は、ＭＦＰ１００とＰＣ１１０との間のＲＵＩ通信を、ＭＦＰ１００とＰＣ１０３との間のＲＵＩ通信に切り替え可能とするものである。一般的に、サービスマンがユーザの画像形成装置の保守を行う場合、作業内容によっては、顧客側で実施してもらう場合もある。例えば、画像形成装置の保守において、サービスマンが画像形成装置の修復のため設定値を変更する場合、画像形成装置の情報をＰＣにバックアップする作業がよく行われる。バックアップする情報に顧客側の機密情報が含まれる場合、そのバックアップ操作は顧客側で実施してもらわなければならない。
本実施形態では、ＭＦＰ１００とＰＣ１１０との間で行われているＲＵＩ通信を、ＭＦＰ１００とＰＣ１０３との間の接続に切り替える構成について説明する。なお、上述した実施形態１から５までと同様の構成については詳細な説明を省略する。また、本実施形態におけるシステム構成は、図２７と同様であるものとする。
【００６６】
図３１は、本実施形態におけるＰＣ１１０の処理の一例を示すフローチャートである。
Ｓ２７０１からＳ２７１８までの処理は、図１１のＳ９０１からＳ９１８までの処理と同様であるため説明を省略する。
クライアントサイドプロキシ４１０は、中継サーバ１２０からＲＵＩ閲覧切替要求を受信する（Ｓ２７１９）。
クライアントサイドプロキシ４１０は、Ｗｅｂブラウザ４１１からＨＴＴＰ要求を受信したか否か判定する（Ｓ２７２０）。クライアントサイドプロキシ４１０は、ＨＴＴＰ要求を受信したと判定した場合、Ｓ２７２１へ進み、ＨＴＴＰ要求を受信していないと判定した場合、ＨＴＴＰ要求の受信を待つ。
クライアントサイドプロキシ４１０は、ＨＴＴＰ要求を中継サーバ１２０にＰＯＳＴする（Ｓ２７２１）。クライアントサイドプロキシ４１０によりＳ２７２１で中継サーバ１２０にＰＯＳＴされたＨＴＴＰ要求は、中継サーバ１２０側で読み捨てられる。本実施形態では、Ｗｅｂブラウザ４１１からのＨＴＴＰ要求をクライアントサイドプロキシ４１０が中継サーバ１２０にＰＯＳＴしているが、クライアントサイドプロキシ４３０が読み捨てる構成であってもよい。
クライアントサイドプロキシ４１０は、ＲＵＩ応答データキューからＨＴＴＰ応答を受信するため搬出用ＵＲＬへＧＥＴを出す（Ｓ２７２２）。
【００６７】
クライアントサイドプロキシ４１０は、Ｓ２７２２で出したＧＥＴに対するＨＴＴＰ応答を中継サーバ１２０から受信したか否かを判定する（Ｓ２７２３）。クライアントサイドプロキシ４１０は、ＨＴＴＰ応答を受信したと判定した場合、Ｓ２７２４へ進み、ＨＴＴＰ応答を受信していないと判定した場合、Ｓ２７２２へ戻る。なお、Ｓ２７２３でクライアントサイドプロキシ４１０が受信したＨＴＴＰ応答は、ＭＦＰ１００がＰＣ１０３向けに返しているＨＴＴＰ応答である。
クライアントサイドプロキシ４１０は、中継サーバ１２０から受信したＧＥＴ応答（ＨＴＴＰ応答）からＩＤ部分を取り出す（Ｓ２７２４）。より具体的には、クライアントサイドプロキシ４１０は、ＧＥＴ応答を変換して、ＩＤとＨＴＴＰ要求とを取得する。
クライアントサイドプロキシ４１０は、ＩＤ部分を取り除いたＨＴＴＰ応答を、Ｗｅｂブラウザ４１１からのＨＴＴＰ要求の応答として返す（Ｓ２７２５）。
クライアントサイドプロキシ４１０は、ＰＣ１１０の操作部３１７を介してユーザから終了指示を受けたか否かを判定する（Ｓ２７２６）。クライアントサイドプロキシ４１０は、終了指示を受けたと判定した場合、中継サービス４２０に切断指示を出し、図３１の処理を終了する（Ｓ２７２７）。一方、クライアントサイドプロキシ４１０は、終了指示を受けていないと判定した場合、Ｓ２７２０へ戻る。
【００６８】
図３２は、本実施形態におけるＰＣ１０３の処理の一例を示すフローチャートである。
Ｓ２８０１からＳ２８２０までの処理は、図１１のＳ９０１からＳ９２０までの処理と同様であるため説明を省略する。本実施形態では、Ｓ２８０６で選択される支援先のＭＦＰ１００は、既にＰＣ１１０と通信中であるものとする。また、Ｓ２８０９で、クライアントサイドプロキシ４３０が中継サーバ１２０にＲＵＩ接続要求を送信することにより、ＰＣ１０３とＭＦＰ１００との間のＲＵＩ通信が開始される。既に通信中であったＭＦＰ１００とＰＣ１１０との間のＲＵＩ通信は、閲覧のみだけの通信となる。
図３３は、本実施形態における中継サーバ１２０の処理の一例を示すフローチャートである。
Ｓ２９０１からＳ２９２６までの処理は、図３０のＳ２６０１からＳ２６２６までの処理と同様であるため説明を省略する。
中継サービス４２０は、クライアントサイドプロキシ４３０からＲＵＩ接続要求を受信する（Ｓ２９２７）。
中継サービス４２０は、クライアントサイドプロキシ４１０へＲＵＩ閲覧切替を通知する（Ｓ２９２８）。これにより、中継サービス４２０は、ＭＦＰ１００とＰＣ１１０との通信を閲覧のみのＲＵＩ通信に切り替え、操作可能なＲＵＩ通信がＭＦＰ１００とＰＣ１０３との間で行われるように切り替えることができる。
Ｓ２９３０からＳ２９３２までの処理は、図３０のＳ２６２８からＳ２６３０までの処理と同様であるため説明を省略する。
Ｓ２９３４、Ｓ２９４０の処理は、図３０のＳ２６３４、Ｓ２６４０の処理と同様であるため説明を省略する。
【００６９】
中継サービス４２０は、クライアントサイドプロキシ４１０からＰＯＳＴされたＨＴＴＰ要求を読み捨てる（Ｓ２９３３）。Ｓ２９３３の処理は、削除処理の一例である。これにより、中継サービス４２０は、ＭＦＰ１００とＰＣ１１０との通信を閲覧のみのＲＵＩ通信にすることができる。
Ｓ２９３５からＳ２９３９までの処理は、図３０のＳ２６３５からＳ２６３９までの処理と同様であるため説明を省略する。
中継サービス４２０は、ＨＴＴＰ要求をＲＵＩ要求データキューに格納する（Ｓ２９４１）。
中継サービス４２０は、ＲＵＩ要求データキューから取り出すための搬出用ＵＲＬへのサーバサイドプロキシ４０１からのＧＥＴを待つ（Ｓ２９４２）。
中継サービス４２０は、ＲＵＩ要求データキューに格納したＨＴＴＰ要求をＧＥＴの応答としてサーバサイドプロキシ４０１へ送信する（Ｓ２９４３）。
Ｓ２９４４の処理は、図３０のＳ２６４２の処理と同様であるため説明を省略する。
【００７０】
以上、本実施形態によれば、中継サーバ１２０は、ＭＦＰ１００とＰＣ１１０との間のＲＵＩ通信を閲覧のみの通信に切り替え、ＭＦＰ１００とのＲＵＩ通信における操作権を新たに接続されたＰＣ１０３に切り替えることができる。これにより、ＭＦＰ１００に対するサービスマン（ＰＣ１１０のユーザ）の操作権を顧客（ＰＣ１０３のユーザ）に移行させることができるようになる。
【００７１】
＜実施形態７＞
本実施形態では、ＲＵＩがＳＳＬ（Ｓｅｃｕｒｅ  Ｓｏｃｋｅｔｓ  Ｌａｙｅｒ）通信（暗号化通信）を必要としていても、ＭＦＰ１００とＰＣ１１０との間のＲＵＩ通信の内容を、ユーザ（顧客）側のＰＣ１０３から閲覧可能とする構成について説明する。なお、上述した実施形態１から６までと同様の構成については詳細な説明を省略する。また、本実施形態におけるシステム構成は、図２７と同様であるものとする。
ＰＣ１１０が中継サーバ１２０と接続を行う際の処理を示すフローチャートは、実施形態５と同様で図１１に示す通りだが、一部の処理が異なるため、差異について説明する。
図１１のＳ９０２の処理において、クライアントサイドプロキシ４１０は、Ｓ９０１でアプリが起動されたと判定した場合、ＰＣ１１０の操作部３１７に認証情報入力画面を表示する。加えて本実施形態では、Ｓ９０２において、クライアントサイドプロキシ４１０は、中継サーバ１２０とＳＳＬのネゴシエーションを実施する。これにより、ＰＣ１１０は、ＳＳＬ共通鍵を取得し、以降の中継サーバ１２０とのＨＴＴＰ通信を全て暗号化して実施する。
ＰＣ１０３が中継サーバ１２０と接続を行う際の処理を示すフローチャートは、実施形態５で図２９を用いて説明した通りだが、一部の処理が異なるため、差異について説明する。
図２９のＳ２５０２の処理において、クライアントサイドプロキシ４３０は、Ｓ２５０１でアプリが起動されたと判定した場合、ＰＣ１０３の操作部３１７に認証情報入力画面を表示する。加えて本実施形態では、Ｓ２５０２において、クライアントサイドプロキシ４３０は、中継サーバ１２０とＳＳＬのネゴシエーションを実施する。これにより、ＰＣ１０３は、ＳＳＬ共通鍵を取得し、以降の中継サーバ１２０とのＨＴＴＰ通信を全て暗号化して実施する。
中継サーバ１２０がＭＦＰ１００やＰＣ１１０と接続を行う際の処理を示すフローチャートは、実施形態５で図３０を用いて上述した通りであるため説明を省略する。
【００７２】
図３４は、本実施形態におけるＭＦＰ１００が中継サーバ１２０と接続を行う処理の一例を示すフローチャートである。
サーバサイドプロキシ４０１は、操作部２１９を介してコールセンターの起動指示があったか否かを判定する（Ｓ３００１）。
サーバサイドプロキシ４０１は、中継サーバ１２０とＳＳＬのネゴシエーションを実施する（Ｓ３００２）。これにより、サーバサイドプロキシ４０１は、ＳＳＬ共通鍵を取得し、以降の中継サーバ１２０とのＨＴＴＰ通信を全て暗号化して実施することができる。
Ｓ３００３からＳ３０１１までの処理は、図８のＳ７０２からＳ７１０までの処理と同様であるため説明を省略する。なお、Ｓ３０１０において、サーバサイドプロキシ４０１は、Ｓ３００２で取得したＳＳＬ共通鍵を使用してＧＥＴしたＨＴＴＰデータを復号する。
サーバサイドプロキシ４０１は、Ｓ３０１１の処理でＨＴＴＰ要求を取得すると、ＨＴＴＰ要求の接続先のＷｅｂサーバ４０２がＳＳＬでの接続を必要としているか否かを判定する（Ｓ３０１２）。サーバサイドプロキシ４０１は、ＳＳＬ接続が必要だと判定した場合、Ｓ３０１３へ進み、ＳＳＬ接続が不要だと判定した場合、Ｓ３０１８へ進む。Ｓ３０１２での判定の方法として、サーバサイドプロキシ４０１は、Ｗｅｂサーバ４０２に接続してからＨＴＴＰＳのページにリダイレクト（誘導）されるか否かで判定してもよい。この際、サーバサイドプロキシ４０１は、ＨＴＴＰＳのページにリダイレクトされた場合、ＳＳＬ接続が必要だと判定する。また、サーバサイドプロキシ４０１は、予めＨＤＤ２１４にＳＳＬ接続が必要なＷｅｂサーバ４０２の情報（登録情報）を登録しておくことにより判定してもよい。なお、ＨＴＴＰＳは、Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ  Ｓｅｃｕｒｅの略である。
【００７３】
サーバサイドプロキシ４０１は、Ｓ３０１２でＳＳＬ接続が必要だと判定した場合、Ｗｅｂサーバ４０２とＳＳＬのネゴシエーションを実施する（Ｓ３０１３）。
サーバサイドプロキシ４０１は、Ｓ３０１３でＷｅｂサーバ４０２から取得したＳＳＬ共通鍵により、Ｓ３０１１で取得したＨＴＴＰ要求を暗号化する（Ｓ３０１４）。
サーバサイドプロキシ４０１は、Ｓ３０１４で暗号化したＨＴＴＰ要求をＷｅｂサーバ４０２に送信する（Ｓ３０１５）。
サーバサイドプロキシ４０１は、Ｓ３０１５の要求の応答として、Ｗｅｂサーバ４０２から暗号化されたＨＴＴＰ応答を受信する（Ｓ３０１６）。
サーバサイドプロキシ４０１は、ＳＳＬ共通鍵により、Ｓ３０１６で受信したＨＴＴＰ応答を復号する（Ｓ３０１７）。そして、サーバサイドプロキシ４０１は、Ｓ３０２０へ進む。
【００７４】
サーバサイドプロキシ４０１は、Ｓ３０１２でＳＳＬ接続が不要だと判定した場合、Ｗｅｂサーバ４０２へＨＴＴＰ要求を送信する（Ｓ３０１８）。
サーバサイドプロキシ４０１は、Ｓ３０１７の要求の応答として、Ｗｅｂサーバ４０２からＨＴＴＰ応答を受信する（Ｓ３０１９）。そして、サーバサイドプロキシ４０１は、Ｓ３０２０へ進む。
サーバサイドプロキシ４０１は、Ｓ３０１７又はＳ３０１９の処理の後、Ｗｅｂサーバ４０２から受信したＨＴＴＰ応答にＨＤＤ２１４に記憶しているＩＤを付加しＲＵＩ応答データキューに格納するため格納用ＵＲＬへ送信する（Ｓ３０２０）。
Ｓ３０２１、Ｓ３０２２の処理は、図８のＳ７１４、Ｓ７１５の処理と同様であるため説明を省略する。
これらの一連の処理では、ＰＣ１１０とＭＦＰ１００との通信経路はＳＳＬで暗号化されているが、サーバサイドプロキシ４０１がＷｅｂサーバ４０２からの暗号化されたＨＴＴＰデータを復号して中継サービス４２０に送信する。そのため、ＰＣ１０３が中継サーバ１２０への認証を行った上で接続した場合、ＰＣ１１０とＭＦＰ１００との通信の内容を監視することが可能となる。
【００７５】
以上、本実施形態によれば、ＲＵＩがＳＳＬ通信を必要としていても、ＭＦＰ１００とＰＣ１１０との間のＲＵＩ通信の内容を、ユーザ側のＰＣ１０３から閲覧することができるようになる。
【００７６】
＜実施形態８＞
本実施形態では、ＲＵＩがＳＳＬ通信を必要としていても、Ｗｅｂサーバ４０２で受け付けたＨＴＴＰ要求の接続元（要求元）がＭＦＰ１００の外部からでない場合、ＳＳＬ接続なしでも接続を可能とする構成について説明する。なお、上述した実施形態１から７までと同様の構成については詳細な説明を省略する。また、本実施形態におけるシステム構成は、図２７と同様であるものとする。
図３５は、本実施形態におけるＭＦＰ１００が中継サーバ１２０と接続を行う際の処理の一例を示すフローチャートである。
Ｓ３１０１からＳ３１１１までの処理は、図３４のＳ３００１からＳ３０１１までの処理と同様であるため説明を省略する。
サーバサイドプロキシ４０１は、Ｗｅｂサーバ４０２へＨＴＴＰ要求を送信する（Ｓ３１１２）。
サーバサイドプロキシ４０１は、Ｗｅｂサーバ４０２で受け付けたＨＴＴＰ要求の接続元がＭＦＰ１００の外部からでない、即ち、ＭＦＰ１００の内部からであることを確認する（Ｓ３１１３）。ここで、サーバサイドプロキシ４０１は、ローカルループバックアドレスからの接続であれば、接続元がＭＦＰ１００の外部からでないと判定するようにしてもよい。また、サーバサイドプロキシ４０１は、前記接続元の所有する証明書（証明情報）によって、前記接続元がＭＦＰ１００の外部からでないことを確認するようにしてもよい。より具体的には、サーバサイドプロキシ４０１は、予め記憶されている証明書と、前記接続元の所有する証明書とが一致する場合、前記接続元がＭＦＰ１００の外部からでないと判定するようにしてもよい。上述したように、本実施形態では、Ｗｅｂサーバ４０２で受け付けたＨＴＴＰ要求の接続元がＭＦＰ１００の外部からでない場合、ＳＳＬ接続なしでも接続を可能とする。
【００７７】
サーバサイドプロキシ４０１は、Ｓ３１１３で、Ｗｅｂサーバ４０２で受け付けたＨＴＴＰ要求の接続元がＭＦＰ１００の外部からでないことを確認すると、Ｓ３１１４へ進む。一方、サーバサイドプロキシ４０１は、Ｓ３１１３で、ＨＴＴＰ要求の接続元がＭＦＰ１００の外部からであることを確認した場合、前記接続元とのセキュアでない（暗号化されていない）接続を切断して、図３５の処理を終了する。
サーバサイドプロキシ４０１は、Ｓ３１１２の要求の応答として、Ｗｅｂサーバ４０２からＨＴＴＰ応答を受信する（Ｓ３１１４）。
Ｓ３１１５からＳ３１１７までの処理は、図３４のＳ３０２０からＳ３０２２までの処理と同様であるため説明を省略する。
ＰＣ１１０、ＰＣ１０３が中継サーバ１２０と接続を行う際の処理は、実施形態７で図２９を用いて説明した通りであるため説明を省略する。また、中継サーバ１２０がＭＦＰ１００やＰＣ１１０と接続を行う際の処理は、実施形態５で図３０を用いて上述した通りであるため説明を省略する。なお、本実施形態では、ＲＵＩがＳＳＬ通信を必要とする場合を前提として説明したが、図３４のＳ３０１２のように、サーバサイドプロキシ４０１が、Ｗｅｂサーバ４０２がＳＳＬでの接続を必要としているか否かを判定するようにしてもよい。
【００７８】
以上、本実施形態によれば、ＲＵＩがＳＳＬ通信を必要としていても、Ｗｅｂサーバ４０２で受け付けたＨＴＴＰ要求の接続元がＭＦＰ１００の内部に存在する場合、ＳＳＬ接続なしでも接続が可能となる。これにより、前記接続元がＭＦＰ１００の内部に存在する場合、前記接続元は、ＲＵＩがＳＳＬ通信を必要としていても、ＭＦＰ１００内のＨＴＴＰデータを閲覧することができるようになる。
【００７９】
＜その他の実施形態＞
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
また、上述した各実施形態におけるシステムに含まれるＭＦＰを、ＰＣ、サーバ装置、タブレット端末等の他の情報処理装置に置き換えた場合においても同様の効果を得ることができる。
【００８０】
以上、上述した各実施形態によれば、セキュアな通信環境でのＷｅｂサービスの利用における利便性を向上させることができる。より具体的には、ファイアウォールの内側にある情報処理装置から、インターネットを経由して異なるファイアウォールの内側にある画像形成装置のＷｅｂサービス機能に接続することができる。これにより、前記情報処理装置から前記Ｗｅｂサービスにおけるバックアップ、リストア等の機能を利用することが可能となる。
【００８１】
以上、本発明の好ましい形態について詳述したが、本実施形態は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図１】
2015179325.tif 000003
【図２】
2015179325.tif 000004
【図３】
2015179325.tif 000005
【図４】
2015179325.tif 000006
【図５】
2015179325.tif 000007
【図６】
2015179325.tif 000008
【図７】
2015179325.tif 000009
【図８】
2015179325.tif 000010
【図９】
2015179325.tif 000011
【図１０】
2015179325.tif 000012
【図１１】
2015179325.tif 000013
【図１２】
2015179325.tif 000014
【図１３】
2015179325.tif 000015
【図１４】
2015179325.tif 000016
【図１５】
2015179325.tif 000017
【図１６】
2015179325.tif 000018
【図１７】
2015179325.tif 000019
【図１８】
2015179325.tif 000020
【図１９】
2015179325.tif 000021
【図２０】
2015179325.tif 000022
【図２１】
2015179325.tif 000023
【図２２】
2015179325.tif 000024
【図２３】
2015179325.tif 000025
【図２４】
2015179325.tif 000026
【図２５】
2015179325.tif 000027
【図２６】
2015179325.tif 000028
【図２７】
2015179325.tif 000029
【図２８】
2015179325.tif 000030
【図２９】
2015179325.tif 000031
【図３０】
2015179325.tif 000032
【図３１】
2015179325.tif 000033
【図３２】
2015179325.tif 000034
【図３３】
2015179325.tif 000035
【図３４】
2015179325.tif 000036
【図３５】
2015179325.tif 000037