JP2017004494A - Information processing system, information processing apparatus, program, and information protection method - Google Patents
Information processing system, information processing apparatus, program, and information protection method Download PDFInfo
- Publication number
- JP2017004494A JP2017004494A JP2016022201A JP2016022201A JP2017004494A JP 2017004494 A JP2017004494 A JP 2017004494A JP 2016022201 A JP2016022201 A JP 2016022201A JP 2016022201 A JP2016022201 A JP 2016022201A JP 2017004494 A JP2017004494 A JP 2017004494A
- Authority
- JP
- Japan
- Prior art keywords
- information
- browser
- user
- shared device
- information processing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
Description
本発明は情報処理システム、情報処理装置、プログラム及び情報保護方法に関する。 The present invention relates to an information processing system, an information processing apparatus, a program, and an information protection method.
近年、ウェブブラウザには、ウェブブラウザ側でデータを永続的に保存するローカルストレージが実装されている。また、近年、ユーザがウェブブラウザを通してサービスを利用するウェブサービスも普及している。ウェブサービスではユーザのデータをユーザ認証により保護していた。 In recent years, a local storage for permanently storing data on the web browser side is implemented in the web browser. In recent years, web services in which users use services through web browsers have also become widespread. In web services, user data is protected by user authentication.
例えばWebアプリケーションを用いる通信装置において、ブラウザが保存するデータを暗号化し、暗号化されたデータを利用しようとするとき、ユーザ認証が正常に行われたら暗号化されたデータを復号してブラウザに提供する手法は従来から知られている(例えば特許文献1参照)。 For example, in a communication device that uses a Web application, the data stored in the browser is encrypted, and when trying to use the encrypted data, if the user authentication is successful, the encrypted data is decrypted and provided to the browser The technique to do is known conventionally (for example, refer patent document 1).
しかしながら、ウェブブラウザがウェブサービスから取得したユーザのデータ(個人情報)をウェブブラウザのローカルストレージ(永続化領域)に保存する場合に、以下のような問題があった。 However, when the user's data (personal information) acquired by the web browser from the web service is stored in the local storage (permanent area) of the web browser, there are the following problems.
ウェブブラウザの永続化領域は例えば図1に示すようにウェブサービスのオリジン毎に共有されている。図1はウェブブラウザの永続化領域におけるデータ保存方法の一例を示す図である。なお、オリジンとはプロトコル、ドメイン名及びポート番号の組み合わせであり、例えば「https://www.example.com:443」である。 For example, as shown in FIG. 1, the permanent area of the web browser is shared for each origin of the web service. FIG. 1 is a diagram showing an example of a data storage method in a permanent area of a web browser. The origin is a combination of a protocol, a domain name, and a port number, for example, “https://www.example.com:443”.
一つのウェブブラウザを共有する複数のユーザが同一のウェブサービスにアクセスした場合は、例えば図2に示すように、一人のユーザAの個人情報を、もう一人のユーザBが閲覧できてしまうという問題があった。図2は、あるユーザの個人情報を別のユーザが閲覧できる場合を示す図である。 When a plurality of users sharing one web browser access the same web service, for example, as shown in FIG. 2, another user B can view the personal information of one user A. was there. FIG. 2 is a diagram illustrating a case where another user can view the personal information of a certain user.
PC上で動作するウェブブラウザでは、オペレーティングシステム(OS)でのログインユーザ毎にユーザのデータ保存領域が分かれているため、ウェブブラウザの永続化領域もユーザ毎に分かれていることが多い。したがって、図2に示したような問題は発生しにくい。 In a web browser operating on a PC, a user data storage area is divided for each logged-in user in the operating system (OS), and therefore, a permanent area of the web browser is often divided for each user. Therefore, the problem as shown in FIG. 2 is unlikely to occur.
一方で、複合機やプロジェクタなどの複数のユーザで共有される電子機器上で動作するウェブブラウザでは、ログインユーザ毎にユーザのデータ保存領域が分かれていないことが多い。したがって、図2に示したような問題が生じる場合があった。このように、複数のユーザで共有される電子機器(共有機器)上で動作するウェブブラウザでは、ユーザの個人情報を永続化領域に保存するとセキュリティ上の問題があった。 On the other hand, in a web browser that operates on an electronic device shared by a plurality of users such as a multifunction peripheral or a projector, the user data storage area is often not divided for each login user. Therefore, the problem as shown in FIG. 2 may occur. As described above, in a web browser operating on an electronic device (shared device) shared by a plurality of users, there is a security problem if the personal information of the user is stored in the permanent area.
本発明の実施の形態は、ブラウザのデータ保存領域に保存した情報のセキュリティを向上させる情報処理システムを提供することを目的とする。 An object of an embodiment of the present invention is to provide an information processing system that improves the security of information stored in a data storage area of a browser.
上記目的を達成するため、本願請求項1は、複数のユーザに共有して使用される共有機器と、該共有機器で動作するブラウザに情報を表示させるためのコンテンツを前記共有機器に提供する情報処理装置と、を有する情報処理システムであって、前記情報処理装置は、前記共有機器を操作する前記ユーザの認証を行い、認証済みの前記ユーザと対応付けて管理する暗号鍵を、前記共有機器に提供する認証手段と、前記ブラウザに機能を付加する機能付加プログラムを、前記共有機器に提供する提供手段と、を有し、前記共有機器は、複数のユーザにより共有して使用される前記ブラウザのデータ保存領域を管理する領域管理手段と、所定の情報を前記ブラウザのデータ保存領域へ保存するとき、前記機能付加プログラムを実行し、該情報を前記情報処理装置から提供された前記暗号鍵で暗号化し、前記データ保存領域に暗号化されて保存された前記所定の情報を取得するとき、前記機能付加プログラムを実行し、暗号化された前記所定の情報を前記情報処理装置から提供された前記暗号鍵で復号する実行手段と、を有することを特徴とする。
In order to achieve the above object,
本発明の実施の形態によればブラウザのデータ保存領域に保存した情報のセキュリティを向上できる。 According to the embodiment of the present invention, the security of the information stored in the data storage area of the browser can be improved.
次に、本発明の実施の形態について詳細に説明する。本実施形態では複数のユーザで共有される電子機器(共有機器)の一例として画像形成装置を例に説明するが、画像形成装置に限定するものではない。例えば共有機器はプロジェクタ、会議システム、テレビ、レコーダ、カメラ、電子黒板(IWB)などであってもよい。
[第1の実施形態]
<システム構成>
図3は、本実施形態に係る情報処理システムの一例の構成図である。図3の情報処理システム1は、LANやインターネットなどのネットワークN1を介して接続されたウェブサービスサーバ装置10、画像形成装置12を有する。ウェブサービスサーバ装置10及び画像形成装置12は無線又は有線による通信手段を有している。図3ではウェブサービスサーバ装置10及び画像形成装置12が1台である例を示しているが、複数台あってもよい。
Next, embodiments of the present invention will be described in detail. In this embodiment, an image forming apparatus will be described as an example of an electronic apparatus (shared apparatus) shared by a plurality of users, but the present invention is not limited to the image forming apparatus. For example, the shared device may be a projector, a conference system, a television, a recorder, a camera, an electronic blackboard (IWB), or the like.
[First Embodiment]
<System configuration>
FIG. 3 is a configuration diagram of an example of an information processing system according to the present embodiment. The
ウェブサービスサーバ装置10は一台以上の情報処理装置によって実現される。ウェブサービスサーバ装置10は後述のウェブサービスを提供する。また、画像形成装置12は複数のユーザにより共有される複合機やプロジェクタなどの電子機器(共有機器)の一例である。画像形成装置12はプリンタ、コピー機、レーザプリンタ、電子黒板、テレビなどの共有機器であってもよい。なお、図3の情報処理システム1は一例であって、ウェブサービスサーバ装置10が備える機能を複数台の情報処理装置で実現する構成であってもよい。
The web
<ハードウェア構成>
図3のウェブサービスサーバ装置10は、例えば図4に示すようなハードウェア構成のコンピュータにより実現される。図4は、本実施形態に係るコンピュータの一例のハードウェア構成図である。
<Hardware configuration>
The web
図4に示したコンピュータ500は、入力装置501、表示装置502、外部I/F503、RAM504、ROM505、CPU506、通信I/F507、及びHDD508などを備え、それぞれがバスBで相互に接続されている。なお、入力装置501及び表示装置502は必要なときに接続して利用する形態であってもよい。
A
入力装置501はキーボードやマウスなどを含み、ユーザが各操作信号を入力するのに用いられる。表示装置502はディスプレイなどを含み、コンピュータ500による処理結果を表示する。
The
通信I/F507はコンピュータ500をネットワークN1に接続するインタフェースである。これにより、コンピュータ500は通信I/F507を介してデータ通信を行うことができる。
A communication I /
HDD508はプログラムやデータを格納している不揮発性の記憶装置である。格納されるプログラムやデータにはコンピュータ500全体を制御する基本ソフトウェアであるOSや、OS上において各種機能を提供するアプリケーションソフトウェア等がある。
The
外部I/F503は、外部装置とのインタフェースである。外部装置には、記録媒体503aなどがある。これにより、コンピュータ500は外部I/F503を介して記録媒体503aの読み取り及び/又は書き込みを行うことができる。記録媒体503aにはフレキシブルディスク、CD、DVD、SDメモリカード、USBメモリなどがある。
The external I /
ROM505は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリ(記憶装置)である。ROM505には、コンピュータ500の起動時に実行されるBIOS(Basic Input/Output System)、OS設定、及びネットワーク設定などのプログラムやデータが格納されている。RAM504は、プログラムやデータを一時保持する揮発性の半導体メモリ(記憶装置)である。
The
CPU506は、ROM505やHDD508などの記憶装置からプログラムやデータをRAM504上に読み出し、処理を実行することで、コンピュータ500全体の制御や機能を実現する演算装置である。
The
本実施形態に係るウェブサービスサーバ装置10は上記のコンピュータ500のハードウェア構成により後述するような各種処理を実現できる。
The web
図3の画像形成装置12は、例えば図5に示すハードウェア構成により実現される。図5は、本実施形態に係る画像形成装置の一例のハードウェア構成図である。図5に示した画像形成装置12は、コントローラ601、操作パネル602、外部I/F603、通信I/F604、プリンタ605及びスキャナ606などを備える。
The
コントローラ601はCPU611、RAM612、ROM613、NVRAM614及びHDD615などを備える。ROM613は、各種プログラムやデータが格納されている。RAM612はプログラムやデータを一時保持する。NVRAM614は、例えば設定情報等が格納されている。また、HDD615は各種プログラムやデータが格納されている。
The
CPU611は、ROM613やNVRAM614、HDD615などからプログラムやデータ、設定情報等をRAM612上に読み出し、処理を実行することで、画像形成装置12全体の制御や機能を実現する。
The
操作パネル602はユーザからの入力を受け付ける入力部と、表示を行う表示部とを備えている。外部I/F603は外部装置とのインタフェースである。外部装置には、記録媒体603aなどがある。これにより、画像形成装置12は外部I/F603を介して記録媒体603aの読み取り及び/又は書き込みを行うことができる。記録媒体603aにはICカード、フレキシブルディスク、CD、DVD、SDメモリカード、USBメモリ等がある。
The
通信I/F604は、画像形成装置12をネットワークN1に接続するインタフェースである。これにより、画像形成装置12は通信I/F604を介してデータ通信を行うことができる。プリンタ605は、印刷データを用紙に印刷するための印刷装置である。スキャナ606は原稿から画像データ(電子データ)を読み取るための読取装置である。
The communication I /
<ソフトウェア構成>
《ウェブサービスサーバ装置》
本実施形態に係るウェブサービスサーバ装置10は、例えば図6に示すような処理ブロックにより実現される。図6は本実施形態に係るウェブサービスサーバ装置の一例の処理ブロック図である。
<Software configuration>
<Web service server device>
The web
ウェブサービスサーバ装置10は通信部20、ウェブアプリケーション28を有する構成である。ウェブサービスサーバ装置10は、ウェブアプリケーション28を実行することにより、認証部22、静的ファイル管理部24、ユーザ機密情報管理部26を実現している。
The web
ウェブサービスサーバ装置10の通信部20はネットワークN1を介した画像形成装置12との通信を実現する。ウェブサービスサーバ装置10のウェブアプリケーション28は通信部20を介して画像形成装置12と通信を行う。
The
ウェブアプリケーション28の認証部22は、ウェブサービスを利用するユーザの認証を行う。ユーザ認証はユーザID等のユーザ識別情報とパスワード等の秘密情報との組み合わせにより行うことができる。また、ユーザ認証は、ユーザが所有するICカード情報を利用するものや、ユーザの生体情報を利用するもの、などがある。以下ではユーザIDとパスワードとの組み合わせにより行う一般的なユーザ認証を例に説明する。
The
認証部22はユーザ認証が完了(正常終了)すると、その証明として認証チケットを画像形成装置12に返す。認証チケットは後述のウェブブラウザにより管理されるCookieなどが想定される。静的ファイル管理部24はHTMLやCSS(カスケーディングスタイルシート)やJavaScript(登録商標)などのウェブページを表示するためのファイル(ウェブコンテンツ)を管理している。なお、JavaScriptはスクリプト言語(簡易プログラミング言語)の一例である。
When the user authentication is completed (normal end), the
ユーザ機密情報管理部26はユーザがウェブサービス上に保有しているデータ(個人情報)を管理する。ユーザ機密情報管理部26に管理される個人情報は、その個人情報を保有しているユーザのみが更新、読み出し等の利用が可能である。例えばユーザAがユーザBの個人情報へアクセスすることはできない。
The user confidential
ユーザは自分の個人情報を利用する際に認証チケットが必要となる。ユーザ機密情報管理部26は認証チケットによりユーザの正当性を判定する。なお、認証チケットの正当性の検証は認証部22により行われる。
The user needs an authentication ticket when using his / her personal information. The user confidential
ユーザ機密情報管理部26に管理される個人情報はウェブサービスにより様々な情報を想定できる。例えば購買サービスのウェブサービスの場合、ユーザ機密情報管理部26に管理される個人情報はクレジットカード情報(例えばカード番号、有効期限など)や履歴情報(例えば購入履歴、閲覧履歴など)である。ウェブメールのウェブサービスの場合、ユーザ機密情報管理部26に管理される個人情報はメール情報(例えば送信履歴、受信履歴など)である。翻訳サービスのウェブサービスの場合、ユーザ機密情報管理部26に管理される個人情報は翻訳情報(例えば翻訳文の履歴など)である。
As personal information managed by the user confidential
《画像形成装置》
本実施形態に係る画像形成装置12は例えば図7に示すような処理ブロックにより実現される。図7は本実施形態に係る画像形成装置の一例の処理ブロック図である。なお、図7では画像形成装置12に特有なプリンタ、スキャナなどの機能の処理ブロックを省略している。
<Image forming apparatus>
The
画像形成装置12は通信部30、ウェブブラウザ40を有する構成である。画像形成装置12はウェブブラウザ40を実行することにより、ブラウザエンジン部32、描画部34、スクリプト実行部36、永続化部38を実現している。
The
画像形成装置12の通信部30はネットワークN1を介したウェブサービスサーバ装置10との通信を実現する。画像形成装置12のウェブブラウザ40は通信部30を介してウェブサービスサーバ装置10と通信を行う。つまり、ウェブサービスサーバ装置10のウェブアプリケーション28と画像形成装置12のウェブブラウザ40とはネットワークN1を介して通信を行う。
The
ウェブブラウザ40のブラウザエンジン部32はHTTPリクエストを介したHTMLやCSS、JavaScriptなどのウェブコンテンツを取得する。ブラウザエンジン部32は取得したウェブコンテンツの解析を行い、ブラウザ画面へ表示する描画情報を描画部34に提供する。ブラウザエンジン部32はウェブブラウザ40全体の動作の管理も行う。描画部34はウェブページなどの描画情報をブラウザ画面に表示する。
The
スクリプト実行部36はウェブサービスサーバ装置10から取得したウェブコンテンツに付加されていたJavaScriptなどのスクリプトを実行する。なお、スクリプトの内容はウェブサービスにより様々であるが、描画情報へ影響するものや、ウェブサービスサーバ装置10からユーザのデータ(個人情報)を取得するものなど、がある。
The
また、スクリプトはウェブサービスサーバ装置10から取得した個人情報をウェブブラウザ40のローカルストレージ(永続化領域)に保存する指示や、永続化領域から個人情報を取得する指示なども行う。永続化部38はスクリプト実行部36から保存を指示された個人情報をウェブブラウザ40の永続化領域に保存する。
The script also instructs to save the personal information acquired from the web
例えばウェブブラウザ40の永続化領域はウェブストレージと呼ばれるウェブブラウザ側でデータを保存する機能を利用できる。永続化領域に保存された個人情報は明示的に削除の指示があった場合に削除され、画像形成装置12の電源オフやウェブブラウザ40の終了などがあっても削除されない。
For example, a permanent area of the
なお、永続化領域はスクリプトを取得したウェブサービスのオリジン毎に共有されているため、図2に示したように、あるユーザの個人情報を別のユーザが閲覧できてしまうというセキュリティ上の問題があった。そこで、スクリプト実行部36はウェブブラウザ40の永続化領域にユーザの個人情報を保存する際に、ウェブサービスサーバ装置10から取得したユーザ秘密鍵により暗号化する。また、スクリプト実行部36はウェブブラウザ40の永続化領域からユーザの個人情報を取得する際に、ウェブサービスサーバ装置10から取得したユーザ秘密鍵により復号する。
Since the persistence area is shared for each origin of the web service that acquired the script, there is a security problem that another user can view the personal information of one user as shown in FIG. there were. Therefore, the
永続化領域に保存されている他のユーザの個人情報(ユーザ機密情報)は他のユーザのユーザ秘密鍵により暗号化されており、且つ、他のユーザのユーザ秘密鍵を入手しなければ復号できない。また、他のユーザのユーザ秘密鍵は、他のユーザID及びパスワードを入手してユーザ認証に成功しなければ取得できない。したがって、本実施形態の情報処理システム1では永続化領域が、スクリプトを取得したウェブサービスのオリジン毎に共有されていても、ユーザ毎のユーザ秘密鍵で暗号化したユーザ機密情報を永続化領域に保存することでセキュリティを向上できる。
The personal information (user confidential information) of other users stored in the persistent area is encrypted with the other user's user private key and cannot be decrypted without obtaining the other user's user private key. . The user secret key of another user cannot be acquired unless another user ID and password are obtained and user authentication is successful. Therefore, in the
なお、永続化領域に保存された個人情報は例えば図8に示すようにブラウザ画面に表示される。図8はブラウザ画面に表示される個人情報について説明する為の図である。ブラウザ画面1000はウェブサービスのログイン画面の一例である。ユーザは画像形成装置12に表示されたブラウザ画面1000にユーザID及びパスワードを入力し、ログインを要求する。
The personal information stored in the permanent area is displayed on the browser screen as shown in FIG. 8, for example. FIG. 8 is a diagram for explaining personal information displayed on the browser screen. The
ユーザ認証が完了(正常終了)すると、画像形成装置12はウェブサービスサーバ装置10から認証チケットを取得する。画像形成装置12は認証チケットを利用し、個人情報の一例としてユーザ機密情報が含まれるブラウザ画面1001を表示する。ブラウザ画面1001の「ウェブサービス」や「ようこそuser1」のような情報はHTMLやCSSのファイルとしてウェブサービスサーバ装置10のウェブアプリケーション28から提供される。
When the user authentication is completed (normal end), the
なお、ブラウザ画面1001の「ユーザ機密情報:user1_secret」のような個人情報はスクリプトによりウェブサービスサーバ装置10のウェブアプリケーション28から取得される。
Note that personal information such as “user confidential information: user1_secret” on the
図20はブラウザ画面に表示される個人情報の具体例を説明する為の図である。例えば図20(A)のブラウザ画面1001は個人情報がクレジットカード情報の例を示した画面例である。図20(A)のブラウザ画面1001ではクレジットカード情報に含まれているカード番号と有効期限とが表示されている。また、例えば図20(B)のブラウザ画面1001は個人情報が履歴情報の例を示した画面例である。図20(B)のブラウザ画面1001では履歴情報に含まれている購入履歴が表示されている。
FIG. 20 is a diagram for explaining a specific example of personal information displayed on the browser screen. For example, the
スクリプトは個人情報がウェブブラウザ40の永続化領域に保存されている場合に永続化領域から個人情報を取得する。また、スクリプトは個人情報がウェブブラウザ40の永続化領域に保存されていない場合に、ウェブサービスサーバ装置10から個人情報を取得する。
The script acquires personal information from the permanent area when the personal information is stored in the permanent area of the
《認証情報テーブル》
図9は認証部が保持するユーザ認証情報テーブルの一例の構成図である。図9のユーザ認証情報テーブルはユーザID、パスワード、認証チケット、ユーザ秘密鍵を有する構成である。ユーザIDはユーザを識別するためのユーザ識別情報の一例である。パスワードはユーザの秘密情報の一例である。なお、図9では説明のためにパスワードを平文で記載しているが、暗号化された状態のパスワードが記載される。
《Authentication information table》
FIG. 9 is a configuration diagram of an example of a user authentication information table held by the authentication unit. The user authentication information table shown in FIG. 9 has a user ID, password, authentication ticket, and user secret key. The user ID is an example of user identification information for identifying a user. The password is an example of user secret information. In FIG. 9, the password is described in plain text for explanation, but the encrypted password is described.
認証チケットはユーザ認証が完了(正常終了)したあと、ウェブサービスサーバ装置10の認証部22により発行されるものである。認証チケットはログインを行ったウェブブラウザ40へのHTTPレスポンスに付加されることで、ウェブサービスサーバ装置10から画像形成装置12のウェブブラウザ40に返される。
The authentication ticket is issued by the
ユーザ秘密鍵はユーザ機密情報を暗号化/復号する際に使用する秘密鍵である。ユーザ秘密鍵はユーザがログインしたタイミングで認証部22により生成される。なお、図9の認証チケット及びユーザ秘密鍵はユーザがウェブサービスからログアウトしたタイミングで図9のユーザ認証情報テーブルから破棄される。
The user secret key is a secret key used when encrypting / decrypting user confidential information. The user secret key is generated by the
図9に示したユーザ認証情報テーブルでは、ユーザID「user1」及び「user2」のユーザがログインしており、ユーザID「user3」のユーザがログインしていない状態を表している。 In the user authentication information table shown in FIG. 9, the user IDs “user1” and “user2” are logged in, and the user ID “user3” is not logged in.
ユーザID「user3」のユーザがログインしていないため、図9のユーザ認証情報テーブルでは、ユーザID「user3」の認証チケット及びユーザ秘密鍵が記載されていないことを表す「null」となっている。 Since the user with the user ID “user3” is not logged in, the user authentication information table of FIG. 9 is “null” indicating that the authentication ticket and user private key of the user ID “user3” are not described. .
《ユーザ機密情報テーブル》
図10は、ユーザ機密情報管理部が保持するユーザ機密情報テーブルの一例の構成図である。図10のユーザ機密情報テーブルは、ユーザID、ユーザ機密情報を有する構成である。図10に示すように、ユーザ機密情報はユーザIDと対応付けられてユーザ機密情報テーブルに保持される。ユーザ機密情報はユーザ機密情報テーブルにおいて対応付けられているユーザIDのユーザが利用可能である。
<< User confidential information table >>
FIG. 10 is a configuration diagram of an example of a user confidential information table held by the user confidential information management unit. The user confidential information table of FIG. 10 is configured to have a user ID and user confidential information. As shown in FIG. 10, the user confidential information is stored in the user confidential information table in association with the user ID. The user confidential information can be used by a user having a user ID associated with the user confidential information table.
例えばユーザID「user1」のユーザが自分のユーザ機密情報にアクセスする場合にはユーザ認証により取得した認証チケットが必要となる。したがって、ユーザID「user1」のユーザはユーザID「user2」のユーザID及びパスワードを入手しない限り、ユーザID「user2」のユーザのユーザ機密情報にアクセスできない。 For example, when the user with the user ID “user1” accesses his / her confidential user information, an authentication ticket acquired by user authentication is required. Therefore, the user with the user ID “user1” cannot access the user confidential information of the user with the user ID “user2” unless obtaining the user ID and password with the user ID “user2”.
図11は永続化部が保持するユーザ機密情報テーブルの一例の構成図である。図11のユーザ機密情報テーブルはユーザID、暗号化ユーザ機密情報を有する構成である。暗号化ユーザ機密情報はウェブサービスサーバ装置10のウェブアプリケーション28から取得したユーザ秘密鍵により暗号化されたユーザ機密情報である。
FIG. 11 is a configuration diagram of an example of the user confidential information table held by the persistence unit. The user confidential information table in FIG. 11 has a user ID and encrypted user confidential information. The encrypted user confidential information is user confidential information encrypted with the user secret key acquired from the
図11に示すように暗号化ユーザ機密情報はユーザIDと対応付けられてユーザ機密情報テーブルに保存される。暗号化ユーザ機密情報の復号にも、ウェブサービスサーバ装置10のウェブアプリケーション28から取得したユーザ秘密鍵が使用される。ここでは暗号化と復号に同一の鍵を利用する共通鍵暗号方式の例を説明したが、対象鍵暗号方式を利用してもよい。
As shown in FIG. 11, the encrypted user confidential information is stored in the user confidential information table in association with the user ID. The user secret key acquired from the
<処理の詳細>
以下では、本実施形態に係る情報処理システム1の処理の詳細について説明する。
<Details of processing>
Below, the detail of the process of the
《ユーザ機密情報を永続化領域に保存する処理》
例えば本実施形態の情報処理システム1では図12及び図13に示す手順によりウェブサービスサーバ装置10に保存されているユーザ機密情報をウェブブラウザ40の永続化領域に保存する。
《Process to save user confidential information in permanent area》
For example, in the
図12はユーザが画像形成装置12のウェブブラウザ40からウェブサービスにログインし、ユーザ機密情報以外のユーザページを表示するまでの処理の一例を表したシーケンス図である。
FIG. 12 is a sequence diagram illustrating an example of processing from when the user logs in to the web service from the
図13はユーザ機密情報を含むユーザページ(例えば図8のブラウザ画面1001)の表示と、ウェブブラウザ40の永続化領域へのユーザ機密情報の保存と、を行う処理の一例を表したシーケンス図である。
FIG. 13 is a sequence diagram showing an example of processing for displaying a user page including user confidential information (for example, the
画像形成装置12のウェブブラウザ40はユーザからの操作により図12のシーケンス図の処理を開始する。ステップS10において、ウェブブラウザ40のブラウザエンジン部32はウェブサービスサーバ装置10のウェブアプリケーション28にログインページの取得要求を行う。
The
ステップS11においてウェブアプリケーション28は静的ファイル管理部24からログインページのウェブコンテンツを取得し、ログインページのウェブコンテンツを画像形成装置12のブラウザエンジン部32に返す。ログインページのウェブコンテンツの取得方法は一般的なHTTPリクエストにより行うことができる。
In step S <b> 11, the
ステップS12においてブラウザエンジン部32はウェブサービスサーバ装置10から返されたHTMLやCSS等のウェブコンテンツの解析を行い、描画情報を作成する。ブラウザエンジン部32は作成した描画情報を描画部34に提供してログインページの描画を要求する。描画部34は、提供された描画情報によりログインページを描画してブラウザ画面(例えば図8のブラウザ画面1000)に表示する。
In step S12, the
ユーザは、ログインページにユーザID、パスワードを入力してログインボタンを押下する。ステップS13において、画像形成装置12のブラウザエンジン部32はユーザID、パスワードを付加したログイン要求を、ウェブサービスサーバ装置10のウェブアプリケーション28に対して行う。
The user inputs the user ID and password on the login page and presses the login button. In step S <b> 13, the
ステップS14において、ウェブアプリケーション28は認証部22にユーザID、パスワードの認証を要求する。ステップS15において、認証部22は図9に示したユーザ認証情報テーブルを参照し、ユーザID、パスワードの正当性を検証する。ユーザID、パスワードの正当性を検証できれば、認証部22はユーザ認証を成功と判定する。ユーザ認証が成功すると、認証部22は認証チケットを生成する。
In step S14, the
また、ユーザ認証が成功すると、認証部22はステップS16においてユーザ秘密鍵を生成する。認証部22はユーザ認証に成功したユーザID、パスワードと対応付けて認証チケット及びユーザ秘密鍵を図9のユーザ認証情報テーブルに保存する。
If the user authentication is successful, the
ウェブアプリケーション28は生成した認証チケットを画像形成装置12のウェブブラウザ40へのHTTPレスポンスヘッダに付加して返す。また、ウェブアプリケーション28はHTTPレスポンスとしてユーザページURLへのリダイレクトを画像形成装置12のウェブブラウザ40に指示する。
The
ステップS17において、ブラウザエンジン部32はウェブサービスサーバ装置10のウェブアプリケーション28から返された認証チケットを、ウェブブラウザ40のCookie保存場所に保存する。認証チケットをウェブブラウザ40のCookie保存場所に保存する処理は一般的なウェブブラウザ40の挙動である。
In step S <b> 17, the
ステップS18においてブラウザエンジン部32はウェブアプリケーション28から指示されたユーザページURLへのリダイレクト処理を実行する。具体的に、ブラウザエンジン部32は認証チケットを付加したユーザページの取得要求を、ウェブサービスサーバ装置10のウェブアプリケーション28に対して行う。
In step S18, the
ステップS19において、ウェブアプリケーション28は認証部22に認証チケットの確認を要求する。認証部22は図9に示したユーザ認証情報テーブルを参照し、確認を要求された認証チケットがユーザ認証情報テーブルに有れば正当なユーザと判定する。図12では正当なユーザと判定された例を示している。認証部22は判定の結果をウェブアプリケーション28に返す。
In step S19, the
正当なユーザとの判定の結果に基づき、ウェブアプリケーション28は静的ファイル管理部24からユーザページのウェブコンテンツを取得し、ユーザページのウェブコンテンツを画像形成装置12のブラウザエンジン部32に返す。なお、正当なユーザと判定されなかった場合には、ユーザページのウェブコンテンツを画像形成装置12のブラウザエンジン部32に返さない。
Based on the result of determination as a valid user, the
ステップS21においてブラウザエンジン部32はウェブサービスサーバ装置10から返されたHTMLやCSS等のウェブコンテンツの解析を行い、描画情報を作成する。ブラウザエンジン部32は作成した描画情報を描画部34に提供してユーザページの描画を要求する。描画部34は、提供された描画情報によりユーザページを描画してブラウザ画面に表示する。
In step S21, the
また、ステップS21の処理と平行してブラウザエンジン部32は図13のステップS31において、ウェブサービスサーバ装置10から返されたウェブコンテンツに含まれていたJavaScriptの実行をスクリプト実行部36に指示する。ステップS31の指示にはユーザID、認証チケットが付加される。また、ステップS31で実行を指示されたJavaScriptはユーザ機密情報をユーザページに描画するスクリプトであるものとする。
In parallel with the process of step S21, the
ステップS32においてスクリプト実行部36は、認証チケットに対応するユーザ秘密鍵の取得をウェブサービスサーバ装置10のウェブアプリケーション28に要求する。ステップS33においてウェブアプリケーション28は認証チケットに対応するユーザ秘密鍵の取得を認証部22に要求する。認証部22は図9に示したユーザ認証情報テーブルを参照して、認証チケットに対応するユーザ秘密鍵をウェブアプリケーション28に返す。
In step S <b> 32, the
ウェブアプリケーション28は認証チケットに対応するユーザ秘密鍵を画像形成装置12のスクリプト実行部36に返す。ステップS34においてスクリプト実行部36は永続化領域からのユーザ機密情報の取得を以下のように試みる。ステップS35においてスクリプト実行部36は、ユーザIDを指定して図11の暗号化ユーザ機密情報の取得を永続化部38に要求する。ここでは永続化領域に暗号化ユーザ機密情報が保存されていない例を示す。
The
暗号化ユーザ機密情報なしの応答を永続化部38から返されると、スクリプト実行部36はステップS36に進む。スクリプト実行部36は認証チケットに対応するユーザ機密情報の取得をウェブサービスサーバ装置10のウェブアプリケーション28に要求する。
When the response with no encrypted user confidential information is returned from the
ステップS37において、ウェブアプリケーション28は認証部22に認証チケットの確認を要求する。認証部22は図9に示したユーザ認証情報テーブルを参照し、確認を要求された認証チケットがユーザ認証情報テーブルに有れば正当なユーザと判定する。図13では正当なユーザと判定された例を示している。認証部22は判定の結果をウェブアプリケーション28に返す。
In step S <b> 37, the
正当なユーザとの判定の結果に基づき、ウェブアプリケーション28はユーザ機密情報管理部26からユーザ機密情報を取得し、画像形成装置12のスクリプト実行部36に返す。なお、正当なユーザと判定されなかった場合には、ユーザ機密情報を画像形成装置12のスクリプト実行部36に返さない。
Based on the result of the determination as a legitimate user, the
ステップS39において、スクリプト実行部36はユーザ機密情報をユーザ秘密鍵で暗号化する。暗号化の方式は共通鍵暗号方式であるDES(Data Encryption Standard)やAES(Advanced Encryption Standard)が想定される。
In step S39, the
ステップS40において、スクリプト実行部36は暗号化したユーザ機密情報を暗号化ユーザ機密情報として永続化領域に保存するように永続化部38に要求する。永続化部38は図11のユーザ機密情報テーブルに示すように、キーをユーザID、バリューを暗号化ユーザ機密情報としたキーバリュー形式で永続化領域に保存する。
In step S40, the
ステップS41において、スクリプト実行部36はウェブサービスサーバ装置10から返されたユーザ機密情報の描画を描画部34に要求する。描画部34は要求されたユーザ機密情報をユーザページに描画する。
In step S <b> 41, the
《永続化領域に保存されたユーザ機密情報を利用する処理》
例えば本実施形態の情報処理システム1では図14に示す手順によりウェブブラウザ40の永続化領域に保存された暗号化ユーザ機密情報を復号して利用する。図14はウェブブラウザの永続化領域に保存された暗号化ユーザ機密情報を復号して利用する処理の一例を表したシーケンス図である。
《Process using user confidential information stored in persistent area》
For example, in the
ここでは図12及び図13に示した手順によりウェブサービスを利用したユーザが再びウェブサービスを利用する場合を想定する。なお、図14のシーケンス図に示す処理の前に図12に示した手順によりユーザ機密情報以外のユーザページを表示する。 Here, it is assumed that a user who uses the web service according to the procedure shown in FIGS. 12 and 13 uses the web service again. Note that a user page other than user confidential information is displayed by the procedure shown in FIG. 12 before the processing shown in the sequence diagram of FIG.
ブラウザエンジン部32はステップS51において、ウェブサービスサーバ装置10から返されたウェブコンテンツに含まれていたJavaScriptの実行をスクリプト実行部36に指示する。ステップS51の指示にはユーザID、認証チケットが付加されている。また、ステップS51で実行を指示されたJavaScriptはユーザ機密情報をユーザページに描画するスクリプトであるものとする。
In step S51, the
ステップS52においてスクリプト実行部36は、認証チケットに対応するユーザ秘密鍵の取得をウェブサービスサーバ装置10のウェブアプリケーション28に要求する。ステップS53においてウェブアプリケーション28は認証チケットに対応するユーザ秘密鍵の取得を認証部22に要求する。認証部22は図9に示したユーザ認証情報テーブルを参照して、認証チケットに対応するユーザ秘密鍵をウェブアプリケーション28に返す。
In step S <b> 52, the
ウェブアプリケーション28は認証チケットに対応するユーザ秘密鍵を画像形成装置12のスクリプト実行部36に返す。ステップS54においてスクリプト実行部36は永続化領域からのユーザ機密情報の取得を以下のように試みる。ステップS55においてスクリプト実行部36は、ユーザIDを指定して図11の暗号化ユーザ機密情報の取得を永続化部38に要求する。
The
ここでは永続化領域に暗号化ユーザ機密情報が保存されている例を示す。永続化部38はユーザIDをキーとして図11のユーザ機密情報テーブルからバリューの暗号化ユーザ機密情報を取得する。
Here, an example is shown in which encrypted user confidential information is stored in the permanent area. The
ステップS56において、スクリプト実行部36は暗号化ユーザ機密情報をユーザ秘密鍵で復号する。ステップS57においてスクリプト実行部36は復号したユーザ機密情報の描画を描画部34に要求する。描画部34は要求されたユーザ機密情報をユーザページに描画する。
In step S56, the
《スクリプト実行部がユーザ機密情報を取得する処理》
図15はスクリプト実行部がユーザ機密情報を取得する処理の一例のフローチャートである。ステップS61においてスクリプト実行部36は、ユーザ秘密鍵をウェブサービスサーバ装置10のウェブアプリケーション28から取得する。
<< Process for obtaining confidential user information by script execution unit >>
FIG. 15 is a flowchart of an example of processing in which the script execution unit acquires user confidential information. In step S <b> 61, the
ステップS62において、スクリプト実行部36は、ユーザIDを指定して図11の暗号化ユーザ機密情報の取得を永続化部38に要求する。暗号化ユーザ機密情報を取得できれば(S63においてYes)、スクリプト実行部36はステップS64において暗号化ユーザ機密情報をユーザ秘密鍵で復号する。
In step S62, the
暗号化ユーザ機密情報を取得できなければ(S63においてNo)、スクリプト実行部36はステップS65に進み、ウェブサービスサーバ装置10からユーザ機密情報を取得する。ステップS66において、スクリプト実行部36はユーザ機密情報をユーザ秘密鍵で暗号化する。
If the encrypted user confidential information cannot be acquired (No in S63), the
ステップS67において、スクリプト実行部36は暗号化したユーザ機密情報を暗号化ユーザ機密情報として永続化領域に保存するように永続化部38に要求し、暗号化ユーザ機密情報を永続化領域に保存する。
In step S67, the
<まとめ>
本実施形態の情報処理システム1では、ウェブブラウザ40の永続化領域にユーザ機密情報を保存する際に、ウェブサービスサーバ装置10から取得したユーザ秘密鍵で暗号化する。また、本実施形態の情報処理システム1ではウェブブラウザ40の永続化領域からユーザ機密情報を取得する際に、ウェブサービスサーバ装置10から取得したユーザ秘密鍵で復号する。
<Summary>
In the
したがって、ユーザは画像形成装置12のウェブブラウザ40から他のユーザと同一のウェブサービスを利用したとしても、他のユーザが永続化領域に保存している他のユーザの暗号化ユーザ機密情報を復号して閲覧できない。例えば本実施形態の情報処理システム1では、画像形成装置12のような共有機器上で動作するウェブブラウザ40を用いた際に、ユーザ認証が必要となるウェブサービスに保存されている情報を、暗号化してウェブブラウザ40の永続化領域に保存できる。
Therefore, even if the user uses the same web service as the other user from the
例えば画像形成装置12のような複数のユーザで共有される電子機器(共有機器)上で動作するウェブブラウザでは、ログインユーザ毎にユーザのデータ保存領域が分かれていないことが多い。これは、共有機器で行われるログインが共有機器を使用するために行うログインであって、OSのログインでないため、ログインユーザ毎にデータ保存領域をOSレベルで分けることが困難であるためである。
For example, in a web browser that operates on an electronic device (shared device) shared by a plurality of users, such as the
このため、本実施形態の情報処理システム1ではログインユーザ毎にユーザのデータ保存領域を分けるのではなく、ウェブブラウザのデータ保存領域に保存した情報の暗号化によりセキュリティを向上させている。
For this reason, in the
本実施形態の情報処理システム1では、画像形成装置12上で動作するウェブブラウザ40の永続化領域に保存した情報のセキュリティを向上させることができる。
[第2の実施形態]
第1の実施形態では永続化領域からのユーザ機密情報の取得を試みる前に、ユーザ秘密鍵をウェブサービスサーバ装置10から取得していた。第2の実施形態ではウェブサービスサーバ装置10から取得したユーザ秘密鍵をウェブブラウザ40の揮発性領域に保存することで通信回数を低減している。なお、第2の実施形態は一部を除いて第1の実施形態と同様であるため、適宜説明を省略する。
In the
[Second Embodiment]
In the first embodiment, the user secret key is acquired from the web
例えばウェブブラウザ40の揮発性領域はウェブストレージと呼ばれるウェブブラウザ40側でデータを保存するセッションストレージを利用できる。セッションストレージはウェブブラウザ40のウィンドウごとのセッションで有効なストレージである。ウィンドウやタブが開いている間、セッションストレージはデータを保存し、ウィンドウやタブが閉じられるとデータを削除する。
For example, the volatile area of the
なお、ウェブブラウザ40の永続化領域は、ウェブストレージと呼ばれるウェブブラウザ側でデータを保存するローカルストレージを利用できる。ローカルストレージはウェブブラウザ40を利用するユーザのデータを永続的に保存するストレージである。
The permanent area of the
<ソフトウェア構成>
《画像形成装置》
本実施形態に係る画像形成装置12は例えば図16に示すような処理ブロックにより実現される。図16は本実施形態に係る画像形成装置の他の例の処理ブロック図である。図16では画像形成装置12に特有なプリンタ、スキャナなどの機能の処理ブロックを省略している。
<Software configuration>
<Image forming apparatus>
The
図16に示した画像形成装置12は、図7の画像形成装置12のウェブブラウザ40に揮発性データ保管部42を追加した構成である。揮発性データ保管部42は揮発性領域にデータを保存する。
The
<処理の詳細>
第2の実施形態の情報処理システム1では図17に示した手順でユーザ秘密鍵をウェブブラウザ40の揮発性領域に保存する。図17はユーザ秘密鍵をウェブブラウザの揮発性領域に保存する処理の一例を表したシーケンス図である。なお、図17のシーケンス図に示す処理の前に、図12の手順によりユーザ機密情報以外のユーザページを表示する。
<Details of processing>
In the
ブラウザエンジン部32はステップS81において、ウェブサービスサーバ装置10から返されたウェブコンテンツに含まれていたJavaScriptの実行をスクリプト実行部36に指示する。
In step S81, the
ステップS81の指示にはユーザID、認証チケットが付加される。また、ステップS81で実行を指示されたJavaScriptはユーザ機密情報をユーザページに描画するスクリプトであるものとする。 A user ID and an authentication ticket are added to the instruction in step S81. In addition, it is assumed that JavaScript that is instructed to be executed in step S81 is a script that draws user confidential information on the user page.
ステップS82においてスクリプト実行部36はユーザIDを指定してユーザ秘密鍵の取得を揮発性データ保管部42に要求する。ここでは揮発性領域にユーザ秘密鍵が保存されていない例を示す。
In step S82, the
ユーザ秘密鍵なしの応答を揮発性データ保管部42から返されると、スクリプト実行部36はステップS83において、認証チケットに対応するユーザ秘密鍵の取得をウェブサービスサーバ装置10のウェブアプリケーション28に要求する。ステップS84においてウェブアプリケーション28は認証チケットに対応するユーザ秘密鍵の取得を認証部22に要求する。認証部22は図9のユーザ認証情報テーブルを参照して、認証チケットに対応するユーザ秘密鍵をウェブアプリケーション28に返す。
When the response without the user secret key is returned from the volatile
ウェブアプリケーション28は認証チケットに対応するユーザ秘密鍵を画像形成装置12のスクリプト実行部36に返す。ステップS85において、スクリプト実行部36は認証チケットを暗号鍵としてユーザ秘密鍵を共通暗号鍵方式で暗号化する。ステップS86において、スクリプト実行部36は暗号化したユーザ秘密鍵を揮発性領域に保存するように揮発性データ保管部42に要求する。揮発性データ保管部42はキーをユーザID、バリューを暗号化したユーザ秘密鍵としたキーバリュー形式で揮発性領域に保存する。
The
ステップS86の処理の後には、図13のステップS34〜S41、又は、図14のステップS54〜S57の処理を行うが、説明を省略する。また、揮発性領域にユーザ秘密鍵が保存されている例はステップS87以降である。 After step S86, steps S34 to S41 in FIG. 13 or steps S54 to S57 in FIG. 14 are performed, but the description is omitted. An example in which the user secret key is stored in the volatile area is after step S87.
ブラウザエンジン部32はステップS87において、ウェブサービスサーバ装置10から返されたウェブコンテンツに含まれていたJavaScriptの実行をスクリプト実行部36に指示する。ステップS87で実行を指示されたJavaScriptはユーザ機密情報をユーザページに描画するスクリプトであるものとする。
In step S87, the
ステップS88においてスクリプト実行部36はユーザIDを指定してユーザ秘密鍵の取得を揮発性データ保管部42に要求する。すると、揮発性データ保管部42はユーザIDをキーとしてバリューの暗号化されたユーザ秘密鍵を取得する。ステップS89においてスクリプト実行部36は暗号化されたユーザ秘密鍵を認証チケットで復号する。
In step S88, the
また、ステップS89の処理の後には、図13のステップS34〜S41、又は、図14のステップS54〜S57の処理を行うが、説明を省略する。 Further, after the process of step S89, the processes of steps S34 to S41 in FIG. 13 or steps S54 to S57 in FIG.
第2の実施形態ではユーザ秘密鍵を認証チケットで暗号化したあとでウェブブラウザ40の揮発性領域に保存する。ユーザ秘密鍵を認証チケットで暗号化することにより、第2の実施形態ではユーザがウェブブラウザ40で利用している認証チケットの有効期限が切れた時点で暗号化されたユーザ秘密鍵が復号できなくなる。
In the second embodiment, the user secret key is encrypted with the authentication ticket and then stored in the volatile area of the
このため、第2の実施形態ではユーザ秘密鍵をウェブブラウザ40の揮発性領域に保存する期間とウェブブラウザ40がウェブサービスにログインしている期間(認証チケットを保持している期間)とが同等となる。第2の実施形態は認証チケットの有効期限が切れた状態でのユーザ秘密鍵の利用を禁止するものであり、共有機器におけるセキュリティを向上できる。
[第3の実施形態]
第1及び第2の実施形態では図3に示したようにウェブサービスサーバ装置10と画像形成装置12とを有する情報処理システム1を例として説明した。第3の実施形態は図18に示すように、図3の情報処理システム1の構成にPC14を追加している。
For this reason, in the second embodiment, the period during which the user private key is stored in the volatile area of the
[Third Embodiment]
In the first and second embodiments, the
上述したように、PC14上で動作するウェブブラウザ40はOSでのログインユーザ毎にユーザのデータ保存領域が分かれていることが多く、ウェブブラウザ40の永続化領域もユーザ毎に分かれていることが多い。したがって、PC14上で動作するウェブブラウザ40の永続化領域に、ウェブサービスサーバ装置10に保存されているユーザ機密情報を保存する場合は、上記したユーザ機密情報をユーザページに描画するJavaScriptをPC14に送信しなくてもよい。
As described above, the
そこで、第3の実施形態ではユーザページの取得を要求する要求元が画像形成装置12のような共有機器であるか、又は、PC14であるか、を判別し、共有機器である場合に上記したユーザ機密情報をユーザページに描画するJavaScriptを送信する。例えば共有機器であるか、又は、PC14であるか、の判別は例えばウェブブラウザ40からの要求(リクエスト)のヘッダを確認することで判別できる。一般的に、ウェブブラウザ40はリクエストを送信する際、自身が何者かを示す「User−Agent」ヘッダを付与するため、この「User−Agent」ヘッダにより共有機器であるか、又は、PC14であるか、を判別できる。
Therefore, in the third embodiment, it is determined whether the request source requesting acquisition of the user page is a shared device such as the
図19はユーザページの取得要求を受け付けたウェブアプリケーションの処理の一例を表したフローチャートである。ステップS91において、ウェブアプリケーション28はユーザページの取得要求を受信する。
FIG. 19 is a flowchart illustrating an example of processing of a web application that has received a user page acquisition request. In step S91, the
ステップS92においてウェブアプリケーション28は認証部22に認証チケットの確認を要求し、正当なユーザか否かを判定する。正当なユーザであれば(ステップS92においてYes)、ウェブアプリケーション28はユーザページの取得を要求する要求元をステップS93において確認する。
In step S92, the
ユーザページの取得を要求する要求元が共有機器であれば(ステップS94においてYes)、ウェブアプリケーション28はステップS95に進む。ウェブアプリケーション28はステップS95において、上記したユーザ機密情報をユーザページに描画するJavaScriptをユーザページのウェブコンテンツに付加する。ステップS96においてウェブアプリケーション28は、上記したユーザ機密情報をユーザページに描画するJavaScriptを付加されたユーザページのウェブコンテンツを画像形成装置12に返す。
If the request source requesting acquisition of the user page is a shared device (Yes in step S94), the
なお、ステップS92において正当なユーザでないと判定すれば(ステップS92においてNo)、ウェブアプリケーション28は図19の処理を終了する。また、ステップS94においてユーザページの取得を要求する要求元が共有機器でなければ(ステップS94においてNo)、ウェブアプリケーション28はステップS95の処理をスキップしてステップS96に進む。
If it is determined in step S92 that the user is not a valid user (No in step S92), the
なお、ステップS95の処理をスキップした場合、ウェブアプリケーション28は上記したユーザ機密情報をユーザページに描画するJavaScriptを付加されていないユーザページのウェブコンテンツを画像形成装置12に返す。
When the process of step S95 is skipped, the
このように、第3の実施形態ではユーザページの取得を要求する要求元が共有機器である場合に、上記したユーザ機密情報をユーザページに描画するJavaScriptを付加されたユーザページのウェブコンテンツを画像形成装置12に提供できる。
As described above, in the third embodiment, when the request source requesting acquisition of the user page is a shared device, the web content of the user page to which the above-described user secret information is added to the user page is rendered as an image. The forming
本発明は、具体的に開示された上記の実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。 The present invention is not limited to the specifically disclosed embodiments, and various modifications and changes can be made without departing from the scope of the claims.
認証部22は特許請求の範囲に記載した認証手段の一例である。静的ファイル管理部24は提供手段の一例である。永続化部38は領域管理手段の一例である。スクリプト実行部36は実行手段の一例である。静的ファイル管理部24が管理しているJavaScriptは機能付加プログラムの一例である。
The
永続化領域は永続化データ保存領域の一例である。揮発性領域は、揮発的に情報を保存するブラウザの揮発データ保存領域の一例である。認証チケットはユーザが認証済みであることを示す証明情報の一例である。 The permanent area is an example of a permanent data storage area. The volatile area is an example of a volatile data storage area of a browser that stores information in a volatile manner. The authentication ticket is an example of certification information indicating that the user has been authenticated.
1 情報処理システム
10 ウェブサービスサーバ装置
12 画像形成装置
14 PC
20、30 通信部
22 認証部
24 静的ファイル管理部
26 ユーザ機密情報管理部
28 ウェブアプリケーション
32 ブラウザエンジン部
34 描画部
36 スクリプト実行部
38 永続化部
40 ウェブブラウザ
42 揮発性データ保管部
500 コンピュータ
501 入力装置
502 表示装置
503 外部I/F
503a 記録媒体
504 RAM
505 ROM
506 CPU
507 通信I/F
508 HDD
601 コントローラ
602 操作パネル
603 外部I/F
603a 記録媒体
604 通信I/F
605 プリンタ
606 スキャナ
611 CPU
612 RAM
613 ROM
614 NVRAM
615 HDD
1000、1001 ブラウザ画面
B バス
N1 ネットワーク
DESCRIPTION OF
DESCRIPTION OF
503a Recording medium 504 RAM
505 ROM
506 CPU
507 Communication I / F
508 HDD
601
603a Recording medium 604 Communication I / F
605
612 RAM
613 ROM
614 NVRAM
615 HDD
1000, 1001 Browser screen B Bus N1 Network
Claims (12)
前記情報処理装置は、
前記共有機器を操作する前記ユーザの認証を行い、認証済みの前記ユーザと対応付けて管理する暗号鍵を、前記共有機器に提供する認証手段と、
前記ブラウザに機能を付加する機能付加プログラムを、前記共有機器に提供する提供手段と、
を有し、
前記共有機器は、
複数のユーザにより共有して使用される前記ブラウザのデータ保存領域を管理する領域管理手段と、
所定の情報を前記ブラウザのデータ保存領域へ保存するとき、前記機能付加プログラムを実行し、該情報を前記情報処理装置から提供された前記暗号鍵で暗号化し、前記データ保存領域に暗号化されて保存された前記所定の情報を取得するとき、前記機能付加プログラムを実行し、暗号化された前記所定の情報を前記情報処理装置から提供された前記暗号鍵で復号する実行手段と、
を有する情報処理システム。 An information processing system comprising: a shared device that is shared and used by a plurality of users; and an information processing device that provides the shared device with content for displaying information on a browser that operates on the shared device,
The information processing apparatus includes:
An authentication unit that authenticates the user who operates the shared device and provides the shared device with an encryption key that is managed in association with the authenticated user;
Providing means for providing a function addition program for adding a function to the browser to the shared device;
Have
The shared device is
Area management means for managing the data storage area of the browser shared and used by a plurality of users;
When storing predetermined information in the data storage area of the browser, the function addition program is executed, the information is encrypted with the encryption key provided from the information processing apparatus, and is encrypted in the data storage area. An execution unit that executes the function addition program when decrypting the stored predetermined information and decrypts the encrypted predetermined information with the encryption key provided from the information processing apparatus;
An information processing system.
前記ブラウザの永続化データ保存領域に前記暗号鍵で暗号化された情報が保存されていなければ、認証済みの前記ユーザと対応付いた情報を前記情報処理装置から取得して前記ブラウザに表示させると共に、認証済みの前記ユーザと対応付いた情報を前記情報処理装置から提供された前記暗号鍵で暗号化し、前記ブラウザの永続化データ保存領域に保存する
ことを特徴とする請求項1記載の情報処理システム。 If the information encrypted with the encryption key is stored in the persistent data storage area of the browser that permanently stores information, the execution means stores the information acquired from the persistent data storage area of the browser. Decrypting with the encryption key provided from the information processing apparatus to display on the browser,
If information encrypted with the encryption key is not stored in the persistent data storage area of the browser, information associated with the authenticated user is acquired from the information processing apparatus and displayed on the browser. 2. The information processing according to claim 1, wherein information associated with the authenticated user is encrypted with the encryption key provided from the information processing apparatus and stored in a permanent data storage area of the browser. system.
ことを特徴とする請求項2記載の情報処理システム。 When the authentication of the user is successful, the authentication unit generates an authentication key indicating the authenticated user and authentication information indicating that the user has been authenticated, and provides the authentication information to the shared device. Managing the encryption key and certification information in association with the authenticated user, and receiving the encryption key acquisition request with the certification information added from the shared device, the encryption key associated with the certification information The information processing system according to claim 2, wherein the information processing system is provided.
揮発的に情報を保存する前記ブラウザの揮発データ保存領域に前記証明情報で暗号化された暗号鍵が保存されていなければ、認証済みの前記ユーザと対応付いた前記暗号鍵を前記情報処理装置から取得して利用すると共に、認証済みの前記ユーザと対応付いた前記暗号鍵を、前記情報処理装置から提供された前記証明情報で暗号化し、前記ブラウザの揮発データ保存領域に保存する
ことを特徴とする請求項3記載の情報処理システム。 If the encryption key encrypted with the certification information is stored in the volatile data storage area of the browser that stores information in a volatile manner, the execution means is encrypted from the volatile data storage area of the browser. The encrypted key is decrypted with the certification information provided from the information processing apparatus, and used.
If the encryption key encrypted with the certification information is not stored in the volatile data storage area of the browser that stores information in a volatile manner, the encryption key associated with the authenticated user is obtained from the information processing apparatus. Acquired and used, and encrypts the encryption key associated with the authenticated user with the certification information provided from the information processing apparatus, and stores it in a volatile data storage area of the browser The information processing system according to claim 3.
ことを特徴とする請求項1乃至4何れか一項記載の情報処理システム。 The providing means discriminates between the shared device that shares the data storage area of the browser among a plurality of users and a device in which the data storage area of the browser is divided for each user, and provides the content to the shared device 5. The information processing system according to claim 1, wherein the function addition program is provided to the shared device.
前記共有機器を操作する前記ユーザの認証を行い、認証済みの前記ユーザと対応付けて管理する暗号鍵を、前記共有機器に提供する認証手段と、
前記ブラウザに機能を付加する機能付加プログラムを、前記共有機器に提供する提供手段と、
を有し、
前記機能付加プログラムは、所定の情報を前記ブラウザのデータ保存領域へ保存するとき、該情報を前記共有機器に提供した前記暗号鍵で暗号化し、前記データ保存領域に暗号化されて保存された前記所定の情報を取得するとき、暗号化された前記所定の情報を前記共有機器に提供した前記暗号鍵で復号するように、前記共有機器で動作する前記ブラウザを制御する
ことを特徴とする情報処理装置。 An information processing apparatus that provides the shared device with content for displaying information on a browser that operates on a shared device that is shared and used by a plurality of users,
An authentication unit that authenticates the user who operates the shared device and provides the shared device with an encryption key that is managed in association with the authenticated user;
Providing means for providing a function addition program for adding a function to the browser to the shared device;
Have
When the function addition program stores predetermined information in the data storage area of the browser, the information encryption program encrypts the information with the encryption key provided to the shared device, and stores the encrypted information in the data storage area. When obtaining predetermined information, the browser that operates on the shared device is controlled so that the encrypted predetermined information is decrypted with the encryption key provided to the shared device. apparatus.
前記ブラウザの永続化データ保存領域に前記暗号鍵で暗号化された情報が保存されていなければ、認証済みの前記ユーザと対応付いた情報を前記情報処理装置から取得して前記ブラウザに表示させると共に、認証済みの前記ユーザと対応付いた情報を前記情報処理装置から提供された前記暗号鍵で暗号化し、前記ブラウザの永続化データ保存領域に保存するように、前記共有機器で動作する前記ブラウザを制御する
ことを特徴とする請求項6記載の情報処理装置。 If the function-added program stores information encrypted with the encryption key in the persistent data storage area of the browser that permanently stores information, the information acquired from the persistent data storage area of the browser Is decrypted with the encryption key provided from the information processing device and displayed on the browser,
If information encrypted with the encryption key is not stored in the persistent data storage area of the browser, information associated with the authenticated user is acquired from the information processing apparatus and displayed on the browser. The browser operating on the shared device is configured to encrypt information associated with the authenticated user with the encryption key provided from the information processing apparatus and store the encrypted information in a persistent data storage area of the browser. The information processing apparatus according to claim 6, wherein the information processing apparatus is controlled.
ことを特徴とする請求項7記載の情報処理装置。 When the authentication of the user is successful, the authentication unit generates an authentication key indicating the authenticated user and authentication information indicating that the user has been authenticated, and provides the authentication information to the shared device. Managing the encryption key and certification information in association with the authenticated user, and receiving the encryption key acquisition request with the certification information added from the shared device, the encryption key associated with the certification information The information processing apparatus according to claim 7, wherein:
揮発的に情報を保存する前記ブラウザの揮発データ保存領域に前記証明情報で暗号化された暗号鍵が保存されていなければ、認証済みの前記ユーザと対応付いた前記暗号鍵を前記情報処理装置から取得して利用すると共に、認証済みの前記ユーザと対応付いた前記暗号鍵を、前記情報処理装置から提供された前記証明情報で暗号化し、前記ブラウザの揮発データ保存領域に保存するように、前記共有機器で動作する前記ブラウザを制御する
ことを特徴とする請求項8記載の情報処理装置。 If the encryption key encrypted with the certification information is stored in the volatile data storage area of the browser that stores information in a volatile manner, the function-added program is encrypted from the volatile data storage area of the browser. The decrypted encryption key is decrypted with the certification information provided from the information processing device, and used.
If the encryption key encrypted with the certification information is not stored in the volatile data storage area of the browser that stores information in a volatile manner, the encryption key associated with the authenticated user is obtained from the information processing apparatus. Obtaining and using the encrypted key associated with the authenticated user with the certification information provided from the information processing apparatus and storing it in the volatile data storage area of the browser, The information processing apparatus according to claim 8, wherein the browser that operates on a shared device is controlled.
ことを特徴とする請求項6乃至9何れか一項記載の情報処理装置。 The providing means discriminates between the shared device that shares the data storage area of the browser among a plurality of users and a device in which the data storage area of the browser is divided for each user, and provides the content to the shared device The information processing apparatus according to claim 6, wherein the function addition program is provided to the shared device.
前記共有機器を操作する前記ユーザの認証を行い、認証済みの前記ユーザと対応付けて管理する暗号鍵を、前記共有機器に提供する認証手段、
前記ブラウザに機能を付加する機能付加プログラムを、前記共有機器に提供する提供手段、
として機能させ、
前記機能付加プログラムは、所定の情報を前記ブラウザのデータ保存領域へ保存するとき、該情報を前記共有機器に提供した前記暗号鍵で暗号化し、前記データ保存領域に暗号化されて保存された前記所定の情報を取得するとき、暗号化された前記所定の情報を前記共有機器に提供した前記暗号鍵で復号するように、前記共有機器で動作する前記ブラウザを制御する
ことを特徴とするプログラム。 An information processing apparatus for providing content to the shared device for displaying information on a browser operating on a shared device shared with a plurality of users;
Authenticating means for authenticating the user operating the shared device and providing the shared device with an encryption key to be managed in association with the authenticated user;
Providing means for providing a function addition program for adding a function to the browser to the shared device;
Function as
When the function addition program stores predetermined information in the data storage area of the browser, the information encryption program encrypts the information with the encryption key provided to the shared device, and stores the encrypted information in the data storage area. A program for controlling the browser operating on the shared device so as to decrypt the encrypted predetermined information with the encryption key provided to the shared device when acquiring the predetermined information.
前記情報処理装置は、
前記ブラウザに機能を付加する機能付加プログラムを、前記共有機器に提供する提供ステップと、
前記共有機器を操作する前記ユーザの認証を行い、認証済みの前記ユーザと対応付けて管理する暗号鍵を、前記共有機器に提供する認証ステップと、
を有し、
前記共有機器は、
複数のユーザにより共有して使用される前記ブラウザのデータ保存領域を管理する領域管理ステップと、
所定の情報を前記ブラウザのデータ保存領域へ保存するとき、前記機能付加プログラムを実行し、該情報を前記情報処理装置から提供された前記暗号鍵で暗号化する暗号化ステップと、
前記データ保存領域に暗号化されて保存された前記所定の情報を取得するとき、前記機能付加プログラムを実行し、暗号化された前記所定の情報を前記情報処理装置から提供された前記暗号鍵で復号する復号ステップと、
を有する情報保護方法。 Executed in an information processing system having a shared device shared by a plurality of users and an information processing device that provides the shared device with content for displaying information on a browser operating on the shared device An information protection method,
The information processing apparatus includes:
Providing a function addition program for adding a function to the browser to the shared device;
An authentication step of authenticating the user operating the shared device and providing the shared device with an encryption key managed in association with the authenticated user;
Have
The shared device is
An area management step for managing a data storage area of the browser shared and used by a plurality of users;
An encryption step of executing the function addition program when storing predetermined information in the data storage area of the browser, and encrypting the information with the encryption key provided from the information processing apparatus;
When acquiring the predetermined information encrypted and stored in the data storage area, the function addition program is executed, and the encrypted predetermined information is stored with the encryption key provided from the information processing apparatus. A decoding step for decoding;
An information protection method comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/171,060 US10356072B2 (en) | 2015-06-04 | 2016-06-02 | Data process system, data process apparatus, and data protection method |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015114216 | 2015-06-04 | ||
JP2015114216 | 2015-06-04 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2017004494A true JP2017004494A (en) | 2017-01-05 |
Family
ID=57754260
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016022201A Pending JP2017004494A (en) | 2015-06-04 | 2016-02-08 | Information processing system, information processing apparatus, program, and information protection method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2017004494A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107273721A (en) * | 2017-06-14 | 2017-10-20 | 深圳天珑无线科技有限公司 | To the processing method and processing device of application |
JP2021111170A (en) * | 2020-01-13 | 2021-08-02 | 株式会社WellGo | Anonymized data display system |
-
2016
- 2016-02-08 JP JP2016022201A patent/JP2017004494A/en active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107273721A (en) * | 2017-06-14 | 2017-10-20 | 深圳天珑无线科技有限公司 | To the processing method and processing device of application |
JP2021111170A (en) * | 2020-01-13 | 2021-08-02 | 株式会社WellGo | Anonymized data display system |
JP7214082B2 (en) | 2020-01-13 | 2023-01-30 | 株式会社WellGo | Anonymized data display system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11329962B2 (en) | Pluggable cipher suite negotiation | |
US9064105B2 (en) | Information processing apparatus, control method therefor, and program | |
US9973481B1 (en) | Envelope-based encryption method | |
JP6390123B2 (en) | Information processing system and authentication information providing method | |
US20090328177A1 (en) | Enabling private data feed | |
US20130205360A1 (en) | Protecting user credentials from a computing device | |
EP3271858B1 (en) | Output apparatus, program, output system, and output method | |
US10305961B2 (en) | Information processing apparatus, information processing apparatus control method, and storage medium storing program | |
WO2014059604A1 (en) | Method and device for secure access to resource | |
JP2004289699A (en) | Information processing apparatus | |
JP6380009B2 (en) | Information processing system, authentication method, and information processing apparatus | |
US20090059288A1 (en) | Image communication system and image communication apparatus | |
US20180082067A1 (en) | Information Sharing Server, Information Sharing System And Non-Transitory Recording Medium | |
US20150271170A1 (en) | Information processing apparatus, information processing system, information processing method, and recording medium | |
JP4979210B2 (en) | Login information management apparatus and method | |
US10356072B2 (en) | Data process system, data process apparatus, and data protection method | |
KR101315482B1 (en) | Secret information reading service system using by a writer authentication and the control method thereof | |
JP2018202708A (en) | Setting information utilization system, electronic apparatus, setting information utilization method, and program | |
JP2017004494A (en) | Information processing system, information processing apparatus, program, and information protection method | |
US20070113089A1 (en) | System and method for secure exchange of trust information | |
US11108922B2 (en) | Image processing apparatus, system, server, control method, and storage medium to perform encryption processes on image data and attribute data using first and second keys and further perform character recognition process | |
JP7000961B2 (en) | File operation management system and file operation management method | |
JP5575090B2 (en) | Image forming apparatus | |
US11307815B2 (en) | Information processing apparatus, method, and non-transitory computer-readable storage medium to encrypt search value for searching job log using first key and server performs search process | |
JP2006270452A (en) | Document processing system |