画像形成装置、画像形成装置の制御方法、及びプログラム
【課題】 MFPのWebブラウザとMFP外部のWebサーバとを仲介する形でMFP内部のWebサーバ機能が存在する構成の情報処理システムにおいて、MFP外部のWebサーバとMFPとの通信状態を適切にユーザに通知することを目的とする。
特に、MFP外部のWebサーバとMFPとの間でのHTTP、HTTPSといった通信プロトコルおよびHTTPS通信時のサーバ証明書情報を適切にユーザに通知することを目的とする。
【解決手段】 MFPのWebブラウザとMFP外部のWebサーバとを仲介する形でMFP内部のWebサーバ機能がWebブラウザに対して、通信プロトコル、HTTPS通信時のサーバ証明書情報を通知する。通知を受信したWebブラウザは、通知にしたがって画面上に通信状態を表示する。
特に、MFP外部のWebサーバとMFPとの間でのHTTP、HTTPSといった通信プロトコルおよびHTTPS通信時のサーバ証明書情報を適切にユーザに通知することを目的とする。
【解決手段】 MFPのWebブラウザとMFP外部のWebサーバとを仲介する形でMFP内部のWebサーバ機能がWebブラウザに対して、通信プロトコル、HTTPS通信時のサーバ証明書情報を通知する。通知を受信したWebブラウザは、通知にしたがって画面上に通信状態を表示する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、サーバに接続され、当該サーバにより提供されるコンテンツを表示するブラウザを備えた画像形成装置、画像形成装置の制御方法、及びプログラムに関する。
【背景技術】
【0002】
PCなどの情報処理装置がネットワーク上のWebサーバと通信を行い、Webサーバから提供される操作画面などのコンテンツをWebブラウザで表示することが知られている。
【0003】
近年、スキャナやプリンタを備えたMFP(Multi Function Peripheral)に、上述したようなWebブラウザを備えたものがある。そして、MFPは、Webサーバから提供されるコンテンツをMFPのWebブラウザに表示し、ユーザからの各種指示を受け付ける。
【0004】
また、特許文献1には、情報処理装置内部にWebサーバを設け、MFP内部に備えられているWebサーバと通信を行う構成が開示されている。特許文献1における情報処理装置のWebサーバは、MFPのWebサーバから提供されるコンテンツを情報処理装置のWebブラウザに表示可能な形式に変換する。情報処理装置のWebブラウザは、変換されたコンテンツを表示する。
【0005】
情報処理装置内部のWebサーバと情報処理装置のWebブラウザの間で使用する通信プロトコルは、情報処理装置のWebサーバの設定で決定される。情報処理装置のWebサーバが、情報処理装置外部のクライアントからのアクセスされることも考慮しているからである。WebサーバとWebブラウザの通信時に使用される通信プロトコルは、通常、HTTPもしくはHTTPSのいずれかである。一方、情報処理装置内部のWebサーバと情報処理装置外部のWebサーバ間での通信時に使用されるプロトコルは、情報処理装置外部のWebサーバの通信仕様に依存して決定される。
【0006】
したがって、情報処理装置内部のWebサーバとWebブラウザ間の通信と、情報処理装置内部のWebサーバと情報処理装置外部のWebサーバ間の通信プロトコルはそれぞれ別の要因によって決定される。
【0007】
一方、Webブラウザは、実際にWebブラウザ自身が通信中の相手先との通信状態を表示している。例えば、Webブラウザのアドレスバーに通信中の相手先のURL文字列を”http://abc.com/”、”https://def.com/”といったように表示している。更に、Webブラウザと通信中の相手先との通信プロトコルがHTTPSであった場合には、鍵アイコンを表示してセキュアな通信状態であることを示している。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】特開2008−158695号公報
【発明の概要】
【発明が解決しようとする課題】
【0009】
特許文献1の場合、情報処理装置のWebブラウザは情報処理装置内部のWebサーバ機能と通信することになる。よって、情報処理装置のWebブラウザを操作するユーザは、情報処理装置内部のWebサーバ機能との通信状態(例えば、URL、通信プロトコル等)を確認することはできる。
【0010】
しかしながら、情報処理装置のWebブラウザを操作するユーザが、情報処理装置の外部にあるWebサーバと、情報処理装置内部のWebサーバを介して通信を行う場合に問題が起こる。それは、上述のような場合であっても、情報処理装置のWebブラウザは情報処理装置内部のWebサーバと通信を行うため、Webブラウザが表示する通信状態は、情報処理装置内部のWebサーバとの通信状態ということになる。結果、ユーザは、情報処理装置外部のWebサーバとの通信状態を確認できない。
【0011】
本発明の目的の1つは、ユーザに対し、情報処理装置外部のWebサーバとの通信状態を適切に示すことが可能な画像形成装置を提供することである。
【課題を解決するための手段】
【0012】
本発明の一実施系に係る画像形成装置は、外部サーバと通信可能な画像形成装置であって、画面情報を提供するサーバに設定されている通信プロトコルに従い該サーバと通信し、前記画面情報を受信し画面を表示するブラウザと、Webサーバと、を有し、前記Webサーバは、前記外部サーバからデータを受信する外部通信手段と、前記外部通信手段が前記外部サーバと通信を行う際に、データを暗号化し通信を行う暗号化通信プロトコルを用いて通信を行っているか否かを判断する判断手段と、前記判断手段により暗号化通信プロトコルを用いて通信を行っていると判断された場合は、暗号化通信プロトコルを用いて通信を行っている旨と、前記外部サーバから受信したデータを基に生成された画面情報を前記ブラウザに送信する内部通信手段と、を有し、前記ブラウザは、前記内部通信手段により送信された、暗号化通信プロトコルを用いて通信を行っている旨を受信した場合は、前記ブラウザが前記Webサーバと通信を行う際に暗号化通信プロトコルを用いて通信を行っていることを示す第1のアイコンとは異なる、前記Webサーバが前記外部サーバと通信を行う際に暗号化通信プロトコルを用いて通信を行っていることを示す第2のアイコンが表示されるよう、前記画面情報を基に画面を表示する表示手段を有し、前記画像形成装置は、さらに、前記表示手段により表示された画面を介して印刷が指示された場合、印刷対象のデータを外部サーバから受信し、受信したデータを印刷データに変換し、変換した印刷データを印刷する印刷手段を有することを特徴とする。
【発明の効果】
【0013】
情報処理装置のWebブラウザと情報処理装置外部のWebサーバとを仲介する形で情報処理装置内部のWebサーバ機能が存在する場合でも、ユーザに適切に情報処理装置外部のWebサーバとの通信状態を示すことが可能となる。
【図面の簡単な説明】
【0014】
【図1】本発明の第1の実施例における情報処理システムの全体図である。
【図2】本発明の第1の実施例におけるMFP101の構成を示すブロック図である。
【図3】本発明の第1の実施例におけるWebサーバ102の構成を示すブロック図である。
【図4】本発明の第1の実施例における情報処理システムのソフトウェア構成を示す図である。
【図5】本発明の第1の実施例におけるMFP101のWebブラウザ400の動作を説明するフローチャートである。
【図6】本発明の第1の実施例におけるMFP101内部のサーブレットアプリケーション410の動作を説明するフローチャートである。
【図7】本発明の第1の実施例におけるMFP101のWebブラウザ400の表示例を説明する図である。
【図8】本発明の第2の実施例における情報処理システムの全体図である。
【図9】本発明の第2の実施例における情報処理システムのソフトウェア構成を示す図である。
【図10】本発明の第2の実施例におけるMFP101のWebブラウザ400の動作を説明するフローチャートである。
【図11】本発明の第2の実施例におけるMFP101内部のサーブレットアプリケーション410の動作を説明するフローチャートである。
【図12】本発明の第2の実施例におけるMFP101のWebブラウザ400の表示例を説明する図である。
【発明を実施するための形態】
【0015】
本発明では、次のような課題を解決することができる。例えば、MFPのWebブラウザとMFP内部のWebサーバとの間の通信プロトコルがHTTPで、かつ、MFP内部のWebサーバとMFP外部のWebサーバとの間の通信がHTTPSの場合を考える。この場合、MFP外部のWebサーバとの通信プロトコルはHTTPSが使用されており、セキュアな通信状態が保たれている。しかし、それに関わらず、MFPのWebブラウザが表示する通信状態はHTTPとなっており、ユーザは困惑する。
【0016】
また、その他の例として、MFPのWebブラウザとMFP内部のWebサーバとの間の通信プロトコルがHTTPSで、かつ、MFP内部のWebサーバとMFP外部のWebサーバとの間の通信がHTTPの場合を考える。この場合、MFP外部のWebサーバとの通信プロトコルはHTTPが使用されているはずであるにも関わらず、MFPのWebブラウザが表示する通信状態はHTTPSとなっている。このとき、MFPのWebブラウザを利用するユーザにセキュアな通信状態が保たれているような誤解を招く可能性がある。
【0017】
また、その他の例として、MFPのWebブラウザとMFP内部のWebサーバとの間の通信プロトコルがHTTPSで、かつ、MFP内部のWebサーバとMFP外部のWebサーバとの間の通信がHTTPSの場合を考える。この場合、ユーザはMFP外部のWebサーバとの通信プロトコルはHTTPSが使用されており、セキュアな通信状態が保たれており、さらに、MFPのWebブラウザが表示する通信状態はHTTPSとなっており一見問題はない。しかしながら、Webブラウザが表示するサーバ証明書に問題がある。Webブラウザは、通信プロトコルがHTTPSの場合、通信相手のWebサーバのサーバ証明書を表示する機能も持っている。MFPのユーザが、Webブラウザの機能を利用して通信中のサーバ証明書を表示した際、表示されるサーバ証明書はMFP内部のWebサーバとの通信時に使用しているサーバ証明書になる。MFPのユーザが、MFP外部のWebサーバとの通信時に用いられるサーバ証明書の情報を確認する方法が考えられていない。
【0018】
上述の課題は、MFPのような操作部の表示領域が制限され、かつ、Webブラウザ操作中はWebブラウザ以外のアプリケーションの画面表示が困難な場合に顕在化する。
【0019】
本発明では、上述の課題を解決可能な画像形成装置、画像形成装置制御方法、およびプログラムについて説明する。
【0020】
以下、図面を参照して本発明の実施の形態を詳しく説明する。なお、以下の実施の形態は特許請求の範囲に関わる発明を限定するものでなく、また実施の形態で説明されている特徴の組み合わせのすべてが発明の解決手段に必須のものとは限らない。
【0021】
(第1の実施例)
図1は、本発明の第1の実施例における情報処理システムの全体図である。LAN110にはMFP101およびWebサーバ102が互いに通信可能に接続されている。なお、LAN110は説明のためLAN(ローカル・エリア・ネットワーク)と記載しているが、インターネットなどの他のネットワークでも構わない。
【0022】
図2はMFP101の構成を示すブロック図である。CPU211を含む制御部210は、MFP101全体の動作を制御する。CPU211は、ROM212に記憶された制御プログラムを読み出して読取制御や送信制御などの各種制御を行う。RAM213は、CPU211の主メモリ、ワークエリア等の一時記憶領域として用いられる。
【0023】
HDD214は、画像データや各種プログラム、或いは各種情報テーブルを記憶する。操作部I/F215は、操作部219と制御部210と接続する。操作部219には、タッチパネル機能を有する液晶表示部やキーボードなどが備えられている。また、MFP101には後述するWebブラウザ400が備えられている。MFP101のWebブラウザ400はWebサーバ102から受信したHTMLファイルを解析し、受信したHTMLファイルの記述に基づく操作画面を操作部219の液晶表示部に表示する。ここで、MFP101のWebブラウザ400が受信するHTMLファイルは必ずしもWebサーバ102から受信したものでなくても構わない。後述のMFP101内部のサーブレットアプリケーション410から受信したHTMLファイルでも構わない。
【0024】
プリンタI/F216は、プリンタ220と制御部210とを接続する。プリンタ220で印刷すべき画像データはプリンタI/F216を介して制御部210から転送され、プリンタ220において記憶媒体上に印刷される。
【0025】
スキャナI/F217は、スキャナ221と制御部210とを接続する。スキャナ221は、原稿上の画像を読み取って画像データを生成し、スキャナI/F217を介して制御部210に入力する。
【0026】
ネットワークI/F218は、制御部210(MFP101)をLAN110に接続する。ネットワークI/F218は、LAN110上の外部装置(例えば、Webサーバ102)に画像データや情報を送信したり、LAN110上の外部装置から各種情報を受信したりする。
【0027】
図3は、Webサーバ102の構成を示すブロック図である。CPU311を含む制御部310は、Webサーバ102全体の動作を制御する。CPU311は、ROM312に記憶された制御プログラムを読み出して各種制御処理を実行する。RAM313は、CPU311の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD314は、画像データや各種プログラム、或いは各種情報テーブルを記憶する。
【0028】
ネットワークI/F315は、制御部310(Webサーバ102)をLAN110に接続する。ネットワークI/F315は、LAN110上の他の装置との間で各種情報を送受信する。
【0029】
図4は、情報処理システム全体のソフトウェア構成を説明するための図である。図4に示す各構成図は、MFP101/Webサーバ102のそれぞれが有しているCPU211、CPU311が制御プログラムを実行することにより実現される。
【0030】
MFP101は、Webブラウザ400、サーブレットアプリケーション410を有している。Webブラウザ400、サーブレットアプリケーション410のそれぞれはMFP101が有しているCPU211が制御プログラムを実行することによって実現される。なお、Webブラウザ400はWebサーバ102およびサーブレットアプリケーション410のコンテンツを表示するものに限定するものではない。同時に、Webサーバ102、サーブレットアプリケーション410もHTTPプロトコルにしたがってリクエスト/レスポンスを送受信するものに限定するものではない。Webブラウザ400は、任意のサーバと通信を行うことによってコンテンツを取得し、画面に表示するといった機能を有するものであればよい。
【0031】
Webブラウザ400は、通信部401、証明書表示部402、証明書格納部403、証明書管理DB404、暗号化通信状態表示部405、画面解析・表示部406を有する。
【0032】
通信部401は、HTTPプロトコル/HTTPSプロトコルにしたがって、サーブレットアプリケーション410の内部通信部412と通信する。通信プロトコルは、内部通信部412を有するサーブレットアプリケーション410に設定されている通信プロトコルによって決定される。この設定は、MFP101の設定画面からユーザが設定した通信プロトコルである。通信部401は、Weブラウザ400の画面解析・表示部406により表示される操作画面を介して入力された情報を、後述のサーブレットアプリケーション410に対するリクエストとして送信する。また、通信部401は、サーブレットアプリケーション410から送信されるレスポンス(処理結果)を受信する。なお、HTTPSプロトコルはデータを暗号化して通信を行う暗号化通信プロトコルの例であり、HTTPプロトコルは暗号化通信プロトコルではない通信プロトコルの例である。
【0033】
証明書表示部402は、サーブレットアプリケーション410が、MFP外部のWebサーバ102が有するWebアプリケーション420とHTTPSプロトコルで通信中の場合、通信時に使用されているサーバ証明書の情報を表示する。より具体的には、画面解析・表示部406からの依頼により、証明書表示部402は、証明書格納部403にサーバ証明書情報取得を依頼する。証明書格納部403からサーバ証明書情報を受信した証明書表示部402は、画面解析・表示部406にサーバ証明書を送信する。
【0034】
証明書格納部403は、暗号化通信状態表示部405からの依頼によって、サーブレットアプリケーション410とWebアプリケーション420とがHTTPSプロトコルで通信しているか否かを判断する。判断の結果、HTTPSプロトコルで通信中の場合、証明書格納部403は通信時に使用されているサーバ証明書の情報を証明書管理DB404に格納する。また、証明書格納部403は、証明書表示部402からの依頼によって、前記格納したサーバ証明書を証明書管理DB404から読み出し、証明書表示部402に送信する。なお、サーバ証明書は、Webサーバ102のメモリに格納されている。
【0035】
暗号化通信状態表示部405は、サーブレットアプリケーション410の暗号化通信通知部414からの暗号化通信通知を受信して、サーブレットアプリケーション410とWebアプリケーション420との通信状態がHTTPSであるか否かを判断する。通信状態がHTTPSであった場合、暗号化通信状態表示部405は画面解析・表示部406にサーブレットアプリケーション410とWebアプリケーション420との通信状態表示を依頼する。更に、暗号化通信状態表示部405は暗号化通信通知に含まれるサーバ証明書を取得して、証明書格納部403にサーバ証明書の格納を依頼する。
【0036】
画面解析・表示部406は、通信部401が受信したレスポンス中に含まれるHTMLファイルを解析し、解析結果に基づいて操作部219に操作画面を表示する。その際、画面解析・表示部406は暗号化通信状態表示部405からの依頼を受信している場合、暗号化通信状態表示を実行する。また更に、画面解析・表示部406は、サーバ証明書表示指示をユーザ入力により受信し、証明書表示部402にサーバ証明書情報取得を依頼する。依頼の結果、証明書表示部402からサーバ証明書情報を取得した画面解析・表示部406は、操作部219にサーバ証明書情報を表示する。
【0037】
図7は画面解析・表示部406が操作部219に表示している画面例であって、暗号化通信状態表示部405からの依頼によって、706にサーブレットアプリケーション410とWebアプリケーション420との通信状態を表示している様子を示している。Webブラウザ400と直接通信を行っているサーブレットアプリケーション410との通信状態は、通常705の欄に表示される。図7では、705とは個別に706でサーブレットアプリケーション410とWebアプリケーション420との通信状態を表示している様子を示している。このように、暗号化通信プロトコルが用いられているか否かを、内部通信と、外部通信のように分けて表示してあげることで、ユーザは適切に通信状態を把握することができる。なお、705が第1のアイコンに相当し、706が第2のアイコンに相当する。
【0038】
サーブレットアプリケーション410は、外部通信部411、内部通信部412、画面生成部413、暗号化通信通知部414、証明書取得部415を有する。サーブレットアプリケーション410は、Webアプリケーション420同様、Webブラウザ400から送信されるリクエストに対して処理結果をレスポンスとして返信するMFP内部のWebサーバである。
【0039】
外部通信部411は、内部通信部412からの依頼によってWebアプリケーション420へリクエストを送信し、Webアプリケーション420からのレスポンスを受信する。そして、外部通信部411は、Webアプリケーション420から受信したレスポンスデータを画面生成部413へ送信する。更に、外部通信部411は、Webアプリケーション420とのリクエスト/レスポンス送受信時の通信プロトコルがHTTPもしくはHTTPSのいずれかであるかを判断する。そして、外部通信部411は、判断結果を暗号化通信通知部414と証明書取得部415に通知する。
【0040】
内部通信部412は、Webブラウザ400の通信部401から送信されるリクエストを受信し、外部通信部411へWebアプリケーション420へのリクエスト送信を依頼する。更に、後述の画面生成部413からの依頼によってレスポンスを生成し、Webブラウザ400の通信部401へ送信(返信)する。
【0041】
画面生成部413は、前述の外部通信部411から送信されたWebアプリケーション420からのレスポンスのデータを解析し、HTMLファイル、および画像などのコンテンツを取得する。画面生成部413は、取得したHTMLファイルおよび画像などのコンテンツを解析し、MFPの操作部219上で表示するのに適した画面情報、即ち、HTMLファイルを生成する。そして、画面生成部413は、生成されたHTMLファイルとともに内部通信部412へレスポンス送信を依頼する。例えば、画面生成部413は、外部サーバに保存されているデータ一覧を示す一覧画面を生成する。この一覧画面に表示されているデータの中から印刷対象のデータが選択され、外部通信部411は、そのデータを外部サーバから取得する。なお、取得したデータは、MFP101により印刷データに変換された、変換された印刷データは記録用紙に印刷される。
【0042】
暗号化通信通知部414は、外部通信部411からの通知を受信して、Webブラウザ400の暗号化通信状態表示部405に対し、通信状態がHTTPSもしくはHTTPである旨を通知する。更に、暗号化通信通知部414は、証明書取得部415からサーバ証明書情報を取得して暗号化通信状態表示部405に送信する。
【0043】
証明書取得部415は、外部通信部411からの通知を受信して、Webブラウザ400の暗号化通信状態表示部405に通知した通信状態がHTTPSであるか否かを判断する。判断の結果HTTPSであった場合、証明書取得部415は、外部通信部411とWebアプリケーション420との間の通信データを解析し、通信時に使用しているサーバ証明書を取得する。証明書取得部415は、取得したサーバ証明書情報を暗号化通信通部414へ送信する。
【0044】
Webサーバ102は、Webアプリケーション420を有する。Webアプリケーション420は、任意のクライアントから送信されるリクエストを受信して、リクエストに応じて処理を実行する。Webアプリケーション420は、前述のリクエストに対する処理の実行後、レスポンスを生成し、リクエストを送信したクライアントに返信する。Webサーバ102は、上述のように、例えば、画面情報を要求元に提供する。なお、実施例1では、Webアプリケーション420により保存されたデータをMFP101に送信し、そのデータをMFP101が印刷データへ変換し印刷するWebサービス連携を想定している。よって、Webサーバ102が、外部通信部411のレスポンスとして返すデータは、Webアプリケーション420により保存されたデータ一覧の情報と、その一覧の中から印刷対象として指定されたデータの実データの内、いずれか1つということになる。
【0045】
図5は、MFP101のWebブラウザ400の動作を説明するフローチャートである。図5のフローチャートに示す各動作(ステップ)はMFP101のCPU211がHDD214に記憶された制御プログラムを実行することにより実現される。
【0046】
ステップS501において、Webブラウザ400の通信部401が、Webブラウザ400の初期ページ表示のためのリクエストを、サーブレットアプリケーション410へ送信する。なお、ここで送信するリクエストは、初期ページ表示以降、Weブラウザ400の画面解析・表示部406で表示した操作画面を介して入力される情報であっても構わない。
【0047】
ステップS502において、暗号化通信状態表示部405は、サーブレットアプリケーション410の暗号化通信通知部414からの暗号化通信通知を受信し、暗号化通知受信フラグを”TRUE”にセットする。暗号化通信通知の詳細については、後述する。サーブレットアプリケーション410からの暗号化通信通知を受信しない場合、暗号化通知受信フラグを”FALSE”にセットする。なお、暗号化通信状態表示部405は、暗号化通信通知の送信元がMFP外部のWebアプリケーションか、MFP内部のサーブレットアプリケーション410かを判断してもよい。このことによって、暗号化通信通知の送信元がMFP外部のWebアプリケーションが送信元だった場合に、暗号化通信状態表示部405が暗号化通信通知を拒否し、MFP外部からの悪意ある通知によって暗号化通信状態の表示を制御されることを防いでもよい。
【0048】
ステップS503において、暗号化通信状態表示部405は、暗号化通知フラグが”TRUE”である場合、暗号化通信通知を参照しサーブレットアプリケーション410とWebアプリケーション420との通信状態がHTTPSか否かを判断する。HTTPSであった場合、ステップS504へ進む。HTTPSでなかった場合、ステップS507へ進む。
【0049】
暗号化通知フラグが”FALSE”である場合、暗号化通信状態表示部405はサーブレットアプリケーション410とWebアプリケーション420との通信状態がHTTPであると判断する。暗号化通知フラグが”FALSE”である場合、Webブラウザ400においてMFP外部のWebサーバと通信しないサーブレットアプリケーションと同様の表示が可能となる。つまり、サーブレットアプリケーション410から暗号化通信通知を送信してこない場合、Webブラウザは、暗号化通信状態を示す705を表示しない。
【0050】
ステップS504において、暗号化通信状態表示部405は、暗号化通信通知にサーバ証明書が含まれるか否かを判断する。暗号化通信通知にサーバ証明書が含まれる場合、ステップS505へ進む。暗号化通信通知にサーバ証明書が含まれない場合、ステップS506へ進む。
【0051】
ステップS505において、サーバ証明書が含まれる場合、暗号化通信状態表示部405は、サーバ証明書を取得して証明書格納部403にサーバ証明書の格納を依頼する。前記暗号化通信状態表示部405からの依頼を受信した証明書格納部403は、暗号化通信通知に含まれるサーバ証明書を証明書管理DB404に格納する。
【0052】
ステップS506において、暗号化通信状態表示部405は、画面解析・表示部406にサーブレットアプリケーション410とWebアプリケーション420との通信状態表示を依頼する。暗号化通信状態表示部405からの依頼を受信した画面解析・表示部406は、図7の706のように暗号化通信状態を操作部219に表示する。
【0053】
ステップS507において、サーブレットアプリケーション410からのレスポンスを通信部401が受信する。ステップS508において、画面解析・表示部406は、通信部401が受信したレスポンス中に含まれるHTMLファイルを解析し、解析結果に基づいて操作部219に操作画面を表示する。
【0054】
ステップS509において、画面解析・表示部406は、サーバ証明書表示指示をユーザ入力により受信しているか否か判断し、受信している場合はステップS510へ進む。即ち、画面解析・表示部406は、706のアイコンが押下されたか否かを判断する。受信していない場合は一連のリクエスト/レスポンスの送受信処理を終了する。
【0055】
ステップS510において、画面解析・表示部406は、証明書表示部402にサーバ証明書情報取得を依頼する。依頼を受信した証明書表示部402は、証明書格納部403にサーバ証明書情報取得を依頼する。依頼を受信した証明書管理部403は、格納したサーバ証明書を証明書管理DB404から読み出し、証明書表示部402に送信する。証明書表示部402は、画面解析・表示部406へサーバ証明書情報を送信し、サーバ証明書情報を取得した画面解析・表示部406は操作部219にサーバ証明書情報を表示する。
【0056】
図6は、MFP101内部のサーブレットアプリケーション410の動作を説明するフローチャートである。図6のフローチャートに示す各動作(ステップ)はMFP101のCPU211がHDD214に記憶された制御プログラムを実行することにより実現される。
【0057】
ステップS601において、内部通信部412が、Webブラウザ400の通信部401から送信されるリクエストを受信し、外部通信部411へWebアプリケーション420に対するリクエスト送信を依頼する。
【0058】
ステップS602において、依頼を受信した外部通信部411が、Webアプリケーション420へリクエストの送信を開始する。外部通信部411は、Webアプリケーション420との通信プロトコルがHTTPかHTTPSか判断し、HTTPSの場合、Webアプリケーション420とSSL暗号化通信を開始する。このとき、Webアプリケーション420とのリクエスト通信が初回通信の場合、Webアプリケーション420からサーバ証明書が送付されるので、外部通信部411はサーバ証明書を受信する。
【0059】
ステップS603において、外部通信部411は、Webアプリケーション420とのリクエスト通信が初回通信か否かを判断する。初回通信の場合、ステップS604へ進む。二回目以降のリクエスト送信の場合、ステップS605へ進む。
【0060】
ステップS604において、証明書取得部415は、外部通信部411からの通知を受信し、通信状態がHTTPSであった場合には、外部通信部411とWebアプリケーション420間での通信データを解析し、通信時に使用しているサーバ証明書を取得する。証明書取得部415は、取得したサーバ証明書情報を暗号化通信通部414へ送信する。
【0061】
ステップS605において、外部通信部411は、Webアプリケーション420との通信プロトコルがHTTPかHTTPSかを暗号化通信通知部414と証明書取得部415に通知する。暗号化通信通知部414は、外部通信部411からの通知を受信して、Webブラウザ400の暗号化通信状態表示部405に通信状態がHTTPSもしくはHTTPであることを通知するために、暗号化通信通知を送信する。更に、暗号化通信通知部414は、ステップS603の判断結果が初回通信の場合、証明書取得部415からサーバ証明書情報を取得してサーバ証明書情報も暗号化通信通知に含めて、暗号化通信状態表示部405に送信する。
【0062】
ステップS606において、外部通信部411はレスポンスを受信する。そして、外部通信部411は、Webアプリケーション420から受信したレスポンスを画面生成部413へ送信する。画面生成部413は、上述の外部通信部411から送信されたWebアプリケーション420からのレスポンスを解析し、HTMLファイルおよび画像などのコンテンツを取得する。画面生成部413は更に前記取得したHTMLファイルおよび画像などのコンテンツを解析し、MFPの操作部219上で表示するのに適したHTMLファイルを生成する。
【0063】
ステップS607において、画面生成部413は上述した生成済みのHTMLファイルとともに内部通信部412へレスポンス送信を依頼する。依頼を受信した内部通信部412は、レスポンスを生成し、Webブラウザ400の通信部401へ送信(返信)する。
【0064】
以上の通り、MFPのWebブラウザとMFP外部のWebサーバとを仲介する形でMFP内部のサーブレットアプリケーション(Webサーバ機能)が存在する場合でも、Webブラウザに対して適切に通信状態を通知することが可能となる。このことによって、MFP内の内部的な通信とMFP外部との通信で通信状態が異なっていても、ユーザに適切にMFP外部のWebサーバとの通信状態を示すことが可能となる。また、Webブラウザに対する通信状態の通知にはサーバ証明書情報も含まれるため、MFP外部のWebサーバとの通信状態だけでなく、MFP外部のWebサーバのサーバ証明書情報をユーザの指示により適切に示すことも可能となる。
【0065】
(第2の実施例)
図8は、本発明の第2の実施例における情報処理システムの全体図である。LAN110には、MFP101、Webサーバ102、Webサーバ800が互いに通信可能に接続されている。図8のように、MFP101内のサーブレットアプリケーション410が複数のWebサーバ内のWebアプリケーションと通信を行う場合、それぞれのWebアプリケーション毎に通信プロトコルが異なる場合がある。そのような場合、本発明の第1の実施例ではそれぞれのWebアプリケーションとの通信プロトコルの状態をユーザに示すことができない。そこで、本発明の第2の実施例では、MFP101内のサーブレットアプリケーション410が、複数のWebアプリケーションとの通信プロトコルの状態をWebブラウザに通知し、ユーザに示すことを可能とする形態について説明する。
【0066】
図9は、情報処理システム全体のソフトウェア構成を説明するための図である。図9に示す各構成図は、MFP101/Webサーバ102のそれぞれが有しているCPU211、CPU311が制御プログラムを実行することにより実現される。MFP101は、Webブラウザ900、サーブレットアプリケーション910を有している。Webブラウザ900、サーブレットアプリケーション910のそれぞれはMFP101が有しているCPU211が制御プログラムを実行することによって実現される。
【0067】
なお、図4と同様、Webブラウザ900は、Webサーバ102およびサーブレットアプリケーション910のコンテンツを表示するものに限定するものではない。同時に、Webサーバ102、サーブレットアプリケーション910もHTTPプロトコルにしたがってリクエスト/レスポンスを送受信するものに限定するものではない。Webブラウザ900は、任意のサーバと通信を行うことによってコンテンツを取得し、画面に表示するといった機能を有するものであればよい。また、図9では、外部のWebサーバは2つであるが、Webサーバが2つ以上の構成でも構わない。Webブラウザ900は、通信部901、証明書表示部902、証明書格納部903、証明書管理DB904、暗号化通信状態表示部905、画面解析・表示部906を有する。
【0068】
通信部901は、HTTPプロトコル/HTTPSプロトコルにしたがって、サーブレットアプリケーション910の内部通信部912と通信する。より具体的には、通信部901は、Weブラウザ900の画面解析・表示部906で表示した操作画面を介して入力される情報を後述のサーブレットアプリケーション910に対するリクエストとして送信する。また、通信部901は、サーブレットアプリケーション910から送信されるレスポンス(処理結果)を受信する。
【0069】
証明書表示部902は、サーブレットアプリケーション910がWebアプリケーション420、および/またはWebアプリケーション930と、HTTPSプロトコルで通信中の場合、通信時に使用されているサーバ証明書情報を表示する。より具体的には、画面解析・表示部906からの依頼により、証明書表示部902は、証明書格納部903にサーバ証明書情報取得を依頼する。証明書格納部903からサーバ証明書情報を受信した証明書表示部902は画面解析・表示部906にサーバ証明書を送信する。
【0070】
証明書格納部903は、暗号化通信状態表示部905からの依頼によって、通信時に使用されているサーバ証明書情報を証明書管理DB904に格納する。証明書格納部903がサーバ証明書情報を格納するのは、サーブレットアプリケーション910とHTTPSプロトコルで通信中の少なくとも1つ以上の外部サーバとHTTPSプロトコルで通信中の場合のみである。また、証明書格納部903は、証明書表示部902からの依頼によって、格納したサーバ証明書を証明書管理DB904から読み出し、証明書表示部902に送信する。
【0071】
暗号化通信状態表示部905は、暗号化通信通知部914からの暗号化通信通知を受信する。暗号化通信通知受信をトリガとして、暗号化通信状態表示部905は、Webアプリケーション420、および/または930との通信状態がHTTPSであるか否かを判断する。そして、暗号化通信状態表示部905は画面解析・表示部906に暗号化通信の通信状態表示を依頼する。暗号化通信状態表示部905は、暗号化通信通知に含まれるサーバ証明書を取得して、証明書格納部903にサーバ証明書の格納を依頼する。
【0072】
画面解析・表示部906は、通信部901が受信したレスポンス中に含まれるHTMLファイルを解析し、解析結果に基づいて操作部219に操作画面を表示する。その際、画面解析・表示部906は暗号化通信状態表示部905からの依頼を受信している場合、暗号化通信状態表示を実行する。また更に、画面解析・表示部906は、サーバ証明書表示指示をユーザ入力により受信し、証明書表示部902にサーバ証明書情報取得を依頼する。依頼の結果、証明書表示部902からサーバ証明書情報を取得した画面解析・表示部906は操作部219にサーバ証明書情報を表示する。
【0073】
図12は、画面解析・表示部906が操作部219に表示している画面例である。図12では、暗号化通信状態表示部905からの依頼によって、706にサーブレットアプリケーション410とWebアプリケーション420、930との通信状態を表示している様子を示している。通常、Webブラウザ400と直接通信を行っているサーブレットアプリケーション410との通信状態が705に表示される。図12では、705とは個別に706、1201で、サーブレットアプリケーション410と、Webアプリケーション420、および/またはWebアプリケーション930との通信状態を表示している様子を示している。また、Webブラウザと、Webアプリケーション420の通信状態も表示している。サービスAが410、サービスBが420、サービスCが930に相当する。
【0074】
サーブレットアプリケーション910は、外部通信部911、内部通信部912、画面生成部913、暗号化通信通知部914、証明書取得部915、外部通信管理部916を有する。サーブレットアプリケーション910は、Webサーバ102のWebアプリケーション420同様、Webブラウザ400から送信されるリクエストに対して処理結果をレスポンスとして返信するMFP内部のWebサーバ機能である。
【0075】
外部通信部911は、後述の内部通信部912からの依頼によってWebアプリケーション920およびWebアプリケーション930へリクエストを送信し、Webアプリケーション420およびWebアプリケーション930からのレスポンスを受信する。そして、外部通信部911は、Webアプリケーション420およびWebアプリケーション930からから受信したレスポンスを画面生成部413へ送信する。更に、外部通信部911はWebアプリケーション920およびWebアプリケーション930とのリクエスト/レスポンス送受信時の通信プロトコルがHTTPもしくはHTTPSのいずれかであるかを判断する。そして、外部通信部911は、判断結果を暗号化通信通知部414と証明書取得部415に通知する。更に外部通信部911はWebアプリケーション920およびWebアプリケーション930それぞれとの通信プロトコルがHTTPもしくはHTTPSのいずれかであるかを外部通信管理部916へ通知する。
【0076】
内部通信部912は、Webブラウザ900の通信部901から送信されるリクエストを受信し、外部通信部911へWebアプリケーション920およびWebアプリケーション930へのリクエスト送信を依頼する。更に、後述の画面生成部913からの依頼によってレスポンスを生成し、Webブラウザ900の通信部901へ送信(返信)する。
【0077】
画面生成部913は、前述の外部通信部911から送信されたWebアプリケーション920およびWebアプリケーション930からのレスポンスを解析し、HTMLファイルおよび画像などのコンテンツを取得する。画面生成部913は更に前記取得したHTMLファイルおよび画像などのコンテンツを解析し、MFPの操作部219上で表示するのに適したHTMLファイルを生成する。そして、画面生成部913は前述の生成したHTMLファイルとともに内部通信部912へレスポンス送信を依頼する。
【0078】
暗号化通信通知部914は外部通信部911からの通知を受信して、Webブラウザ900の暗号化通信状態表示部905に通信状態がHTTPSもしくはHTTPであることを通知する。このとき、Webアプリケーション920およびWebアプリケーション930いずれかの通信状態がHTTPSであれば、暗号化通信通知部914はWebブラウザ900の暗号化通信状態表示部905に通信状態がHTTPSと通知する。Webアプリケーション920およびWebアプリケーション930両方の通信状態がHTTPであれば、暗号化通信通知部914はWebブラウザ900の暗号化通信状態表示部905に通信状態がHTTPと通知する。更に、暗号化通信通知部914は、証明書取得部915からサーバ証明書情報を取得して暗号化通信状態表示部905に送信する。
【0079】
証明書取得部915は外部通信部911からの通知を受信して、Webブラウザ900の暗号化通信状態表示部905に通信した通信状態がHTTPSか否かを判断する。判断結果がHTTPSであった場合、証明書取得部915は外部通信部911とWebアプリケーション420およびWebアプリケーション930間での通信データを解析し、通信時に使用しているサーバ証明書を取得する。このとき、Webアプリケーション420およびWebアプリケーション930両方の通信状態がHTTPSであれば、両方のサーバ証明書を取得する。証明書取得部915は取得したサーバ証明書情報を暗号化通信通部914へ送信する。
【0080】
Webサーバ102は、Webアプリケーション420を有する。Webアプリケーション420は任意のクライアントから送信されるリクエストを受信して、リクエストに応じて処理を実行する。Webアプリケーション420は、前述のリクエストに対する処理の実行後、レスポンスを生成し、リクエストを送信したクライアントに返信する。
【0081】
同様に、Webサーバ800は、Webアプリケーション930を有する。Webアプリケーション930は任意のクライアントから送信されるリクエストを受信して、リクエストに応じて処理を実行する。Webアプリケーション420は、前述のリクエストに対する処理の実行後、レスポンスを生成し、リクエストを送信したクライアントに返信する。
【0082】
図10は、MFP101のWebブラウザ900の動作を説明するフローチャートである。図10のフローチャートに示す各動作(ステップ)はMFP101のCPU211がHDD214に記憶された制御プログラムを実行することにより実現される。
【0083】
ステップS1001において、Webブラウザ900の通信部901がWebブラウザ900の初期ページ表示のためのリクエストをサーブレットアプリケーション910へ送信する。なお、ここで送信するリクエストは初期ページ表示以降、Weブラウザ900の画面解析・表示部906で表示した操作画面を介して入力される情報であっても構わない。
【0084】
ステップS1002において、暗号化通信状態表示部905は、サーブレットアプリケーション910の暗号化通信通知部914からの暗号化通信通知を受信し、暗号化通知受信フラグを”TRUE”にセットする。サーブレットアプリケーション910からの暗号化通信通知を受信しない場合、暗号化通知受信フラグを”FALSE”にセットする。なお、暗号化通信状態表示部905は、暗号化通信通知の送信元がMFP外部のWebアプリケーションか、MFP内部のサーブレットアプリケーション910かを判断してもよい。
【0085】
ステップS1003において、暗号化通信状態表示部905は、暗号化通知フラグが”TRUE”である場合、暗号化通信通知を参照しサーブレットアプリケーション910とWebアプリケーション420との通信状態がHTTPSか否かを判断する。暗号化通知フラグが”FALSE”である場合、暗号化通信状態表示部905はサーブレットアプリケーション910とWebアプリケーション420との通信状態がHTTPであると判断する。
【0086】
HTTPSであった場合、ステップS1004へ進む。HTTPSでなかった場合、ステップS1008へ進む。ステップS1004において、暗号化通信状態表示部1005は、暗号化通信通知にサーバ証明書が含まれるか否かを判断する。暗号化通信通知にサーバ証明書が含まれる場合、ステップS1005へ進む。暗号化通信通知にサーバ証明書が含まれない場合、ステップS1007へ進む。
【0087】
ステップS1005において、すべてのサーバ証明書が格納されたか否かを判断する。すべてのサーバ証明書が格納された場合はステップS1007へ進む。未格納のサーバ証明書が存在する場合は、ステップS1006へ進む。
【0088】
ステップS1006において、暗号化通信状態表示部905は、サーバ証明書を取得して証明書格納部903にサーバ証明書の格納を依頼する。前記暗号化通信状態表示部905からの依頼を受信した証明書格納部903は、暗号化通信通知に含まれるサーバ証明書を証明書管理DB404に格納する。
【0089】
ステップS1007において、暗号化通信状態表示部905は画面解析・表示部906にサーブレットアプリケーション410とWebアプリケーション420およびWebアプリケーション930との通信状態表示を依頼する。暗号化通信状態表示部905からの依頼を受信した画面解析・表示部906は、図12の706のように暗号化通信状態を操作部219に表示する。
【0090】
ステップS1008において、サーブレットアプリケーション410からのレスポンスを通信部901が受信する。
【0091】
ステップS1009において、画面解析・表示部906は、通信部901が受信したレスポンス中に含まれるHTMLファイルを解析し、解析結果に基づいて操作部219に操作画面を表示する。
【0092】
ステップS1010において、画面解析・表示部906は、サーバ証明書表示指示をユーザ入力により受信しているか否か判断し、受信している場合はステップS1011へ進む。受信していない場合は一連のリクエスト/レスポンスの送受信処理を終了する。
【0093】
ステップS1011において、画面解析・表示部906は、証明書表示部902にユーザが指示したWebサーバのサーバ証明書情報取得を依頼する。依頼を受信した証明書表示部902は証明書格納部903にサーバ証明書情報取得を依頼する。更に依頼を受信した証明書管理部903は格納したサーバ証明書を証明書管理DB904から読み出し、証明書表示部902に送信する。最後に、証明書表示部902は画面解析・表示部906へサーバ証明書情報を送信し、サーバ証明書情報を取得した画面解析・表示部906は操作部219にサーバ証明書情報を表示する。
【0094】
図11は、MFP101内部のサーブレットアプリケーション910の動作を説明するフローチャートである。図11のフローチャートに示す各動作(ステップ)はMFP101のCPU211がHDD214に記憶された制御プログラムを実行することにより実現される。
【0095】
ステップS1101において、内部通信部912が、Webブラウザ900の通信部901から送信されるリクエストを受信し、外部通信部911へWebアプリケーション420およびWebアプリケーション930へのリクエスト送信を依頼する。
【0096】
ステップS1102において、前記依頼を受信した外部通信部911がWebアプリケーション420およびWebアプリケーション930へリクエストを送信を開始する。外部通信部911はWebアプリケーション420との通信プロトコルがHTTPかHTTPSか判断し、HTTPSの場合、Webアプリケーション420とSSL暗号化通信を開始する。このとき、Webアプリケーション420とのリクエスト通信が初回通信の場合、外部通信部411はWebアプリケーション420からサーバ証明書が送付されるため受信する。同様に、外部通信部911はWebアプリケーション930との通信プロトコルがHTTPかHTTPSか判断し、HTTPSの場合、Webアプリケーション930とSSL暗号化通信を開始する。このとき、Webアプリケーション930とのリクエスト通信が初回通信の場合、外部通信部911はWebアプリケーション930からサーバ証明書が送付されるため受信する。
【0097】
ステップS1103において、外部通信部911はWebアプリケーション420およびWebアプリケーション930とのリクエスト通信が初回通信か否かを判断する。初回通信の場合、ステップS604へ進む。二回目以降のリクエスト送信の場合、ステップS605へ進む。
【0098】
ステップS1104において、証明書取得部915は外部通信部911からの通知を受信して、外部通信部411とWebアプリケーション420間での通信状態がHTTPSか否かを判断する。判断結果がHTTPSであった場合には、証明書取得部915は外部通信部911とWebアプリケーション420間での通信データを解析し、通信時に使用しているサーバ証明書を取得する。同様に、証明書取得部915は、外部通信部911とWebアプリケーション930間での通信状態がHTTPSであった場合には、外部通信部911とWebアプリケーション930間での通信データを解析し、通信時に使用しているサーバ証明書を取得する。証明書取得部915は取得したサーバ証明書情報を暗号化通信通知部914へ送信する。
【0099】
ステップS1105において、外部通信部911はWebアプリケーション420およびWebアプリケーション930との通信プロトコルがHTTPかHTTPSかを外部通信管理部916と証明書取得部915に通知する。外部通信管理部916は外部通信部911からの通知を受信して、暗号化通信通知部914に外部通信部911とWebアプリケーション420間、外部通信部911とWebアプリケーション930間それぞれの通信状態を通知する。
【0100】
更に、暗号化通信通知部914は外部通信管理部916からの通知を受信して、Webブラウザ900の暗号化通信状態表示部905に通信状態がHTTPSもしくはHTTPであることを暗号化通信通知を送信して通知する。また更に、暗号化通信通知部914は、ステップS1003の判断結果が初回通信の場合、証明書取得部915からサーバ証明書情報を取得してサーバ証明書情報も暗号化通信通知に含め暗号化通信状態表示部905に送信する。
【0101】
ステップS1106において、外部通信部911はレスポンスを受信する。そして、外部通信部911は、Webアプリケーション420とWebアプリケーション930それぞれから受信したレスポンスを画面生成部913へ送信する。画面生成部913は、前述の外部通信部911から送信されたWebアプリケーション420からのレスポンスを解析し、HTMLファイルおよび画像などのコンテンツを取得する。また同様に、画面生成部913は、前述の外部通信部911から送信されたWebアプリケーション930からのレスポンスを解析し、HTMLファイルおよび画像などのコンテンツを取得する。
【0102】
画面生成部913は更に前記取得したHTMLファイルおよび画像などのコンテンツを解析し、MFPの操作部219上で表示するのに適したHTMLファイルを生成する。
【0103】
ステップS1107において、画面生成部913は前述の生成したHTMLファイルとともに内部通信部912へレスポンス送信を依頼する。前記依頼を受信した内部通信部912は、レスポンスを生成し、Webブラウザ400の通信部401へ送信(返信)する。
【0104】
以上の通り、本発明の第1の実施例においてWebサーバが複数存在する場合でも、Webブラウザに対して適切に通信状態を通知することが可能となる。このことによって、MFP外部との通信状態が相手先によって異なっていても、ユーザに適切にMFP外部のWebサーバとの通信状態を示すことが可能となる。
【0105】
更に、Webサーバがマッシュアップして他のWebサーバを仲介した場合でも、本実施例におけるサーブレットアプリケーション920の機能を適用して、ユーザに適切にMFP外部のWebサーバとの通信状態を示すことが可能となる。つまり、Webサーバが他のWebサーバとの通信状態の情報をサーブレットアプリケーション920に通知することが可能となる。このことによって、Webブラウザ900へ通信状態を通知して、ユーザに適切にMFP外部のWebサーバとの通信状態を示すことが可能となる。また、Webブラウザに対する通信状態の通知にはサーバ証明書情報も含まれるため、MFP外部のWebサーバとの通信状態だけでなく、サーバ証明書情報をユーザに指示により示すことも可能となる。
【0106】
(その他の実施例)
なお、本発明の目的は、以下の処理を実行することによっても達成される。すなわち、上述した実施例の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体をシステム或いは装置に供給し、システム或いは装置のコンピュータ(またはCPUやMPU等)が記憶媒体に格納されたプログラムコードを読み出す処理である。
【0107】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施例の機能を実現することになり、そのプログラムコードおよび該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【符号の説明】
【0108】
403 証明書格納部
404 証明書管理DB
405 暗号化通信状態表示部
406 画面解析・表示部
411 外部通信部
412 内部通信部
413 画面生成部
414 暗号化通信通知部
415 証明書取得部
916 外部通信管理部
【技術分野】
【0001】
本発明は、サーバに接続され、当該サーバにより提供されるコンテンツを表示するブラウザを備えた画像形成装置、画像形成装置の制御方法、及びプログラムに関する。
【背景技術】
【0002】
PCなどの情報処理装置がネットワーク上のWebサーバと通信を行い、Webサーバから提供される操作画面などのコンテンツをWebブラウザで表示することが知られている。
【0003】
近年、スキャナやプリンタを備えたMFP(Multi Function Peripheral)に、上述したようなWebブラウザを備えたものがある。そして、MFPは、Webサーバから提供されるコンテンツをMFPのWebブラウザに表示し、ユーザからの各種指示を受け付ける。
【0004】
また、特許文献1には、情報処理装置内部にWebサーバを設け、MFP内部に備えられているWebサーバと通信を行う構成が開示されている。特許文献1における情報処理装置のWebサーバは、MFPのWebサーバから提供されるコンテンツを情報処理装置のWebブラウザに表示可能な形式に変換する。情報処理装置のWebブラウザは、変換されたコンテンツを表示する。
【0005】
情報処理装置内部のWebサーバと情報処理装置のWebブラウザの間で使用する通信プロトコルは、情報処理装置のWebサーバの設定で決定される。情報処理装置のWebサーバが、情報処理装置外部のクライアントからのアクセスされることも考慮しているからである。WebサーバとWebブラウザの通信時に使用される通信プロトコルは、通常、HTTPもしくはHTTPSのいずれかである。一方、情報処理装置内部のWebサーバと情報処理装置外部のWebサーバ間での通信時に使用されるプロトコルは、情報処理装置外部のWebサーバの通信仕様に依存して決定される。
【0006】
したがって、情報処理装置内部のWebサーバとWebブラウザ間の通信と、情報処理装置内部のWebサーバと情報処理装置外部のWebサーバ間の通信プロトコルはそれぞれ別の要因によって決定される。
【0007】
一方、Webブラウザは、実際にWebブラウザ自身が通信中の相手先との通信状態を表示している。例えば、Webブラウザのアドレスバーに通信中の相手先のURL文字列を”http://abc.com/”、”https://def.com/”といったように表示している。更に、Webブラウザと通信中の相手先との通信プロトコルがHTTPSであった場合には、鍵アイコンを表示してセキュアな通信状態であることを示している。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】特開2008−158695号公報
【発明の概要】
【発明が解決しようとする課題】
【0009】
特許文献1の場合、情報処理装置のWebブラウザは情報処理装置内部のWebサーバ機能と通信することになる。よって、情報処理装置のWebブラウザを操作するユーザは、情報処理装置内部のWebサーバ機能との通信状態(例えば、URL、通信プロトコル等)を確認することはできる。
【0010】
しかしながら、情報処理装置のWebブラウザを操作するユーザが、情報処理装置の外部にあるWebサーバと、情報処理装置内部のWebサーバを介して通信を行う場合に問題が起こる。それは、上述のような場合であっても、情報処理装置のWebブラウザは情報処理装置内部のWebサーバと通信を行うため、Webブラウザが表示する通信状態は、情報処理装置内部のWebサーバとの通信状態ということになる。結果、ユーザは、情報処理装置外部のWebサーバとの通信状態を確認できない。
【0011】
本発明の目的の1つは、ユーザに対し、情報処理装置外部のWebサーバとの通信状態を適切に示すことが可能な画像形成装置を提供することである。
【課題を解決するための手段】
【0012】
本発明の一実施系に係る画像形成装置は、外部サーバと通信可能な画像形成装置であって、画面情報を提供するサーバに設定されている通信プロトコルに従い該サーバと通信し、前記画面情報を受信し画面を表示するブラウザと、Webサーバと、を有し、前記Webサーバは、前記外部サーバからデータを受信する外部通信手段と、前記外部通信手段が前記外部サーバと通信を行う際に、データを暗号化し通信を行う暗号化通信プロトコルを用いて通信を行っているか否かを判断する判断手段と、前記判断手段により暗号化通信プロトコルを用いて通信を行っていると判断された場合は、暗号化通信プロトコルを用いて通信を行っている旨と、前記外部サーバから受信したデータを基に生成された画面情報を前記ブラウザに送信する内部通信手段と、を有し、前記ブラウザは、前記内部通信手段により送信された、暗号化通信プロトコルを用いて通信を行っている旨を受信した場合は、前記ブラウザが前記Webサーバと通信を行う際に暗号化通信プロトコルを用いて通信を行っていることを示す第1のアイコンとは異なる、前記Webサーバが前記外部サーバと通信を行う際に暗号化通信プロトコルを用いて通信を行っていることを示す第2のアイコンが表示されるよう、前記画面情報を基に画面を表示する表示手段を有し、前記画像形成装置は、さらに、前記表示手段により表示された画面を介して印刷が指示された場合、印刷対象のデータを外部サーバから受信し、受信したデータを印刷データに変換し、変換した印刷データを印刷する印刷手段を有することを特徴とする。
【発明の効果】
【0013】
情報処理装置のWebブラウザと情報処理装置外部のWebサーバとを仲介する形で情報処理装置内部のWebサーバ機能が存在する場合でも、ユーザに適切に情報処理装置外部のWebサーバとの通信状態を示すことが可能となる。
【図面の簡単な説明】
【0014】
【図1】本発明の第1の実施例における情報処理システムの全体図である。
【図2】本発明の第1の実施例におけるMFP101の構成を示すブロック図である。
【図3】本発明の第1の実施例におけるWebサーバ102の構成を示すブロック図である。
【図4】本発明の第1の実施例における情報処理システムのソフトウェア構成を示す図である。
【図5】本発明の第1の実施例におけるMFP101のWebブラウザ400の動作を説明するフローチャートである。
【図6】本発明の第1の実施例におけるMFP101内部のサーブレットアプリケーション410の動作を説明するフローチャートである。
【図7】本発明の第1の実施例におけるMFP101のWebブラウザ400の表示例を説明する図である。
【図8】本発明の第2の実施例における情報処理システムの全体図である。
【図9】本発明の第2の実施例における情報処理システムのソフトウェア構成を示す図である。
【図10】本発明の第2の実施例におけるMFP101のWebブラウザ400の動作を説明するフローチャートである。
【図11】本発明の第2の実施例におけるMFP101内部のサーブレットアプリケーション410の動作を説明するフローチャートである。
【図12】本発明の第2の実施例におけるMFP101のWebブラウザ400の表示例を説明する図である。
【発明を実施するための形態】
【0015】
本発明では、次のような課題を解決することができる。例えば、MFPのWebブラウザとMFP内部のWebサーバとの間の通信プロトコルがHTTPで、かつ、MFP内部のWebサーバとMFP外部のWebサーバとの間の通信がHTTPSの場合を考える。この場合、MFP外部のWebサーバとの通信プロトコルはHTTPSが使用されており、セキュアな通信状態が保たれている。しかし、それに関わらず、MFPのWebブラウザが表示する通信状態はHTTPとなっており、ユーザは困惑する。
【0016】
また、その他の例として、MFPのWebブラウザとMFP内部のWebサーバとの間の通信プロトコルがHTTPSで、かつ、MFP内部のWebサーバとMFP外部のWebサーバとの間の通信がHTTPの場合を考える。この場合、MFP外部のWebサーバとの通信プロトコルはHTTPが使用されているはずであるにも関わらず、MFPのWebブラウザが表示する通信状態はHTTPSとなっている。このとき、MFPのWebブラウザを利用するユーザにセキュアな通信状態が保たれているような誤解を招く可能性がある。
【0017】
また、その他の例として、MFPのWebブラウザとMFP内部のWebサーバとの間の通信プロトコルがHTTPSで、かつ、MFP内部のWebサーバとMFP外部のWebサーバとの間の通信がHTTPSの場合を考える。この場合、ユーザはMFP外部のWebサーバとの通信プロトコルはHTTPSが使用されており、セキュアな通信状態が保たれており、さらに、MFPのWebブラウザが表示する通信状態はHTTPSとなっており一見問題はない。しかしながら、Webブラウザが表示するサーバ証明書に問題がある。Webブラウザは、通信プロトコルがHTTPSの場合、通信相手のWebサーバのサーバ証明書を表示する機能も持っている。MFPのユーザが、Webブラウザの機能を利用して通信中のサーバ証明書を表示した際、表示されるサーバ証明書はMFP内部のWebサーバとの通信時に使用しているサーバ証明書になる。MFPのユーザが、MFP外部のWebサーバとの通信時に用いられるサーバ証明書の情報を確認する方法が考えられていない。
【0018】
上述の課題は、MFPのような操作部の表示領域が制限され、かつ、Webブラウザ操作中はWebブラウザ以外のアプリケーションの画面表示が困難な場合に顕在化する。
【0019】
本発明では、上述の課題を解決可能な画像形成装置、画像形成装置制御方法、およびプログラムについて説明する。
【0020】
以下、図面を参照して本発明の実施の形態を詳しく説明する。なお、以下の実施の形態は特許請求の範囲に関わる発明を限定するものでなく、また実施の形態で説明されている特徴の組み合わせのすべてが発明の解決手段に必須のものとは限らない。
【0021】
(第1の実施例)
図1は、本発明の第1の実施例における情報処理システムの全体図である。LAN110にはMFP101およびWebサーバ102が互いに通信可能に接続されている。なお、LAN110は説明のためLAN(ローカル・エリア・ネットワーク)と記載しているが、インターネットなどの他のネットワークでも構わない。
【0022】
図2はMFP101の構成を示すブロック図である。CPU211を含む制御部210は、MFP101全体の動作を制御する。CPU211は、ROM212に記憶された制御プログラムを読み出して読取制御や送信制御などの各種制御を行う。RAM213は、CPU211の主メモリ、ワークエリア等の一時記憶領域として用いられる。
【0023】
HDD214は、画像データや各種プログラム、或いは各種情報テーブルを記憶する。操作部I/F215は、操作部219と制御部210と接続する。操作部219には、タッチパネル機能を有する液晶表示部やキーボードなどが備えられている。また、MFP101には後述するWebブラウザ400が備えられている。MFP101のWebブラウザ400はWebサーバ102から受信したHTMLファイルを解析し、受信したHTMLファイルの記述に基づく操作画面を操作部219の液晶表示部に表示する。ここで、MFP101のWebブラウザ400が受信するHTMLファイルは必ずしもWebサーバ102から受信したものでなくても構わない。後述のMFP101内部のサーブレットアプリケーション410から受信したHTMLファイルでも構わない。
【0024】
プリンタI/F216は、プリンタ220と制御部210とを接続する。プリンタ220で印刷すべき画像データはプリンタI/F216を介して制御部210から転送され、プリンタ220において記憶媒体上に印刷される。
【0025】
スキャナI/F217は、スキャナ221と制御部210とを接続する。スキャナ221は、原稿上の画像を読み取って画像データを生成し、スキャナI/F217を介して制御部210に入力する。
【0026】
ネットワークI/F218は、制御部210(MFP101)をLAN110に接続する。ネットワークI/F218は、LAN110上の外部装置(例えば、Webサーバ102)に画像データや情報を送信したり、LAN110上の外部装置から各種情報を受信したりする。
【0027】
図3は、Webサーバ102の構成を示すブロック図である。CPU311を含む制御部310は、Webサーバ102全体の動作を制御する。CPU311は、ROM312に記憶された制御プログラムを読み出して各種制御処理を実行する。RAM313は、CPU311の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD314は、画像データや各種プログラム、或いは各種情報テーブルを記憶する。
【0028】
ネットワークI/F315は、制御部310(Webサーバ102)をLAN110に接続する。ネットワークI/F315は、LAN110上の他の装置との間で各種情報を送受信する。
【0029】
図4は、情報処理システム全体のソフトウェア構成を説明するための図である。図4に示す各構成図は、MFP101/Webサーバ102のそれぞれが有しているCPU211、CPU311が制御プログラムを実行することにより実現される。
【0030】
MFP101は、Webブラウザ400、サーブレットアプリケーション410を有している。Webブラウザ400、サーブレットアプリケーション410のそれぞれはMFP101が有しているCPU211が制御プログラムを実行することによって実現される。なお、Webブラウザ400はWebサーバ102およびサーブレットアプリケーション410のコンテンツを表示するものに限定するものではない。同時に、Webサーバ102、サーブレットアプリケーション410もHTTPプロトコルにしたがってリクエスト/レスポンスを送受信するものに限定するものではない。Webブラウザ400は、任意のサーバと通信を行うことによってコンテンツを取得し、画面に表示するといった機能を有するものであればよい。
【0031】
Webブラウザ400は、通信部401、証明書表示部402、証明書格納部403、証明書管理DB404、暗号化通信状態表示部405、画面解析・表示部406を有する。
【0032】
通信部401は、HTTPプロトコル/HTTPSプロトコルにしたがって、サーブレットアプリケーション410の内部通信部412と通信する。通信プロトコルは、内部通信部412を有するサーブレットアプリケーション410に設定されている通信プロトコルによって決定される。この設定は、MFP101の設定画面からユーザが設定した通信プロトコルである。通信部401は、Weブラウザ400の画面解析・表示部406により表示される操作画面を介して入力された情報を、後述のサーブレットアプリケーション410に対するリクエストとして送信する。また、通信部401は、サーブレットアプリケーション410から送信されるレスポンス(処理結果)を受信する。なお、HTTPSプロトコルはデータを暗号化して通信を行う暗号化通信プロトコルの例であり、HTTPプロトコルは暗号化通信プロトコルではない通信プロトコルの例である。
【0033】
証明書表示部402は、サーブレットアプリケーション410が、MFP外部のWebサーバ102が有するWebアプリケーション420とHTTPSプロトコルで通信中の場合、通信時に使用されているサーバ証明書の情報を表示する。より具体的には、画面解析・表示部406からの依頼により、証明書表示部402は、証明書格納部403にサーバ証明書情報取得を依頼する。証明書格納部403からサーバ証明書情報を受信した証明書表示部402は、画面解析・表示部406にサーバ証明書を送信する。
【0034】
証明書格納部403は、暗号化通信状態表示部405からの依頼によって、サーブレットアプリケーション410とWebアプリケーション420とがHTTPSプロトコルで通信しているか否かを判断する。判断の結果、HTTPSプロトコルで通信中の場合、証明書格納部403は通信時に使用されているサーバ証明書の情報を証明書管理DB404に格納する。また、証明書格納部403は、証明書表示部402からの依頼によって、前記格納したサーバ証明書を証明書管理DB404から読み出し、証明書表示部402に送信する。なお、サーバ証明書は、Webサーバ102のメモリに格納されている。
【0035】
暗号化通信状態表示部405は、サーブレットアプリケーション410の暗号化通信通知部414からの暗号化通信通知を受信して、サーブレットアプリケーション410とWebアプリケーション420との通信状態がHTTPSであるか否かを判断する。通信状態がHTTPSであった場合、暗号化通信状態表示部405は画面解析・表示部406にサーブレットアプリケーション410とWebアプリケーション420との通信状態表示を依頼する。更に、暗号化通信状態表示部405は暗号化通信通知に含まれるサーバ証明書を取得して、証明書格納部403にサーバ証明書の格納を依頼する。
【0036】
画面解析・表示部406は、通信部401が受信したレスポンス中に含まれるHTMLファイルを解析し、解析結果に基づいて操作部219に操作画面を表示する。その際、画面解析・表示部406は暗号化通信状態表示部405からの依頼を受信している場合、暗号化通信状態表示を実行する。また更に、画面解析・表示部406は、サーバ証明書表示指示をユーザ入力により受信し、証明書表示部402にサーバ証明書情報取得を依頼する。依頼の結果、証明書表示部402からサーバ証明書情報を取得した画面解析・表示部406は、操作部219にサーバ証明書情報を表示する。
【0037】
図7は画面解析・表示部406が操作部219に表示している画面例であって、暗号化通信状態表示部405からの依頼によって、706にサーブレットアプリケーション410とWebアプリケーション420との通信状態を表示している様子を示している。Webブラウザ400と直接通信を行っているサーブレットアプリケーション410との通信状態は、通常705の欄に表示される。図7では、705とは個別に706でサーブレットアプリケーション410とWebアプリケーション420との通信状態を表示している様子を示している。このように、暗号化通信プロトコルが用いられているか否かを、内部通信と、外部通信のように分けて表示してあげることで、ユーザは適切に通信状態を把握することができる。なお、705が第1のアイコンに相当し、706が第2のアイコンに相当する。
【0038】
サーブレットアプリケーション410は、外部通信部411、内部通信部412、画面生成部413、暗号化通信通知部414、証明書取得部415を有する。サーブレットアプリケーション410は、Webアプリケーション420同様、Webブラウザ400から送信されるリクエストに対して処理結果をレスポンスとして返信するMFP内部のWebサーバである。
【0039】
外部通信部411は、内部通信部412からの依頼によってWebアプリケーション420へリクエストを送信し、Webアプリケーション420からのレスポンスを受信する。そして、外部通信部411は、Webアプリケーション420から受信したレスポンスデータを画面生成部413へ送信する。更に、外部通信部411は、Webアプリケーション420とのリクエスト/レスポンス送受信時の通信プロトコルがHTTPもしくはHTTPSのいずれかであるかを判断する。そして、外部通信部411は、判断結果を暗号化通信通知部414と証明書取得部415に通知する。
【0040】
内部通信部412は、Webブラウザ400の通信部401から送信されるリクエストを受信し、外部通信部411へWebアプリケーション420へのリクエスト送信を依頼する。更に、後述の画面生成部413からの依頼によってレスポンスを生成し、Webブラウザ400の通信部401へ送信(返信)する。
【0041】
画面生成部413は、前述の外部通信部411から送信されたWebアプリケーション420からのレスポンスのデータを解析し、HTMLファイル、および画像などのコンテンツを取得する。画面生成部413は、取得したHTMLファイルおよび画像などのコンテンツを解析し、MFPの操作部219上で表示するのに適した画面情報、即ち、HTMLファイルを生成する。そして、画面生成部413は、生成されたHTMLファイルとともに内部通信部412へレスポンス送信を依頼する。例えば、画面生成部413は、外部サーバに保存されているデータ一覧を示す一覧画面を生成する。この一覧画面に表示されているデータの中から印刷対象のデータが選択され、外部通信部411は、そのデータを外部サーバから取得する。なお、取得したデータは、MFP101により印刷データに変換された、変換された印刷データは記録用紙に印刷される。
【0042】
暗号化通信通知部414は、外部通信部411からの通知を受信して、Webブラウザ400の暗号化通信状態表示部405に対し、通信状態がHTTPSもしくはHTTPである旨を通知する。更に、暗号化通信通知部414は、証明書取得部415からサーバ証明書情報を取得して暗号化通信状態表示部405に送信する。
【0043】
証明書取得部415は、外部通信部411からの通知を受信して、Webブラウザ400の暗号化通信状態表示部405に通知した通信状態がHTTPSであるか否かを判断する。判断の結果HTTPSであった場合、証明書取得部415は、外部通信部411とWebアプリケーション420との間の通信データを解析し、通信時に使用しているサーバ証明書を取得する。証明書取得部415は、取得したサーバ証明書情報を暗号化通信通部414へ送信する。
【0044】
Webサーバ102は、Webアプリケーション420を有する。Webアプリケーション420は、任意のクライアントから送信されるリクエストを受信して、リクエストに応じて処理を実行する。Webアプリケーション420は、前述のリクエストに対する処理の実行後、レスポンスを生成し、リクエストを送信したクライアントに返信する。Webサーバ102は、上述のように、例えば、画面情報を要求元に提供する。なお、実施例1では、Webアプリケーション420により保存されたデータをMFP101に送信し、そのデータをMFP101が印刷データへ変換し印刷するWebサービス連携を想定している。よって、Webサーバ102が、外部通信部411のレスポンスとして返すデータは、Webアプリケーション420により保存されたデータ一覧の情報と、その一覧の中から印刷対象として指定されたデータの実データの内、いずれか1つということになる。
【0045】
図5は、MFP101のWebブラウザ400の動作を説明するフローチャートである。図5のフローチャートに示す各動作(ステップ)はMFP101のCPU211がHDD214に記憶された制御プログラムを実行することにより実現される。
【0046】
ステップS501において、Webブラウザ400の通信部401が、Webブラウザ400の初期ページ表示のためのリクエストを、サーブレットアプリケーション410へ送信する。なお、ここで送信するリクエストは、初期ページ表示以降、Weブラウザ400の画面解析・表示部406で表示した操作画面を介して入力される情報であっても構わない。
【0047】
ステップS502において、暗号化通信状態表示部405は、サーブレットアプリケーション410の暗号化通信通知部414からの暗号化通信通知を受信し、暗号化通知受信フラグを”TRUE”にセットする。暗号化通信通知の詳細については、後述する。サーブレットアプリケーション410からの暗号化通信通知を受信しない場合、暗号化通知受信フラグを”FALSE”にセットする。なお、暗号化通信状態表示部405は、暗号化通信通知の送信元がMFP外部のWebアプリケーションか、MFP内部のサーブレットアプリケーション410かを判断してもよい。このことによって、暗号化通信通知の送信元がMFP外部のWebアプリケーションが送信元だった場合に、暗号化通信状態表示部405が暗号化通信通知を拒否し、MFP外部からの悪意ある通知によって暗号化通信状態の表示を制御されることを防いでもよい。
【0048】
ステップS503において、暗号化通信状態表示部405は、暗号化通知フラグが”TRUE”である場合、暗号化通信通知を参照しサーブレットアプリケーション410とWebアプリケーション420との通信状態がHTTPSか否かを判断する。HTTPSであった場合、ステップS504へ進む。HTTPSでなかった場合、ステップS507へ進む。
【0049】
暗号化通知フラグが”FALSE”である場合、暗号化通信状態表示部405はサーブレットアプリケーション410とWebアプリケーション420との通信状態がHTTPであると判断する。暗号化通知フラグが”FALSE”である場合、Webブラウザ400においてMFP外部のWebサーバと通信しないサーブレットアプリケーションと同様の表示が可能となる。つまり、サーブレットアプリケーション410から暗号化通信通知を送信してこない場合、Webブラウザは、暗号化通信状態を示す705を表示しない。
【0050】
ステップS504において、暗号化通信状態表示部405は、暗号化通信通知にサーバ証明書が含まれるか否かを判断する。暗号化通信通知にサーバ証明書が含まれる場合、ステップS505へ進む。暗号化通信通知にサーバ証明書が含まれない場合、ステップS506へ進む。
【0051】
ステップS505において、サーバ証明書が含まれる場合、暗号化通信状態表示部405は、サーバ証明書を取得して証明書格納部403にサーバ証明書の格納を依頼する。前記暗号化通信状態表示部405からの依頼を受信した証明書格納部403は、暗号化通信通知に含まれるサーバ証明書を証明書管理DB404に格納する。
【0052】
ステップS506において、暗号化通信状態表示部405は、画面解析・表示部406にサーブレットアプリケーション410とWebアプリケーション420との通信状態表示を依頼する。暗号化通信状態表示部405からの依頼を受信した画面解析・表示部406は、図7の706のように暗号化通信状態を操作部219に表示する。
【0053】
ステップS507において、サーブレットアプリケーション410からのレスポンスを通信部401が受信する。ステップS508において、画面解析・表示部406は、通信部401が受信したレスポンス中に含まれるHTMLファイルを解析し、解析結果に基づいて操作部219に操作画面を表示する。
【0054】
ステップS509において、画面解析・表示部406は、サーバ証明書表示指示をユーザ入力により受信しているか否か判断し、受信している場合はステップS510へ進む。即ち、画面解析・表示部406は、706のアイコンが押下されたか否かを判断する。受信していない場合は一連のリクエスト/レスポンスの送受信処理を終了する。
【0055】
ステップS510において、画面解析・表示部406は、証明書表示部402にサーバ証明書情報取得を依頼する。依頼を受信した証明書表示部402は、証明書格納部403にサーバ証明書情報取得を依頼する。依頼を受信した証明書管理部403は、格納したサーバ証明書を証明書管理DB404から読み出し、証明書表示部402に送信する。証明書表示部402は、画面解析・表示部406へサーバ証明書情報を送信し、サーバ証明書情報を取得した画面解析・表示部406は操作部219にサーバ証明書情報を表示する。
【0056】
図6は、MFP101内部のサーブレットアプリケーション410の動作を説明するフローチャートである。図6のフローチャートに示す各動作(ステップ)はMFP101のCPU211がHDD214に記憶された制御プログラムを実行することにより実現される。
【0057】
ステップS601において、内部通信部412が、Webブラウザ400の通信部401から送信されるリクエストを受信し、外部通信部411へWebアプリケーション420に対するリクエスト送信を依頼する。
【0058】
ステップS602において、依頼を受信した外部通信部411が、Webアプリケーション420へリクエストの送信を開始する。外部通信部411は、Webアプリケーション420との通信プロトコルがHTTPかHTTPSか判断し、HTTPSの場合、Webアプリケーション420とSSL暗号化通信を開始する。このとき、Webアプリケーション420とのリクエスト通信が初回通信の場合、Webアプリケーション420からサーバ証明書が送付されるので、外部通信部411はサーバ証明書を受信する。
【0059】
ステップS603において、外部通信部411は、Webアプリケーション420とのリクエスト通信が初回通信か否かを判断する。初回通信の場合、ステップS604へ進む。二回目以降のリクエスト送信の場合、ステップS605へ進む。
【0060】
ステップS604において、証明書取得部415は、外部通信部411からの通知を受信し、通信状態がHTTPSであった場合には、外部通信部411とWebアプリケーション420間での通信データを解析し、通信時に使用しているサーバ証明書を取得する。証明書取得部415は、取得したサーバ証明書情報を暗号化通信通部414へ送信する。
【0061】
ステップS605において、外部通信部411は、Webアプリケーション420との通信プロトコルがHTTPかHTTPSかを暗号化通信通知部414と証明書取得部415に通知する。暗号化通信通知部414は、外部通信部411からの通知を受信して、Webブラウザ400の暗号化通信状態表示部405に通信状態がHTTPSもしくはHTTPであることを通知するために、暗号化通信通知を送信する。更に、暗号化通信通知部414は、ステップS603の判断結果が初回通信の場合、証明書取得部415からサーバ証明書情報を取得してサーバ証明書情報も暗号化通信通知に含めて、暗号化通信状態表示部405に送信する。
【0062】
ステップS606において、外部通信部411はレスポンスを受信する。そして、外部通信部411は、Webアプリケーション420から受信したレスポンスを画面生成部413へ送信する。画面生成部413は、上述の外部通信部411から送信されたWebアプリケーション420からのレスポンスを解析し、HTMLファイルおよび画像などのコンテンツを取得する。画面生成部413は更に前記取得したHTMLファイルおよび画像などのコンテンツを解析し、MFPの操作部219上で表示するのに適したHTMLファイルを生成する。
【0063】
ステップS607において、画面生成部413は上述した生成済みのHTMLファイルとともに内部通信部412へレスポンス送信を依頼する。依頼を受信した内部通信部412は、レスポンスを生成し、Webブラウザ400の通信部401へ送信(返信)する。
【0064】
以上の通り、MFPのWebブラウザとMFP外部のWebサーバとを仲介する形でMFP内部のサーブレットアプリケーション(Webサーバ機能)が存在する場合でも、Webブラウザに対して適切に通信状態を通知することが可能となる。このことによって、MFP内の内部的な通信とMFP外部との通信で通信状態が異なっていても、ユーザに適切にMFP外部のWebサーバとの通信状態を示すことが可能となる。また、Webブラウザに対する通信状態の通知にはサーバ証明書情報も含まれるため、MFP外部のWebサーバとの通信状態だけでなく、MFP外部のWebサーバのサーバ証明書情報をユーザの指示により適切に示すことも可能となる。
【0065】
(第2の実施例)
図8は、本発明の第2の実施例における情報処理システムの全体図である。LAN110には、MFP101、Webサーバ102、Webサーバ800が互いに通信可能に接続されている。図8のように、MFP101内のサーブレットアプリケーション410が複数のWebサーバ内のWebアプリケーションと通信を行う場合、それぞれのWebアプリケーション毎に通信プロトコルが異なる場合がある。そのような場合、本発明の第1の実施例ではそれぞれのWebアプリケーションとの通信プロトコルの状態をユーザに示すことができない。そこで、本発明の第2の実施例では、MFP101内のサーブレットアプリケーション410が、複数のWebアプリケーションとの通信プロトコルの状態をWebブラウザに通知し、ユーザに示すことを可能とする形態について説明する。
【0066】
図9は、情報処理システム全体のソフトウェア構成を説明するための図である。図9に示す各構成図は、MFP101/Webサーバ102のそれぞれが有しているCPU211、CPU311が制御プログラムを実行することにより実現される。MFP101は、Webブラウザ900、サーブレットアプリケーション910を有している。Webブラウザ900、サーブレットアプリケーション910のそれぞれはMFP101が有しているCPU211が制御プログラムを実行することによって実現される。
【0067】
なお、図4と同様、Webブラウザ900は、Webサーバ102およびサーブレットアプリケーション910のコンテンツを表示するものに限定するものではない。同時に、Webサーバ102、サーブレットアプリケーション910もHTTPプロトコルにしたがってリクエスト/レスポンスを送受信するものに限定するものではない。Webブラウザ900は、任意のサーバと通信を行うことによってコンテンツを取得し、画面に表示するといった機能を有するものであればよい。また、図9では、外部のWebサーバは2つであるが、Webサーバが2つ以上の構成でも構わない。Webブラウザ900は、通信部901、証明書表示部902、証明書格納部903、証明書管理DB904、暗号化通信状態表示部905、画面解析・表示部906を有する。
【0068】
通信部901は、HTTPプロトコル/HTTPSプロトコルにしたがって、サーブレットアプリケーション910の内部通信部912と通信する。より具体的には、通信部901は、Weブラウザ900の画面解析・表示部906で表示した操作画面を介して入力される情報を後述のサーブレットアプリケーション910に対するリクエストとして送信する。また、通信部901は、サーブレットアプリケーション910から送信されるレスポンス(処理結果)を受信する。
【0069】
証明書表示部902は、サーブレットアプリケーション910がWebアプリケーション420、および/またはWebアプリケーション930と、HTTPSプロトコルで通信中の場合、通信時に使用されているサーバ証明書情報を表示する。より具体的には、画面解析・表示部906からの依頼により、証明書表示部902は、証明書格納部903にサーバ証明書情報取得を依頼する。証明書格納部903からサーバ証明書情報を受信した証明書表示部902は画面解析・表示部906にサーバ証明書を送信する。
【0070】
証明書格納部903は、暗号化通信状態表示部905からの依頼によって、通信時に使用されているサーバ証明書情報を証明書管理DB904に格納する。証明書格納部903がサーバ証明書情報を格納するのは、サーブレットアプリケーション910とHTTPSプロトコルで通信中の少なくとも1つ以上の外部サーバとHTTPSプロトコルで通信中の場合のみである。また、証明書格納部903は、証明書表示部902からの依頼によって、格納したサーバ証明書を証明書管理DB904から読み出し、証明書表示部902に送信する。
【0071】
暗号化通信状態表示部905は、暗号化通信通知部914からの暗号化通信通知を受信する。暗号化通信通知受信をトリガとして、暗号化通信状態表示部905は、Webアプリケーション420、および/または930との通信状態がHTTPSであるか否かを判断する。そして、暗号化通信状態表示部905は画面解析・表示部906に暗号化通信の通信状態表示を依頼する。暗号化通信状態表示部905は、暗号化通信通知に含まれるサーバ証明書を取得して、証明書格納部903にサーバ証明書の格納を依頼する。
【0072】
画面解析・表示部906は、通信部901が受信したレスポンス中に含まれるHTMLファイルを解析し、解析結果に基づいて操作部219に操作画面を表示する。その際、画面解析・表示部906は暗号化通信状態表示部905からの依頼を受信している場合、暗号化通信状態表示を実行する。また更に、画面解析・表示部906は、サーバ証明書表示指示をユーザ入力により受信し、証明書表示部902にサーバ証明書情報取得を依頼する。依頼の結果、証明書表示部902からサーバ証明書情報を取得した画面解析・表示部906は操作部219にサーバ証明書情報を表示する。
【0073】
図12は、画面解析・表示部906が操作部219に表示している画面例である。図12では、暗号化通信状態表示部905からの依頼によって、706にサーブレットアプリケーション410とWebアプリケーション420、930との通信状態を表示している様子を示している。通常、Webブラウザ400と直接通信を行っているサーブレットアプリケーション410との通信状態が705に表示される。図12では、705とは個別に706、1201で、サーブレットアプリケーション410と、Webアプリケーション420、および/またはWebアプリケーション930との通信状態を表示している様子を示している。また、Webブラウザと、Webアプリケーション420の通信状態も表示している。サービスAが410、サービスBが420、サービスCが930に相当する。
【0074】
サーブレットアプリケーション910は、外部通信部911、内部通信部912、画面生成部913、暗号化通信通知部914、証明書取得部915、外部通信管理部916を有する。サーブレットアプリケーション910は、Webサーバ102のWebアプリケーション420同様、Webブラウザ400から送信されるリクエストに対して処理結果をレスポンスとして返信するMFP内部のWebサーバ機能である。
【0075】
外部通信部911は、後述の内部通信部912からの依頼によってWebアプリケーション920およびWebアプリケーション930へリクエストを送信し、Webアプリケーション420およびWebアプリケーション930からのレスポンスを受信する。そして、外部通信部911は、Webアプリケーション420およびWebアプリケーション930からから受信したレスポンスを画面生成部413へ送信する。更に、外部通信部911はWebアプリケーション920およびWebアプリケーション930とのリクエスト/レスポンス送受信時の通信プロトコルがHTTPもしくはHTTPSのいずれかであるかを判断する。そして、外部通信部911は、判断結果を暗号化通信通知部414と証明書取得部415に通知する。更に外部通信部911はWebアプリケーション920およびWebアプリケーション930それぞれとの通信プロトコルがHTTPもしくはHTTPSのいずれかであるかを外部通信管理部916へ通知する。
【0076】
内部通信部912は、Webブラウザ900の通信部901から送信されるリクエストを受信し、外部通信部911へWebアプリケーション920およびWebアプリケーション930へのリクエスト送信を依頼する。更に、後述の画面生成部913からの依頼によってレスポンスを生成し、Webブラウザ900の通信部901へ送信(返信)する。
【0077】
画面生成部913は、前述の外部通信部911から送信されたWebアプリケーション920およびWebアプリケーション930からのレスポンスを解析し、HTMLファイルおよび画像などのコンテンツを取得する。画面生成部913は更に前記取得したHTMLファイルおよび画像などのコンテンツを解析し、MFPの操作部219上で表示するのに適したHTMLファイルを生成する。そして、画面生成部913は前述の生成したHTMLファイルとともに内部通信部912へレスポンス送信を依頼する。
【0078】
暗号化通信通知部914は外部通信部911からの通知を受信して、Webブラウザ900の暗号化通信状態表示部905に通信状態がHTTPSもしくはHTTPであることを通知する。このとき、Webアプリケーション920およびWebアプリケーション930いずれかの通信状態がHTTPSであれば、暗号化通信通知部914はWebブラウザ900の暗号化通信状態表示部905に通信状態がHTTPSと通知する。Webアプリケーション920およびWebアプリケーション930両方の通信状態がHTTPであれば、暗号化通信通知部914はWebブラウザ900の暗号化通信状態表示部905に通信状態がHTTPと通知する。更に、暗号化通信通知部914は、証明書取得部915からサーバ証明書情報を取得して暗号化通信状態表示部905に送信する。
【0079】
証明書取得部915は外部通信部911からの通知を受信して、Webブラウザ900の暗号化通信状態表示部905に通信した通信状態がHTTPSか否かを判断する。判断結果がHTTPSであった場合、証明書取得部915は外部通信部911とWebアプリケーション420およびWebアプリケーション930間での通信データを解析し、通信時に使用しているサーバ証明書を取得する。このとき、Webアプリケーション420およびWebアプリケーション930両方の通信状態がHTTPSであれば、両方のサーバ証明書を取得する。証明書取得部915は取得したサーバ証明書情報を暗号化通信通部914へ送信する。
【0080】
Webサーバ102は、Webアプリケーション420を有する。Webアプリケーション420は任意のクライアントから送信されるリクエストを受信して、リクエストに応じて処理を実行する。Webアプリケーション420は、前述のリクエストに対する処理の実行後、レスポンスを生成し、リクエストを送信したクライアントに返信する。
【0081】
同様に、Webサーバ800は、Webアプリケーション930を有する。Webアプリケーション930は任意のクライアントから送信されるリクエストを受信して、リクエストに応じて処理を実行する。Webアプリケーション420は、前述のリクエストに対する処理の実行後、レスポンスを生成し、リクエストを送信したクライアントに返信する。
【0082】
図10は、MFP101のWebブラウザ900の動作を説明するフローチャートである。図10のフローチャートに示す各動作(ステップ)はMFP101のCPU211がHDD214に記憶された制御プログラムを実行することにより実現される。
【0083】
ステップS1001において、Webブラウザ900の通信部901がWebブラウザ900の初期ページ表示のためのリクエストをサーブレットアプリケーション910へ送信する。なお、ここで送信するリクエストは初期ページ表示以降、Weブラウザ900の画面解析・表示部906で表示した操作画面を介して入力される情報であっても構わない。
【0084】
ステップS1002において、暗号化通信状態表示部905は、サーブレットアプリケーション910の暗号化通信通知部914からの暗号化通信通知を受信し、暗号化通知受信フラグを”TRUE”にセットする。サーブレットアプリケーション910からの暗号化通信通知を受信しない場合、暗号化通知受信フラグを”FALSE”にセットする。なお、暗号化通信状態表示部905は、暗号化通信通知の送信元がMFP外部のWebアプリケーションか、MFP内部のサーブレットアプリケーション910かを判断してもよい。
【0085】
ステップS1003において、暗号化通信状態表示部905は、暗号化通知フラグが”TRUE”である場合、暗号化通信通知を参照しサーブレットアプリケーション910とWebアプリケーション420との通信状態がHTTPSか否かを判断する。暗号化通知フラグが”FALSE”である場合、暗号化通信状態表示部905はサーブレットアプリケーション910とWebアプリケーション420との通信状態がHTTPであると判断する。
【0086】
HTTPSであった場合、ステップS1004へ進む。HTTPSでなかった場合、ステップS1008へ進む。ステップS1004において、暗号化通信状態表示部1005は、暗号化通信通知にサーバ証明書が含まれるか否かを判断する。暗号化通信通知にサーバ証明書が含まれる場合、ステップS1005へ進む。暗号化通信通知にサーバ証明書が含まれない場合、ステップS1007へ進む。
【0087】
ステップS1005において、すべてのサーバ証明書が格納されたか否かを判断する。すべてのサーバ証明書が格納された場合はステップS1007へ進む。未格納のサーバ証明書が存在する場合は、ステップS1006へ進む。
【0088】
ステップS1006において、暗号化通信状態表示部905は、サーバ証明書を取得して証明書格納部903にサーバ証明書の格納を依頼する。前記暗号化通信状態表示部905からの依頼を受信した証明書格納部903は、暗号化通信通知に含まれるサーバ証明書を証明書管理DB404に格納する。
【0089】
ステップS1007において、暗号化通信状態表示部905は画面解析・表示部906にサーブレットアプリケーション410とWebアプリケーション420およびWebアプリケーション930との通信状態表示を依頼する。暗号化通信状態表示部905からの依頼を受信した画面解析・表示部906は、図12の706のように暗号化通信状態を操作部219に表示する。
【0090】
ステップS1008において、サーブレットアプリケーション410からのレスポンスを通信部901が受信する。
【0091】
ステップS1009において、画面解析・表示部906は、通信部901が受信したレスポンス中に含まれるHTMLファイルを解析し、解析結果に基づいて操作部219に操作画面を表示する。
【0092】
ステップS1010において、画面解析・表示部906は、サーバ証明書表示指示をユーザ入力により受信しているか否か判断し、受信している場合はステップS1011へ進む。受信していない場合は一連のリクエスト/レスポンスの送受信処理を終了する。
【0093】
ステップS1011において、画面解析・表示部906は、証明書表示部902にユーザが指示したWebサーバのサーバ証明書情報取得を依頼する。依頼を受信した証明書表示部902は証明書格納部903にサーバ証明書情報取得を依頼する。更に依頼を受信した証明書管理部903は格納したサーバ証明書を証明書管理DB904から読み出し、証明書表示部902に送信する。最後に、証明書表示部902は画面解析・表示部906へサーバ証明書情報を送信し、サーバ証明書情報を取得した画面解析・表示部906は操作部219にサーバ証明書情報を表示する。
【0094】
図11は、MFP101内部のサーブレットアプリケーション910の動作を説明するフローチャートである。図11のフローチャートに示す各動作(ステップ)はMFP101のCPU211がHDD214に記憶された制御プログラムを実行することにより実現される。
【0095】
ステップS1101において、内部通信部912が、Webブラウザ900の通信部901から送信されるリクエストを受信し、外部通信部911へWebアプリケーション420およびWebアプリケーション930へのリクエスト送信を依頼する。
【0096】
ステップS1102において、前記依頼を受信した外部通信部911がWebアプリケーション420およびWebアプリケーション930へリクエストを送信を開始する。外部通信部911はWebアプリケーション420との通信プロトコルがHTTPかHTTPSか判断し、HTTPSの場合、Webアプリケーション420とSSL暗号化通信を開始する。このとき、Webアプリケーション420とのリクエスト通信が初回通信の場合、外部通信部411はWebアプリケーション420からサーバ証明書が送付されるため受信する。同様に、外部通信部911はWebアプリケーション930との通信プロトコルがHTTPかHTTPSか判断し、HTTPSの場合、Webアプリケーション930とSSL暗号化通信を開始する。このとき、Webアプリケーション930とのリクエスト通信が初回通信の場合、外部通信部911はWebアプリケーション930からサーバ証明書が送付されるため受信する。
【0097】
ステップS1103において、外部通信部911はWebアプリケーション420およびWebアプリケーション930とのリクエスト通信が初回通信か否かを判断する。初回通信の場合、ステップS604へ進む。二回目以降のリクエスト送信の場合、ステップS605へ進む。
【0098】
ステップS1104において、証明書取得部915は外部通信部911からの通知を受信して、外部通信部411とWebアプリケーション420間での通信状態がHTTPSか否かを判断する。判断結果がHTTPSであった場合には、証明書取得部915は外部通信部911とWebアプリケーション420間での通信データを解析し、通信時に使用しているサーバ証明書を取得する。同様に、証明書取得部915は、外部通信部911とWebアプリケーション930間での通信状態がHTTPSであった場合には、外部通信部911とWebアプリケーション930間での通信データを解析し、通信時に使用しているサーバ証明書を取得する。証明書取得部915は取得したサーバ証明書情報を暗号化通信通知部914へ送信する。
【0099】
ステップS1105において、外部通信部911はWebアプリケーション420およびWebアプリケーション930との通信プロトコルがHTTPかHTTPSかを外部通信管理部916と証明書取得部915に通知する。外部通信管理部916は外部通信部911からの通知を受信して、暗号化通信通知部914に外部通信部911とWebアプリケーション420間、外部通信部911とWebアプリケーション930間それぞれの通信状態を通知する。
【0100】
更に、暗号化通信通知部914は外部通信管理部916からの通知を受信して、Webブラウザ900の暗号化通信状態表示部905に通信状態がHTTPSもしくはHTTPであることを暗号化通信通知を送信して通知する。また更に、暗号化通信通知部914は、ステップS1003の判断結果が初回通信の場合、証明書取得部915からサーバ証明書情報を取得してサーバ証明書情報も暗号化通信通知に含め暗号化通信状態表示部905に送信する。
【0101】
ステップS1106において、外部通信部911はレスポンスを受信する。そして、外部通信部911は、Webアプリケーション420とWebアプリケーション930それぞれから受信したレスポンスを画面生成部913へ送信する。画面生成部913は、前述の外部通信部911から送信されたWebアプリケーション420からのレスポンスを解析し、HTMLファイルおよび画像などのコンテンツを取得する。また同様に、画面生成部913は、前述の外部通信部911から送信されたWebアプリケーション930からのレスポンスを解析し、HTMLファイルおよび画像などのコンテンツを取得する。
【0102】
画面生成部913は更に前記取得したHTMLファイルおよび画像などのコンテンツを解析し、MFPの操作部219上で表示するのに適したHTMLファイルを生成する。
【0103】
ステップS1107において、画面生成部913は前述の生成したHTMLファイルとともに内部通信部912へレスポンス送信を依頼する。前記依頼を受信した内部通信部912は、レスポンスを生成し、Webブラウザ400の通信部401へ送信(返信)する。
【0104】
以上の通り、本発明の第1の実施例においてWebサーバが複数存在する場合でも、Webブラウザに対して適切に通信状態を通知することが可能となる。このことによって、MFP外部との通信状態が相手先によって異なっていても、ユーザに適切にMFP外部のWebサーバとの通信状態を示すことが可能となる。
【0105】
更に、Webサーバがマッシュアップして他のWebサーバを仲介した場合でも、本実施例におけるサーブレットアプリケーション920の機能を適用して、ユーザに適切にMFP外部のWebサーバとの通信状態を示すことが可能となる。つまり、Webサーバが他のWebサーバとの通信状態の情報をサーブレットアプリケーション920に通知することが可能となる。このことによって、Webブラウザ900へ通信状態を通知して、ユーザに適切にMFP外部のWebサーバとの通信状態を示すことが可能となる。また、Webブラウザに対する通信状態の通知にはサーバ証明書情報も含まれるため、MFP外部のWebサーバとの通信状態だけでなく、サーバ証明書情報をユーザに指示により示すことも可能となる。
【0106】
(その他の実施例)
なお、本発明の目的は、以下の処理を実行することによっても達成される。すなわち、上述した実施例の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体をシステム或いは装置に供給し、システム或いは装置のコンピュータ(またはCPUやMPU等)が記憶媒体に格納されたプログラムコードを読み出す処理である。
【0107】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施例の機能を実現することになり、そのプログラムコードおよび該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【符号の説明】
【0108】
403 証明書格納部
404 証明書管理DB
405 暗号化通信状態表示部
406 画面解析・表示部
411 外部通信部
412 内部通信部
413 画面生成部
414 暗号化通信通知部
415 証明書取得部
916 外部通信管理部
【特許請求の範囲】
【請求項1】
外部サーバと通信可能な画像形成装置であって、
画面情報を提供するサーバに設定されている通信プロトコルに従い該サーバと通信し、前記画面情報を受信し画面を表示するブラウザと、
Webサーバと、を有し、
前記Webサーバは、
前記外部サーバからデータを受信する外部通信手段と、
前記外部通信手段が前記外部サーバと通信を行う際に、データを暗号化し通信を行う暗号化通信プロトコルを用いて通信を行っているか否かを判断する判断手段と、
前記判断手段により暗号化通信プロトコルを用いて通信を行っていると判断された場合は、暗号化通信プロトコルを用いて通信を行っている旨と、前記外部サーバから受信したデータを基に生成された画面情報を前記ブラウザに送信する内部通信手段と、を有し、
前記ブラウザは、
前記内部通信手段により送信された、暗号化通信プロトコルを用いて通信を行っている旨を受信した場合は、前記ブラウザが前記Webサーバと通信を行う際に暗号化通信プロトコルを用いて通信を行っていることを示す第1のアイコンとは異なる、前記Webサーバが前記外部サーバと通信を行う際に暗号化通信プロトコルを用いて通信を行っていることを示す第2のアイコンが表示されるよう、前記画面情報を基に画面を表示する表示手段を有し、
前記画像形成装置は、さらに、
前記表示手段により表示された画面を介して印刷が指示された場合、印刷対象のデータを外部サーバから受信し、受信したデータを印刷データに変換し、変換した印刷データを印刷する印刷手段を有する画像形成装置。
【請求項2】
前記Webサーバは、
前記判断手段により暗号化通信プロトコルを用いて通信を行っていると判断された場合、前記外部サーバと通信を行う際に用いるサーバ証明書を前記外部サーバから取得する取得手段を有し、
前記内部通信手段は、前記取得手段により取得されたサーバ証明書を送信し、
前記表示手段は、前記第2のアイコンが押下されたことに応じて、前記内部通信手段により送信されたサーバ証明書の情報を表示することを特徴とする請求項1に記載の画像形成装置。
【請求項3】
前記表示手段は、前記Webサーバに暗号化通信プロトコルを用いて通信を行うと設定されている場合に、前記第1のアイコンを表示することを特徴とする請求項1または2に記載の画像形成装置。
【請求項4】
前記内部通信手段は、前記判断手段により暗号化通信プロトコルを用いて通信を行っていないと判断された場合は、暗号化通信プロトコルを用いて通信を行っていない旨を送信し、
前記表示手段は、前記Webサーバに暗号化通信プロトコルを用いて通信を行うと設定され、かつ、前記内部通信手段により送信された暗号化通信プロトコルを用いて通信を行っていない旨を受信した場合は、
前記第1のアイコン、および前記第2のアイコンの両方のアイコンを表示せずに、前記画面情報を基に画面を表示する請求項3に記載の画像形成装置。
【請求項5】
前記外部通信手段は、複数の外部サーバからデータを受信し、
前記判断手段は、前記複数の外部サーバの内、少なくとも1つの外部サーバと、データを暗号化し通信を行う暗号化通信プロトコルを用いて通信を行っているか否かを判断し、
前記取得手段は、前記判断手段により少なくとも1つの外部サーバと暗号化通信プロトコルを用いて通信を行っていると判断された場合、暗号化通信プロトコルを用いて通信を行っていると判断された外部サーバと通信を行う際に用いるサーバ証明書を取得し、
前記内部通信手段は、暗号化通信プロトコルを用いて通信を行っている旨と、前記複数の外部サーバから受信したデータを基に生成された画面情報と、前記取得手段により取得されたサーバ証明書とを送信し、
前記表示手段は、前記内部通信手段により送信された、暗号化通信プロトコルを用いて通信を行っている旨を受信した場合は、前記ブラウザが前記Webサーバと通信を行う際に暗号化通信プロトコルを用いて通信を行っていることを示す第1のアイコンとは異なる、前記Webサーバが前記外部サーバと通信を行う際に暗号化通信プロトコルを用いて通信を行っていることを示す第2のアイコンが表示されるよう、前記画面情報を基に画面を表示し、
前記第2のアイコンが押下されたことに応じて、前記内部通信手段により送信されたサーバ証明書の情報を表示することを特徴とする請求項2乃至4のいずれか1項に記載の画像形成装置。
【請求項6】
外部サーバと通信可能な画像形成装置を制御する制御方法であって、
ブラウザに、画面情報を提供するサーバに設定されている通信プロトコルに従い該サーバと通信し、前記画面情報を受信し画面を表示させ、
前記画像形成装置が有するWebサーバの外部通信手段に、前記外部サーバからデータを受信させ、
前記Webサーバの判断手段に、前記外部通信手段が前記外部サーバと通信を行う際に、データを暗号化し通信を行う暗号化通信プロトコルを用いて通信を行っているか否かを判断させ、
前記Webサーバの内部通信手段に、前記判断手段により暗号化通信プロトコルを用いて通信を行っていると判断された場合は、暗号化通信プロトコルを用いて通信を行っている旨と、前記外部サーバから受信したデータを基に生成された画面情報を前記ブラウザに送信させ、
前記ブラウザの表示手段に、前記内部通信手段により送信された、暗号化通信プロトコルを用いて通信を行っている旨を受信した場合は、前記ブラウザが前記Webサーバと通信を行う際に暗号化通信プロトコルを用いて通信を行っていることを示す第1のアイコンとは異なる、前記Webサーバが前記外部サーバと通信を行う際に暗号化通信プロトコルを用いて通信を行っていることを示す第2のアイコンが表示されるよう、前記画面情報を基に画面を表示させ、
印刷手段に、前記表示手段により表示された画面を介して印刷が指示された場合、印刷対象のデータを外部サーバから受信し、受信したデータを印刷データに変換し、変換した印刷データを印刷させる画像形成装置の制御方法。
【請求項7】
請求項6に記載の制御方法を画像形成装置に実行させるためのプログラム。
【請求項1】
外部サーバと通信可能な画像形成装置であって、
画面情報を提供するサーバに設定されている通信プロトコルに従い該サーバと通信し、前記画面情報を受信し画面を表示するブラウザと、
Webサーバと、を有し、
前記Webサーバは、
前記外部サーバからデータを受信する外部通信手段と、
前記外部通信手段が前記外部サーバと通信を行う際に、データを暗号化し通信を行う暗号化通信プロトコルを用いて通信を行っているか否かを判断する判断手段と、
前記判断手段により暗号化通信プロトコルを用いて通信を行っていると判断された場合は、暗号化通信プロトコルを用いて通信を行っている旨と、前記外部サーバから受信したデータを基に生成された画面情報を前記ブラウザに送信する内部通信手段と、を有し、
前記ブラウザは、
前記内部通信手段により送信された、暗号化通信プロトコルを用いて通信を行っている旨を受信した場合は、前記ブラウザが前記Webサーバと通信を行う際に暗号化通信プロトコルを用いて通信を行っていることを示す第1のアイコンとは異なる、前記Webサーバが前記外部サーバと通信を行う際に暗号化通信プロトコルを用いて通信を行っていることを示す第2のアイコンが表示されるよう、前記画面情報を基に画面を表示する表示手段を有し、
前記画像形成装置は、さらに、
前記表示手段により表示された画面を介して印刷が指示された場合、印刷対象のデータを外部サーバから受信し、受信したデータを印刷データに変換し、変換した印刷データを印刷する印刷手段を有する画像形成装置。
【請求項2】
前記Webサーバは、
前記判断手段により暗号化通信プロトコルを用いて通信を行っていると判断された場合、前記外部サーバと通信を行う際に用いるサーバ証明書を前記外部サーバから取得する取得手段を有し、
前記内部通信手段は、前記取得手段により取得されたサーバ証明書を送信し、
前記表示手段は、前記第2のアイコンが押下されたことに応じて、前記内部通信手段により送信されたサーバ証明書の情報を表示することを特徴とする請求項1に記載の画像形成装置。
【請求項3】
前記表示手段は、前記Webサーバに暗号化通信プロトコルを用いて通信を行うと設定されている場合に、前記第1のアイコンを表示することを特徴とする請求項1または2に記載の画像形成装置。
【請求項4】
前記内部通信手段は、前記判断手段により暗号化通信プロトコルを用いて通信を行っていないと判断された場合は、暗号化通信プロトコルを用いて通信を行っていない旨を送信し、
前記表示手段は、前記Webサーバに暗号化通信プロトコルを用いて通信を行うと設定され、かつ、前記内部通信手段により送信された暗号化通信プロトコルを用いて通信を行っていない旨を受信した場合は、
前記第1のアイコン、および前記第2のアイコンの両方のアイコンを表示せずに、前記画面情報を基に画面を表示する請求項3に記載の画像形成装置。
【請求項5】
前記外部通信手段は、複数の外部サーバからデータを受信し、
前記判断手段は、前記複数の外部サーバの内、少なくとも1つの外部サーバと、データを暗号化し通信を行う暗号化通信プロトコルを用いて通信を行っているか否かを判断し、
前記取得手段は、前記判断手段により少なくとも1つの外部サーバと暗号化通信プロトコルを用いて通信を行っていると判断された場合、暗号化通信プロトコルを用いて通信を行っていると判断された外部サーバと通信を行う際に用いるサーバ証明書を取得し、
前記内部通信手段は、暗号化通信プロトコルを用いて通信を行っている旨と、前記複数の外部サーバから受信したデータを基に生成された画面情報と、前記取得手段により取得されたサーバ証明書とを送信し、
前記表示手段は、前記内部通信手段により送信された、暗号化通信プロトコルを用いて通信を行っている旨を受信した場合は、前記ブラウザが前記Webサーバと通信を行う際に暗号化通信プロトコルを用いて通信を行っていることを示す第1のアイコンとは異なる、前記Webサーバが前記外部サーバと通信を行う際に暗号化通信プロトコルを用いて通信を行っていることを示す第2のアイコンが表示されるよう、前記画面情報を基に画面を表示し、
前記第2のアイコンが押下されたことに応じて、前記内部通信手段により送信されたサーバ証明書の情報を表示することを特徴とする請求項2乃至4のいずれか1項に記載の画像形成装置。
【請求項6】
外部サーバと通信可能な画像形成装置を制御する制御方法であって、
ブラウザに、画面情報を提供するサーバに設定されている通信プロトコルに従い該サーバと通信し、前記画面情報を受信し画面を表示させ、
前記画像形成装置が有するWebサーバの外部通信手段に、前記外部サーバからデータを受信させ、
前記Webサーバの判断手段に、前記外部通信手段が前記外部サーバと通信を行う際に、データを暗号化し通信を行う暗号化通信プロトコルを用いて通信を行っているか否かを判断させ、
前記Webサーバの内部通信手段に、前記判断手段により暗号化通信プロトコルを用いて通信を行っていると判断された場合は、暗号化通信プロトコルを用いて通信を行っている旨と、前記外部サーバから受信したデータを基に生成された画面情報を前記ブラウザに送信させ、
前記ブラウザの表示手段に、前記内部通信手段により送信された、暗号化通信プロトコルを用いて通信を行っている旨を受信した場合は、前記ブラウザが前記Webサーバと通信を行う際に暗号化通信プロトコルを用いて通信を行っていることを示す第1のアイコンとは異なる、前記Webサーバが前記外部サーバと通信を行う際に暗号化通信プロトコルを用いて通信を行っていることを示す第2のアイコンが表示されるよう、前記画面情報を基に画面を表示させ、
印刷手段に、前記表示手段により表示された画面を介して印刷が指示された場合、印刷対象のデータを外部サーバから受信し、受信したデータを印刷データに変換し、変換した印刷データを印刷させる画像形成装置の制御方法。
【請求項7】
請求項6に記載の制御方法を画像形成装置に実行させるためのプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【公開番号】特開2012−68835(P2012−68835A)
【公開日】平成24年4月5日(2012.4.5)
【国際特許分類】
【出願番号】特願2010−212397(P2010−212397)
【出願日】平成22年9月22日(2010.9.22)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成24年4月5日(2012.4.5)
【国際特許分類】
【出願日】平成22年9月22日(2010.9.22)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]