(57)【特許請求の範囲】
【請求項１】
アプリケーションであるウェブブラウザがオペレーティングシステムの上で動作する情報処理端末であって、
前記ウェブブラウザを介してアクセスしたウェブサイトから、当該ウェブブラウザのために確保されている確保領域に保存すべきデータを受信する受信手段と、
前記オペレーティングシステムに対するログインのためではなく、前記ウェブブラウザでユーザー情報の入力を受け付けるための入力手段と、
前記ウェブブラウザに対して前記入力手段を介して特定のユーザー情報が入力されてログインされている場合に、前記確保領域の中の前記特定のユーザー情報に対応するストレージに対して、前記受信したデータを暗号化して保存する保存手段と、
ユーザー情報に対応するストレージに、予め登録した他のユーザー情報に対応するストレージのデータをインポートするインポート手段と、
を有することを特徴とする情報処理端末。
【請求項２】
前記ウェブブラウザを介してアクセスしたウェブサイトに対応するデータが保存されるストレージへのアクセスに際して、当該ストレージに対応するユーザー情報を用いたログインを要求する要求手段をさらに有することを特徴とする請求項１に記載の情報処理端末。
【請求項３】
前記ウェブブラウザに対して特定のユーザー情報が入力されてログインされている場合には、前記確保領域の中の前記特定のユーザー情報に対応するストレージに保存したデータの削除を可能とする削除手段をさらに有することを特徴とする請求項１または２に記載の情報処理端末。
【請求項４】
前記ウェブブラウザに対して特定のユーザー情報が入力されてログインされている場合には、前記確保領域の中の前記特定のユーザー情報に対応するストレージに保存したデータを取得して復号する取得手段をさらに有することを特徴とする請求項１乃至３のいずれか一項に記載の情報処理端末。
【請求項５】
前記インポート手段は、インポートする前記他のユーザー情報に対応するストレージのデータを登録する際に、前記他のユーザーのユーザー情報の入力を要求することを特徴とする請求項１に記載の情報処理端末。
【請求項６】
前記ウェブブラウザのために確保されている確保領域に保存されたデータと対応するウェブサイトとをバックグラウンドで同期させる同期手段をさらに有し、
前記同期手段は、前記ウェブブラウザに対して前記入力手段を介して前記ユーザー情報が入力されてから、前記ウェブサイトから同期対象のデータの取得処理を実行して、前記ストレージを同期することを特徴とする請求項１乃至５のいずれか一項に記載の情報処理端末。
【請求項７】
前記ウェブブラウザを介してアクセスしたウェブサイトからのデータの保存が行われようとする際に、ログインを要求するための通知を行う通知手段をさらに有することを特徴とする請求項１乃至６のいずれか一項に記載の情報処理端末。
【請求項８】
前記通知手段は、前記アクセスしたウェブサイトがアクセス保護されたサイトの場合に通知を行うことを特徴とする請求項７に記載の情報処理端末。
【請求項９】
前記通知手段は、前記アクセスしたウェブサイトからの指示に応じて通知を行うことを特徴とする請求項７又は８に記載の情報処理端末。
【請求項１０】
前記通知手段は、前記オペレーティングシステムへのログイン状態に従い通知を行うことを特徴とする請求項７乃至９のいずれか一項に記載の情報処理端末。
【請求項１１】
アクセスしたウェブサイトから確保されている確保領域に保存すべきデータを受信する受信手段と、
入力手段を介して特定のユーザー情報が入力されてログインされている場合に、前記特定のユーザー情報に対応するストレージに対して、前記受信したデータを暗号化して保存する保存手段と、
ユーザー情報に対応するストレージに、予め登録した他のユーザー情報に対応するストレージのデータをインポートするインポート手段と
を有するウェブブラウザとしてコンピュータを機能させるためプログラム。
【請求項１２】
前記ウェブブラウザは、前記アクセスしたウェブサイトに対応するデータが保存されるストレージへのアクセスに際して、当該ストレージに対応するユーザー情報を用いたログインを要求する要求手段をさらに有することを特徴とする請求項１１に記載のプログラム。
【請求項１３】
前記確保領域に保存されたデータと対応するウェブサイトとをバックグラウンドで同期させる同期手段とを有するウェブブラウザとしてコンピュータをさらに機能させ、
前記同期手段は、前記入力手段を介して前記ユーザー情報が入力されてから、前記ウェブサイトから同期対象のデータの取得処理を実行して、前記ストレージを同期することを特徴とする請求項１１または１２に記載のプログラム。
【請求項１４】
前記ウェブブラウザは、前記アクセスしたウェブサイトからのデータの保存が行われようとする際に、ログインを要求するための通知を行う通知手段をさらに有することを特徴とする請求項１１乃至１３のいずれか一項に記載のプログラム。
【請求項１５】
前記通知手段は、前記アクセスしたウェブサイトがアクセス保護されたサイトの場合に通知を行うことを特徴とする請求項１４に記載のプログラム。
【請求項１６】
前記通知手段は、前記アクセスしたウェブサイトからの指示に応じて通知を行うことを特徴とする請求項１４又は１５に記載のプログラム。
【請求項１７】
前記通知手段は、前記ウェブブラウザが動作するオペレーティングシステムへのログイン状態に従い通知を行うことを特徴とする請求項１４乃至１６のいずれか一項に記載のプログラム。
【請求項１８】
アプリケーションであるウェブブラウザが動作する情報処理端末によるブラウザストレージ管理方法であって、
前記ウェブブラウザを介してアクセスしたウェブサイトから、当該ウェブブラウザのために確保されている確保領域に保存すべきデータを受信する受信工程と、
前記オペレーティングシステムに対するログインのためではなく、前記ウェブブラウザでユーザー情報の入力を受け付けるための入力工程と、
前記ウェブブラウザに対して前記入力工程により特定のユーザー情報が入力されてログインされている場合に、前記確保領域の中の前記特定のユーザー情報に対応するストレージに対して、前記受信したデータを暗号化して保存する保存工程と、
ユーザー情報に対応するストレージに、予め登録した他のユーザー情報に対応するストレージのデータをインポートするインポート工程と
を有することを特徴とするブラウザストレージ管理方法。
【請求項１９】
前記ウェブブラウザのために確保されている確保領域に保存されたデータと対応するウェブサイトとをバックグラウンドで同期させる同期工程をさらに有し、
前記同期工程は、前記ウェブブラウザに対して前記入力工程により前記ユーザー情報が入力されてから、前記ウェブサイトから同期対象のデータの取得処理を実行して、前記ストレージを同期することを特徴とする請求項１８に記載のブラウザストレージ管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えばＨＴＭＬ５等におけるＷｅｂブラウザ用のデータストレージの仕組みを提供する情報処理端末およびブラウザストレージ管理方法に関する。
【背景技術】
【０００２】
Ｗｅｂアプリケーションの高機能化に伴い、ＨＴＭＬ５では各種機能拡張がなされている。特に、スマートフォンやタブレット等のモバイル端末の普及により、オフラインでＷｅｂアプリケーションを動作させるための拡張が多くなされている。例えば、拡張機能には、Ｗｅｂブラウザのための記憶領域にＷｅｂサーバー上のファイルをキャッシュするアプリケーションキャッシュ（Ａｐｐｌｉｃａｔｉｏｎ Ｃａｃｈｅ）機能がある。また、Ｗｅｂブラウザのための記憶領域にデータを格納するためのウェブストレージ（Ｗｅｂ Ｓｔｏｒａｇｅ）やインデックス付データベース（ＩｎｄｅｘｅｄＤＢ）機能がある。さらに、Ｗｅｂブラウザのための記憶領域内のファイルを操作するためのファイルシステム（Ｆｉｌｅ Ｓｙｓｔｅｍ）ＡＰＩ機能がある。以下では、上述の拡張機能などによってデータが格納されるＷｅｂブラウザのための記憶領域を総称して、ブラウザストレージと呼ぶ。また、別の拡張機能として、時間のかかる処理などをバックグラウンドで実行するためのウェブワーカー（Ｗｅｂ ｗｏｒｋｅｒｓ）機能がある。
【０００３】
さらに、従来技術として、Ｗｅｂブラウザのユーザー管理機能がある。ユーザー管理機能では、ブックマーク、閲覧履歴、Ｗｅｂブラウザに対する設定情報、ブラウザストレージのデータをユーザー別に管理できる。以下では、ユーザーがログインしている場合に、ユーザー別にデータが格納されるブラウザストレージをユーザー別ストレージあるいはユーザーストレージと呼ぶ。対して、ユーザーがログインしていない場合に、データが格納されるブラウザストレージを通常ストレージと呼ぶ。
【０００４】
一方で、特許文献１には、Ｗｅｂブラウザを備える複合機の技術が開示されている。これによれば、複合機は、ユーザー認証有効モードと、ユーザー認証無効モードを選択できるモード設定部を備え、ユーザー認証無効モードである場合、Ｗｅｂブラウザの動作終了以後にクッキー情報を破棄する。これにより、クッキー情報による個人情報漏洩のセキュリティリスクを低減できる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１１−２０６９６２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ブラウザストレージに格納したデータは、誰でも容易に参照できてしまう。そのため、複数人で一つのＷｅｂブラウザを使用する場合において、ブラウザストレージの利用は、セキュリティやプライバシーの観点で課題となる。上述したＷｅｂブラウザのユーザー管理機能においても、ユーザーの切り替えが誰でも容易にできてしまう。そのため、ユーザー管理機能においても、ブラウザストレージの利用は、セキュリティやプライバシーの観点で課題となる。さらに、上述した特許文献１のように、Ｗｅｂブラウザの動作終了以後にブラウザストレージのデータを破棄してしまうと、ブラウザストレージを利用するＷｅｂアプリケーションが正常に使えなくなってしまうという課題がある。
【０００７】
本発明は、上記課題に鑑みてなされたものであり、ブラウザストレージの利便性を損なうことなく、ブラウザストレージ内のデータ、特にユーザー別ストレージ内のデータをオーナーであるユーザー以外のユーザーから保護することが可能な情報処理端末及びブラウザストレージ管理方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために本発明は以下の構成を有する。すなわち、
アプリケーションであるウェブブラウザがオペレーティングシステムの上で動作する情報処理端末であって、
前記ウェブブラウザを介してアクセスしたウェブサイトから、当該ウェブブラウザのために確保されている確保領域に保存すべきデータを受信する受信手段と、
前記オペレーティングシステムに対するログインのためではなく、前記ウェブブラウザでユーザー情報の入力を受け付けるための入力手段と
前記ウェブブラウザに対して前記入力手段を介して特定のユーザー情報が入力されてログインされている場合に、前記確保領域の中の前記特定のユーザー情報に対応するストレージに対して、前記受信したデータを暗号化して保存する保存手段と、
ユーザー情報に対応するストレージに、予め登録した他のユーザー情報に対応するストレージのデータをインポートするインポート手段と、
を有する。
【発明の効果】
【０００９】
本発明によれば、ブラウザストレージの利便性を損なうことなく、ユーザー別ストレージ内のデータをオーナー以外のユーザーから保護することが可能となる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施形態におけるシステム構成を示す模式図
【図２】Ｗｅｂブラウザの機能構成の一例を示すブロック図
【図３】情報端末１０１のハードウェア構成の一例を示すブロック図
【図４】情報端末１０２のハードウェア構成の一例を示すブロック図
【図５】Ｗｅｂブラウザへのログイン画面の一例を示す図
【図６】Ｗｅｂブラウザへのログイン確認の設定画面の一例を示す図
【図７】ユーザー別の設定画面の一例を示す図
【図８】ローカルデータのインポート画面の一例を示す図
【図９】ブラウザストレージへのデータ格納処理の手順例を示すフローチャート
【図１０】Ｗｅｂブラウザへのログインを確認する画面の一例を示す図
【図１１】Ｗｅｂブラウザへのログイン確認の判定処理の手順例を示すフローチャート
【図１２】ブラウザストレージからのデータ取得処理の手順例を示すフローチャート
【図１３】ブラウザストレージのデータ削除処理の手順例を示すフローチャート
【図１４】ブラウザストレージへのデータインポート処理の手順例を示すフローチャート
【発明を実施するための形態】
【００１１】
以下、本発明を実施するための形態である情報処理端末及びブラウザストレージ管理方法について図面を用いて説明する。
［実施例１］
＜システム構成の説明＞
図１は、本発明の実施形態におけるシステム構成を示す模式図である。図１において、ＰＣ（Ｐｅｒｓｏｎａｌ Ｃｏｍｐｕｔｅｒ）などの情報端末（情報処理装置或いは情報処理端末とも呼ぶ。）１０１と、スマートフォンなどの情報端末１０２と、各情報端末にＷｅｂページを提供するＷｅｂサーバー１０３は、インターネット１０４などの既知の技術により相互に通信可能に接続されている。なお、情報端末１０２は無線で通信する。図示していないが、情報端末１０１、１０２はそれぞれ複数存在してもよい。
【００１２】
＜Ｗｅｂブラウザの機能構成＞
図２は、図１に示した情報端末１０１、１０２で動作するＷｅｂブラウザ（ウェブブラウザ）２０１の機能構成の一例を示すブロック図である。Ｗｅｂブラウザ２０１は、情報端末１０１、１０２に搭載されるオペレーティングシステム（ＯＳ）２０８上で動作する。ユーザーインターフェース（ＵＩ）２０２は、ＵＲＬ表示や、ブックマーク表示、Ｗｅｂブラウザの設定メニュー表示などを含むＷｅｂブラウザのＵＩである。ブラウザエンジン２０３は、ＵＩ２０２とレンダリングエンジン２０４の間の処理を行う。レンダリングエンジン２０４は、ＨＴＭＬ（ＨｙｐｅｒＴｅｘｔ Ｍａｒｋｕｐ Ｌａｎｇｕａｇｅ）などの要求されたコンテンツの表示を行う。ネットワーキング２０５は、ＨＴＴＰ（Ｈｙｐｅｒｔｅｘｔ Ｔｒａｎｓｆｅｒ Ｐｒｏｔｏｃｏｌ）リクエストの送信やレスポンスの受信などのネットワークを介したメッセージの送受信を行う。Ｊａｖａ（登録商標）スクリプトインタプリタ２０６は、Ｊａｖａスクリプトコードを解析し実行する。データストレージ２０７は、クッキーやＨＴＭＬ５に係るストレージの仕様に基づくアプリケーションキャッシュ、ウェブストレージ、インデックス付ＤＢなどのデータを記憶装置に格納する制御を行う。本実施例では、ウェブブラウザ２０１のために確保した確保領域であるデータストレージ２０７をブラウザストレージと呼ぶ。すなわち、データストレージは、オーナーであるユーザーごとに管理されるユーザー別ストレージと、ユーザーに関連付けられていない通常ストレージとを含んでいる。データストレージ２０７によるデータ格納、取得、削除などの操作は、Ｊａｖａスクリプトに従い、制御可能である。
【００１３】
Ｗｅｂブラウザ２０１は、Ｗｅｂサイトにアクセスした際に、そのサイトのキャッシュマニフェストをダウンロードする。そして、キャッシュマニフェストにキャッシュの対象として記述されたリソース、たとえばＨＴＭＬデータやスクリプト、画像等のメディアファイル、スタイルシートといったリソースを当該Ｗｅｂサイトからダウンロードしてキャッシュするアプリケーションキャッシュ機能を有する。
【００１４】
＜情報端末１０１のハードウェア構成＞
図３は、Ｗｅｂブラウザ２０１が動作する情報端末１０１のハードウェア構成の一例を示すブロック図である。情報端末１０１は、ＲＯＭ３０２あるいは記憶装置であるハードディスクドライブ（ＨＤＤ）３１１に記憶されたソフトウェア（プログラム）を実行するＣＰＵ３０１を備える。ＣＰＵ３０１はプログラムに従ってシステムバス３０５に接続される各ハードウェアを総括的に制御する。ＲＡＭ３０３は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。ネットワークインターフェースカード（ＮＩＣ）３０４は、ネットワークを介して、他のノードと双方向にデータをやりとりする。キーボードコントローラー３０６は、ＰＣに備えられたキーボード３０９からの指示入力を制御する。ディスプレイコントローラー３０７は、例えば液晶ディスプレイなどで構成される表示モジュール３１０の表示を制御する。ディスクコントローラー３０８は、大容量記憶装置であるハードディスクドライブ（ＨＤＤ）３１１を制御する。ハードディスクドライブ（ＨＤＤ）３１１は、オペレーティングシステム２０８、Ｗｅｂブラウザ２０１等の各種アプリケーションやデータを格納する。
【００１５】
＜情報端末１０２のハードウェア構成＞
図４は、Ｗｅｂブラウザ２０１が動作する情報端末１０２のハードウェア構成の一例を示すブロック図である。情報端末１０２は、ＲＯＭ４０２や記憶装置４０４に記憶されたソフトウェアを実行するアプリケーションプロセッサ（以下ＡＰと記す）４０１を備える。ＡＰ４０１は、接続された各ハードウェアを総括的に制御する。ＲＡＭ４０３は、ＡＰ４０１の主メモリ、ワークエリア等として機能する。記憶装置４０４は、フラッシュメモリ等からなる。記憶装置４０４は、オペレーティングシステム２０８、Ｗｅｂブラウザ２０１等の各種アプリケーションやデータを格納する。タッチスクリーンコントローラ４０５は、接続されたタッチスクリーン４０６を制御する。無線ＬＡＮ制御部４０７、移動体通信制御部４０８、近距離無線通信制御部４０９はそれぞれ、ＷｉＦｉ（Ｗｉｒｅｌｅｓｓ Ｆｉｄｅｌｉｔｙ）などの無線ＬＡＮ通信、移動体通信、近距離無線通信の制御を行う。これらを総称して無線通信と呼ぶ。
【００１６】
＜Ｗｅｂブラウザへのログイン画面例＞
図５は、Ｗｅｂブラウザ２０１における、Ｗｅｂブラウザへのログイン画面の一例を示す図である。表示ボタン５０１は、ログイン画面５０２を表示するためのボタンである。ログインウィンドウ５０２は、表示ボタン５０１を押下することで表示されるログイン画面である。Ｗｅｂブラウザ２０１は、予め登録されたユーザー名とパスワードとの組をユーザー情報として保持しており、ログインボタン５０５が押下されると、入力されたユーザー名５０３とパスワード５０４の組み合わせが正しいかを検証する。Ｗｅｂブラウザ２０１は、ユーザー名５０３とパスワード５０４の組み合わせが正しい場合は、ログインが成功と判断し、当該ユーザーによるログイン状態に移行する。ユーザー名５０３とパスワード５０４の組み合わせが不正な場合は、ログインが失敗と判断し、ログイン状態には移行しない。
【００１７】
作成ボタン５０６は、新規ユーザー作成画面を表示するためのボタンである。作成ボタン５０６が押下されると、Ｗｅｂブラウザ２０１は新規ユーザーアカウントを作成するための画面を表示し、入力された新しいユーザー名５０３とパスワード５０４を組として登録し、新規ユーザーアカウントを作成する。ここで、新規ユーザーアカウントを作成した場合、通常ストレージや登録済みの他のユーザーのユーザー別ストレージに格納されているデータを、新規ユーザーのユーザー別ストレージにインポートするためのローカルデータのインポート画面を表示する。ローカルデータのインポート画面の詳細については後述する。
【００１８】
Ｗｅｂブラウザ２０１にログインすることにより、たとえばユーザー別のストレージや通常ストレージを静的に用意し、ログインユーザーに応じて対応する領域を利用するように構成される。もちろんこの限りではなく、たとえばログインユーザーごとのプロファイルやログインユーザーのユーザ別ストレージ等がロードされ、ログインしていない場合の利用のために供される共有プロファイルや通常ストレージと置き換えられるよう構成してもよい。
【００１９】
＜ログイン確認の設定画面例＞
図６は、Ｗｅｂブラウザ２０１における、Ｗｅｂブラウザがユーザーに対してログインを確認する状況を設定するログインの確認設定画面の一例を示す図である。本画面では、ユーザーがＷｅｂブラウザにログインしていない場合に、ブラウザストレージへデータを格納する前に、ユーザーに対してＷｅｂブラウザへのログイン確認をする（あるいはログインを促す）か否かの設定をする。
【００２０】
チェックボックス６０１は、ユーザーがＷｅｂブラウザ２０１にログインしていない場合に、ブラウザストレージへデータを格納する前に、ユーザーに対してＷｅｂブラウザ２０１へのログイン確認をすることを設定するためのチェックボックスである。チェックボックス６０１が選択状態の場合、Ｗｅｂブラウザ２０１は、Ｗｅｂブラウザへのログイン確認を行う。
【００２１】
チェックボックス６０２、６０３、６０４は、チェックボックス６０１が選択状態の場合、つまり、Ｗｅｂブラウザへのログイン確認をする場合に有効であり、どのような条件でログイン確認をするかを設定するためのチェックボックスである。
【００２２】
チェックボックス６０２が選択状態の場合、Ｗｅｂブラウザ２０１は、ユーザーがＯＳにログインしていない場合のみ、Ｗｅｂブラウザへのログイン確認をする。ユーザーがＯＳにログインしていない場合、ＯＳの同一アカウントを複数人が共有していることが考えられる。これはたとえば、ユーザーアカウントを提供せずログインを要求しない携帯端末のＯＳなどで生じ得るケースである。そのような場合においても、ユーザーがＷｅｂブラウザ２０１へログインすることでブラウザストレージのデータをユーザーごとに管理できるようになる。
【００２３】
チェックボックス６０３が選択状態の場合、Ｗｅｂブラウザは、アクセス保護されたＷｅｂサイトへアクセスした場合のみ、Ｗｅｂブラウザへのログイン確認をする。ここで、アクセス保護されたＷｅｂサイトとは、ＨＴＴＰＳ（Ｈｙｐｅｒｔｅｘｔ Ｔｒａｎｓｆｅｒ Ｐｒｏｔｏｃｏｌ Ｓｅｃｕｒｅ）接続のＷｅｂサイトや、Ｗｅｂサイトへのログインが必要なＷｅｂサイトを指す。
【００２４】
除外ＵＲＬリスト６０４は、本画面の設定に関わらず、Ｗｅｂブラウザへのログイン確認をしないＷｅｂサイトを指定するためのＵＲＬリストである。ＵＲＬリスト６０４で指定されたＵＲＬが含まれるＷｅｂサイトにアクセスした場合、Ｗｅｂブラウザは、本画面の設定に関わらず、Ｗｅｂブラウザへのログイン確認をしないように制御する。追加ボタン６０５は、ＵＲＬリスト６０４にＵＲＬを追加するためのボタンである。追加ボタン６０５が押下されると、ＵＲＬを入力するための画面を表示し、入力されたＵＲＬをＵＲＬリスト６０４に追加する。削除ボタン６０６は、ＵＲＬリスト６０４のＵＲＬを削除するためのボタンである。削除ボタン６０６が押下されると、ＵＲＬリスト６０４から選択されているＵＲＬを削除する。
【００２５】
図６の設定画面で設定された設定内容は、Ｗｅｂブラウザにより保持される。たとえばチェックボックス６０１はログイン確認設定情報として、チェックボックス６０２は第１の確認条件情報として、チェックボックス６０３は第２の確認条件情報として、ＵＲＬリスト６０４は除外情報として保持される。また本実施例では、Ｗｅｂブラウザへのログイン確認について、設定画面を利用して設定する例を示したが、Ｗｅｂブラウザ２０１が本設定内容を予め保持する構成でも良い。図６に示した設定項目は、ユーザーごとに設定させて保持するように構成してもよいし、全ユーザーで設定を共有するように構成してもよい。
【００２６】
＜ユーザー別設定画面例＞
図７は、Ｗｅｂブラウザ２０１における、ユーザー別の設定画面の一例を示す図である。本画面では、ユーザー別ストレージへ格納するデータ種別について設定する。また、通常ストレージや別ユーザーのユーザー別ストレージに格納されているデータを、操作ユーザーのユーザー別ストレージにインポートする処理の実行指示をする。また、ユーザー別ストレージへのデータインポートの実行指示は、図５に示した新規ユーザー作成５０６において、新規ユーザーを作成した場合にも行える。
【００２７】
チェックボックス７０１は、アプリケーションキャッシュをユーザー別ストレージに格納するか否かを設定するためのチェックボックスである。チェックボックス７０１が選択状態の場合、Ｗｅｂブラウザは、アプリケーションキャッシュをユーザー別ストレージに格納する。チェックボックス７０１が非選択状態の場合、Ｗｅｂブラウザは、アプリケーションキャッシュを通常ストレージに格納する。つまり、Ｗｅｂブラウザは、ユーザーがログイン状態であっても通常ストレージのアプリケーションキャッシュを利用する。インポートボタン７０２は、ローカルデータのインポート画面を表示するためのボタンである。チェックボックス７０１の選択状態は、Ｗｅｂブラウザ２０１の設定情報、たとえば格納先設定情報として保持される。図７に示した設定項目は、ユーザーごとに設定させて保持するように構成してもよいし、全ユーザーで設定を共有するように構成してもよい。
【００２８】
図８は、インポートボタン７０２を押下することで表示されるローカルデータのインポート画面の一例を示す図である。また、図５に示した新規ユーザー作成５０６において、新規ユーザーを作成した際にも本画面を表示する。これにより、新規ユーザー作成時に、新規作成したユーザーのユーザー別ストレージへのデータインポートが行える。
【００２９】
Ｗｅｂサイトリスト８０１は、操作ユーザーのユーザー別ストレージにインポートするデータをＷｅｂサイト単位で指定するためのＷｅｂサイトリストである。追加ボタン８０２は、別ユーザーのユーザー別ストレージで管理されているＷｅｂサイトを追加するための画面を表示するためのボタンである。追加ボタン８０２が押下されると、Ｗｅｂブラウザはユーザー名とパスワードを入力するための画面を表示する。そして、入力されたユーザー名とパスワードの組み合わせが正しい場合は、該当ユーザーのユーザー別ストレージで管理されているＷｅｂサイトをＷｅｂサイトリスト８０１に追加する。
【００３０】
チェックボックス８０３は、Ｗｅｂサイトリスト８０１で選択されたＷｅｂサイトのインポート元のデータを削除するか否かを設定するためのチェックボックスである。チェックボックス８０３が選択状態の場合、Ｗｅｂブラウザは、インポート完了後に、Ｗｅｂサイトリスト８０１で選択された（すなわちチェックされた）Ｗｅｂサイトのインポート元のデータを削除する。実行ボタン８０４は、本画面の設定に従い、インポート処理を実行するためのボタンである。キャンセルボタン８０５は、インポート処理を実行せずに本画面を閉じるためのボタンである。
【００３１】
＜ブラウザストレージへのデータ格納処理＞
図９は、Ｗｅｂブラウザ２０１がブラウザストレージへデータを格納する際に実行する処理の手順例を示すフローチャートである。このＷｅｂブラウザ２０１はＣＰＵ３０１あるいはＡＰ４０１などのプロセッサにより実行されるが、たとえばＪａｖａ（登録商標）等のインタプリタ言語で記述されている場合には、プロセッサが不図示のインタプリタを実行し、それによりＷｅｂブラウザが解釈実行される。そこで以下の説明においてはインタプリタを実行主体として記載している。
【００３２】
本処理では、ユーザーがＷｅｂブラウザ２０１にログインしている場合は、データを暗号化してユーザー別ストレージへ格納する。一方、ユーザーがＷｅｂブラウザ２０１にログインしていない場合は、データを暗号化せずに通常ストレージへ格納する。また、本処理では、ユーザーがＷｅｂブラウザ２０１にログインしていない場合、図６に示したログイン確認の設定画面の設定内容に従い、Ｗｅｂブラウザへのログイン確認を行う。さらに、本処理では、図７に示したユーザー別設定画面の設定内容に従い、アプリケーションキャッシュやリソース等のデータを通常ストレージに格納するか、ユーザー別ストレージに格納するかを判定する。なお以下の説明においては、図６及び図７の設定画面で設定された情報が参照されるが、説明の便宜上、それら情報を、それを設定したチェックボックスやリストの参照番号で示していることがある。もちろん参照されるのは設定され保持された情報である。また格納すべきデータは図９の処理にあたってパラメータ等で引き渡される。
【００３３】
ブラウザストレージへのデータ格納処理を開始すると、Ｓ９０１で、インタプリタは、アプリケーションキャッシュをユーザー別ストレージに格納する設定であるか否かを判定する。本判定は、図７のチェックボックス７０１で設定された格納先設定情報に従って行う。ここで、インタプリタが、アプリケーションキャッシュをユーザー別ストレージに格納する設定であると判定した場合はＳ９０３に進む。一方、インタプリタが、アプリケーションキャッシュをユーザー別ストレージに格納する設定ではないと判定した場合はＳ９０２に進む。
【００３４】
続いてＳ９０２で、インタプリタは、処理中の格納対象データがアプリケーションキャッシュであるか否かを判定する。ここで、インタプリタが、処理中の格納対象データがアプリケーションキャッシュであると判定した場合はＳ９１３に進む。一方、インタプリタが、格納対象データがアプリケーションキャッシュではないと判定した場合はＳ９０３に進む。
【００３５】
続いてＳ９０３で、インタプリタは、処理中のデータ格納が特定ユーザーのユーザー別ストレージに対する処理であるか否かを判定する。例えば、特定ユーザーのユーザー別ストレージに対するバックグラウンド処理として図９の処理が動作した場合、特定ユーザーのユーザー別ストレージに対して処理が行われなければならない。そのために、処理中のデータ格納が特定ユーザーのユーザー別ストレージに対する処理かを判定する。この判定は、たとえば処理対象の格納先（たとえばアドレスなど）に基づいて判定することができる。ここで、インタプリタが、処理中のデータ格納が特定ユーザーのユーザー別ストレージに対する処理であると判定した場合はＳ９０４に進む。一方、インタプリタが、処理中のデータ格納が特定ユーザーのユーザー別ストレージに対する処理ではないと判定した場合はＳ９０５に進む。なお特定ユーザーのユーザー別ストレージに対するバックグラウンド処理には、Ｗｅｂワーカーの動作にしたがって実行される、ウェブサイトのリソースと、ローカルストレージのリソースおよびアプリケーションキャッシュとの同期処理が含まれる。同期処理は、原則としていずれか新しい方に同期されることから、ウェブサイトのリソースにローカルのリソースを同期させる場合には、同期処理においてウェブサイトからリソースがダウンロードされ、図９の処理が実行される。
【００３６】
続いてＳ９０４で、インタプリタは、特定ユーザーがブラウザにログインするまで待機する。つまり、インタプリタは、処理中のデータ格納が特定ユーザーのユーザー別ストレージに対する処理の場合、特定ユーザーがブラウザにログインするまでは処理を行わないように制御する。なお特定ユーザーとは、ステップＳ９０３で判定したユーザー別ストレージのオーナーであるユーザーを指す。ここで、インタプリタが、特定ユーザーがブラウザにログインした、または既にブラウザにログインしていると判定した場合はＳ９０５に進む。またステップＳ９０４では他のスレッドの処理でログインが行われるのを待機してもよいが、ログインウィンドウを表示してログインを促してもよい。これは図１２、図１３でも同様である・
続いてＳ９０５で、インタプリタは、ユーザーがブラウザにログインしているか否かを判定する。ここで、インタプリタが、ユーザーがブラウザにログインしていると判定した場合はＳ９１１に進む。一方、インタプリタが、ユーザーがブラウザにログインしていないと判定した場合はＳ９０６に進む。
【００３７】
続いてＳ９０６で、インタプリタは、ブラウザへのログイン確認をする設定であるか否かを判定する。本判定は、図６のチェックボックス６０１による設定に従って行う。ここで、インタプリタが、ブラウザへのログイン確認をする設定であると判定した場合はＳ９０７に進む。一方、インタプリタが、ブラウザへのログイン確認をする設定ではないと判定した場合はＳ９１３に進む。
【００３８】
続いてＳ９０７で、インタプリタは、ブラウザへのログイン確認をするか否かの判定処理を行う。ブラウザへのログイン確認の判定処理の詳細については後述する。
【００３９】
続いてＳ９０８で、インタプリタは、Ｓ９０７でブラウザへのログイン確認をすると判定されたか否か（ブラウザへのログイン確認をするかを示す変数がＴｒｕｅか否か）を判定する。ここで、インタプリタが、ブラウザへのログイン確認をすると判定されたと判定した場合はＳ９０９に進む。一方、インタプリタが、ブラウザへのログイン確認をしないと判定されたと判定した場合はＳ９１３に進む。
【００４０】
続いてＳ９０９で、インタプリタは、ユーザーに対してブラウザへのログイン確認をするために、図１０の確認画面を表示して、ユーザー別ストレージに格納するならログインすべきことをユーザーに通知する。ここで、図１０は、ブラウザへのログインを確認するための画面の一例を示す図である。本画面では、Ｗｅｂブラウザ２０１に、ブラウザへのログイン確認メッセージ１００１を表示する。ここで、ボタン１００２が押下された場合は、図５に示したログイン画面５０２を表示する。ボタン１００３が押下された場合は、ログイン状態には移行しない。ボタン１００４が押下された場合は、ログイン状態には移行せず、閲覧中のＷｅｂサイトのＵＲＬを、図６に示したＵＲＬリスト６０４に追加する。つまり、閲覧中のＷｅｂサイトについて、今後はブラウザへのログイン確認をしないようにする。
【００４１】
続いてＳ９１０で、インタプリタは、Ｓ９０９のブラウザへのログイン確認において、ユーザーがブラウザへログインしたか否かを判定する。ここで、インタプリタが、ユーザーがブラウザへログインしたと判定した場合はＳ９１１に進む。一方、インタプリタが、ユーザーがブラウザへログインしなかったと判定した場合はＳ９１３に進む。
【００４２】
続いてＳ９１１で、インタプリタは、処理中の格納対象データを暗号化する。
【００４３】
続いてＳ９１２で、インタプリタは、ブラウザにログインしているユーザーのユーザー別ストレージに、Ｓ９１２で暗号化したデータを格納し、本処理を終了する。
【００４４】
一方Ｓ９１３で、インタプリタは、通常ストレージに、処理中の格納対象データを格納し、本処理を終了する。
【００４５】
以上の手順により、設定に応じて、ユーザーがログインしている場合には、ログインユーザーのユーザー別ストレージにリソース等のデータを格納する。また、たとえばバックグラウンドで動作する同期処理などでユーザー別ストレージが対象とされている場合には、ログイン状態でなければ格納処理の実行を当該ユーザーがログインするまで待機して、ログイン状態になった後に処理する。
【００４６】
＜ブラウザへのログイン確認の判定処理＞
図１１は、図９に示したＳ９０７で実行するブラウザへのログイン確認の判定処理の詳細手順例を示すフローチャートである。本処理では、図６に示したログイン確認の設定画面の設定内容などに従い、Ｗｅｂブラウザへのログイン確認をするか否かを判定する。
【００４７】
ブラウザへのログイン確認の判定処理を開始すると、Ｓ１１０１で、インタプリタは、処理中のデータ格納が一時領域へのデータ格納であるか否かを判定する。ここで、Ｗｅｂストレージの特徴として、ローカルストレージとセッションストレージと呼ばれる領域がある。ローカルストレージに格納したデータは、Ｗｅｂブラウザを閉じてもローカルの記憶領域にデータが残る。セッションストレージに格納したデータは、Ｗｅｂブラウザを閉じた際にデータが削除される。本実施例では、セッションストレージのような一時的な記憶領域を総称して、一時領域と呼ぶ。ここで、インタプリタが、処理中のデータ格納が一時領域へのデータ格納であると判定した場合はＳ１１０９に進む。つまり、処理中のデータ格納が一時領域へのデータ格納であれば、ログインしたとしても、Ｗｅｂブラウザを閉じた際にデータが削除されるため、ログイン確認はしないと判断する。一方、インタプリタが、処理中のデータ格納が一時領域へのデータ格納ではないと判定した場合はＳ１１０２に進む。
【００４８】
続いてＳ１１０２で、インタプリタは、閲覧中のＷｅｂサイトからログイン指示があるか否かを判定する。ここで、Ｗｅｂサイトからのログイン指示は、例えば、Ｗｅｂサイトが用意したマニフェストファイル内の記述によって指示する方法が考えらえる。この場合、Ｓ１１０２ではマニフェストファイルを参照して判断することができる。また、Ｗｅｂブラウザが用意したログイン確認を実行するためのＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ Ｐｒｏｇｒａｍｍｉｎｇ Ｉｎｔｅｒｆａｃｅ）を、Ｗｅｂサイトが用意したＪａｖａスクリプトが呼び出すことによって指示する方法が考えられる。ここで、インタプリタが、閲覧中のＷｅｂサイトからログイン指示があると判定した場合はＳ１１１０に進む。一方、インタプリタが、閲覧中のＷｅｂサイトからログイン指示がないと判定した場合はＳ１１０３に進む。
【００４９】
続いてＳ１１０３で、インタプリタは、ＯＳへのログイン状態によってログイン確認をする設定であるか否かを判定する。本判定は、図６のチェックボックス６０２の設定に従って行う。ここで、インタプリタが、ＯＳへのログイン状態によってログイン確認をする設定であると判定した場合はＳ１１０４に進む。一方、インタプリタが、ＯＳへのログイン状態によってログイン確認をする設定ではないと判定した場合はＳ１１０５に進む。
【００５０】
続いてＳ１１０４で、インタプリタは、ユーザーがＯＳにログインしているか否かを判定する。ここで、インタプリタが、ユーザーがＯＳにログインしていると判定した場合はＳ１１０５に進む。一方、インタプリタが、ユーザーがＯＳにログインしていないと判定した場合はＳ１１１０に進む。
【００５１】
続いてＳ１１０５で、インタプリタは、アクセス保護されたＷｅｂサイトかによってログイン確認をする設定であるか否かを判定する。本判定は、図６のチェックボックス６０３の設定に従って行う。ここで、インタプリタが、アクセス保護されたＷｅｂサイトかによってログイン確認をする設定であると判定した場合はＳ１１０６に進む。一方、インタプリタが、アクセス保護されたＷｅｂサイトかによってログイン確認をする設定ではないと判定した場合はＳ１１０７に進む。
【００５２】
続いてＳ１１０６で、インタプリタは、閲覧中のＷｅｂサイトがアクセス保護されたＷｅｂサイトであるか否かを判定する。ここで、インタプリタが、閲覧中のＷｅｂサイトがアクセス保護されたＷｅｂサイトであると判定した場合はＳ１１１０に進む。一方、インタプリタが、閲覧中のＷｅｂサイトがアクセス保護されたＷｅｂサイトではないと判定した場合はＳ１１０７に進む。アクセス保護されていることは、たとえばＨＴＴＰＳを用いていることや、あるいはユーザーによるアクセス制限の指定などに基づいて判定できる。
【００５３】
続いてＳ１１０７で、インタプリタは、ブラウザへのログイン確認をしないＷｅｂサイトの設定があるか否かを判定する。本ステップでは、閲覧中のＷｅｂサイトが図６のＵＲＬリスト６０４の設定に該当すればログイン確認しないと判定する。ここで、インタプリタが、ブラウザへのログイン確認をしないＷｅｂサイトの設定があると判定した場合はＳ１１０８に進む。一方、インタプリタが、ブラウザへのログイン確認をしないＷｅｂサイトの設定がないと判定した場合はＳ１１０９に進む。
【００５４】
続いてＳ１１０８で、インタプリタは、閲覧中のＷｅｂサイトがブラウザへのログイン確認をしないＷｅｂサイトであるか否かを判定する。ここで、インタプリタが、閲覧中のＷｅｂサイトがブラウザへのログイン確認をしないＷｅｂサイトであると判定した場合はＳ１１０９に進む。一方、インタプリタが、閲覧中のＷｅｂサイトがブラウザへのログイン確認をしないＷｅｂサイトではないと判定した場合はＳ１１１０に進む。
【００５５】
続いてＳ１１０９で、インタプリタは、ブラウザへのログイン確認をするかを示す変数にＦａｌｓｅを設定し、本処理を終了する。つまり、ブラウザへのログイン確認をすると判定する。
【００５６】
一方Ｓ１１１０で、インタプリタは、ブラウザへのログイン確認をするかを示す変数にＴｒｕｅを設定し、本処理を終了する。つまり、ブラウザへのログイン確認をしないと判定する。
【００５７】
＜ブラウザストレージからのデータ取得処理＞
図１２は、Ｗｅｂブラウザ２０１がブラウザストレージからデータを取得する際に実行する処理の手順例を示すフローチャートである。本処理では、ユーザーがＷｅｂブラウザ２０１にログインしている場合は、ログインしているユーザーのユーザー別ストレージからデータを取得して復号化する。一方、ユーザーがＷｅｂブラウザ２０１にログインしていない場合は、通常ストレージからデータを取得する。
【００５８】
ブラウザストレージからのデータ取得処理を開始すると、Ｓ１２０１で、インタプリタは、アプリケーションキャッシュをユーザー別ストレージに格納する設定であるか否かを判定する。本判定は、図７のチェックボックス７０１の設定に従って行う。ここで、インタプリタが、アプリケーションキャッシュをユーザー別ストレージに格納する設定であると判定した場合はＳ１２０３に進む。一方、インタプリタが、アプリケーションキャッシュをユーザー別ストレージに格納する設定ではないと判定した場合はＳ１２０２に進む。
【００５９】
続いてＳ１２０２で、インタプリタは、処理中の取得対象データがアプリケーションキャッシュであるか否かを判定する。ここで、インタプリタが、処理中の取得対象データがアプリケーションキャッシュであると判定した場合はＳ１２０８に進む。一方、インタプリタが、処理中の取得対象データがアプリケーションキャッシュではないと判定した場合はＳ１２０３に進む。
【００６０】
続いてＳ１２０３で、インタプリタは、処理中のデータ取得が特定ユーザーのユーザー別ストレージに対する処理であるか否かを判定する。Ｓ９０３と同様に、例えば、特定ユーザーのユーザー別ストレージに対するバックグラウンド処理として図１２の処理が動作した場合、特定ユーザーのユーザー別ストレージに対して処理が行われなければならない。そのために、処理中のデータ取得が特定ユーザーのユーザー別ストレージに対する処理かを判定する。この判定は、たとえば処理対象の格納先（たとえばアドレスなど）に基づいて判定することができる。ここで、インタプリタが、処理中のデータ取得が特定ユーザーのユーザー別ストレージに対する処理であると判定した場合はＳ１２０４に進む。一方、インタプリタが、処理中のデータ取得が特定ユーザーのユーザー別ストレージに対する処理ではないと判定した場合はＳ１２０５に進む。なお特定ユーザーのユーザー別ストレージに対するバックグラウンド処理には、Ｗｅｂワーカーの動作にしたがって実行される同期処理が含まれる。ローカルのリソースにウェブサイトのリソースを同期させる場合には、バックグラウンドで遂行される同期処理において図１２の処理が実行されてウェブストレージ等からリソースのデータが読み出され、読み出されたデータがウェブサイトに送信されてアップロードされる。
【００６１】
続いてＳ１２０４で、インタプリタは、特定ユーザーがブラウザにログインするまで待機する。つまり、インタプリタは、処理中のデータ取得が特定ユーザーのユーザー別ストレージに対する処理の場合、特定ユーザーがブラウザにログインするまでは処理を行わないように制御する。ここで、インタプリタが、特定ユーザーがブラウザにログインした、または既にブラウザにログインしていると判定した場合はＳ１２０５に進む。
【００６２】
続いてＳ１２０５で、インタプリタは、ユーザーがブラウザにログインしているか否かを判定する。ここで、インタプリタが、ユーザーがブラウザにログインしていると判定した場合はＳ１２０８に進む。一方、インタプリタが、ユーザーがブラウザにログインしていないと判定した場合はＳ１２０６に進む。
【００６３】
続いてＳ１２０６で、インタプリタは、ブラウザにログインしているユーザーのユーザー別ストレージからデータを取得する。  続いてＳ１２０７で、インタプリタは、Ｓ１２０６で取得したデータを復号化し、本処理を終了する。
【００６４】
一方Ｓ１２０８で、インタプリタは、通常ストレージからデータを取得し、本処理を終了する。
【００６５】
以上の手順により、設定に応じて、ユーザーがログインしている場合には、ログインユーザーのユーザー別ストレージからリソース等のデータを取得する。また、たとえばバックグラウンドで動作する同期処理などでユーザー別ストレージが対象とされている場合には、ログイン状態でなければ取得処理の実行を当該ユーザーがログインするまで待機して、ログイン状態になった後に処理する。
【００６６】
＜ブラウザストレージのデータ削除処理＞
図１３は、Ｗｅｂブラウザ２０１がブラウザストレージのデータを削除する際に実行する処理の手順例を示すフローチャートである。本処理では、ユーザーがＷｅｂブラウザ２０１にログインしている場合は、ログインしているユーザーのユーザー別ストレージのデータを削除する。一方、ユーザーがＷｅｂブラウザ２０１にログインしていない場合は、通常ストレージのデータを削除する。
【００６７】
ブラウザストレージのデータ削除処理を開始すると、Ｓ１３０１で、インタプリタは、アプリケーションキャッシュをユーザー別ストレージに格納する設定であるか否かを判定する。本判定は、図７の７０１の設定に従って行う。ここで、インタプリタが、アプリケーションキャッシュをユーザー別ストレージに格納する設定であると判定した場合はＳ１３０３に進む。一方、インタプリタが、アプリケーションキャッシュをユーザー別ストレージに格納する設定ではないと判定した場合はＳ１３０２に進む。
【００６８】
続いてＳ１３０２で、インタプリタは、処理中の削除対象データがアプリケーションキャッシュであるか否かを判定する。ここで、インタプリタが、処理中の削除対象データがアプリケーションキャッシュであると判定した場合はＳ１３０７に進む。一方、インタプリタが、処理中の削除対象データがアプリケーションキャッシュではないと判定した場合はＳ１３０３に進む。
【００６９】
続いてＳ１３０３で、インタプリタは、処理中のデータ削除が特定ユーザーのユーザー別ストレージに対する処理であるか否かを判定する。Ｓ９０３と同様に、例えば、特定ユーザーのユーザー別ストレージに対するバックグラウンド処理として図１３の処理が動作した場合、特定ユーザーのユーザー別ストレージに対して処理が行われなければならない。そのために、処理中のデータ削除が特定ユーザーのユーザー別ストレージに対する処理かを判定する。この判定は、たとえば処理対象の格納先（たとえばアドレスなど）に基づいて判定することができる。ここで、インタプリタが、処理中のデータ削除が特定ユーザーのユーザー別ストレージに対する処理であると判定した場合はＳ１３０４に進む。一方、インタプリタが、処理中のデータ削除が特定ユーザーのユーザー別ストレージに対する処理ではないと判定した場合はＳ１３０５に進む。なお特定ユーザーのユーザー別ストレージに対するバックグラウンド処理には、Ｗｅｂワーカーの動作にしたがって実行される同期処理が含まれる。ウェブサイトのリソースを同期させてローカルのリソースを削除する場合には、バックグラウンドで遂行される同期処理において図１３の処理が実行されてウェブストレージ等からリソースのデータが削除される。
【００７０】
続いてＳ１３０４で、インタプリタは、特定ユーザーがブラウザにログインするまで待機する。つまり、インタプリタは、処理中のデータ削除が特定ユーザーのユーザー別ストレージに対する処理の場合、特定ユーザーがブラウザにログインするまでは処理を行わないように制御する。ここで、インタプリタが、特定ユーザーがブラウザにログインした、または既にブラウザにログインしていると判定した場合はＳ１３０５に進む。
【００７１】
続いてＳ１３０５で、インタプリタは、ユーザーがブラウザにログインしているか否かを判定する。ここで、インタプリタが、ユーザーがブラウザにログインしていると判定した場合はＳ１３０７に進む。一方、インタプリタが、ユーザーがブラウザにログインしていないと判定した場合はＳ１３０６に進む。
【００７２】
続いてＳ１３０６で、インタプリタは、ブラウザにログインしているユーザーのユーザー別ストレージの対象データを削除し、本処理を終了する。
【００７３】
一方Ｓ１３０７で、インタプリタは、通常ストレージの対象データを削除し、本処理を終了する。
【００７４】
以上の手順により、設定に応じて、ユーザーがログインしている場合には、ログインユーザーのユーザー別ストレージからリソース等のデータを削除する。また、たとえばバックグラウンドで動作する同期処理などでユーザー別ストレージが対象とされている場合には、ログイン状態でなければ削除処理の実行を当該ユーザーがログインするまで待機して、ログイン状態になった後に処理する。
【００７５】
以上、図９乃至図１３に示した手順により、ユーザー別ストレージにアプリケーションキャッシュやリソース等のデータを保存する場合に、当該データを暗号化し、またそこからデータを読み出す場合には復号することで、ユーザーごとにキャッシュやリソースを格納できるとともに、ユーザー別ストレージのセキュリティをより高めて、他のユーザーによる読み出しなどから保護することができる。また本実施例で説明した暗号化にとどまらず、たとえば電子署名を付すことなどで改ざんを防止することもできる。
【００７６】
＜ブラウザストレージへのデータインポート処理＞
図１４は、Ｗｅｂブラウザ２０１がブラウザストレージへデータをインポートする際に実行する処理の手順例を示すフローチャートである。本処理は、図８に示したローカルデータのインポート画面のボタン８０４押下時に実行される。また、本処理では、図８に示したローカルデータのインポート画面の設定内容に従って、ブラウザストレージへデータをインポートする。
【００７７】
ブラウザストレージへのデータインポート処理を開始すると、Ｓ１４０１で、インタプリタは、インポート先のブラウザストレージのユーザー（インポートを実行したユーザー）がブラウザにログインしているか否かを判定する。ここで、インタプリタが、インポート先のブラウザストレージのユーザーがブラウザにログインしていると判定した場合はＳ１４０２に進む。また、インポート先のブラウザストレージが通常ストレージの場合はブラウザにログインしていると判定する。一方、インタプリタが、インポート先のブラウザストレージのユーザーがブラウザにログインしていないと判定した場合は、データインポートは行わず、本処理を終了する。
【００７８】
続いてＳ１４０２で、インタプリタは、図８のＷｅｂサイトリスト８０１の設定に従って、ブラウザストレージからインポート対象のＷｅｂサイトのデータを取得する。ここで、インポート対象のＷｅｂサイトのデータが、ユーザー別ストレージに格納されている場合は取得したデータを復号化する。
【００７９】
続いてＳ１４０３で、ログインユーザーがＷｅｂブラウザ２０１により閲覧中のＷｅｂサイトが含まれているか判定する。閲覧中のＷｅｂサイトがあれば、Ｓ１４０４に進んで、閲覧中のＷｅｂサイトのデータを取得する。閲覧中のＷｅｂサイトのデータはＷｅｂサイトからダウンロードして取得してもよい。なおこの場合Ｗｅｂブラウザはそのサイトの閲覧処理を行っているので、Ｓ１４０３における処理そのバックグラウンドで実行される。あるいは、閲覧中のサイトがアプリケーションキャッシュやローカルストレージの格納対象であれば、閲覧中のユーザあるいは共有のアプリケーションキャッシュあるいはローカルストレージから取得してもよい。
【００８０】
続いてＳ１４０５で、インタプリタは、Ｓ１４０２およびＳ１４０４で取得したデータをインポート先のブラウザストレージに格納する。ここで、インポート先のブラウザストレージが、ユーザー別ストレージの場合はデータを暗号化してから格納する。
【００８１】
続いてＳ１４０６で、インタプリタは、インポート元のデータを削除する設定であるか否かを判定する。本判定は、図８の８０３の設定に従って行う。ここで、インタプリタが、インポート元のデータを削除する設定であると判定した場合はＳ１４０５に進む。一方、インタプリタが、インポート元のデータを削除する設定ではないと判定した場合は、本処理を終了する。
【００８２】
続いてＳ１４０７で、インタプリタは、インポート元のデータを削除し、本処理を終了する。
【００８３】
以上の手順で、ユーザーのローカルストレージを含むブラウザストレージに、指定したＷｅｂサイトのコンテンツをインポートすることができる。
【００８４】
（その他の実施形態）
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００８５】
２０１  ブラウザ、２０３  ブラウザエンジン、２０７  ストレージ
【図１】
0006403507.tif 000002
【図２】
0006403507.tif 000003
【図３】
0006403507.tif 000004
【図４】
0006403507.tif 000005
【図５】
0006403507.tif 000006
【図６】
0006403507.tif 000007
【図７】
0006403507.tif 000008
【図８】
0006403507.tif 000009
【図９】
0006403507.tif 000010
【図１０】
0006403507.tif 000011
【図１１】
0006403507.tif 000012
【図１２】
0006403507.tif 000013
【図１３】
0006403507.tif 000014
【図１４】
0006403507.tif 000015