(57)【要約】【課題】  複数のブラウザを搭載している装置において、ブラウザのクッキー情報を別のブラウザで使用可能にすることを目的とする。【解決手段】  ブラウザごとにブラウザで用いるクッキー情報を保持している複数のブラウザのうちの、第１のブラウザから保持しているクッキー情報を取得し、第２のブラウザを使用する際に、取得したクッキー情報を第２のブラウザへ受け渡す。【選択図】  図１４
2019160056.tif 000002
【特許請求の範囲】
【請求項１】
ブラウザごとに、該ブラウザで用いるクッキー情報を保持している、複数のブラウザと、
前記複数のブラウザのうちの第１のブラウザから保持しているクッキー情報を取得し、管理する管理手段を有し、
前記管理手段は、前記複数のブラウザのうちの第２のブラウザを使用する際に、前記クッキー情報を、前記第２のブラウザへ受け渡すことを特徴とする情報処理装置。
【請求項２】
前記第２のブラウザが、前記受け取ったクッキー情報を用いることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記管理手段は、前記第１のブラウザを終了する際に、前記第１のブラウザから保持しているクッキー情報を取得することを特徴とする請求項１又は請求項２に記載の情報処理装置。
【請求項４】
前記管理手段は、前記複数のブラウザで共有するクッキー情報を管理することを特徴とする請求項１乃至３の何れか１項に記載の情報処理装置。
【請求項５】
前記複数のブラウザのうち、標準で使用するブラウザを設定する設定手段をさらに有し、
前記管理手段は、前記設定手段で設定されたブラウザを使用する際に、前記クッキー情報を、前記設定手段で設定されたブラウザへ受け渡すことを特徴とする請求項１乃至４の何れか１項に記載の情報処理装置。
【請求項６】
使用するブラウザを特定せず、かつ、アクセス先のＵＲＬ情報を持つアプリケーションの呼び出し指示を取得する指示手段と、
前記設定手段で設定されたブラウザを使用し、前記アプリケーションが持つＵＲＬ情報にアクセスする手段をさらに有することを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記管理手段は、前記クッキー情報を変換し、前記複数のブラウザのうちの第２のブラウザを使用する際に、前記変換したクッキー情報を、前記第２のブラウザへ受け渡すことを特徴とする請求項１乃至６の何れか１項に記載の情報処理装置。
【請求項８】
ブラウザごとに、該ブラウザで用いるクッキー情報を保持している、複数のブラウザを有する情報処理装置におけるクッキー情報管理方法であって、
前記複数のブラウザのうちの第１のブラウザから保持しているクッキー情報を取得し、管理する管理工程と、
前記複数のブラウザのうちの第２のブラウザを使用する際に、前記クッキー情報を、前記第２のブラウザへ受け渡す工程を有することを特徴とするクッキー情報管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及びクッキー情報管理方法に関する。
【背景技術】
【０００２】
コピー機能や送信機能を備えた複合機（ＭＦＰ：Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）、ブラウザを搭載しているものがある。そして、ネットワークで接続された特定のアドレスのＷｅｂサーバに接続し、Ｗｅｂアプリケーションの操作画面を、画像形成装置が備えるブラウザにより表示して、ユーザが操作できる。
【０００３】
ブラウザを利用してＷｅｂサーバへ通信をすると、Ｗｅｂサーバが返すページの入力フィールド（例えばログインをするための認証ＩＤやパスワード）をユーザが入力をしてＷｅｂサーバへリクエストを送信する。その際、ブラウザが、クッキーとして、認証ＩＤやパスワードの入力情報を保持し、次回のリクエスト時に、認証ＩＤやパスワードの入力情報を自動補完することが可能である（特許文献１）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−１６４３７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
装置に、複数のブラウザを搭載することも可能である。しかしながら、ブラウザがクッキーとして保持している認証ＩＤやパスワードの入力情報は、自身のブラウザで使用されるものであって、異なる別のブラウザで、使用する仕組みはなかった。そのため、ユーザは、ブラウザごとに、認証ＩＤやパスワードに入力する必要があり、ユーザの利便性がよくなかった。
【０００６】
本発明は、上記従来例に鑑みて成されたもので、複数のブラウザを搭載している装置において、ブラウザのクッキー情報を別のブラウザで使用可能にすることによって、ユーザの利便性を向上する技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために本発明は以下の構成を有する。
【０００８】
すなわち、ブラウザごとに、該ブラウザで用いるクッキー情報を保持している、複数のブラウザと、前記複数のブラウザのうちの第１のブラウザから保持しているクッキー情報を取得し、管理する管理手段を有し、前記管理手段は、前記複数のブラウザのうちの第２のブラウザを使用する際に、前記クッキー情報を、前記第２のブラウザへ受け渡すことを特徴とする情報処理装置にある。
【発明の効果】
【０００９】
本発明によれば、複数のブラウザを搭載している装置において、ブラウザのクッキー情報を別のブラウザで使用可能にすることによって、ユーザの利便性を向上する効果がある。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施形態に係る情報処理システムの全体構成を示す図。
【図２】実施形態に係るＭＦＰのハードウェア構成を説明するブロック図。
【図３】実施形態に係るライセンス管理サーバのハードウェア構成を示すブロック図。
【図４】実施形態に係るライセンス管理サーバのソフトウェアモジュールの構成を説明するブロック図。
【図５】実施形態に係るＭＦＰアプリ管理テーブルの一例を示す図（Ａ）、ライセンス管理テーブルの一例を示す図（Ｂ）。
【図６】ライセンスファイルの一例を示す図（Ａ）、Ｗｅｂ接続用ＭＦＰアプリのマニフェストファイルの一例を示す図（Ｂ）。
【図７】実施形態に係るＭＦＰのアプリケーション及びソフトウェアモジュールの構成を示す図。
【図８】実施形態に係るＷｅｂ接続用ＭＦＰアプリのソフトウェアモジュールの構成を示す図。
【図９】実施形態に係る管理テーブルの一例を示す図。
【図１０】実施形態に係るＷｅｂアプリサーバのソフトウェアモジュールの構成を示す図。
【図１１】実施形態に係るＭＦＰにおける処理の一例を示すフローチャート。
【図１２】実施形態に係るＭＦＰの操作部に表示されるＧＵＩの一例を示す図。
【図１３】本発明の実施形態に係る情報処理システムにおける処理の一例を示すシーケンス図。
【図１４】実施形態に係るＭＦＰにおける処理の一例を示すフローチャート。
【図１５】実施形態に係るＷｅｂアプリサーバにおける処理の一例を示すフローチャート。
【図１６】実施形態に係るＭＦＰの操作部に表示されるＧＵＩの一例を示す図。
【図１７】実施形態に係る管理テーブルの一例を示す図。
【図１８】実施形態に係るライセンス情報テーブルの一例を示す図。
【図１９】実施形態に係るＭＦＰにおける処理の一例を示すフローチャート。
【図２０】実施形態に係るＭＦＰにおける処理の一例を示すフローチャート。
【図２１】実施形態に係るＭＦＰにおける処理の一例を示すフローチャート。
【図２２】実施形態に係るＭＦＰにおける処理の一例を示すフローチャート。
【発明を実施するための形態】
【００１１】
（第１の実施形態）
以下、添付図面を参照して本発明の実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【００１２】
本実施形態では、アプリケーションを次のように定義する。ネットワークで接続されたＷｅｂサーバから提供されるタイプのアプリケーションをＷｅｂアプリケーション（あるいはウエブアプリケーション、以降、Ｗｅｂアプリ）と呼ぶ。Ｗｅｂアプリの操作画面は、複合機が備えるＷｅｂブラウザ（ウエブブラウザ）を用いて表示する。一方、複合機にインストールするタイプのアプリケーションをＭＦＰアプリケーション（あるいはデバイスアプリケーション、以降、ＭＦＰアプリ）と呼ぶ。インストールされたＭＦＰアプリは、複合機内にデータ及びプログラムとして格納されている。
【００１３】
●情報処理システム
図１は、本発明の実施形態に係る情報処理システムの全体構成を示す図である。この情報処理システムでは、ＬＡＮ１００を介してＭＦＰ１１０とＰＣ１４０とが接続されており、またこのＬＡＮ１００は、インターネット１５０に接続されている。更にこのインターネット１５０には、ライセンス管理サーバ１２０とＷｅｂアプリサーバ（Ｗｅｂサーバ）１３０が接続されている。
【００１４】
ＭＦＰ１１０は、操作部１１１、スキャナ部１１２、プリンタ部１１３を有する複合機（多機能処理装置）である。実施形態に係るＭＦＰ１１０は、内蔵する（すなわちインストール済みの）Ｗｅｂブラウザを利用してＷｅｂアプリの操作画面を表示及び操作するクライアント端末としても機能する。またＭＦＰ１１０は、Ｗｅｂアプリの指示に応じて、プリンタ部１１３を利用してＷｅｂアプリから取得した画像を印刷でき、スキャナ部１１２を利用して原稿を読み取って得られた画像データをＷｅｂアプリに送信できる。このためにＭＦＰ１１０には、Ｗｅｂアプリに対してデバイス（ＭＦＰのこと）の持つプリンタやスキャナなどの機能を提供するサービスプロバイダを有する。これによりＭＦＰ１１０からアクセスされたＷｅｂアプリは、そのＭＦＰ１１０のサービスプロバイダに対して所望の機能を用いたサービスの提供を要求することができる。尚、この実施形態に係るＭＦＰにはデバイスＩＤという識別子が割り当てられており、この識別子により一意に、各ＭＦＰを特定、認識できる。
【００１５】
ライセンス管理サーバ１２０は、ＭＦＰアプリのライセンスを管理するサーバである。Ｗｅｂアプリサーバ１３０は、Ｗｅｂアプリを実行するサーバである。ＰＣ１４０は、ＭＦＰ１１０に対して各種設定を行うための端末装置として機能している。但し、上述のシステム構成はあくまでも一例であり、これらの機器の数などは、本実施形態に限定されない。
【００１６】
●画像形成装置（ＭＦＰ）のハードウェア
図２は、実施形態に係るＭＦＰ１１０のハードウェア構成を説明するブロック図である。操作部１１１は、タッチパネル機能を有する表示部や各種ハードキー等を有し、制御部２００からのデータに従ってユーザに対して情報を表示したり、ユーザの操作に応じた情報を制御部２００に入力したりする。スキャナ部１１２は、原稿上の画像を読み取って、その画像の画像データを作成して制御部２００に供給する。プリンタ部１１３は、制御部２００から受け取った画像データに基づいて用紙上に画像を印刷する。
【００１７】
制御部２００は、操作部１１１、スキャナ部１１２、プリンタ部１１３と電気的に接続されており、またＬＡＮ１００にもネットワークインターフェース（Ｉ／Ｆ）２０６を介して接続されている。これによりＬＡＮ１００を介した、ＴＣＰ／ＩＰ等の通信プロトコルによる通信が可能となっている。制御部２００において、ＣＰＵ２０１、ＲＯＭ２０２、ＲＡＭ２０３、ＨＤＤ２０４、操作部Ｉ／Ｆ２０５、ネットワークＩ／Ｆ２０６、スキャナＩ／Ｆ２０７、画像処理部２０８及びプリンタＩ／Ｆ２０９がシステムバス２１１を介して接続されている。ＣＰＵ２０１は、ＲＯＭ２０２のブートプログラムを実行してＨＤＤ２０４に記憶されたＯＳや制御プログラムをＲＡＭ２０３に展開し、そのプログラムに基づいてこのＭＦＰ１１０を統括的に制御する。この制御には、後述のフローチャートを実現するためのプログラムの実行も含む。ＲＯＭ２０２には、このＭＦＰ１１０のブートプログラムや各種データが格納されている。ＲＡＭ２０３は、ＣＰＵ２０１が動作するためのワークメモリを提供し、また画像データを一時記憶するための画像メモリも提供している。ＨＤＤ２０４はハードディスクドライブであり、ＯＳや各種プログラムや画像データを格納している。操作部Ｉ／Ｆ２０５は、システムバス２１１と操作部１１１とを接続するためのインターフェース部である。ネットワークＩ／Ｆ２０６は、ＬＡＮ１００及びシステムバス２１１に接続し、ネットワークを介して情報の入出力を行う。スキャナＩ／Ｆ２０７は、スキャナ部１１２と制御部２００との間のインターフェースを制御する。画像処理部２０８は、スキャナ部１１２から入力した画像データ、及びプリンタ部１１３に出力する画像データに対して、回転、色変換、画像圧縮／伸張処理などの画像処理を行う。プリンタＩ／Ｆ２０９は、画像処理部２０８で処理された画像データを受け取り、この画像データに付随している属性データに従ってプリンタ部１１３による印刷を制御する。尚、実施形態では、操作部１１１を用いたＵＩ表示が可能なＭＦＰの例で説明するが、このＭＦＰ１１０に代えて、例えば汎用コンピュータ等のような情報処理装置を採用してもよい。
【００１８】
●ライセンス管理サーバのハードウェア
図３は、実施形態に係るライセンス管理サーバ１２０のハードウェア構成を示すブロック図である。
【００１９】
ライセンス管理サーバ１２０は、ＣＰＵ３０１、ＲＡＭ３０２、ＲＯＭ３０３、ハードディスクドライブ（ＨＤＤ）３０４、ネットワークＩ／Ｆ３０５を有し、これらはシステムバス３０６を介して互いに通信可能に接続されている。ＲＯＭ３０３はブートプログラムを格納しており、ＣＰＵ３０１は電源オン時に、このブートプログラムを読み出してＨＤＤ３０４にインストールされているＯＳや制御プログラム等をＲＡＭ３０２に展開する。そしてＣＰＵ３０１が、ＲＡＭ３０２に展開したプログラムを実行することにより、このライセンス管理サーバ１２０の機能が実現される。またＣＰＵ３０１は、ネットワークＩ／Ｆ３０５を介して接続されているネットワーク上の他の装置との通信を行う。尚、Ｗｅｂアプリサーバ１３０とＰＣ１４０のハードウェア構成も、図３で示したライセンス管理サーバ１２０のハードウェア構成と同様であるため、その説明を省略する。
【００２０】
●ライセンス管理サーバのソフトウェア
図４は、実施形態に係るライセンス管理サーバ１２０のソフトウェアモジュールの構成を説明するブロック図である。これらモジュールを実現するプログラムはライセンス管理サーバ１２０のＨＤＤ３０４に格納されており、それをＲＡＭ３０２に展開してＣＰＵ３０１が実行することにより、これらモジュールの機能が達成される。
【００２１】
本実施形態に係るライセンス管理サーバ１２０は、ＭＦＰアプリの暗号化、個々のＭＦＰにＭＦＰアプリをインストールするためのライセンスの発行、個々のライセンスを管理するライセンスアクセス番号の発行の３つの処理を行う。
【００２２】
通信部４０１は、ネットワークを介して外部装置と通信して処理要求の受け付けを行い、その処理要求に応じて、ＭＦＰアプリ管理部４０２とライセンス管理部４０４に要求を振り分ける。ＭＦＰアプリ管理部４０２は、暗号化前のＭＦＰアプリを受け取って、そのＭＦＰアプリを暗号化する。ＭＦＰアプリ管理部４０２は、インターネット１５０に接続された端末（不図示）を通じて、アプリケーション開発ベンダーからＭＦＰアプリを受け取る。そして、そのＭＦＰアプリを一意に識別するためのＩＤ（以降、ＭＦＰアプリＩＤ）と、そのＭＦＰアプリの暗号共通鍵を生成してＭＦＰアプリ管理テーブル４０３に登録する。ＭＦＰアプリＩＤは、個々のＭＦＰアプリを識別するための識別情報である。ＭＦＰアプリの暗号共通鍵は、そのＭＦＰアプリを暗号化するための暗号鍵である。そして、その暗号共通鍵を用いてＭＦＰアプリを暗号化し、その暗号化したＭＦＰアプリと、ＭＦＰアプリＩＤとを要求元に送信する。ＭＦＰアプリ管理テーブル４０３は、ＭＦＰアプリ管理部４０２が生成したＭＦＰアプリＩＤとＭＦＰアプリの暗号共通鍵を関連付けて保存するデータベースである。
【００２３】
図５（Ａ）は、実施形態に係るＭＦＰアプリ管理テーブル４０３の一例を示す図である。列５０１は、ＭＦＰアプリＩＤ、列５０２は、ＭＦＰアプリの暗号共通鍵を示している。
【００２４】
ライセンス管理部４０４は、各ＭＦＰにＭＦＰアプリをインストールするためのライセンスの発行を行い、また、ライセンスの発行を行うためのライセンスアクセス番号を管理する。アプリケーションを販売する販売者から、販売対象のＭＦＰアプリに対応するライセンスアクセス番号の発行要求を受け取ると、ライセンス管理部４０４は、そのＭＦＰアプリに対応したライセンスアクセス番号を発行する。そして、そのライセンスアクセス番号をライセンス管理テーブル４０６に登録する。ここでライセンスアクセス番号は、一意にそのＭＦＰアプリの一つのライセンスを管理するための番号であり、アプリケーションの販売者は、前述の暗号化されたＭＦＰアプリと、このライセンスアクセス番号とを併せて販売する。またライセンス管理部４０４は、ＭＦＰアプリの購入者から、ライセンスアクセス番号とデバイスＩＤを受け取ると、その購入者（ユーザ）に対してライセンスを発行する。このライセンスの発行は、ＭＦＰアプリ管理テーブル４０３とライセンス管理テーブル４０６とを参照して、ライセンスアクセス番号に対応したライセンスファイルを作成する処理である。
【００２５】
ここではまず、ライセンス管理部４０４は受け取ったライセンスアクセス番号から対応するＭＦＰアプリＩＤを取得し、ＭＦＰアプリＩＤに紐づくＭＦＰアプリの暗号共通鍵を取得する。そしてライセンスＩＤを発行し、ライセンス管理テーブル４０６にデバイスＩＤとライセンスＩＤとを記録するとともに、これら情報を１つのファイルとしてライセンスファイルを作成する。こうして作成されたライセンスファイルは、ライセンス管理部４０４が内部に保持するライセンスファイルの暗号鍵４０５で暗号化して要求元に送信する。ライセンスファイルの暗号鍵４０５は、公開鍵暗号化方式における公開鍵である。尚、これに対応する秘密鍵は後述するＭＦＰ１１０のソフトウェアに含まれている。ライセンス管理テーブル４０６は、ライセンスに関係する情報を保存するデータベースである。
【００２６】
図５（Ｂ）は、実施形態に係るライセンス管理テーブル４０６の一例を模式的に示す図である。列５１１はＭＦＰアプリＩＤ、列５１２はライセンスアクセス番号、列５１３はライセンスの有効期限を日数で示している。この日数は、ＭＦＰアプリをＭＦＰにインストールした日時から数えて何日間有効であるかを示している。列５１４はデバイスＩＤ（ＭＦＰアプリをインストールしたＭＦＰのＩＤ）、列５１５はライセンスＩＤを示している。行５１６は、ライセンスアクセス番号を発行しているが、ライセンスが未発行のＭＦＰアプリの例であり、ここではデバイスＩＤとライセンスＩＤは空である。行５１７はライセンスを発行済みのＭＦＰアプリの例を示し、デバイスＩＤ（ＤＥＶ００１）とライセンスＩＤ（ＬＩＣ００１）が登録されている。また行５１８もライセンスを発行済みのＭＦＰアプリの例を示し、有効期限は６０日、デバイスＩＤ（ＤＥＶ００２）とライセンスＩＤ（ＬＩＣ００２）が登録されている。
【００２７】
このようにライセンス管理テーブル４０６には、ＭＦＰアプリのＩＤとＭＦＰ１１０のデバイスＩＤとが対応付けて登録されている。このため、このライセンス管理テーブル４０６を参照することにより、どのＭＦＰに、どのＭＦＰアプリのライセンスが発行されているかが分かる。
【００２８】
図６（Ａ）は、実施形態に係るライセンス管理サーバ１２０が発行するライセンスファイルの一例を示す図である。ここでは、図５（Ｂ）のライセンス管理テーブル４０６の行５１８に対応するライセンスファイルの一例を示している。ここでは図５（Ｂ）のライセンス管理テーブル４０６から、ラインセンスＩＤ（ＬＩＣ００２）、ＭＦＰアプリＩＤ（ＡＰＰ７１２），デバイスＩＤ（ＤＥＶ００２）、有効期限（６０日）が得られる。また図５（Ａ）のＭＦＰアプリ管理テーブル４０３から、アプリケーション（ＡＰＰ７１２）の暗号共通鍵（ＷａｓｉＩＤｃＱＲ６ｄＹｊ．．．）が得られている。このようにライセンスファイルは、ライセンス管理部４０４が、ＭＦＰアプリ管理テーブル４０３とライセンス管理テーブル４０６から取得した情報に基づいて作成されている。このようにしてＭＦＰアプリの購入者は、その購入したＭＦＰアプリのライセンスアクセス番号を基に、暗号化されたライセンスファイルを取得することができる。
【００２９】
●ＭＦＰのソフトウェア
図７は、実施形態に係るＭＦＰ１１０のソフトウェアモジュールの構成を示す図である。これらソフトウェアモジュールは、ＭＦＰ１１０のＨＤＤ２０４に格納され、実行時にはＲＡＭ２０３に展開されてＣＰＵ２０１により実行される。なおＭＦＰアプリに関しては、それがアプリケーションプラットフォームにインストールされている場合、アプリケーションプラットフォームにより実行されるものということもできる。この場合にもアプリケーションプラットフォームはソフトウェアモジュールなので、ＣＰＵにより実行されることになる。
【００３０】
インストール処理部７０１は、ＭＦＰアプリのインストールを制御する。インストール処理部７０１は、ネットワークＩ／Ｆ２０６を介してＰＣ１４０に接続され、ＰＣ１４０からの指示によりＭＦＰアプリのインストールを実行する。またインストール処理部７０１は、暗号化されたライセンスファイルを復号化するためのライセンスファイル復号鍵７０２を含んでいる。このライセンスファイル復号鍵７０２は、前述のライセンスファイル暗号鍵４０５に対応している。ＭＦＰアプリ管理部７０３は、ＭＦＰ１１０にインストールされているＭＦＰアプリを管理する。ライセンス情報テーブル７２０は、インストールされたＭＦＰアプリおよびライセンスファイルに関係する情報を保存するデータベースである。
【００３１】
図１８は、実施形態に係るライセンス情報テーブル７２０の一例を模式的に示す図である。このライセンス情報テーブル７２０は、ＭＦＰアプリＩＤ１８０１、ライセンスの有効期限１８０２、ライセンスＩＤ１８０３、ライセンスＩＤ履歴１８０４を保持している。ライセンスＩＤ履歴１８０４は、過去にインストールしたライセンスＩＤの履歴であり、ライセンスの再利用を防止するために保持している。
【００３２】
行１８１１は、ＭＦＰアプリＩＤが「ＡＰＰ７１１」であるＭＦＰアプリに対して、有効期限が無期限のライセンスがライセンスＩＤ「ＬＩＣ０１０」で発行されていることを示している。行１８１２は、ＭＦＰアプリＩＤが「ＡＰＰ７１２」であるＭＦＰアプリに対して、有効期限が２０１６年１２月１０日のライセンスがライセンスＩＤ「ＬＩＣ００２」で発行されていることを示している。また、過去にライセンスＩＤ「ＬＩＣ００３」のライセンスがインストールされたことを示している。行１８１３は、ＭＦＰアプリＩＤが「ＡＰＰ７１３」であるＭＦＰアプリに対して、有効期限が無期限のライセンスがライセンスＩＤ「ＬＩＣ０１１」で発行されていることを示している。
【００３３】
メニューアプリ７０４は、ＭＦＰ１１０にインストールされているＭＦＰアプリを選択して実行させるためのＧＵＩを表示する。Ｗｅｂブラウザ７０５、Ｗｅｂブラウザ７０６は、Ｗｅｂアプリサーバ１３０と通信を行う。Ｗｅｂブラウザ７０５、Ｗｅｂブラウザ７０６は、Ｗｅｂアプリサーバ１３０にＨＴＴＰプロトコルを用いて要求を送信する。そして、その要求に応答して返送されるＨＴＭＬデータ（画面情報）をレンダリングして操作部１１１に表示したり、応答されたＪａｖａＳｃｒｉｐｔ（登録商標）を解釈して実行したりする。Ｗｅｂブラウザ７０５、Ｗｅｂブラウザ７０６は、それぞれ、異なるブラウザであり、例えば、ブラウザエンジン（ＨＴＭＬレンダリングなど）が異なる。
【００３４】
次に、ＭＦＰアプリの購入者によるＭＦＰアプリのインストールについて説明する。ユーザはＰＣ１４０を用いて、インストール処理部７０１に対して、暗号化されたアプリケーション（アプリケーションプログラムファイル）と、暗号化されたライセンスファイルを送信する。インストール処理部７０１は、受信したそれぞれのファイルを用いてそのＭＦＰアプリのインストール処理を行う。このときまずインストール処理部７０１はライセンスファイル復号鍵７０２を用いて、ライセンスファイルを復号する。そして、その復号したライセンスファイルに含まれるＭＦＰアプリの暗号共通鍵を用いて、暗号化されたＭＦＰアプリを復号する。こうして復号されたＭＦＰアプリは、ＭＦＰアプリ管理部７０３に渡されてＨＤＤ２０４に保存される。この時、復号されたライセンスファイルに記載されているデバイスＩＤと、ＭＦＰ１１０に予め設定されているデバイスＩＤとを比較し、正しいライセンスファイルかどうかを判定する。またライセンスファイルに記載されている有効期限と現在の日時とから、そのＭＦＰアプリが無効となる日時を計算し、有効期限日としてＭＦＰアプリ管理部７０３で管理する。
【００３５】
図７では、実施形態の一例としてＡＰＰ７１１、ＡＰＰ７１２、ＡＰＰ７１３の３本のＭＦＰアプリがインストールされているものとする。なお、本実施形態ではＭＦＰアプリとして、Ｗｅｂ接続用ＭＦＰアプリとローカルＭＦＰアプリという２種類のＭＦＰアプリを定義する。また、単にＭＦＰアプリと記述した場合は、Ｗｅｂ接続用ＭＦＰアプリとローカルＭＦＰアプリを総称したものとする。ＡＰＰ７１１とＡＰＰ７１２はＷｅｂ接続用ＭＦＰアプリで、ＡＰＰ７１３はローカルＭＦＰアプリである。
【００３６】
Ｗｅｂ接続用ＭＦＰアプリは、Ｗｅｂサーバに配置されたＷｅｂアプリが提供する機能をＭＦＰ１１０から実行するためのアプリである。Ｗｅｂ接続用ＭＦＰアプリは、Ｗｅｂブラウザ７０５、あるいは、Ｗｅｂブラウザ７０６を用いてＷｅｂアプリに接続して、Ｗｅｂアプリが提供する機能をＭＦＰ１１０から実行する。Ｗｅｂ接続用ＭＦＰアプリの詳細は図８で後述する。
【００３７】
一方、ローカルＭＦＰアプリは、ＭＦＰ１１０のスキャナ部１１２、プリンタ部１１３、画像処理部２０８などを利用した機能をソフトウェアモジュールとしてＭＦＰ１１０に提供するアプリである。ローカルＭＦＰアプリは、自身が持つソフトウェアモジュールを呼び出すことで、自身が提供する機能をＭＦＰ１１０で実行する。ローカルＭＦＰアプリの詳細は図１６で後述する。なお、ＭＦＰにインストールされているＭＦＰアプリの種類、本数はＭＦＰごとに異なる。
【００３８】
ＭＦＰアプリは例えばＪＡＶＡ（登録商標）で記述されたプログラムであり、ＭＦＰ１１０に設けたたとえばＪＡＶＡ（登録商標）実行環境などをベースにしたプラットフォームにインストールされる。
【００３９】
設定管理部７０７は、複数搭載されているブラウザのうち、標準として使用するブラウザを特定するための情報を管理する。ここでは、標準ブラウザの設定情報を管理するための標準ブラウザテーブルを保有する。図９（Ｂ）は、テーブルの一例であり、Ｗｅｂブラウザ７０５が、標準ブラウザに設定されていることを示す。尚、テーブルは一例であり、標準ブラウザが特定できる情報を保持していればよい。
【００４０】
ユーザ管理部７０８は、ユーザを管理し、ログイン中のユーザを特定する情報を管理する。図９（Ｄ）が、ユーザ管理部７０８が保持しているテーブルの一例であり、ＵｓｅｒＡが、ログイン中のユーザである。尚、テーブルは一例であり、ログイン中のユーザが特定できる情報を保持していればよい。
【００４１】
フォーマット変換部７０９は、タイプ情報とタイプ情報を含んだクッキーが引数で指定されることでフォーマット変換の依頼を受け付ける。クッキー情報のタイプを引数で指定されたタイプ情報にあわせるような変換を行い、変換結果のクッキー情報を返す。本実施形では、フォーマット変換部７０９は、変換テーブルを持ち、その変換テーブルに基づいて、フォーマット変換を行う。具体的には、タイプ１のクッキーから、タイプ２のクッキーに変換する場合、タイプ１のクッキーと、タイプ１からタイプ２に変換する変換テーブルに基づいて、タイプ１のクッキーを、タイプ２のクッキーに変換する。
【００４２】
ブラウザ判断部７１０は、設定管理部７０７が保持する標準ブラウザテーブルを用いて、標準ブラウザとして設定されている標準ブラウザを特定する。接続アプリ管理部７１１は、複数のＷｅｂ接続アプリのうち、呼び出し中のアプリを特定するための情報を管理する。図９（Ａ）が、接続アプリ管理部７１１が管理するテーブルの一例であり、Ｗｅｂ接続用アプリＡＰＰ７１１が、呼び出し中のアプリである。
【００４３】
Ｗｅｂブラウザ７０５と、Ｗｅｂブラウザ７０６は、異なるＷｅｂブラウザである。クッキー管理部７０５０１は、Ｗｅｂブラウザ７０５で用いるクッキー（Ｋｅｙ、Ｖａｌｕｅ）を保持する。クッキー管理部７０６０１は、Ｗｅｂブラウザ７０６で用いるクッキー（Ｋｅｙ、Ｖａｌｕｅ）を保持する。クッキー（クッキー情報）の例としては、ログインをするための認証ＩＤ（ユーザＩＤ、ユーザの識別情報）やパスワード、文書を格納するサービス等で指定する際の文書名などがある。
【００４４】
●Ｗｅｂ接続用ＭＦＰアプリ
図８は実施形態に係るＷｅｂ接続用ＭＦＰアプリのソフトウェアモジュールの構成を示す図である。Ｗｅｂ接続用ＭＦＰアプリは、Ｗｅｂアプリごとに必要となる設定情報をマニフェストファイル８０１や電子署名用鍵８１５に保持する。つまり、ひとつのＷｅｂアプリに対して、ひとつのＷｅｂ接続用ＭＦＰアプリが必要となる。ＭＦＰ１１０には、使用するＷｅｂアプリに応じたＷｅｂ接続用ＭＦＰアプリをインストールする。複数のＷｅｂアプリを使用する場合、複数のＷｅｂ接続用ＭＦＰアプリをＭＦＰ１１０にインストールする。その場合、複数のＷｅｂ接続用ＭＦＰアプリは、Ｗｅｂブラウザ７０５、あるいは、Ｗｅｂブラウザ７０６を共有して使用することになる。Ｗｅｂ接続用ＭＦＰアプリも、ＭＦＰアプリ管理部４０２によるＭＦＰアプリの暗号化に際して暗号化対象とはならないマニフェストファイル８０１と、暗号化対象となるアプリケーションプログラムファイル本体部とを含む。図８に提示したこれらソフトウェアモジュールは、ＭＦＰ１１０のＨＤＤ２０４に格納され、実行時にはＲＡＭ２０３に展開されてＣＰＵ２０１により実行される。
【００４５】
マニフェストファイル８０１は、ＭＦＰアプリの基本情報とＷｅｂアプリへ接続するための情報を記述したファイルである。図６（Ｂ）に実施形態に係るマニフェストファイルの一例を示す。マニフェストファイルにはＭＦＰアプリＩＤ９０１、アプリケーション名９０２、ＷｅｂアプリケーションＵＲＬ９０３、コンテキストルートＵＲＬ９０４、デバイス情報リスト９０５が定義されている。
【００４６】
ＭＦＰアプリＩＤ９０１は、ＭＦＰアプリ管理テーブル４０３で管理されているものと同じＩＤである。アプリケーション名９０２は、ＭＦＰアプリの名称を表す。これらの基本情報は、アプリケーションプログラムファイル本体が暗号化されていても復号することなく参照することができる。ＷｅｂアプリケーションＵＲＬ９０３、コンテキストルートＵＲＬ９０４、デバイス情報リスト９０５は、Ｗｅｂ接続用ＭＦＰアプリ固有の情報である。
【００４７】
ＷｅｂアプリケーションＵＲＬ９０３は、ＷｅｂアプリのトップページのＵＲＬを表す。すなわちＷｅｂアプリケーションＵＲＬ９０３は、Ｗｅｂアプリによるサービスを受けるためのアクセス先情報（ＵＲＬ情報）を示す。コンテキストルートＵＲＬ９０４は、Ｗｅｂアプリの最上位パスを表す。デバイス情報リスト９０５は、Ｗｅｂアプリのトップページを呼び出す際に通知するデバイス情報の一覧を表す。デバイス情報とは、ＭＦＰ１１０に関する情報のことで、例えば、ＭＦＰ１１０の個体や機種を特定する情報、ＭＦＰ１１０で有効なオプション機能、ログインしているユーザ名、ソフトウェアのバージョンなどである。デバイス情報の取得が不要な場合、マニフェストファイルにデバイス情報リスト９０５を定義しないことも許される。マニフェストファイルに記録された情報は、対応するＭＦＰアプリごとに固有に関連付けられた情報である。
【００４８】
アプリケーションプログラムファイル本体において、メニューアプリ連携部８１１は、メニューアプリ７０４と連携するモジュールで、メニューアプリ７０４にＷｅｂ接続用ＭＦＰアプリを呼び出すためのＧＵＩボタンを登録する。Ｗｅｂブラウザ連携部８１２は、Ｗｅｂブラウザ７０５、あるいは、Ｗｅｂブラウザ７０６を操作するためのモジュールである。具体的には、Ｗｅｂブラウザ７０５、あるいは、Ｗｅｂブラウザ７０６へＷｅｂアプリのＵＲＬとクッキーを渡したり、Ｗｅｂブラウザ７０５、あるいは、Ｗｅｂブラウザ７０６を操作部１１１の前面に表示したりする。デバイス情報取得部８１３は、デバイス情報リスト９０５で指定されたデバイス情報を取得する。署名処理部８１４は、Ｗｅｂアプリへ接続する際に付加する電子署名を生成する。電子署名は、電子署名用鍵８１５を使って生成する。電子署名は、Ｗｅｂ接続用ＭＦＰアプリからの呼び出しであることをＷｅｂアプリがチェックするために使用する。Ｗｅｂアプリが、このチェックを省略することは自由であり、その場合、電子署名は不要であるため、Ｗｅｂ接続用ＭＦＰアプリは電子署名用鍵８１５を含まない構成となる。
【００４９】
なお、個々のＷｅｂ接続用ＭＦＰアプリで異なるのは、マニフェストファイル８０１の記述と電子署名用鍵８１５のみであり、他のソフトウェアモジュールは全てのＷｅｂ接続用ＭＦＰアプリで同一である。つまり、ソフトウェアモジュールを流用すれば、Ｗｅｂアプリに関する情報を定義するだけで、Ｗｅｂ接続用ＭＦＰアプリを作成することができる。例えば、Ｗｅｂアプリに関する情報を入力すると、Ｗｅｂ接続用ＭＦＰアプリを出力するようなツールを用意することで、簡単にＷｅｂ接続用ＭＦＰアプリを作成することができる。
【００５０】
作成したＷｅｂ接続用ＭＦＰアプリはライセンス管理サーバ１２０に送信することにより、マニフェストファイル８０１以外のソフトウェアモジュール、ファイルが暗号化され、１つのファイルとしてまとめられる。アプリケーション開発ベンダーは、このアプリケーションの暗号化機能を利用することにより、このアプリケーションの中身を第三者が解析するのを防止できる。また内部に含んでいる電子署名用鍵８１５が取り出されるのを防止できる。
【００５１】
クッキー管理部８１６は、ユーザ、ＵＲＬ、Ｋｅｙ、Ｖａｌｕｅなどのクッキーを管理し、保持する。図９（Ｄ）は、Ｗｅｂ接続用アプリＡＰＰ７１１のクッキー管理部８１６が保持しているクッキーの一例である。
【００５２】
●Ｗｅｂアプリサーバのソフトウェア
図１０は、本実施形態に係るＷｅｂアプリサーバ１３０のソフトウェアモジュールの構成を示す図である。これらソフトウェアモジュールは、Ｗｅｂアプリサーバ１３０のＨＤＤ３０４に格納されており、実行時にＲＡＭ３０２に展開されＣＰＵ３０１により実行されることにより、これらソフトウェアモジュールの機能が達成される。
【００５３】
通信部１００１は、ネットワークを介して外部装置と通信して要求の受け付けや応答を行う。Ｗｅｂアプリ処理部１００２は、ＨＴＴＰプロトコルによるＭＦＰ１１０からの要求に応じる。そして、ＭＦＰ１１０のＷｅｂブラウザ７０５、あるいは、Ｗｅｂブラウザ７０６により表示されるＨＴＭＬコンテンツを生成したり、ＭＦＰ１１０を操作するためのコンテンツを生成したりする。署名検証部１００３は、図８で示したＷｅｂ接続用ＭＦＰアプリに含まれる電子署名用鍵８１５に対応する電子署名用鍵１００４を含んでおり、この鍵で電子署名した署名情報の検証を行う。電子署名を検証することで、Ｗｅｂ接続用ＭＦＰアプリがインストールされたＭＦＰ１１０からの要求であるかどうかを判断することができる。本実施例では一例として電子署名技術にＨＭＡＣ（Ｈａｓｈ−ｂａｓｅｄ  Ｍｅｓｓａｇｅ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｃｏｄｅ）を用いるものとする。つまり、電子署名用鍵８１５と電子署名用鍵１００４は同一の秘密鍵（共通鍵）である。なお、電子署名は他の技術を用いてもよい。例えば、電子署名技術としてデジタル署名を用いた場合、デジタル署名は公開鍵暗号方式であるため、Ｗｅｂ接続用ＭＦＰアプリの電子署名用鍵８１５は秘密鍵で、Ｗｅｂアプリサーバ１３０の電子署名用鍵１００４はその秘密鍵に対応する公開鍵となる。
【００５４】
●ＭＦＰアプリのインストール処理
図１１は、ＭＦＰ１１０が行うＭＦＰアプリのインストール処理を説明するためのフローチャートである。ＭＦＰ１１０のＨＤＤ２０４に記憶されているプログラムを、ＣＰＵ２０１がＲＡＭ２０３に読み出し、解析、実行することで、図１１のフローチャートの各ステップが実行される。事前準備として、ＭＦＰアプリ購入者は、前述したように、暗号化されたＭＦＰアプリとライセンスアクセス番号をＭＦＰアプリの販売者から受け取り、ライセンス管理サーバ１２０からライセンスファイルを受け取り、ＰＣ１４０に格納しているものとする。
【００５５】
先ずインストール処理部７０１は、ＭＦＰアプリ購入者が操作するＰＣ１４０からインストールの指示として暗号化されたＭＦＰアプリと、暗号化されたライセンスファイルを受け取る（ステップＳ１１０１）。インストール処理部７０１は、ライセンスファイル復号鍵７０２を用いて、受け取ったライセンスファイルを復号する。そして、その復号したライセンスファイルに含まれるＭＦＰアプリの暗号共通鍵を用いて、暗号化されたＭＦＰアプリを復号する（ステップＳ１１０２）。ここでＭＦＰアプリがＷｅｂ接続用ＭＦＰアプリだった場合は、メニューアプリ連携部８１１、Ｗｅｂブラウザ連携部８１２、デバイス情報取得部８１３、署名処理部８１４の各モジュールと、電子署名用鍵８１５のファイルが復号される。また、ＭＦＰアプリがローカルＭＦＰアプリだった場合は、メニューアプリ連携部１６１１、スキャナ処理部１６１２、送信処理部１６１３の各モジュールが復号される。
【００５６】
インストール処理部７０１は、ライセンスファイルとＭＦＰアプリが両方とも復号できたかどうかをチェックする（ステップＳ１１０３）。インストール処理部７０１は、両方とも復号できた場合はステップＳ１１０４へ処理を進める。インストール処理部７０１は、どちらか一方または両方とも復号できなかった場合はエラーを通知（ステップＳ１１１０）して処理を終了する。
【００５７】
ステップＳ１１０４で、インストール処理部７０１は、復号したライセンスファイルに記載されているデバイスＩＤと、ＭＦＰ１１０に予め設定されているデバイスＩＤとを比較し、そのＭＦＰ１１０に適合した正しいライセンスファイルかどうかを判定する。インストール処理部７０１は、ライセンスファイルが正しいと判定すると、ステップＳ１１０５に処理を進める。インストール処理部７０１は、正しいライセンスファイルでないと判定すると、エラーを通知（ステップＳ１１１０）して処理を終了する。
【００５８】
ステップＳ１１０５で、インストール処理部７０１は、ライセンス情報をライセンス情報テーブル７２０に格納する。ライセンス情報とは、ＭＦＰアプリＩＤ、ライセンスＩＤ，ライセンスの有効期限を含む。ここで、インストール処理部７０１は、ライセンスファイルに記録されている有効期限と現在の日時から、ＭＦＰアプリが無効となる日時を計算してライセンスの有効期限として登録する。ライセンスファイルに記録されている有効期限が無期限の場合は、そのまま無期限として登録する。
【００５９】
次にインストール処理部７０１は、復号したＭＦＰアプリとライセンスファイルをＨＤＤ２０４に保存する。続けてインストール処理部７０１は、ＨＤＤ２０４に保存したＭＦＰアプリをＲＡＭ２０３に読み出し、起動する（ステップＳ１１０７）。起動したＭＦＰアプリは、メニューアプリにＭＦＰアプリを呼び出すためのＧＵＩボタンを登録する（ステップＳ１１０８）。このとき、起動したＭＦＰアプリがＷｅｂ接続用ＭＦＰアプリの場合は、メニューアプリ連携部８１１がステップＳ１１０７の処理を行う。一方、起動したＭＦＰアプリがローカルＭＦＰアプリの場合は、メニューアプリ連携部１６１１がステップＳ１１０７の処理を行う。また、操作部１１１に表示する画面を持たず、メニューアプリにＧＵＩボタンを登録する必要がないローカルＭＦＰアプリの場合は、ステップＳ１１０８の処理をスキップする。
【００６０】
図１２（Ａ）は、実施形態に係るＭＦＰ１１０にＭＦＰアプリＡＰＰ７１１、ＡＰＰ７１２をインストールした状態で、ＭＦＰ１１０のメニューアプリ７０４を呼び出したときに操作部１１１に表示されるＧＵＩの一例を示す図である。ＧＵＩボタン１２０１は、ＭＦＰ１１０に最初から備わっているアプリケーションを呼び出すためのＧＵＩボタンである。
【００６１】
ＧＵＩボタン１２０２は、Ｗｅｂブラウザ７０５を呼ぶ出すためのＧＵＩボタンである。ＧＵＩボタン１２０３は、Ｗｅｂブラウザ７０６を呼ぶ出すためのＧＵＩボタンである。Ｗｅｂブラウザ７０５、Ｗｅｂブラウザ７０６は、それぞれ、異なるブラウザであり、例えば、レンダリングエンジンなどが異なる。ＧＵＩボタン１２０２、あるいは、ＧＵＩボタン１２０３を押下すると、対応するＷｅｂブラウザのブラウザ画面を表示する。なお、Ｗｅｂアプリへ接続するためには、ブラウザ画面で、ユーザがＵＲＬアドレスを入力あるいは指定する。
【００６２】
ＧＵＩボタン１２０４は、Ｗｅｂ接続用ＭＦＰアプリＡＰＰ７１１を呼び出すためのＧＵＩボタンである。ＧＵＩボタン１２０５は、Ｗｅｂ接続用ＭＦＰアプリＡＰＰ７１２を呼び出すためのＧＵＩボタンである。本実施形態では、ＧＵＩボタン１２０４における「ＸＸ専用」、ＧＵＩボタン１２０５における「ＹＹ専用」は、アプリケーションの名称である。
【００６３】
ＧＵＩボタン１２０６は、ローカルＭＦＰアプリＡＰＰ７１３を呼び出すためのＧＵＩボタンである。図１２に示したようにメニューアプリ７０４はＭＦＰアプリの種類を区別せずにＧＵＩボタンを表示する。
【００６４】
ＧＵＩボタンは、ライセンスが有効な期間のみ選択可能である。例えば、ＡＰＰ７１２を６０日間有効なライセンスでインストールした場合、インストールしてから６０日目まではＧＵＩボタン１２０５は有効であるが、６１日目からはＧＵＩボタン１２０６は無効となる。ＧＵＩボタン１２０６が無効になると、それに対応するＭＦＰアプリＡＰＰ７１２の呼び出しができなくなるため、Ｗｅｂアプリへの接続もできない。
【００６５】
ＧＵＩボタン１２０７は、実施形態に係るＭＦＰ１１０の設定を呼び出すための機能を提供する。本実施形態においては、複数のブラウザを搭載することにともない、複数のブラウザのうち、標準として使用するブラウザ（標準ブラウザ）を設定する。Ｗｅｂブラウザを指定しないで、Ｗｅｂブラウザを呼び出したとき、標準として設定されたＷｅｂブラウザが使用される。
【００６６】
図１２（Ｂ）は、標準として使用するブラウザ（標準ブラウザ）を設定するための画面である。ここでは、Ｗｅｂブラウザ７０５が標準ブラウザに設定していることを示す。Ｗｅｂブラウザ７０５が標準ブラウザに設定された情報は、設定管理部７０７が管理する図９（Ｂ）のテーブルに格納される。
【００６７】
●メニューアプリによる処理
図１９は、ＭＦＰ１１０にインストールされたメニューアプリ７０４が呼び出し指示を受けたときに行う処理を説明するためのフローチャートである。メニューアプリ７０４は、ＧＵＩボタンに対応するＭＦＰアプリのライセンスを確認し、ライセンスが有効なＭＦＰアプリのボタンのみを選択可能にする。ＭＦＰ１１０のＨＤＤ２０４に記憶されているプログラムを、ＣＰＵ２０１がＲＡＭ２０３に読み出し、解析、実行することで、図１９のフローチャートの各ステップが実行される。
【００６８】
メニューアプリ７０４は呼び出しの指示を受け付ける（ステップＳ１９０１）と、自身に登録されているＧＵＩボタンの一覧をリストアップする（ステップＳ１９０２）。呼び出しの指示は例えばＭＦＰ１１０の起動時やユーザによる所定の操作に応じて出される。次に、メニューアプリ７０４は、リストアップしたＧＵＩボタンの有効性を検証するためにステップＳ１９０３からステップＳ１９０８の処理をＧＵＩボタンごとに繰り返す。
【００６９】
メニューアプリ７０４は、ＧＵＩボタンが最初から備わっているアプリケーションに対応するＧＵＩボタンかどうかを判別する（ステップＳ１９０４）。最初から備わっているアプリケーションに対応するＧＵＩボタンであればステップＳ１９０６へ処理を進め、後からインストールされたＭＦＰアプリに対応するＧＵＩボタンであればステップＳ１９０５へ処理を進める。ステップＳ１９０５で、メニューアプリ７０４はＧＵＩボタンに対応するＭＦＰアプリのライセンス有効期限を、ライセンス情報テーブル７２０を用いて判別する。すなわちライセンスの有効性を判定する。ライセンスが有効期限内であればステップＳ１９０６へ処理を進め、ライセンスが有効期限切れであればステップＳ１９０７へ処理を進める。ステップＳ１９０６で、メニューアプリはＧＵＩボタンを有効にする。一方、ステップＳ１９０７で、メニューアプリはＧＵＩボタンを無効にする。ＧＵＩボタンを無効にする例としては、ＧＵＩボタン自体を非表示にしたり、ＧＵＩボタンは表示するが押下できない状態にしたりする。もしくは、ＧＵＩボタンを押下した後にライセンスの有効期限切れであることのメッセージを表示するようにしてもよい。メニューアプリ７０４は、すべてのＧＵＩボタンの処理が終われば、ステップＳ１９０９へ処理を進める。最後に、メニューアプリ７０４は、図１２で示したメニューアプリの画面を操作部１１１に表示して処理を終了する（ステップＳ１９０９）。メニューアプリにより表示されたＧＵＩボタンが操作されてＭＦＰアプリが実行された後、再度メニュー画面に戻るためにはメニューアプリが呼び出されて図１９が実行される。そのため、メニュー画面が表示される都度、標準でないＭＦＰアプリのライセンスの有効期限がチェックされることになる。
【００７０】
●Ｗｅｂアプリの呼び出し及び実行
図１３は、ＭＦＰ１１０からＷｅｂアプリを利用する際の一連の処理の流れを示したシーケンス図である。ここでは例としてメニューアプリ７０４に表示したＧＵＩボタン１２０５がユーザによって選択された場合の処理を説明する。
【００７１】
最初にＭＦＰ１１０のメニューアプリ７０４はユーザによるＧＵＩボタン１２０５の押下を受け付けると、ＧＵＩボタン１２０５に対応したＭＦＰアプリＡＰＰ７１２を呼び出す（ステップＳ１３０１）。呼び出されたＭＦＰアプリＡＰＰ７１２はＭＦＰアプリＡＰＰ７１２のマニフェストファイルに定義された情報に基づいてＷｅｂアプリのトップページを呼び出すために必要な情報を作成する（ステップＳ１３０２）。Ｗｅｂアプリのトップページを呼び出すために必要な情報には、デバイス情報リスト９０５で定義したデバイス情報や電子署名用鍵８１５を用いて作成した電子署名などが含まれる。ブラウザ判断部７１０は、標準として使用されるブラウザ（標準ブラウザ）を特定する（ステップＳ１３１１）。ここでは、標準ブラウザとして、Ｗｅｂブラウザ７０５が特定されたとする。ＭＦＰアプリＡＰＰ７１２は、特定されたＷｅｂブラウザを用いて、ステップＳ１３０２で作成した情報に基づきＷｅｂアプリのトップページを呼び出す（ステップＳ１３０３）。
【００７２】
呼び出しを受けて、Ｗｅｂアプリサーバ１３０は、呼び出しに対する検証を行う（ステップＳ１３０４）。呼び出しに対する検証として、例えば、電子署名の正当性をチェックすることで、Ｗｅｂ接続用ＭＦＰアプリＡＰＰ７１２がインストールされたＭＦＰ１１０からの呼び出しであることを確認する。検証の結果を踏まえて、Ｗｅｂアプリサーバ１３０は、呼び出しに対する応答をＭＦＰ１１０（Ｗｅｂブラウザ）に対して行う（ステップＳ１３０５）。この応答にはたとえば検証の結果としてＯＫ（検証成功）あるいはＮＧ（検証失敗）などを示す情報が含まれる。検証の結果がＯＫであれば、Ｗｅｂアプリサーバ１３０は次の操作に必要な画面を構成するためのＨＴＭＬコンテンツを応答する。
【００７３】
Ｗｅｂブラウザ７０５は受け取ったＨＴＭＬをレンダリングし、操作部１１１に画面を表示する（ステップＳ１３０６）。次にＷｅｂブラウザ７０５は、ユーザの画面操作指示を受け取る（ステップＳ１３０７）と、それに対応するリクエストをＨＴＴＰプロトコルでＷｅｂアプリサーバ１３０へ送信する（ステップＳ１３０８）。
【００７４】
リクエストを受け取ったＷｅｂアプリサーバ１３０は、リクエストに対する処理を行い（ステップＳ１３０９）、処理結果にもとに次の画面を構成するためのＨＴＭＬコンテンツをＭＦＰ１１０（Ｗｅｂブラウザ７０５）へ応答する（ステップＳ１３１０）。以降、ステップＳ１３０６からステップＳ１３１０を繰り返すことで、Ｗｅｂアプリの処理および画面遷移を実現する。
【００７５】
図１４は、Ｗｅｂ接続用ＭＦＰアプリがＷｅｂアプリのトップページを呼び出す際の処理を説明するためのフローチャートである。ＭＦＰ１１０のＨＤＤ２０４に記憶されているプログラムを、ＣＰＵ２０１がＲＡＭ２０３に読み出し、解析、実行することで、図１４のフローチャートの各ステップが実行される。図１４のフローチャートは、図１３のステップＳ１３０１からステップＳ１３０３の処理を詳細に説明したものである。図１３のステップＳ１３０１は、図１４ではステップＳ１４０１に相当する。図１３のステップＳ１３０１とステップＳ１３０２は、図１４ではステップＳ１４０２からステップＳ１４１１、Ｓ１４１３からＳ１４１５に相当する。図１３のステップＳ１３０３は、図１４ではステップＳ１４１２に相当する。
【００７６】
Ｗｅｂ接続用ＭＦＰアプリのメニューアプリ連携部８１１は、ユーザによるＧＵＩボタン押下を受け取ったメニューアプリ７０４からの呼び出し指示を受け取る（ステップＳ１４０１）。接続アプリ管理部７１１は、呼び出し指示を受けたＷｅｂ接続用ＭＦＰアプリ（ＭＦＰアプリＡＰＰ７１２）を特定する情報を保持する（ステップＳ１４１３）。図９（Ａ）は、接続アプリ管理部７１１が管理するテーブルのイメージ図であり、ＭＦＰアプリＡＰＰ７１２が呼び出しアプリであることを示す。
【００７７】
次にＷｅｂブラウザ連携部８１２は、マニフェストファイル８０１からＷｅｂアプリの情報であるトップページＵＲＬ９０３、デバイス情報リスト９０５を取得する（ステップＳ１４０２）。なお、Ｗｅｂ接続用ＭＦＰアプリによっては、マニフェストファイル８０１にデバイス情報リスト９０５が定義されていない場合がある。その場合は、定義されている情報のみを取得する。
【００７８】
デバイス情報取得部８１３は、ステップＳ１４０２でデバイス情報リスト９０５を取得していれば、そのデバイス情報リスト９０５に列挙されているデバイス情報を取得する（ステップＳ１４０３、Ｓ１４０４）。図６（Ｂ）に提示したマニフェストファイルに従うと、デバイス情報取得部８１３は、ｕｓｅｒ＿ｉｄ、ｄｅｖｉｃｅ＿ｉｄ、ｄｅｖｉｃｅ＿ｍｏｄｅｌ、ｅｎｃｒｙｐｔ＿ｐｄｆ、ｐｒｉｎｔ＿ｓｅｒｖｉｃｅ＿ｖｅｒに該当するデバイス情報を取得する。ｕｓｅｒ＿ｉｄは、ＭＦＰ１１０にログインしているユーザのＩＤを表す。ｄｅｖｉｃｅ＿ｉｄは、ＭＦＰ１１０のデバイスＩＤを表す。ｄｅｖｉｃｅ＿ｍｏｄｅｌは、ＭＦＰ１１０の機種を表す。ｅｎｃｒｙｐｔ＿ｐｄｆは、暗号化ＰＤＦオプションの装着状況を表す。ｐｒｉｎｔ＿ｓｅｒｖｉｃｅ＿ｖｅｒは、ＷｅｂアプリからＭＦＰ１１０に印刷を依頼するためのＷｅｂＳｅｒｖｉｃｅモジュールのソフトウェアバージョンを表す。図６（Ｂ）のデバイス情報リスト９０５は一例であり、取得可能なデバイス情報は、これらに制限されるものではない。
【００７９】
次に、署名処理部８１４は、Ｗｅｂ接続用ＭＦＰアプリに電子署名用鍵８１５が含まれている場合、電子署名を作成する（ステップＳ１４０５、Ｓ１４０６）。署名処理部８１４は、署名用文字列をメッセージ、電子署名用鍵８１５を秘密鍵としてハッシュ関数を用いてメッセージダイジェスト（ＨＭＡＣ値）を算出し、電子署名とする。署名用文字列は、トップページＵＲＬ９０３と、ＭＦＰ１１０のシステム時刻（以降、タイムスタンプ）と、ステップＳ１４０４で取得した取得したデバイス情報があればその情報を文字列として連結したものである。ブラウザ判断部７１０は、標準として設定されているブラウザを特定する（ステップＳ１４１４）。
【００８０】
続いて、Ｗｅｂブラウザ連携部８１２は、Ｗｅｂアプリのトップページを呼び出すためのＵＲＬを組み立てる（ステップＳ１４０７）。Ｗｅｂブラウザ連携部８１２は、ステップＳ１４０４で取得したデバイス情報があれば、その情報をトップページＵＲＬ９０３にクエリ文字列として付加する。さらに、Ｗｅｂブラウザ連携部８１２は、ステップＳ１４０６で取得したタイムスタンプおよび電子署名があれば、それらの情報もトップページＵＲＬ９０３にクエリ文字列として付加する。
【００８１】
Ｗｅｂブラウザ連携部８１２は、ステップＳ１４１５でクッキー管理部８１６が有するクッキー取得処理を呼び出してクッキーを取得する（ステップＳ１４１５）。そして、取得したクッキーを、標準ブラウザであるＷｅｂブラウザ７０５へ受け渡す。具体的には、ユーザ管理部７０８が管理するログイン中のユーザを特定し、ログイン中のユーザのクッキー（ユーザ、ＵＲＬ、Ｋｅｙ、Ｖａｌｕｅの値）を取得する。ここで、図９（Ｃ）はユーザ管理部が管理するユーザ管理テーブルのイメージ図である。図９（Ｄ）はクッキー管理部８１６が管理するクッキー管理テーブルのイメージ図である。この例では、ログイン中のユーザがＵｓｅｒＡであるので、図９（Ｄ）のうち、ＵｓｅｒＡに絞り込んだクッキーを取得する。
【００８２】
Ｗｅｂブラウザ連携部８１２は、ステップＳ１４０８でクッキーを取得したかどうかを判断する。１件以上取得していれば、ステップＳ１４０９へ遷移し、取得していなければステップＳ１４１０へ遷移する。
【００８３】
Ｗｅｂブラウザ連携部８１２は、ステップＳ１４０９で組み立てたＵＲＬとクッキーをＷｅｂブラウザ７０５に設定する。
【００８４】
Ｗｅｂブラウザ連携部８１２は、ステップＳ１４０７で組み立てたＵＲＬを接続先としてＷｅｂブラウザ７０５に設定する（ステップＳ１４１０）。Ｗｅｂブラウザ連携部８１２は、操作部１１１の表示をメニューアプリ７０４からＷｅｂブラウザ７０５のＧＵＩウィンドウに切り変える（ステップＳ１４１１）。操作部１１１に表示されたＷｅｂブラウザ７０５は、Ｗｅｂアプリのトップページを呼び出すため、ステップＳ１４１０で設定されたＵＲＬへアクセスする（ステップＳ１４１２）。
【００８５】
以上の処理を実行することによって、メニューアプリ７０４で指示されたＧＵＩボタンに対応するＷｅｂ接続用ＭＦＰアプリが、Ｗｅｂアプリのトップページを呼び出す。Ｗｅｂブラウザ７０５のＧＵＩウィンドウの表示結果には、Ｗｅｂ接続用ＭＦＰアプリ（ＭＦＰアプリＡＰＰ７１２）が渡したクッキーを反映することが可能となる。
【００８６】
図１６（Ａ）は、Ｗｅｂブラウザ７０５を用いて、クッキーを反映して表示した場合のＧＵＩウィンドウのイメージ図である。ユーザ名、パスワードの入力フィールドに入力補完して表示される。
【００８７】
尚、Ｗｅｂブラウザ７０６を標準ブラウザに設定変更した場合、Ｗｅｂブラウザ７０６が動作する。この場合、Ｗｅｂブラウザ７０６のＧＵＩウィンドウの表示結果には、Ｗｅｂ接続用ＭＦＰアプリ（ＭＦＰアプリＡＰＰ７１２）が渡したクッキーを反映することが可能となる。図１６（Ｂ）は、Ｗｅｂブラウザ７０６を用いて、クッキーを反映して表示した場合のＧＵＩウィンドウのイメージ図である。ユーザ名、パスワードの入力フィールドに入力補完して表示される。
【００８８】
●Ｗｅｂアプリサーバによるリクエストの処理
図１５は、Ｗｅｂアプリサーバ１３０がＭＦＰ１１０からＨＴＴＰによるリクエストを受けた場合に実行する処理を説明するためのフローチャートである。Ｗｅｂアプリサーバ１３０のＨＤＤ３０４に記憶されているプログラムを、ＣＰＵ３０１がＲＡＭ３０２に読み出し、解析、実行することで、図１５のフローチャートの各ステップが実行される。
【００８９】
図１５のフローチャートは、図１３のステップＳ１３０３からＳ１３０５およびステップＳ１３０８からＳ１３１０の処理を詳細に説明したものである。図１３のステップＳ１３０３は、図１５ではステップＳ１５０１からステップＳ１５０２に相当する。図１３のステップＳ１３０４は、図１５ではステップＳ１５０３からステップＳ１５０８に相当する。図１３のステップＳ１３０５は、図１５ではステップＳ１５０９に相当する。図１３のステップＳ１３０８は、図１５ではステップＳ１５０１からステップＳ１５０２に相当する。図１３のステップＳ１３０９は、図１５ではステップＳ１５２０に相当する。図１３のステップＳ１３１０は、図１５ではステップＳ１５０９に相当する。
【００９０】
まず通信部１００１は、ＭＦＰ１１０からＨＴＴＰによるリクエストを受け付ける（ステップＳ１５０１）。次にＷｅｂアプリ処理部１００２は、受け付けたリクエストがトップページの呼び出しか否かを判別し、トップページの呼び出しならステップＳ１５０３へ処理を進め、それ以外ならステップＳ１５２０へ処理を進める（ステップＳ１５０２）。
【００９１】
ステップＳ１５２０で、Ｗｅｂアプリ処理部１００２はステップＳ１５０１で受け取ったリクエストに応じた処理を行う。例えば、スキャン設定画面を呼び出すためのリクエストであれば、スキャン設定画面を構成するＨＴＭＬを生成する。そして、通信部１００１はステップＳ１５２０で処理した結果を、ＭＦＰ１１０へ応答して処理を終了する（ステップＳ１５０９）。
【００９２】
一方、ステップＳ１５０３で、Ｗｅｂアプリ処理部１００２はステップＳ１５０１で受け取ったリクエストに含まれるクエリ文字列を解析して、各項目を取りだす。本実施例では、ここで電子署名、タイムスタンプ、デバイス情報の各項目を取得したものとして、以降の説明を行う。
【００９３】
次に署名検証部１００３は、ステップＳ１５０３で取りだした電子署名の検証を行う（ステップＳ１５０４）。具体的には、署名検証部１００３は、署名用文字列をメッセージ、電子署名用鍵１００４を秘密鍵としてハッシュ関数を用いてメッセージダイジェストを算出し、その値がステップＳ１５０３で取りだした電子署名と一致していれば、有効な署名であるとみなす。署名用文字列は、ステップＳ１５０１で受け取ったリクエストＵＲＬと、ステップＳ１５０３で取りだしたタイムスタンプとデバイス情報を文字列として連結したものである。つまり、ＭＦＰ１１０が図１４のステップＳ１４０６で電子署名を作成するために行った処理と同じ処理を、Ｗｅｂアプリサーバ１３０で行い、その結果が一致するか否かで電子署名の有効性を確認している。ＭＦＰ１１０が持つ電子署名用鍵８１５と、Ｗｅｂアプリサーバ１３０が持つ電子署名用鍵１００４が同じ場合、結果は一致する。結果が一致していれば、Ｗｅｂ接続用ＭＦＰアプリがインストールされたＭＦＰ１１０からのリクエストであるとみなすことができる。
【００９４】
Ｗｅｂアプリ処理部１００２は電子署名が無効であれば、リクエスト元にエラーを応答して処理を終了する（ステップＳ１５３０）。一方、Ｗｅｂアプリ処理部１００２は電子署名が有効であれば、電子署名の検証結果をセッションと紐づけて保存する（ステップＳ１５０６）。電子署名の検証結果をセッションと紐づけて保存することで、以降のリクエストに対する処理において、Ｗｅｂ接続用ＭＦＰアプリがインストールされたＭＦＰ１１０からの通信であると確認することが可能になる。なお、Ｗｅｂアプリによっては、電子署名ではなく別の情報を用いてリクエスト元をチェックするようにしてもよい。その場合、ステップＳ１５０４からＳ１５０６はスキップして、代わりとなる情報をチェックする。例えば、リクエスト元のＩＰアドレスやＷｅｂブラウザのユーザエージェントをチェックするようにしてもいいし、ステップＳ１５０３で取りだしたデバイス情報をチェックするようにしてもよい。
【００９５】
ステップＳ１５０７で、Ｗｅｂアプリ処理部１００２は、ステップＳ１５０３で取りだしたデバイス情報のチェックを行う。ＭＦＰ１１０のデバイス情報を必要としないＷｅｂアプリであれば、このステップは不要である。ＭＦＰ１１０のデバイス情報が必要なＷｅｂアプリであれば、Ｗｅｂアプリ処理部１００２は、デバイス情報をチェックし、問題があればリクエスト元にエラーを応答して処理を終了する（ステップＳ１５３０）。一方、Ｗｅｂアプリ処理部１００２は、デバイス情報に問題がなければ次のステップＳ１５０８へ処理を進める。デバイス情報のチェックの例として、「ユーザＩＤの確認」や「有効なオプション機能の確認」、「ソフトウェアバージョンの確認」などがあげられる。
【００９６】
ステップＳ１５０８で、Ｗｅｂアプリ処理部１００２は、トップページを表示するためのＨＴＭＬコンテンツを生成する。最後に通信部１００１は、ステップＳ１５０８で生成したＨＴＭＬコンテンツを、ＭＦＰ１１０へ応答して処理を終了する（ステップＳ１５０９）。
【００９７】
以上において説明した手順により、Ｗｅｂアプリのライセンス管理を、情報処理装置にインストールされるＭＦＰアプリと同様に実現することが可能となる。複数のローカルＭＦＰアプリをＭＦＰ１１０で使用するためには、それぞれのローカルＭＦＰアプリをＭＦＰ１１０にインストールする必要がある。同様に、複数のＷｅｂアプリをＭＦＰ１１０で使用するためには、それぞれのＷｅｂアプリに対応したＷｅｂ接続用ＭＦＰアプリをＭＦＰ１１０にインストールする必要がある。ＭＦＰアプリをＭＦＰ１１０にインストールするためには、インストールするＭＦＰアプリ毎にライセンスが必要である。ローカルＭＦＰアプリとＷｅｂ接続用ＭＦＰアプリは、どちらもＭＦＰアプリであるため、同様のライセンス管理を実現することが可能となる。また、Ｗｅｂアプリのライセンス管理をサーバ側で行ったり、ＭＦＰにＷｅｂアプリ専用のライセンス管理の仕組みを用意したりする場合に比べ、ＭＦＰアプリのラインセスという統一した形でライセンス管理を行うことができ、販売者や管理者の利便性が向上する。
【００９８】
●Ｗｅｂブラウザの呼び出し及び実行
図２０は、ＭＦＰ１１０からＷｅｂブラウザの終了処理の流れを示したシーケンス図である。ここでは例としてＷｅｂブラウザ７０５のＧＵＩウィンドウ（図１６（Ａ））の閉じるボタン２５０１がユーザによって選択された場合の処理を説明する。なお、終了処理は、ＭＦＰ１１０のログアウト、リセット、スリープ移行等の状態変更のタイミングも含まれる。
【００９９】
最初にＷｅｂブラウザ７０５のＧＵＩウィンドウはユーザによるＧＵＩボタン２５０１の押下を受け付けると、Ｗｅｂブラウザ７０５は、クッキー管理部７０５０１のクッキーを全件取得する（ステップＳ２６００）。図９（Ｅ）はクッキー管理部７０５０１が保持するクッキーのイメージ図である。ＵＲＬ、Ｋｅｙ、Ｖａｌｕｅの値を取得する。
【０１００】
ステップＳ２６０１で、接続アプリ管理部７１１が、呼び出し元のＷｅｂ接続用ＭＦＰアプリを特定する。具体的には、接続アプリ管理部７１１が管理するテーブル（図９（Ａ））を用いて、呼び出しフラグがＯＮになっているＷｅｂ接続用アプリを特定する。図９（Ａ）の例だと、ＭＦＰアプリＡＰＰ７１２が特定される。
【０１０１】
ステップＳ２６０２で、Ｗｅｂブラウザ７０５は、特定されたＷｅｂ接続用アプリ（ＭＦＰアプリＡＰＰ７１２）に、Ｗｅｂブラウザ７０５が保持していたクッキーを渡す。次に、ステップＳ２６０３で、特定されたＷｅｂ接続用アプリ（ＭＦＰアプリＡＰＰ７１２）は、取得したクッキーを引数にクッキー管理部８１６が有するクッキー格納処理を呼び出す。クッキー格納処理は、Ｗｅｂブラウザから取得したクッキー（ＵＲＬ、Ｋｅｙ、Ｖａｌｕｅ）に、ログイン中のユーザＩＤを付与する値を生成して、クッキー管理部８１６が保有する管理テーブルに格納する。つまり、生成し格納される値は（ユーザＩＤ、ＵＲＬ、Ｋｅｙ、Ｖａｌｕｅ）でり、具体的には、図９（Ｄ）である。ステップＳ２６０４において、Ｗｅｂブラウザ７０５は、クッキー管理部７０５０１が保有するクッキーを全部削除する。
【０１０２】
ステップＳ１９０９において、表示する画面のイメージは図１２（Ａ）である。
【０１０３】
このことで、Ｗｅｂブラウザ７０５またはＷｅｂブラウザ７０６いずれかの標準ブラウザから取得したクッキーを特定の呼び出し元のＭＦＰアプリＡＰＰ７１２が格納する。
【０１０４】
本実施形態によれば、標準ブラウザ変更後のブラウザ（Ｂ）で、標準ブラウザ変更前のブラウザ（Ａ）で入力したクッキーがＷｅｂ接続用ＭＦＰアプリを用いて引き継がれる。結果として、認証ＩＤやパスワードなどの再入力が不要となり、ユーザの利便性を高める効果がある。
【０１０５】
具体的には、以下の通り。まず、ブラウザ（Ａ）を標準ブラウザに設定し、利用頻度の高い接続先のＷｅｂ接続用ＭＦＰアプリを画像形成装置にインストールをする。Ｗｅｂ接続用ＭＦＰアプリを利用すると、標準ブラウザ（ブラウザ（Ａ））で、接続先で必要となる入力フィールド（ユーザ名等）に入力を行い、ブラウザ（Ａ）が入力されたクッキーを格納する。画像形成装置の設定機能を使用して、ブラウザ（Ｂ）を標準ブラウザに設定を変更する。Ｗｅｂ接続用ＭＦＰアプリを利用して、標準ブラウザ（ブラウザ（Ｂ））で、ブラウザ（Ａ）が保有するクッキーは引き継ぐことができる。
【０１０６】
（第２の実施形態）
第１の実施形態では、複数のブラウザのクッキーのフォーマットに差異がない場合の例について説明した。本実施形形態は、複数のブラウザのクッキーのフォーマットに差異があり、ブラウザ間で共有するには、変換が必要な例について説明する。例えば、ブラウザＡが保持するクッキーが、タイプ１のフォーマットで、ブラウザＢが保持するクッキーが、タイプ２のフォーマットであるとする。その場合、ブラウザＡのクッキーを、ブラウザＢはそのまま用いることができないため、ブラウザＢが使用可能なように、ブラウザＡのクッキーのフォーマット変換を行う。尚、以下では、第１の実施形態と異なる箇所のみ説明する。
【０１０７】
図２２は、ＭＦＰ１１０からＷｅｂブラウザの終了処理の流れを示したシーケンス図である。図２０に、ステップＳ３３０１、ステップＳ３３０２が追加されている点が、第１の実施形態と異なる。ここでは例としてＷｅｂブラウザ７０５のＧＵＩウィンドウ（図１６（Ａ））の閉じるボタン２５０１がユーザによって選択された場合の処理を説明する。
【０１０８】
ステップＳ３３０１で、フォーマット変換部７０９が、標準ブラウザのＷｅｂブラウザとタイプを認識する。ここでは、標準ブラウザが、Ｗｅｂブラウザ７０５であり、タイプ情報が１と認識される。ステップＳ３３０２で、フォーマット変換部７０９が、取得したクッキーに認識した特定タイプを付与したクッキーに変換を行う。図１７（Ｃ）は変換後のクッキーの一例を示す。
【０１０９】
次に、ＧＵＩボタン１２０７を押下して標準ブラウザをＷｅｂブラウザ７０６に設定した後、Ｗｅｂアプリの呼び出し及び実行をする処理について述べる。
【０１１０】
図２１は、Ｗｅｂ接続用ＭＦＰアプリがＷｅｂアプリのトップページを呼び出す際の処理を説明するためのフローチャートである。図２１は、図１４と、ステップＳ２９０１、Ｓ２９０２、Ｓ２９０３、Ｓ２９０４が異なり、他のステップは、図１４と同様である。以下、異なる箇所のみ説明を行う。
【０１１１】
ステップＳ２９０１において、Ｗｅｂブラウザ連携部８１２は、ブラウザ判断部７１０が提供する標準ブラウザ特定処理を呼び出し、標準ブラウザとして設定されているブラウザとそのブラウザが用いるクッキーのタイプを特定する。図１７（Ａ）は、設定管理部７０７が管理する標準ブラウザ管理テーブルであり、このテーブルを参照することで、標準ブラウザとタイプを特定する。この例では、標準ブラウザのＷｅｂブラウザ７０６とタイプ（２）を認識する。
【０１１２】
Ｗｅｂブラウザ連携部８１２は、ステップＳ２９０２でクッキー管理部８１６が提供するクッキー取得処理を呼び出してクッキーを取得する。ログイン中のユーザを特定し、特定したユーザのクッキーを取得する。具体的には、管理テーブルにある、ログイン中のユーザと合致するユーザ、ＵＲＬ、Ｋｅｙ、Ｖａｌｕｅ、タイプの値を特定し、ユーザ、ＵＲＬ、Ｋｅｙ、Ｖａｌｕｅ、タイプの値をワークメモリにクッキーを記憶する。図１７（Ｂ）はクッキー管理部８１６が管理するクッキー管理テーブルのイメージ図である。
【０１１３】
ステップＳ２９０３で、Ｗｅｂブラウザ連携部８１２は、認識したタイプ（２）とワークメモリに認識したクッキーをフォーマット変換部７０９に渡す。フォーマット変換部７０９は、ワークメモリのタイプの値が、認識したタイプ（２）にあうように変換を行う。変換後のクッキーを認識する。
【０１１４】
Ｗｅｂブラウザ連携部８１２は、ステップＳ２９０４（Ｓ１４０８と同様）で組み立てたＵＲＬとステップＳ２９０３で認識したクッキーをＷｅｂブラウザ７０５に設定する。
【０１１５】
このことで、Ｗｅｂブラウザ連携部８１２が保持するクッキーが標準ブラウザのクッキーのフォーマットと異なる場合は、変換後のクッキーを渡す効果を得られる。
【０１１６】
以上により異なるブラウザ（２つに限らず複数）に切り替えてもＷｅｂ接続用アプリを用いて引き継がれ、再入力が不要となりユーザの利便性を高める効果があげられる。
【０１１７】
（その他の実施例）
上記実施形態では、２つの異なるブラウザを搭載する例を説明したが、３つ以上、ブラウザを搭載し、それを切り換えて行っても構わない。また、２つのＷｅｂ接続用ＭＦＰアプリを用いる例を説明したが、３つ以上用いても構わない。
【０１１８】
また、Ｗｅｂ接続用ＭＦＰアプリは、ＷｅｂアプリにアクセスするためのＵＲＬが保持されており、かつ、使用するブラウザを特定していない（ブラウザに依存しない）ものであれば、他のものでもよい。例えば、Ｗｅｂアプリのライセンスを管理すること必要がなければ、ＷｅｂアプリにアクセスするためのＵＲＬが保持されており、かつ、使用するブラウザを特定していないショートカットでもよい。
【０１１９】
また本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【図１】
2019160056.tif 000003
【図２】
2019160056.tif 000004
【図３】
2019160056.tif 000005
【図４】
2019160056.tif 000006
【図５】
2019160056.tif 000007
【図６】
2019160056.tif 000008
【図７】
2019160056.tif 000009
【図８】
2019160056.tif 000010
【図９】
2019160056.tif 000011
【図１０】
2019160056.tif 000012
【図１１】
2019160056.tif 000013
【図１２】
2019160056.tif 000014
【図１３】
2019160056.tif 000015
【図１４】
2019160056.tif 000016
【図１５】
2019160056.tif 000017
【図１６】
2019160056.tif 000018
【図１７】
2019160056.tif 000019
【図１８】
2019160056.tif 000020
【図１９】
2019160056.tif 000021
【図２０】
2019160056.tif 000022
【図２１】
2019160056.tif 000023
【図２２】
2019160056.tif 000024