(57)【要約】【課題】専用のルート証明書を保持する、Ｗｅｂアプリケーションを利用するアクセス手段以外からの接続を防止することを目的とする。【解決手段】メニュー手段は、オブジェクトの選択を受け付けると、オブジェクトに対応する証明書保持手段を呼び出す。証明書保持手段は、保持するＷｅｂアプリケーションの情報と専用のルート証明書とを取得し、取得したＷｅｂアプリケーションの情報と専用のルート証明書とを用いてアクセス手段を呼び出す。アクセス手段は、Ｗｅｂアプリケーションの情報を用いてサーバーよりサーバー証明書を取得し、取得したサーバー証明書と専用のルート証明書とを用いて検証手段を呼び出す。検証手段は、サーバー証明書を専用のルート証明書を用いて信頼性の検証を行う。【選択図】図９
2019049799.tif 000002
【特許請求の範囲】
【請求項１】
操作部を有する画像形成装置であって、
サーバーにアクセスするためのアクセス手段と、
前記アクセス手段を介して前記サーバーのＷｅｂアプリケーションが提供する機能を実行する拡張アプリケーションに対応する証明書保持手段と、
前記操作部にオブジェクトを表示するメニュー手段と、
サーバー証明書の信頼性の検証を行う検証手段と、
を有し、
前記メニュー手段は、前記オブジェクトの選択を受け付けると、前記オブジェクトに対応する前記証明書保持手段を呼び出し、
前記証明書保持手段は、保持する前記Ｗｅｂアプリケーションの情報と専用のルート証明書とを取得し、取得した前記Ｗｅｂアプリケーションの情報と前記専用のルート証明書とを用いて前記アクセス手段を呼び出し、
前記アクセス手段は、前記Ｗｅｂアプリケーションの情報を用いて前記サーバーよりサーバー証明書を取得し、取得した前記サーバー証明書と前記専用のルート証明書とを用いて前記検証手段を呼び出し、
前記検証手段は、前記サーバー証明書を前記専用のルート証明書を用いて信頼性の検証を行う画像形成装置。
【請求項２】
前記アクセス手段は、前記検証手段による検証の結果、検証エラーでないと判定された場合、前記Ｗｅｂアプリケーションの情報を用いて前記サーバーのＷｅｂアプリケーションが提供する機能を実行する請求項１記載の画像形成装置。
【請求項３】
前記アクセス手段は、前記検証手段による検証の結果、検証エラーであると判定された場合、前記操作部にエラー画面を表示する請求項１又は２記載の画像形成装置。
【請求項４】
前記証明書保持手段は、前記専用のルート証明書を保持している場合、前記専用のルート証明書を取得し、前記Ｗｅｂアプリケーションの情報と前記専用のルート証明書とを用いて前記アクセス手段を呼び出し、前記専用のルート証明書を保持していない場合、前記Ｗｅｂアプリケーションの情報を用いて前記アクセス手段を呼び出す請求項１乃至３何れか１項記載の画像形成装置。
【請求項５】
複数のルート証明書を管理する共通ルート証明書管理手段を更に有し、
前記アクセス手段は、前記Ｗｅｂアプリケーションの情報を用いて呼び出された場合、前記Ｗｅｂアプリケーションの情報を用いて前記サーバーよりサーバー証明書を取得し、取得した前記サーバー証明書を用いて前記検証手段を呼び出し、
前記検証手段は、前記サーバー証明書を前記共通ルート証明書管理手段で管理されているルート証明書を用いて信頼性の検証を行う請求項４記載の画像形成装置。
【請求項６】
前記検証手段によるサーバー証明書の検証に関する検証モードを管理するモード管理手段を更に有し、
前記アクセス手段は、前記検証手段による検証の結果、検証エラーであると判定された場合、前記モード管理手段により有効であると設定されている検証モードに応じて処理を実行する請求項５記載の画像形成装置。
【請求項７】
前記アクセス手段は、前記検証手段により前記サーバー証明書を前記専用のルート証明書を用いて信頼性の検証を行った結果、検証エラーであると判定された場合であって、前記検証モードが第１のモードである場合、前記サーバー証明書を前記共通ルート証明書管理手段で管理されているルート証明書を用いて信頼性の検証を行う請求項６記載の画像形成装置。
【請求項８】
前記アクセス手段は、前記検証手段により前記サーバー証明書を前記専用のルート証明書を用いて信頼性の検証を行った結果、有効期限切れエラーであると判定された場合であって、前記検証モードが第２のモードである場合、前記Ｗｅｂアプリケーションの情報を用いて前記サーバーのＷｅｂアプリケーションが提供する機能を実行するためのオブジェクトを含むエラー画面を前記操作部に表示する請求項６記載の画像形成装置。
【請求項９】
前記証明書保持手段をインストールするインストール手段を更に有する請求項１乃至８何れか１項記載の画像形成装置。
【請求項１０】
前記証明書保持手段を複数有する請求項１乃至９何れか１項記載の画像形成装置。
【請求項１１】
前記Ｗｅｂアプリケーションの情報は、前記ＷｅｂアプリケーションのトップページのＵＲＬである請求項１乃至１０何れか１項記載の画像形成装置。
【請求項１２】
前記メニュー手段は、ＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）ボタンをオブジェクトとして前記操作部に表示する請求項１乃至１１何れか１項記載の画像形成装置。
【請求項１３】
前記アクセス手段は、リンクボタンを前記サーバーのＷｅｂアプリケーションが提供する機能を実行するためのオブジェクトとして前記操作部に表示する請求項８記載の画像形成装置。
【請求項１４】
サーバーにアクセスするためのアクセス手段と、
前記アクセス手段を介して前記サーバーのＷｅｂアプリケーションが提供する機能を実行する拡張アプリケーションに対応する証明書保持手段と、
操作部にオブジェクトを表示するメニュー手段と、
サーバー証明書の信頼性の検証を行う検証手段と、
を有する画像形成装置における情報処理方法であって、
前記メニュー手段が、前記オブジェクトの選択を受け付けると、前記オブジェクトに対応する前記証明書保持手段を呼び出す工程と、
前記証明書保持手段が、保持する前記Ｗｅｂアプリケーションの情報と専用のルート証明書とを取得し、取得した前記Ｗｅｂアプリケーションの情報と前記専用のルート証明書とを用いて前記アクセス手段を呼び出す工程と、
前記アクセス手段が、前記Ｗｅｂアプリケーションの情報を用いて前記サーバーよりサーバー証明書を取得し、取得した前記サーバー証明書と前記専用のルート証明書とを用いて前記検証手段を呼び出す工程と、
前記検証手段が、前記サーバー証明書を前記専用のルート証明書を用いて信頼性の検証を行う工程と、
を含む情報処理方法。
【請求項１５】
コンピュータを、請求項１乃至１３何れか１項記載の画像形成装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
コピー機能や送信機能を備えた複合機には（ＭＦＰ：Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）、アプリケーションを複合機内にインストールすることで複合機（以下、画像形成装置という。）の機能を拡張できるシステムが普及している。拡張するアプリケーションは送信機能の選択肢を少なくすることでユーザの操作ミスを軽減するためのカスタム送信が存在する。画像形成装置の起動時には、利用可能な複数の機能メニューの一覧（以下、メニューという。）を起動時に表示することでユーザの利便性を高めている。
このようなアプリケーションには、ネットワークで接続されたＷｅｂサーバーに接続し、Ｗｅｂアプリケーションの操作画面を画像形成装置が備えるＷｅｂブラウザにより表示して、ユーザが操作できるものがある（以下、サーバーアクセスモジュールという。）。
送信機能、カスタム送信やＷｅｂブラウザを利用してＷｅｂサーバーへ通信をする際に、暗号化されたセキュアな通信を行い、なりすまし等を防ぐことが一般的である（一般的にＳＳＬ／ＴＬＳプロトコルを用いたＨＴＴＰＳ通信と呼ばれる）。画像形成装置は、証明書認証局が発行する複数のルート証明書を共通領域に予め格納し、暗号化されたセキュアな通信時、Ｗｅｂサーバーが提示するサーバー証明書をルート証明書で信頼性の検証をする（特許文献１参照。）。
近年、Ｗｅｂサーバーの提供元（以下、サービスプロバイダーという。）が証明書認証局の運用を行い、Ｗｅｂアプリサーバー１２０専用のサーバー証明書と専用のルート証明書とを発行している。画像形成装置の送信機能、カスタム送信、ＷｅブラウザからＷｅｂアプリサーバー１２０へ暗号化されたセキュアな通信をするために、画像形成装置の管理者が専用のルート証明書を共通領域に予め追加登録をする。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−３２２０３１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
画像形成装置にインストールされたサービスプロバイダーの証明書認証局によるＷｅｂアプリサーバーに接続するための専用のアプリケーションは、予め特定の接続先のＵＲＬを保持する。画像形成装置の管理者は、専用のルート証明書を取得し、画像形成装置の共通領域に予め追加登録をしておき、専用のアプリケーションを利用する。
共通領域に専用のルート証明書を追加登録することで、送信機能やカスタム送信からも接続が可能である。サービスプロバイダーは提供サービスへの利用を許可するために専用のサーバー証明書と専用のルート証明書とを発行している。しかし、提供サービス専用のアプリケーション以外からの接続は好ましくない。
【課題を解決するための手段】
【０００５】
本発明は、操作部を有する画像形成装置であって、サーバーにアクセスするためのアクセス手段と、前記アクセス手段を介して前記サーバーのＷｅｂアプリケーションが提供する機能を実行する拡張アプリケーションに対応する証明書保持手段と、前記操作部にオブジェクトを表示するメニュー手段と、サーバー証明書の信頼性の検証を行う検証手段と、を有し、前記メニュー手段は、前記オブジェクトの選択を受け付けると、前記オブジェクトに対応する前記証明書保持手段を呼び出し、前記証明書保持手段は、保持する前記Ｗｅｂアプリケーションの情報と専用のルート証明書とを取得し、取得した前記Ｗｅｂアプリケーションの情報と前記専用のルート証明書とを用いて前記アクセス手段を呼び出し、前記アクセス手段は、前記Ｗｅｂアプリケーションの情報を用いて前記サーバーよりサーバー証明書を取得し、取得した前記サーバー証明書と前記専用のルート証明書とを用いて前記検証手段を呼び出し、前記検証手段は、前記サーバー証明書を前記専用のルート証明書を用いて信頼性の検証を行う。
【発明の効果】
【０００６】
本発明によれば、専用のルート証明書を保持する、Ｗｅｂアプリケーションを利用するアクセス手段以外からの接続を防止することができる。
【図面の簡単な説明】
【０００７】
【図１】情報処理システムのシステム構成の一例を示す図である。
【図２】画像形成装置のハードウェア構成の一例を示す図である。
【図３】Ｗｅｂアプリサーバーのハードウェア構成の一例を示す図である。
【図４】画像形成装置のソフトウェア構成の一例を示す図である。
【図５】アプリ情報管理部が管理する情報の一例を示す図である。
【図６】専用のルート証明書の一例を示す図である。
【図７】拡張アプリのインストール処理の一例を示すフローチャートである。
【図８】操作部に表示されるＧＵＩの一例を示す図である。
【図９】サーバー証明書を検証する情報処理の一例を示すシーケンス図である。
【図１０】コンテンツ画面等の一例を示す図である。
【図１１】モード管理部が保持するテーブルのイメージ図である。
【図１２】サーバー証明書を検証する情報処理の一例を示すシーケンス図である。
【発明を実施するための形態】
【０００８】
以下、本発明の実施形態について図面に基づいて説明する。
【０００９】
本実施形態では、アプリケーションを次のように定義する。ネットワークで接続されたＷｅｂサーバーから提供されるタイプのアプリケーションをＷｅｂアプリケーション（以下、Ｗｅｂアプリという。）と呼ぶ。Ｗｅｂアプリの操作画面は、画像形成装置が備えるＷｅｂブラウザを用いて表示する。一方、画像形成装置にインストールするタイプのアプリケーションを拡張アプリケーション（以下、拡張アプリという。）と呼ぶ。インストールされた拡張アプリは、画像形成装置内にデータとして格納されている。
【００１０】
＜実施形態１＞
図１は、情報処理システムのシステム構成の一例を示す図である。
この情報処理システムでは、ＬＡＮ１００を介して画像形成装置１１０とＰＣ１４０とが接続されており、またＬＡＮ１００は、インターネット１５０に接続されている。更にインターネット１５０には、Ｗｅｂアプリサーバー１２０が接続されている。
画像形成装置１１０は、操作部１１１、スキャナ部１１２、プリンタ部１１３を有する。画像形成装置１１０は、内蔵するＷｅｂブラウザを利用してＷｅｂアプリの操作画面を表示及び操作するクライアント端末としても機能する。画像形成装置１１０は、Ｗｅｂアプリの指示に応じて、プリンタ部１１３を利用してＷｅｂアプリから取得した画像を印刷でき、スキャナ部１１２を利用して原稿を読み取って得られた画像データをＷｅｂアプリに送信できる。
Ｗｅｂアプリサーバー１２０は、Ｗｅｂアプリを実行するサーバーである。ＰＣ１４０は、画像形成装置１１０に対して各種設定を行うための端末装置として機能する。但し、上述のシステム構成は一例であり、これらの機器の数等は、本実施形態に限定されない。
【００１１】
図２は、画像形成装置１１０のハードウェア構成の一例を示す図である。
操作部１１１は、タッチパネル機能を有する表示部や各種ハードキー等を有し、制御部２００からのデータに従ってユーザに対して情報を表示し、ユーザの操作に応じた情報を制御部２００に入力する。スキャナ部１１２は、原稿上の画像を読み取り、その画像の画像データを作成して制御部２００に供給する。プリンタ部１１３は、制御部２００から受け取った画像データに基づいて用紙上に画像を印刷する。
制御部２００は、操作部１１１、スキャナ部１１２、プリンタ部１１３と電気的に接続されており、またＬＡＮ１００にもネットワークインターフェース（Ｉ／Ｆ）２０６を介して接続されている。これによりＬＡＮ１００を介した、ＴＣＰ／ＩＰ等の通信プロトコルによる通信が可能となっている。制御部２００において、ＣＰＵ２０１、ＲＯＭ２０２、ＲＡＭ２０３、ＨＤＤ２０４、操作部Ｉ／Ｆ２０５、ネットワークＩ／Ｆ２０６、スキャナＩ／Ｆ２０７、画像処理部２０８及びプリンタＩ／Ｆ２０９がシステムバス２１１を介して接続されている。ＣＰＵ２０１は、ＲＯＭ２０２のブートプログラムを実行してＨＤＤ２０４に記憶されたＯＳのプログラムや制御プログラムをＲＡＭ２０３に展開し、そのプログラムに基づいて処理を実行することにより画像形成装置１１０を統括的に制御する。ＣＰＵ２０１がプログラムに基づき処理を実行することにより後述する図４の画像形成装置１１０のソフトウェア構成、後述する図７のフローチャートの処理、後述する図９、図１２のシーケンス図における画像形成装置１１０の処理が実現される。ＲＯＭ２０２には、画像形成装置１１０のブートプログラムや各種データが格納される。ＲＡＭ２０３は、ＣＰＵ２０１が動作するためのワークメモリを提供し、また画像データを一時記憶するための画像メモリも提供する。ＨＤＤ２０４は、ハードディスクドライブであり、ＯＳのプログラムや各種プログラムや画像データを格納する。操作部Ｉ／Ｆ２０５は、システムバス２１１と操作部１１１とを接続するためのインターフェース部である。ネットワークＩ／Ｆ２０６は、ＬＡＮ１００及びシステムバス２１１に接続し、ネットワークを介して情報の入出力を行う。スキャナＩ／Ｆ２０７は、スキャナ部１１２と制御部２００との間のインターフェースを制御する。画像処理部２０８は、スキャナ部１１２から入力された画像データ、及びプリンタ部１１３に出力する画像データに対して、回転、色変換、画像圧縮／伸張処理等の画像処理を行う。プリンタＩ／Ｆ２０９は、画像処理部２０８で処理された画像データを受け取り、この画像データに付随している属性データに従ってプリンタ部１１３による印刷を制御する。本実施形態では、操作部１１１を用いたＵＩ表示が可能な画像形成装置１１０の例で説明するが、この画像形成装置１１０に代えて、例えば汎用コンピュータ等のような情報処理装置を採用してもよい。
【００１２】
図３は、Ｗｅｂアプリサーバー１２０のハードウェア構成の一例を示す図である。
Ｗｅｂアプリサーバー１２０は、ＣＰＵ３０１、ＲＡＭ３０２、ＲＯＭ３０３、ハードディスクドライブ（ＨＤＤ）３０４、ネットワークＩ／Ｆ３０５を有し、これらはシステムバス３０６を介して互いに通信可能に接続される。ＲＯＭ３０３は、ブートプログラムを格納している。ＣＰＵ３０１は、電源オン時に、このブートプログラムを読み出してＨＤＤ３０４にインストールされるＯＳのプログラムや制御プログラム等をＲＡＭ３０２に展開する。そしてＣＰＵ３０１が、ＲＡＭ３０２に展開したプログラムを実行することにより、後述する図４のＷｅｂアプリサーバー１２０のソフトウェア構成及び後述する図９、図１２のシーケンス図におけるＷｅｂアプリサーバー１２０の処理が実現される。またＣＰＵ３０１は、ネットワークＩ／Ｆ３０５を介して接続されているネットワーク上の他の装置との通信を行う。
【００１３】
図４は、画像形成装置１１０のソフトウェア構成の一例を示す図である。
インストール処理部４０１は、拡張アプリのインストールを制御する。インストール処理部４０１は、ＰＣ１４０からの指示により拡張アプリのインストールを実行する。
図４の例では、サーバーアクセスモジュール４０４、共通ルート証明書管理モジュール４０５が予めインストールされているものとする。
共通ルート証明書管理モジュール４０５は、複数のルート証明書を保持する共通ルート証明書管理部４０５０を含む。また、共通ルート証明書管理モジュール４０５は、引数で渡されたサーバー証明書を共通ルート証明書管理部４０５０のルート証明書を用いて信頼性の検証を行い、検証結果を返す証明書検証部４０５１を含む。
拡張アプリとして提供される証明書保持モジュール４１１が画像形成装置１１０にインストールされると、その拡張アプリを一意に識別するためのＩＤ（以下、拡張アプリＩＤという。）がアプリ管理部４０２に登録される。
証明書保持モジュール４１１は、Ｗｅｂアプリサーバー１２０に配置されたＷｅｂアプリが提供する機能を画像形成装置１１０から実行するための拡張アプリである。証明書保持モジュール４１１は、サーバーアクセスモジュール４０４を用いてＷｅｂアプリに接続して、Ｗｅｂアプリが提供する機能を画像形成装置１１０から実行する。証明書保持モジュール４１１、サーバーアクセスモジュール４０４、Ｗｅｂアプリサーバー１２０の詳細は、後述する図５、図６、図９を用いて説明する。
画像形成装置１１０にインストールされている拡張アプリの種類、本数は画像形成装置１１０ごとに異なる。
証明書保持モジュール４１１は、Ｗｅｂアプリごとに必要となる設定情報をアプリ情報管理部４１１１に保持する。証明書保持モジュール４１１は、サービスプロバイダーの認証局が発行した専用のルート証明書をルート証明書管理部４１１０に保持する。１つのＷｅｂアプリに対して、１つの証明書保持モジュール４１１が必要となる。画像形成装置１１０には、使用するＷｅｂアプリに応じた証明書保持モジュール４１１がインストールされる。複数のＷｅｂアプリを使用する場合、複数の証明書保持モジュール４１１が画像形成装置１１０にインストールされる。即ち、この場合、画像形成装置１１０は、証明書保持モジュール４１１を複数有する。また、この場合、複数の証明書保持モジュール４１１は、１つのサーバーアクセスモジュール４０４を共有して使用する。
【００１４】
図５は、アプリ情報管理部４１１１が管理する情報の一例を示す図である。アプリ情報管理部４１１１は、アプリＩＤ５０１、アプリケーション名５０２、トップページＵＲＬ５０３を保持する。アプリＩＤ５０１は、アプリ管理部４０２で管理するものと同じＩＤである。アプリケーション名５０２は、拡張アプリの名称を表す。トップページＵＲＬ５０３は、証明書保持モジュール４１１固有の情報である。トップページＵＲＬ５０３は、ＷｅｂアプリのトップページのＵＲＬを表す。例えば、トップページＵＲＬ５０３に「ｈｔｔｐｓ：／／ｗｗｗ．ｓｅｒｖｅｒ．ｃｏｍ／ｘｘｘ／ｓｅｒｖｅｒｐｌａｃｅ」が設定されていれば、サーバーアクセスモジュール４０４に暗号化されたセキュアな通信処理を依頼することの指定である。
【００１５】
図６は、ルート証明書管理部４１１０が保持するサービスプロバイダーの認証局が発行した専用のルート証明書の一例を示す図である。ルート証明書管理部４１１０には、複数のルート証明書を保持することが可能である。ルート証明書は、発行者６０１、シリアル番号６０２、署名アルゴリズム６０３、署名ハッシュアルゴリズム６０４、有効期限の開始６０５、有効期限の終了６０６、サブジェクト６０７、公開キー６０８等を保持する。ルート証明書とは一般的にＸ．５０９証明書等があげられる。
個々の証明書保持モジュール４１１で異なる点は、アプリ情報管理部４１１１の管理する情報とルート証明書管理部４１１０で保持するルート証明書とであり、他のソフトウェアモジュールは全ての証明書保持モジュール４１１で同一である。つまり、ソフトウェアモジュールを流用すれば、差分情報を設定するだけで、証明書保持モジュール４１１は作成できる。例えば、Ｗｅｂアプリに関する情報と保持するルート証明書とを入力すると、証明書保持モジュール４１１を出力するようなツールを用意して、簡単に証明書保持モジュール４１１を作成できる。
【００１６】
図７は、画像形成装置１１０が行う拡張アプリのインストール処理の一例を示すフローチャートである。
Ｓ７０１において、インストール処理部４０１は、ＰＣ１４０からインストールの指示として拡張アプリを受け取る。
Ｓ７０２において、インストール処理部４０１は、拡張アプリをＨＤＤ２０４に保存する。続けてインストール処理部４０１は、ＨＤＤ２０４に保存した拡張アプリをＲＡＭ２０３に読み出し、起動する。
Ｓ７０３において、起動された拡張アプリは、メニューアプリ４０３に拡張アプリを呼び出すためのＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）ボタンを登録する。ＧＵＩボタンは、操作部１１１に表示されるオブジェクトの一例である。
【００１７】
図８は、画像形成装置１１０に証明書保持モジュール４１１がインストールされた状態で、画像形成装置１１０のメニューアプリ４０３が呼び出されたときに操作部１１１に表示されるＧＵＩの一例を示す図である。メニュー８００は、メニューが表示されていることを示すためのタイトルである。ＧＵＩボタン８０１、８０２は、画像形成装置１１０に最初から備わっているアプリケーションを呼び出すためのＧＵＩボタンである。ＧＵＩボタン８０３は、拡張アプリケーションとしてインストール処理部４０１から追加されたＧＵＩボタンである。ＧＵＩボタン８０４は、証明書保持モジュール４１１を呼び出すためのＧＵＩボタンである。図８に示したようにメニューアプリ４０３は、拡張アプリの種類を区別せずにＧＵＩボタンを表示する。
【００１８】
図９は、画像形成装置１１０からＷｅｂアプリに接続する際にサーバー証明書を検証する情報処理の一例を示すシーケンス図である。メニューアプリ４０３が表示したＧＵＩボタン８０４をユーザが選択した場合の処理を説明する。
Ｓ９０１において、メニューアプリ４０３は、ユーザによるＧＵＩボタン８０４の選択を受け付け、ＧＵＩボタン８０４に対応した証明書保持モジュール４１１を呼び出す。
Ｓ９０２において、証明書保持モジュール４１１のボタン選択認識部４１１２は、アプリ情報管理部４１１１が保持するＷｅｂアプリのトップページＵＲＬ５０３を認識する。
Ｓ９０３において、証明書保持モジュール４１１は、証明書判定部４１１３にルート証明書を保持しているかどうかを問い合わせる。証明書保持モジュール４１１は、ルート証明書が存在する場合はＳ９０４へ遷移し、ルート証明書が存在しない場合はＳ９０６へ遷移する。
Ｓ９０４において、証明書保持モジュール４１１は、Ｓ９０２で認識したトップページＵＲＬ５０３とルート証明書管理部４１１０が保持するルート証明書とを引数に、サーバーアクセスモジュール４０４のオープン処理部４０４０を呼ぶ。
Ｓ９０５において、サーバーアクセスモジュール４０４は、認識したルート証明書をルート証明書管理部４０４１で管理する。
Ｓ９０６において、証明書保持モジュール４１１は、Ｓ９０２で認識したトップページＵＲＬ５０３を引数にサーバーアクセスモジュールのオープン処理部４０４０を呼ぶ。
【００１９】
Ｓ９０７において、サーバーアクセスモジュール４０４は、トップページＵＲＬ５０３を認識する。
Ｓ９０８において、サーバーアクセスモジュール４０４は、Ｓ９０７で認識したトップページＵＲＬを引数にＷｅｂアプリサーバー１２０のリクエスト受信部４２１へ初期接続リクエストを呼び出す。
Ｓ９０９において、Ｗｅｂアプリサーバー１２０は、サーバー証明書管理部４２０で管理するサーバー証明書を取得する。レスポンス送信部４２２は、サーバーアクセスモジュール４０４へサーバー証明書をレスポンスとして送信する。サーバーアクセスモジュール４０４は、取得したサーバー証明書をサーバー証明書管理部４０４２で管理する。
Ｓ９１０において、サーバーアクセスモジュール４０４は、証明書判定部４０４３にルート証明書を保持しているかどうかを問い合わせた結果を取得する。証明書判定部４０４３は、ルート証明書管理部４０４１にルート証明書が存在するかどうかを判定し、その結果を返す。証明書判定部４０４３は、ルート証明書が存在する場合はＳ９１１へ遷移し、ルート証明書が存在しない場合はＳ９１３へ遷移する。
Ｓ９１１において、サーバーアクセスモジュール４０４は、証明書検証部４０５１にサーバー証明書の検証を依頼する。サーバーアクセスモジュール４０４は、依頼をする際に、サーバー証明書管理部４０４２で管理するサーバー証明書と、ルート証明書管理部４０４１で管理するルート証明書とを引数に指定する。証明書検証部４０５１は、引数で指定されたサーバー証明書を、引数で指定されたルート証明書を用いて信頼性の検証を行う。検証結果取得部４０４４は、検証結果の通知を受ける。
Ｓ９１２において、サーバーアクセスモジュール４０４は、検証結果取得部４０４４から検証結果を取得する。
Ｓ９１３において、サーバーアクセスモジュール４０４は、サーバー証明書管理部４０４２で管理するサーバー証明書を引数に証明書検証部４０５１が提供するサーバー証明書検証処理を呼び出す。証明書検証部４０５１は、引数で渡されたサーバー証明書を、共通ルート証明書管理部４０５０で管理するルート証明書を用いて信頼性の検証を行う。検証結果取得部４０４４は、検証結果の通知を受ける。
【００２０】
Ｓ９１４において、サーバーアクセスモジュール４０４は、検証結果判定部４０４５から検証結果がエラーかどうかを問い合わせた結果を取得する。検証結果判定部４０４５は、検証結果取得部４０４４から取得した検証結果がエラーかどうかを判定した結果を返す。サーバーアクセスモジュール４０４は、エラーの場合はＳ９１８へ遷移し、それ以外の場合はＳ９１５へ遷移する。
Ｓ９１５において、サーバーアクセスモジュール４０４は、認識したトップページＵＲＬを引数にＷｅｂアプリサーバー１２０のリクエスト受信部４２１へコンテンツ取得リクエストを呼ぶ。
Ｓ９１６において、Ｗｅｂアプリサーバー１２０は、コンテンツ管理部４２３で管理するコンテンツを取得する。レスポンス送信部４２２は、サーバーアクセスモジュール４０４へ取得したコンテンツのレスポンスを送信する。
Ｓ９１７において、サーバーアクセスモジュール４０４は、認識したコンテンツを表示部４０４６に表示させる。表示部４０４６は、コンテンツを操作部１１１に表示する。コンテンツは、例えばＨＴＭＬで記述された文書で、一般的にブラウザで表示することが可能である。図１０（ａ）は表示するコンテンツ画面のイメージ図である。
Ｓ９１８において、サーバーアクセスモジュール４０４は、認識したエラーを表示部４０４６に表示させる。表示部４０４６は、エラーを操作部１１１に表示する。エラーは、コンテンツと同様のＨＴＭＬ文書で記述され、エラーであることを表示することが可能な文書のことである。図１０（ｂ）は表示するエラー画面のイメージ図である。
【００２１】
（実施形態１の適用例）
本実施形態の適用例について図９のシーケンス図を用いて説明する。
適用例は、以下を前提とする。
専用のルート証明書を証明書保持モジュール４１１が保持する。図６はルート証明書管理部４１１０が保持する専用のルート証明書のイメージ図である。
アプリ情報管理部４１１１は、アプリＩＤ５０１、アプリケーション名５０２、トップページＵＲＬ５０３を保持する。Ｓ９０２において、ボタン選択認識部４１１２は、アプリ情報管理部４１１１が保持するＷｅｂアプリのトップページＵＲＬ５０３（"ｈｔｔｐｓ：／／ｗｗｗ．ｓｅｒｖｅｒ．ｃｏｍ／ｘｘｘ／ｓｅｒｖｅｒｐｌａｃｅ"）を認識する。Ｓ９０３において、証明書保持モジュール４１１の証明書判定部４１１３は、ルート証明書が存在すると判定し、Ｓ９０４へ遷移する。
情報処理システムは、Ｓ９０５〜Ｓ９０９の処理を行う。
Ｓ９１０において、サーバーアクセスモジュール４０４の証明書判定部４０４３は、ルート証明書を保持すると判定し、Ｓ９１１へ遷移する。
サーバーアクセスモジュール４０４は、証明書検証部４０５１にサーバー証明書の検証を依頼する。サーバーアクセスモジュール４０４は、依頼をする際に、サーバー証明書管理部４０４２で管理するサーバー証明書と、ルート証明書管理部４０４１で管理するルート証明書とを引数に指定する。証明書検証部４０５１は、引数で指定されたサーバー証明書を、引数で指定されたルート証明書を用いて信頼性の検証を行う。検証結果取得部４０４４は、検証結果の通知を受ける。
Ｓ９１４において、検証は成功し、Ｓ９１５〜Ｓ９１７へ遷移する。
本適用例で、サーバーアクセスモジュール４０４は、Ｓ９１１のサーバー証明書の検証で用いるルート証明書として、Ｓ９０４の証明書保持モジュール４１１だけが保持する専用のルート証明書を使用して接続をする。このことから、送信機能やカスタム送信からＷｅｂアプリサーバー１２０に接続しても専用のルート証明書を利用できないのでエラーとなる効果がある。
【００２２】
実施形態１の情報処理によれば、証明書保持モジュール４１１だけが保持する専用のルート証明書を使用してサーバーアクセスモジュール４０４は、暗号化されたセキュアな通信をするため接続を行うための検証を行うことができる。これにより、送信機能やカスタム送信からＷｅｂアプリサーバー１２０に接続しても専用のルート証明書を利用できないのでエラーとなる効果がある。
【００２３】
＜実施形態２＞
次に、サーバー証明書の検証をモード管理部４１１４が保持するモードによって切り替える例について説明する。図１１は、モード管理部４１１４が保持するテーブルのイメージ図である。テーブルは、設定値１１０１、検証モード１１０２、モードの内容１１０３からなる。設定値１１０１は、有効なモードを選択する。検証モード１１０２は、モードの種類である。モードの内容１１０３は、各モードの動作内容を示す。モード１（１１０４）は、"証明書保持モジュールが保持する証明書だけ使用"するモードであり、実施形態１と同様の動作となる。モード２（１１０５）は、"モード１でエラーの場合は、共通ルート証明書管理モジュールの保持する証明書を使用"するモードである。モード３（１１０６）は、"有効期限切れエラーの場合は、警告ダイアログを表示"するモードである。設定値１１０５のうち、モード２が有効であることを示している。
【００２４】
図１２は、画像形成装置１１０からＷｅｂアプリに接続する際にモード切り替えをしてサーバー証明書を検証する情報処理の一例を示すシーケンス図である。本実施形態は実施形態１との差分を記載する。
Ｓ１０００において、証明書保持モジュール４１１は、モード管理部４１１４が保持する切り替えモードを取得する。
Ｓ９０３において、証明書保持モジュール４１１は、ルート証明書を保持する場合は、Ｓ１００１へ遷移し、それ以外はＳ９０６へ遷移する。
Ｓ１００１において、証明書保持モジュール４１１は、サーバーアクセスモジュール４０４のオープン処理部４０４０を呼ぶ。オープン処理部４０４０の引数は、Ｓ９０２で認識したトップページＵＲＬ５０３、ルート証明書管理部４１１０のルート証明書、Ｓ１０００で認識した切り替えモードの有効な設定値である。
Ｓ１００２において、サーバーアクセスモジュール４０４は、認識した切り替えモードの有効な設定値をモード管理部４０４７で管理させる。
Ｓ９１４において、サーバーアクセスモジュール４０４は、検証結果判定部４０４５から検証結果がエラーかどうかを問い合わせた結果を取得する。サーバーアクセスモジュール４０４は、エラーの場合はＳ１００３へ遷移し、それ以外の場合はＳ９１５へ遷移する。
Ｓ１００３において、サーバーアクセスモジュール４０４は、モード管理部４０４７で切り替えモードを認識済みかどうかの判定をする。サーバーアクセスモジュール４０４は、切り替えモードを認識済みの場合はＳ９１０へ遷移し、それ以外の場合はＳ９１８へ遷移する。
Ｓ９１０において、サーバーアクセスモジュール４０４は、ルート証明書が存在する場合はＳ１００４へ遷移し、存在しない場合はＳ９１８へ遷移する。
【００２５】
Ｓ１００４において、サーバーアクセスモジュール４０４は、モード判定部４０４８にモード管理部４０４７の有効なモードがモード２かどうかの判定を依頼する。サーバーアクセスモジュール４０４は、モード２が有効な場合はＳ９１３へ遷移し、そうでない場合はＳ１００５へ遷移する。
Ｓ１００５において、サーバーアクセスモジュール４０４は、モード判定部４０４８にモード管理部４０４７の有効なモードがモード３かどうかの判定を依頼する。サーバーアクセスモジュール４０４は、モード３が有効な場合はＳ１００６へ遷移し、それ以外の場合はＳ９１８へ遷移する。
Ｓ１００６において、サーバーアクセスモジュール４０４は、検証結果判定部４０４５に検証結果が有効期限切れエラーかどうかを問い合わせた結果を取得する。検証結果判定部４０４５は、検証結果取得部４０４４から取得した検証結果が有効期限切れエラーかどうかを判定した結果を返す。検証結果判定部４０４５は、エラーの場合は、Ｓ１００７へ遷移し、それ以外の場合は、Ｓ９１８へ遷移する。
Ｓ１００７において、サーバーアクセスモジュール４０４は、警告ダイアログを表示部４０４６に表示させる。表示部４０４６は、警告ダイアログを操作部１１１に表示する。警告メッセージはコンテンツと同様のＨＴＭＬ文書で記述され、警告であることを表示することが可能な文書である。図１０（ｃ）は表示するエラー画面のイメージ図である。エラー画面では、無視して接続する場合のリンクボタン１２００１と接続しない場合のリンクボタン１２００２とを提供する。リンクボタン１２００１は、ＷｅｂアプリケーションのトップページのＵＲＬを用いてＷｅｂアプリサーバー１２０のＷｅｂアプリケーションが提供する機能を実行するためのオブジェクトの一例である。
Ｓ１００８において、サーバーアクセスモジュール４０４は、警告ダイアログ接続処理を続行するかどうかを判定し、リンクボタン１２００１が選択された場合はＳ９１５へ遷移し、リンクボタン１２００２が選択された場合はＳ９１８へ遷移する。
【００２６】
（実施形態２の適用例）
本実施形態の適用例について図１２のシーケンス図を用いて説明する。
適用例は、以下を前提とする。
専用のルート証明書を証明書保持モジュール４１１が保持する。図６はルート証明書管理部４１１０が保持する専用のルート証明書のイメージ図である。
アプリ情報管理部４１１１は、アプリＩＤ５０１、アプリケーション名５０２、トップページＵＲＬ５０３（"ｈｔｔｐｓ：／／ｗｗｗ．ｓｅｒｖｅｒ．ｃｏｍ／ｘｘｘ／ｓｅｒｖｅｒｐｌａｃｅ"）を保持する。
Ｗｅｂアプリケーション側の設定により、トップページＵＲＬ５０３へアクセスをすると、リダイレクトして異なるＵＲＬ（"ｈｔｔｐｓ：／／ｗｗｗ．ｓｅｒｖｅｒ＿ｘｘｘ．ｃｏｍ／ｘｘｘ＿ｒｅｄｉｒｅｃｔ／ｓｅｒｖｅｒｐｌａｃｅ"）へ接続される。リダイレクトされると、Ｓ９０９において、リダイレクト先のＷｅｂアプリサーバーが保持するサーバー証明書が送信される。リダイレクトをするＷｅｂアプリサーバーは、Ｗｅｂアプリサーバー１２０と同様の構成からなる。
サーバーアクセスモジュール４０４は、サーバー証明書の検証をすると専用のルート証明書では検証エラーが発生する。
一方、サーバーアクセスモジュール４０４は、共通ルート証明書管理モジュール４０５の共通ルート証明書管理部４０５０で保持するルート証明書でサーバー証明書を検証すると成功する。
モード管理部４１１４が保持する検証モードの設定値は、モード２（１１０５）が有効である。
Ｓ９０２において、ボタン選択認識部４１１２は、アプリ情報管理部４１１１が保持するＷｅｂアプリのトップページＵＲＬ５０３（"ｈｔｔｐｓ：／／ｗｗｗ．ｓｅｒｖｅｒ．ｃｏｍ／ｘｘｘ／ｓｅｒｖｅｒｐｌａｃｅ"）を認識する。
Ｓ１０００において、アプリ情報管理部４１１１は、有効な設定値がモード２（１１０５）であることを取得する。
Ｓ９０３において、証明書保持モジュール４１１は、ルート証明書（図６）が存在するため、Ｓ１００１へ遷移する。
Ｓ１００１において、証明書保持モジュール４１１は、サーバーアクセスモジュール４０４のオープン処理部４０４０を呼ぶ。トップページＵＲＬ（"ｈｔｔｐｓ：／／ｗｗｗ．ｓｅｒｖｅｒ．ｃｏｍ／ｘｘｘ／ｓｅｒｖｅｒｐｌａｃｅ"）、ルート証明書（図６）、モードの設定値はモード２（１１０５）が引数である。
Ｓ１００２において、サーバーアクセスモジュール４０４は、認識した切り替えモードのモード２（１１０５）をモード管理部４０４７で管理させる。
【００２７】
Ｓ９１４において、サーバーアクセスモジュール４０４は、エラーなので、Ｓ１００３へ遷移する。
Ｓ１００３において、サーバーアクセスモジュール４０４は、モード管理部４０４７で切り替えモードを認識済みなので、Ｓ９１０へ遷移する。
Ｓ９１０において、サーバーアクセスモジュール４０４は、ルート証明書が存在するので、Ｓ１００４へ遷移する。
Ｓ１００４において、サーバーアクセスモジュール４０４のモード判定部４０４８は、モード２が有効であることを判定して、Ｓ９１３へ遷移する。
Ｓ９１２において、サーバーアクセスモジュール４０４は、検証結果取得部４０４４から検証結果を取得する。検証結果は成功となる。
Ｓ９１４において、サーバーアクセスモジュール４０４は、検証が成功したか否かを判定する。検証は成功し、サーバーアクセスモジュール４０４は、Ｓ９１５〜Ｓ９１７へ遷移する。
本適用例で、サーバーアクセスモジュール４０４は、サーバー証明書のルート証明書を用いての信頼性の検証がエラーであり、ルート証明書を保持する場合、モードに応じて処理を切り替えることができる。そして、共通ルート証明書管理モジュール４０５の保持する証明書を使用するモードの場合、Ｓ９１３の共通ルート証明書管理モジュール４０５のルート証明書による検証を行う。また、有効期限切れエラーの場合、警告ダイアログを表示するモードの場合、警告ダイアログを表示し、ユーザに接続するか否かの選択を促すことができる。このことでサーバー証明書の検証の利便性が高まる。
【００２８】
実施形態２の情報処理によれば、検証エラーが発生する場合、検証モードの設定状態により、サーバーアクセスモジュール４０４は、共通ルート証明書管理モジュール４０５が保持するルート証明書を使用してサーバー証明書の検証を行うことができる。又は、有効期限による検証エラーの場合、サーバーアクセスモジュール４０４は、警告ダイアログを表示してユーザに選択を促すことができる。これにより、検証エラーが発生する場合はモードを切り替えることで利便性を高めることができる。
【００２９】
＜その他の実施形態＞
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給する。そして、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読み出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００３０】
以上、本発明の実施形態の一例について詳述したが、本発明は係る特定の実施形態に限定されるものではない。
例えば、Ｗｅｂアプリサーバー１２０や画像形成装置１１０のハードウェア構成として、ＣＰＵは複数存在してもよく、複数のＣＰＵが各装置のＨＤＤ等に記憶されているプログラムに基づき処理を実行するようにしてもよい。また、Ｗｅｂアプリサーバー１２０や画像形成装置１１０のハードウェア構成として、ＣＰＵに替えてＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）を用いることとしてもよい。
【００３１】
以上、上述した各実施形態によれば、専用のルート証明書を保持する、Ｗｅｂアプリケーションを利用するサーバーアクセスモジュール以外からの接続を防止することができる。
【符号の説明】
【００３２】
１１０  画像形成装置
１２０  Ｗｅｂアプリサーバー
２０１  ＣＰＵ
３０１  ＣＰＵ
【図１】
2019049799.tif 000003
【図２】
2019049799.tif 000004
【図３】
2019049799.tif 000005
【図４】
2019049799.tif 000006
【図５】
2019049799.tif 000007
【図６】
2019049799.tif 000008
【図７】
2019049799.tif 000009
【図８】
2019049799.tif 000010
【図９】
2019049799.tif 000011
【図１０】
2019049799.tif 000012
【図１１】
2019049799.tif 000013
【図１２】
2019049799.tif 000014