JP6217092B2 - 情報処理装置、システム、情報処理方法及びプログラム - Google Patents

情報処理装置、システム、情報処理方法及びプログラム Download PDF

Info

Publication number
JP6217092B2
JP6217092B2 JP2013043286A JP2013043286A JP6217092B2 JP 6217092 B2 JP6217092 B2 JP 6217092B2 JP 2013043286 A JP2013043286 A JP 2013043286A JP 2013043286 A JP2013043286 A JP 2013043286A JP 6217092 B2 JP6217092 B2 JP 6217092B2
Authority
JP
Japan
Prior art keywords
unit
api
web application
context
function
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.)
Expired - Fee Related
Application number
JP2013043286A
Other languages
English (en)
Other versions
JP2014170501A (ja
Inventor
敏達 野田
敏達 野田
雪絵 藤原
雪絵 藤原
金谷 延幸
延幸 金谷
隆夫 大久保
隆夫 大久保
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2013043286A priority Critical patent/JP6217092B2/ja
Publication of JP2014170501A publication Critical patent/JP2014170501A/ja
Application granted granted Critical
Publication of JP6217092B2 publication Critical patent/JP6217092B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Description

本技術は、プログラムによる機能呼び出し技術に関する。
ある特許文献には、ユーザソフトウエアアプリケーションの能力を制御する技術が開示されている。この技術では、ユーザソフトウエアアプリケーションにおいて許可されていなかった付加的な機能の動作を、所定のコンテントを受け取った場合に許可する。
また、別の特許文献には、サービス定義に基づいてWebサービスへのアクセスに関する許可ポリシーを定義する技術が開示されている。
このように、ユーザソフトウエアアプリケーションの付加的な機能やWebサービスへのアクセスを制限すれば、利用者による不当な使用を排除し、ユーザソフトウエアアプリケーションやWebサービスの提供者側の利益が守られる面がある。
但し、機能の制限によって排除されるのは、利用者側の使用に限られない。例えば、あるオペレーティングシステムでは、Webアプリケーションによって利用できる機能を予め設定し、特定のWebアプリケーションによる特定機能の利用を制限するようにしている。このようにすれば、プログラムの提供者側で企図する処理を利用者の判断で制限することによって、利用者側の安全性が保たれる。
特表2005−518602号公報 特表2008−537823号公報
本技術の目的は、一側面では、プログラムによる特定機能の利用を、自動的に制限することを目的とする。
一態様に係る情報処理装置は、プログラムの実行中に、特定機能に係る呼び出しの発生を検出すると、自装置の状況に係るコンテキストを生成する生成部と、コンテキストに基づいて、呼び出しの許否を判定する判定部とを有する。
一側面としては、プログラムによる特定機能の利用を、自動的に制限できる。
図1は、機能制限システムの利用態様の例を示す図である。 図2は、機能制限システムの利用態様の例を示す図である。 図3は、機能制限システムの構成例を示す図である。 図4は、利用者端末のモジュール構成例を示す図である。 図5は、格納部と制限部と記憶部の構成例を示す図である。 図6は、生成ルールテーブルの例を示す図である。 図7は、判定ルールテーブル例を示す図である。 図8は、シーケンスの例を示す図である。 図9は、シーケンスの例を示す図である。 図10は、シーケンスの例を示す図である。 図11は、シーケンスの例を示す図である。 図12は、検出処理(エンジン監視型)フローの例を示す図である。 図13は、判定処理フローの例を示す図である。 図14は、コンテキスト生成処理フローの例を示す図である。 図15は、実施の形態2に係るシーケンスの例を示す図である。 図16は、実施の形態2に係るシーケンスの例を示す図である。 図17は、実施の形態2に係るシーケンスの例を示す図である。 図18は、実施の形態2に係るシーケンスの例を示す図である。 図19は、検出処理(API監視型)フローの例を示す図である。 図20は、実施の形態3に係る機能制限システムの構成例を示す図である。 図21は、中継装置のモジュール構成例を示す図である。 図22は、実施の形態3に係る格納部と制限部と記憶部の構成例を示す図である。 図23は、実施の形態3に係る利用者端末のモジュール構成例を示す図である。 図24は、実施の形態3に係るシーケンスの例を示す図である。 図25は、実施の形態3に係るシーケンスの例を示す図である。 図26は、実施の形態3に係るシーケンスの例を示す図である。 図27は、実施の形態3に係るシーケンスの例を示す図である。 図28は、実施の形態4に係る格納部と制限部と記憶部の構成例を示す図である。 図29は、実施の形態4に係る利用者端末のモジュール構成例を示す図である。 図30は、実施の形態4に係るシーケンスの例を示す図である。 図31は、実施の形態4に係るシーケンスの例を示す図である。 図32は、実施の形態4に係るシーケンスの例を示す図である。 図33は、実施の形態4に係るシーケンスの例を示す図である。 図34は、携帯型情報処理装置のハードウエア構成例を示す図である。
[実施の形態1]
本実施の形態では、状況に係るコンテキストに基づいて、Webアプリケーションに対して利用者端末のオペレーティングシステムで提供するAPI(Application Program Interface)の呼び出しを制限する。
まず、図1及び2に基づいて、機能制限システムの利用態様について説明する。図1に示す機能制限システムの利用態様は、位置条件とネットワーク条件とに基づいて、コンテキストが判定される例を示している。つまり、この利用態様におけるコンテキストは、利用者端末100の位置と利用者端末100が接続するネットワークとによる状況を識別する情報である。また、この利用態様では、コンテキストに基づいて、アドレス帳機能に係るAPIと署名機能に係るAPIとの利用可否が判定される例を示している。
利用者端末100が社内ネットワークに接続している状況では、コンテキスト「CNT_A」が生成される。そして、コンテキスト「CNT_A」では、すべてのWebアプリケーションにおいてアドレス帳機能に係るAPIについての判定結果が「利用可」となり、署名機能に係るAPIについての判定結果も「利用可」となる。
つまり、利用者端末100は、その位置に関わらず、社内ネットワークに接続していれば、あらゆるWebアプリケーションにおいてアドレス帳の機能と署名の機能とが動作する。この場合には、例えば社員間の連絡や社用文書の発行などが許可される。
利用者端末100が社内ネットワーク以外に接続し、且つ利用者端末100が会社敷地内(以下、社内という。)に位置している状況では、コンテキスト「CNT_B」が生成される。そして、コンテキスト「CNT_B」では、すべてのWebアプリケーションにおいてアドレス帳機能に係るAPIについての判定結果が「利用可」となり、署名機能に係るAPIについての判定結果が「利用不可」となる。
つまり、利用者端末100が社内で社内ネットワーク以外に接続していれば、あらゆるWebアプリケーションにおいてアドレス帳の機能は動作するが、署名の機能は動作しない。この場合には、例えば社員間の連絡は許可されるが、社用文書の発行は拒否される。
利用者端末100が社内ネットワーク以外に接続し、且つ利用者端末100が会社敷地外(以下、社外という。)に位置している状況では、コンテキスト「CNT_C」が生成される。そして、コンテキスト「CNT_C」では、すべてのWebアプリケーションにおいてアドレス帳機能に係るAPIについての判定結果が「利用不可」となり、署名機能に係るAPIについての判定結果も「利用不可」となる。
つまり、利用者端末100が社外で社内ネットワーク以外に接続していれば、あらゆるWebアプリケーションにおいてアドレス帳の機能も、署名の機能も動作しない。この場合には、例えば社員間の連絡も、社用文書の発行も拒否される。以上で、図1に示す機能制限システムの利用態様の説明を終える。
図2に示す機能制限システムの利用態様の説明に移る。図2に示す機能制限システムの利用態様は、時刻条件とWebアプリケーション条件とに基づいて、コンテキストが判定される例を示している。つまり、この利用態様におけるコンテキストは、現在時刻と利用者端末100で動作しているWebアプリケーションとによる状況を識別する情報である。
現在時刻が、勤務時間帯内であり、利用者端末100でWebアプリケーション「APL_X」が動作している状況では、コンテキスト「CNT_D」が生成される。そして、コンテキスト「CNT_D」では、Webアプリケーション「APL_Z」においてGPS(Global Positioning System)機能に係るAPIについての判定結果が「利用可」となり、復号機能に係るAPIについての判定結果も「利用可」となる。
つまり、利用者端末100は、勤務時間帯内に、Webアプリケーション「APL_X」を動作させていれば、Webアプリケーション「APL_Z」においてGPSの機能と復号の機能とが動作する。この場合には、例えば所在位置に関連する秘密文書を閲覧することが許可される。
現在時刻が、勤務時間帯内であり、利用者端末100でWebアプリケーション「APL_X」が動作していない状況では、コンテキスト「CNT_E」が生成される。そして、コンテキスト「CNT_E」では、Webアプリケーション「APL_Z」においてGPS機能に係るAPIについての判定結果が「利用可」となり、復号機能に係るAPIについての判定結果が「利用不可」となる。
つまり、利用者端末100は、勤務時間帯内に、Webアプリケーション「APL_X」を動作させていなければ、Webアプリケーション「APL_Z」においてGPSの機能は動作するが、復号の機能は動作しない。この場合には、例えば所在位置に関連する一般文書を閲覧することは許可されるが、所在位置に関連する秘密文書を閲覧することは拒否される。
現在時刻が、勤務時間帯外である状況では、コンテキスト「CNT_F」が生成される。そして、コンテキスト「CNT_F」では、Webアプリケーション「APL_Z」においてGPS機能に係るAPIについての判定結果が「利用不可」となり、復号機能に係るAPIについての判定結果も「利用不可」となる。
つまり、利用者端末100は、勤務時間帯外であれば、Webアプリケーション「APL_Z」においてGPSの機能も、復号の機能も動作しない。この場合には、例えば所在位置に関連する一切の文書を閲覧することは許可されない。以上で、機能制限システムの利用態様についての説明を終える。
次に、機能制限システムの構成について説明する。図3に、機能制限システムの構成例を示す。インターネットには、Webアプリケーションを提供するサービスを実現するWebアプリケーションサーバ301a乃至cが接続されている。利用者端末100は、Webアプリケーションサーバ301a乃至cと接続する場合には、インターネットを介してWebアプリケーションサーバ301a乃至cの各々にアクセスする。
また、社内ネットワークは、ルータ303を介してインターネットに接続している。社内ネットワークには、社内サーバ305が設けられている。利用者端末100は、社内サーバ305と接続する場合には、インターネットと社内ネットワークとを介して社内サーバ305にアクセスする。但し、利用者端末100は、直接社内ネットワークを介して社内サーバ305にアクセスするようにしてもよい。
社内サーバ305は、利用者端末100に対して社内サービスを提供する。また、社内サーバ305は、利用者端末100における動作に用いられるデータを配信するようにしてもよい。以上で、機能制限システムの構成についての説明を終える。
次に、利用者端末100のモジュール構成について説明する。図4に、利用者端末100のモジュール構成例を示す。利用者端末100は、オペレーティングシステム(OS)401、Webブラウザ405、制限部407、格納部409、記憶部411、送信部413、受信部415、表示部417及び受付部419を有している。
オペレーティングシステム401は、API群を備えるフレームワーク403を有している。この例で、API群には、GPS機能に係るAPI431a、署名機能に係るAPI431b、通信機能に係るAPI431c、復号機能に係るAPI431d、アドレス帳機能に係るAPI431e及び時計機能に係るAPI431fが含まれている。但し、他の機能に係るAPIを設けるようにしてもよい。
Webブラウザ405は、スクリプトエンジン451を含んでいる。スクリプトエンジン451は、スクリプトを実行する。Webブラウザ405には、プラグイン453を追加される場合がある。本実施の形態における一部のモジュールを、プラグイン453により実現するようにしてもよい。
制限部407は、WebアプリケーションによるAPIの利用を制限する。格納部409は、制限部407の処理に用いられるデータを予め格納する。記憶部411は、制限部407の処理により生じるデータを記憶する。送信部413は、データをインターネットに向けて送信する。受信部415は、インターネットからデータを受信する。表示部417は、例えば操作に係る画面を表示する。受付部419は、例えば利用者の操作によるデータ入力を受け付ける。
更に、図5を用いて、格納部409と制限部407と記憶部411との詳細について説明する。格納部409は、この例では生成ルールテーブル、判定ルールテーブル及び検証データを格納する。
生成ルールは、コンテキストを生成するためのルールである。図6に、生成ルールテーブルの例を示す。図6のレコードは、コンテキストを生成するルールに相当する。レコードには、コンテキスト、時刻条件、位置条件、ネットワーク条件及びWebアプリケーション条件のフィールドが設けられている。
第1レコードには、時刻条件、位置条件及びWebアプリケーション条件は設定されておらず、ネットワーク条件としては、利用者端末100が社内ネットワークに接続していることが定められている。従って、第1レコードによれば、現在時刻、利用者端末100の位置及び利用者端末100で動作しているWebアプリケーションの如何に関わらず、利用者端末100が社内ネットワークに接続していれば、コンテキスト「CNT_A」が生成される。
第1レコードの条件を、例えば条件式「ネットワーク=社内ネットワーク」で表してもよい。
第2レコードには、時刻条件及びWebアプリケーション条件は設定されておらず、位置条件としては、利用者端末100の位置が社内に含まれることが定められ、ネットワーク条件としては、利用者端末100が社内ネットワーク以外に接続していることが定められている。従って、第2レコードによれば、現在時刻及び利用者端末100で動作しているWebアプリケーションの如何に関わらず、利用者端末100が社内で社内ネットワーク以外に接続していれば、コンテキスト「CNT_B」が生成される。
第2レコードの条件を、例えば条件式「位置=社内 AND ネットワーク=NOT 社内ネットワーク」で表してもよい。
第3レコードには、時刻条件及びWebアプリケーション条件は設定されておらず、位置条件としては、利用者端末100の位置が社外であることが定められ、ネットワーク条件としては、利用者端末100が社内ネットワーク以外に接続していることが定められている。
従って、第3レコードによれば、現在時刻及び利用者端末100で動作しているWebアプリケーションの如何に関わらず、利用者端末100が社外で社内ネットワーク以外に接続していれば、コンテキスト「CNT_C」が生成される。
第3レコードの条件を、例えば条件式「位置=NOT 社内 AND ネットワーク=NOT 社内ネットワーク」で表してもよい。
第4レコードには、位置条件及びネットワーク条件は設定されておらず、時刻条件としては、現在時刻が業務時間帯内であることが定められ、Webアプリケーション条件としては、利用者端末100が「xxx.jp/xx」のURLで特定されるWebアプリケーション(「APL_X」という。)を動作させていることが定められている。従って、第4レコードによれば、利用者端末100の位置及び利用者端末100が接続しているネットワークの如何に関わらず、業務時間中にWebアプリケーション「APL_X」を動作させていれば、コンテキスト「CNT_D」が生成される。
第4レコードの条件を、例えば条件式「現在時刻>始業時刻 AND 現在時刻<終業時刻 AND Webアプリケーション=xxx.jp/xx」で表してもよい。
第5レコードには、位置条件及びネットワーク条件は設定されておらず、時刻条件としては、現在時刻が業務時間帯内であることが定められ、Webアプリケーション条件としては、利用者端末100が「xxx.jp/xx」のURLで特定されるWebアプリケーション(「APL_X」という。)を動作させていないことが定められている。従って、第5レコードによれば、利用者端末100の位置及び利用者端末100が接続しているネットワークの如何に関わらず、業務時間中にWebアプリケーション「APL_X」を動作させていなければ、コンテキスト「CNT_E」が生成される。
第5レコードの条件を、例えば条件式「現在時刻>始業時刻 AND 現在時刻<終業時刻 AND Webアプリケーション=NOT xxx.jp/xx」で表してもよい。
第6レコードには、位置条件、ネットワーク条件及びWebアプリケーション条件は設定されておらず、時刻条件としては、現在時刻が業務時間帯外であることが定められている。従って、第6レコードによれば、利用者端末100の位置、利用者端末100が接続しているネットワーク及び利用者端末100で動作しているWebアプリケーションの如何に関わらず、業務時間外であれば、コンテキスト「CNT_F」が生成される。
第6レコードの条件を、例えば条件式「現在時刻<始業時刻 OR 現在時刻>終業時刻」で表してもよい。図6の例では、生成ルールをレコード形式で表したが、上述のように条件式形式で表してもよい。
図5の説明に戻って、格納部409に格納されている判定ルールは、APIの利用可否の判定に用いられるルールである。
図7に、判定ルールテーブルの例を示す。図7におけるレコードは、判定ルールに相当する。レコードには、コンテキスト、Webアプリケーション、アドレス帳機能に係るAPI、署名機能に係るAPI、GPS機能に係るAPI及び復号機能に係るAPIのフィールドが設けられている。
Webアプリケーションのフィールドは、当該判定ルールを適用するWebアプリケーションを限定する場合に用いられる。具体的には、当該判定ルールを適用するWebアプリケーションを提供するサービスのURLが設定される。従って、このURLは、Webアプリケーションを特定する情報であるとともに、Webアプリケーションを提供するサービスを特定する情報でもある。
アドレス帳機能に係るAPI、署名機能に係るAPI、GPS機能に係るAPI及び復号機能に係るAPIには、各APIの利用の可否が設定される。
第1レコードは、コンテキスト「CNT_A」に基づき、すべてのWebアプリケーションに対して、アドレス帳機能に係るAPIが、「利用可」であることを示している。同様に、署名機能に係るAPIは、「利用可」であるが、GPS機能に係るAPIは、「利用不可」であり、復号機能に係るAPIも、「利用不可」であることを示している。
従って、第1レコードによれば、例えば任意のWebアプリケーションが、アドレス帳機能に係るAPIを呼び出そうとした場合には、コンテキスト「CNT_A」に基づいて許可される。同様に、任意のWebアプリケーションが、署名機能に係るAPIを呼び出そうとした場合にも、コンテキスト「CNT_A」に基づいて許可され、一方、GPS機能に係るAPIを呼び出そうとした場合には、コンテキスト「CNT_A」に基づいて拒否され、復号機能に係るAPIを呼び出そうとした場合にも、コンテキスト「CNT_A」に基づいて拒否される。
第2レコードは、コンテキスト「CNT_B」に基づき、すべてのWebアプリケーションに対して、アドレス帳機能に係るAPIが、「利用可」であることを示している。同様に、署名機能に係るAPIは、「利用不可」であり、GPS機能に係るAPIも、「利用不可」であり、復号機能に係るAPIも、「利用不可」であることを示している。
従って、第2レコードによれば、例えば任意のWebアプリケーションが、アドレス帳機能に係るAPIを呼び出そうとした場合には、コンテキスト「CNT_B」に基づいて許可される。同様に、任意のWebアプリケーションが、署名機能に係るAPIを呼び出そうとした場合には、コンテキスト「CNT_B」に基づいて拒否され、GPS機能に係るAPIを呼び出そうとした場合にも、コンテキスト「CNT_B」に基づいて拒否され、復号機能に係るAPIを呼び出そうとした場合にも、コンテキスト「CNT_B」に基づいて拒否される。
第3レコードは、コンテキスト「CNT_C」に基づき、すべてのWebアプリケーションに対して、アドレス帳機能に係るAPIが、「利用不可」であることを示している。同様に、署名機能に係るAPIも、「利用不可」であり、GPS機能に係るAPIも、「利用不可」であり、復号機能に係るAPIも、「利用不可」であることを示している。
従って、第3レコードによれば、例えば任意のWebアプリケーションが、アドレス帳機能に係るAPIを呼び出そうとした場合には、コンテキスト「CNT_C」に基づいて拒否される。同様に、任意のWebアプリケーションが、署名機能に係るAPIを呼び出そうとした場合にも、コンテキスト「CNT_C」に基づいて拒否され、GPS機能に係るAPIを呼び出そうとした場合にも、コンテキスト「CNT_C」に基づいて拒否され、復号機能に係るAPIを呼び出そうとした場合にも、コンテキスト「CNT_C」に基づいて拒否される。
第4レコードは、コンテキスト「CNT_D」に基づき、利用者端末100が「zzz.jp/zz」のURLで特定されるWebアプリケーション(「APL_Z」という。)に対して、アドレス帳機能に係るAPIが、「利用不可」であることを示している。同様に、署名機能に係るAPIも、「利用不可」であるが、GPS機能に係るAPIは、「利用可」であり、復号機能に係るAPIも、「利用可」であることを示している。
従って、第4レコードによれば、例えばWebアプリケーション「APL_Z」が、アドレス帳機能に係るAPIを呼び出そうとした場合には、コンテキスト「CNT_D」に基づいて拒否される。同様に、Webアプリケーション「APL_Z」が、署名機能に係るAPIを呼び出そうとした場合にも、コンテキスト「CNT_D」に基づいて拒否されるが、GPS機能に係るAPIを呼び出そうとした場合には、コンテキスト「CNT_D」に基づいて許可され、復号機能に係るAPIを呼び出そうとした場合にも、コンテキスト「CNT_D」に基づいて許可される。
第5レコードは、コンテキスト「CNT_E」に基づき、利用者端末100が「zzz.jp/zz」のURLで特定されるWebアプリケーションに対して、アドレス帳機能に係るAPIが、「利用不可」であることを示している。同様に、署名機能に係るAPIも、「利用不可」であるが、GPS機能に係るAPIは、「利用可」である。また復号機能に係るAPIは、「利用不可」であることを示している。
従って、第5レコードによれば、例えばWebアプリケーション「APL_Z」が、アドレス帳機能に係るAPIを呼び出そうとした場合には、コンテキスト「CNT_E」に基づいて拒否される。同様に、Webアプリケーション「APL_Z」が、署名機能に係るAPIを呼び出そうとした場合には、コンテキスト「CNT_E」に基づいて拒否され、GPS機能に係るAPIを呼び出そうとした場合には、コンテキスト「CNT_E」に基づいて許可される。また、復号機能に係るAPIを呼び出そうとした場合には、コンテキスト「CNT_E」に基づいて拒否される。
第6レコードは、コンテキスト「CNT_F」に基づき、利用者端末100が「zzz.jp/zz」のURLで特定されるWebアプリケーションに対して、アドレス帳機能に係るAPIが、「利用不可」であることを示している。同様に、署名機能に係るAPIも、「利用不可」であり、GPS機能に係るAPIも、「利用不可」であり、復号機能に係るAPIも、「利用不可」であることを示している。
従って、第6レコードによれば、例えばWebアプリケーション「APL_Z」が、アドレス帳機能に係るAPIを呼び出そうとした場合には、コンテキスト「CNT_F」に基づいて拒否される。同様に、Webアプリケーション「APL_Z」が、署名機能に係るAPIを呼び出そうとした場合にも、コンテキスト「CNT_F」に基づいて拒否され、GPS機能に係るAPIを呼び出そうとした場合にも、コンテキスト「CNT_F」に基づいて拒否され、復号機能に係るAPIを呼び出そうとした場合にも、コンテキスト「CNT_F」に基づいて拒否される。
図5の説明に戻って、格納部409に格納されている検証データは、Webアプリケーションを提供するWebアプリケーションサーバ301を検証する際に用いられるデータである。検証データは、例えば、ルート証明書である。
制限部407は、生成ルール設定部501、判定ルール設定部503、検証データ登録部505、抽出部507、検証部509、Webアプリケーション登録部511、検出部513、コンテキスト生成部515及び判定部517を有している。
生成ルール設定部501は、上述した生成ルールテーブルを格納部409に格納させる。生成ルール設定部501は、例えば、表示部417に生成ルールの入力画面を表示させ、生成ルール入力画面に対する入力の操作を受付部419で受け付けることによって、利用者に生成ルールを設定させる。あるいは、生成ルール設定部501は、インターネットを介して、生成ルールテーブルを配信する装置(例えば、社内サーバ305)から生成ルールテーブルをダウンロードするようにしてもよい。利用者は、例えば準備段階で生成ルール設定部501を起動し、生成ルールテーブルを用意する。
判定ルール設定部503は、上述した判定ルールテーブルを格納部409に格納させる。判定ルール設定部503は、例えば、表示部417に判定ルールの入力画面を表示させ、判定ルール入力画面に対する入力の操作を受付部419で受け付けることによって、利用者に判定ルールを設定させる。あるいは、判定ルール設定部503は、インターネットを介して、判定ルールテーブルを配信する装置(例えば、社内サーバ305)から判定ルールテーブルテーブルをダウンロードするようにしてもよい。利用者は、例えば準備段階で判定ルール設定部503を起動し、判定ルールテーブルを用意する。
検証データ登録部505は、検証データを所定の機関(例えば認証局)から取得し、格納部409に格納させる。利用者は、例えば準備段階で検証データ登録部505を起動し、検証データを用意する。
抽出部507は、通信状況を監視し、通信に係る情報(接続先ネットワークのURLやWebアプリケーションを提供するサービスのURLなど)を抽出する。また、抽出部507は、接続先のネットワークのURLを記憶部411に記憶させる。
本実施の形態では、抽出部(プロキシ型)507aの例について説明する。抽出部(プロキシ型)507aは、Webブラウザ405とWebアプリケーションサーバ301との間の通信を中継する。そのため、Webブラウザ405は、抽出部(プロキシ型)507aをプロキシに設定しておく。尚、実施の形態2では、抽出部(API監視型)507bの例について説明する。
検証部509は、Webアプリケーションサーバ301からダウンロードされるWebアプリケーションを検証する。例えば、WebアプリケーションがHTML(HyperText Markup Language)5ファイル形式である場合、検証部509は、ダウンロードされるHTML5ファイルに相当するHTTP(HyperText Transfer Protocol)レスポンスの署名を検証する。検証部509は、Webアプリケーションサーバ301を認証するようにしてもよい。Webアプリケーション登録部511は、Webアプリケーションサーバ301のURLを記憶部411に記憶させる。検出部513は、APIの呼び出しの発生を検出する。本実施の形態に係る検出部(エンジン監視型)513aは、Webブラウザ405におけるスクリプトエンジン451への働きかけを監視し、APIの呼び出しを要する特定のスクリプトを検出することによって、APIの呼び出しの発生を検出する。尚、実施の形態2では、検出部(API監視型)513bの例について説明する。
コンテキスト生成部515は、コンテキストを生成する。判定部517は、コンテキストに基づき、APIの利用可否の判定を行う。
記憶部411は、例えば、ネットワークアドレスとWebアプリケーションリストとを記憶する。ネットワークアドレスは、接続先ネットワークのURLである。Webアプリケーションリストは、利用者端末100で動作しているWebアプリケーションを提供したサービスのURLのリストである。動作を終えたWebアプリケーションについても、当該URLが残されるようにしてもよい。以上で、機能制限システムのモジュール構成についての説明を終える。
続いて、図8乃至11に基づいて、シーケンスについて説明する。まず、図8のシーケンスの例について説明する。このシーケンスは、Webブラウザ405からWebアプリケーションサーバ301にアクセスすることを想定している。Webブラウザ405から送出されるHTTPリクエストは、Webブラウザ405におけるプロキシの設定に従って、抽出部(プロキシ型)507aに送られる(S801)。このHTTPリクエストは、Webアプリケーションサーバ301のURLへのアクセス要求に相当する。そして、抽出部(プロキシ型)507aは、HTTPリクエストをWebアプリケーションサーバ301に転送する(S803)。
HTTPリクエストに対するHTTPレスポンスは、Webアプリケーションサーバ301から抽出部(プロキシ型)507aへ返される(S805)。HTTPレスポンスは、例えばHTML5ファイルに相当する。
監視していたHTTPリクエストとHTTPレスポンスとに基づいて、抽出部(プロキシ型)507aは、ネットワークアドレスを抽出する処理を行う(S807)。具体的には、抽出部(プロキシ型)507aは、接続先ネットワークのURLを特定する。このとき、接続先ネットワークのURLは、Webアプリケーションサーバ301のURLと一致する。抽出した接続先ネットワークのURLは、前述の通り記憶部411に記憶される。この例では、Webアプリケーションサーバ301へのアクセスの例を示したが、他の装置にアクセスする場合にも、抽出部(プロキシ型)507aは、ネットワークアドレスを抽出するようにしてもよい。
抽出部(プロキシ型)507aは、検証部509に、Webアプリケーションサーバ301のURLとHTTPレスポンスとを渡す(S809)。URLとHTTPレスポンスとを受けると、検証部509は検証処理を行う(S811)。具体的には、検証部509は、HTTPレスポンスに付されている署名データを検証する。署名データの検証に成功した場合には、Webアプリケーションは真正であると判断される。署名データの検証に失敗した場合には、Webアプリケーションは不正であると判断される。
また、検証部509は、SSL(Secure Socket Layer)通信の開始時にWebアプリケーションサーバ301を認証するようにしてもよい。Webアプリケーションサーバ301の認証に成功した場合には、Webアプリケーションサーバ301は真正であり、Webアプリケーションサーバ301の認証に失敗した場合には、Webアプリケーションサーバ301は不正であると判断される。
検証部509は、抽出部(プロキシ型)507aへ検証結果を返す(S813)。検証結果が失敗である場合には、抽出部(プロキシ型)507aは処理を中断する。
検証結果が成功である場合には、抽出部(プロキシ型)507aは、Webアプリケーション登録部511にWebアプリケーションサーバ301のURLを渡す(S815)。Webアプリケーションサーバ301のURLを受けると、Webアプリケーション登録部511は、Webアプリケーション登録処理を行う(S817)。具体的には、Webアプリケーション登録部511は、Webアプリケーションサーバ301のURLを記憶部411に記憶されているWebアプリケーションリストに加える。
そして、抽出部(プロキシ型)507aは、Webブラウザ405へHTTPレスポンスを渡す(S819)。
図9に、続きのシーケンスの例を示す。HTTPレスポンスを受けると、Webブラウザ405は、HTML5のデータに対する構文解析や表示等の処理を行う。このとき、Webブラウザ405は、HTML5のデータ中のスクリプトを検出部(エンジン監視型)513aに渡す(S901)。
スクリプトが前述のAPI群のうちのいずれかのAPIの機能に関する記述を含む場合には、検出部(エンジン監視型)513aは、判定部517に当該APIについての利用可否の判定を求める。そのため、検出部(エンジン監視型)513aは、判定部517に判定リクエスト(API種別を含む。)を渡す(S903)。
判定リクエストを受けると、判定部517は、コンテキスト生成部515にコンテキストを生成するリクエストを渡す(S905)。
コンテキストを生成するリクエストを受けると、コンテキスト生成部515は、コンテキスト生成処理を行う(S907)。コンテキスト生成部515は、ネットワークアドレスの情報を用いる場合に、記憶部411からネットワークアドレスを読み出す。また、コンテキスト生成部515は、動作しているWebアプリケーションの情報を用いる場合に、記憶部411からWebアプリケーションリストを読み出す。更に、コンテキスト生成部515は、APIから取得する情報(例えば、位置情報や時間情報)を用いる場合に、API431を呼び出し(S909)、API431から戻り値(以下、API戻り値という。)を得る(S913)。そして、コンテキスト生成部515は、収集した情報と生成ルールとに基づいてコンテキストを生成する。
生成されたコンテキストは、コンテキスト生成部515から判定部517に返される(S915)。
コンテキストを受けると、判定部517は、利用可否判定処理を行う(S917)。具体的には、判定部517は、コンテキストと判定ルールとに基づいて、当該APIの利用可否を判定する。そして、判定部517は、検出部(エンジン監視型)513aに判定結果を返す(S919)。
図10に、判定結果が成功である場合のシーケンスの例を示す。検出部(エンジン監視型)513aが成功の判定結果(S1001)を受けた場合には、検出部(エンジン監視型)513aは、スクリプトをスクリプトエンジン451に渡す(S1003)。スクリプトエンジン451はWebブラウザ405に含まれるが、便宜的にWebブラウザ405と分けて説明している。
スクリプトエンジン451は、当該機能に係るAPI431を呼び出す(S1005)。そして、API431は、スクリプトエンジン451にAPI戻り値を返す(S1007)。スクリプトエンジン451は、検出部(エンジン監視型)513aに処理を戻す(S1009)。更に、検出部(エンジン監視型)513aは、Webブラウザ405に処理を戻す(S1011)。それぞれの処理の復帰において、API戻り値が返されるようにしてもよい。
図11に、判定結果が失敗である場合のシーケンスの例を示す。検出部(エンジン監視型)513aが失敗の判定結果(S1101)を受けた場合には、検出部(エンジン監視型)513aは、Webブラウザ405にAPI利用不可の通知を渡す(S1103)。以上でシーケンスについての説明を終える。
続いて、処理の詳細について説明する。まず、検出部(エンジン監視型)513aの処理について説明する。図12に、検出処理(エンジン監視型)フローの例を示す。検出部(エンジン監視型)513aは、Webブラウザ405からスクリプトを受ける(S1201)。この処理は、図9のS901に示したステップに相当する。
検出部(エンジン監視型)513aは、受け取ったスクリプトに前述のAPI群のうちのいずれかのAPIの機能に関する記述が含まれているか否かを判定する(S1203)。スクリプトに前述のAPI群のいずれのAPIの機能に関する記述も含まれていないと判定した場合には、検出部(エンジン監視型)513aは、スクリプトをスクリプトエンジン451に渡す(S1205)。検出部(エンジン監視型)513aは、スクリプトエンジン451におけるスクリプト処理の終了を待つ(S1207)。検出部(エンジン監視型)513aは、Webブラウザ405へ処理を戻す(S1209)。
受け取ったスクリプトに前述のAPI群のうちのいずれかのAPIの機能に関する記述が含まれていると判定した場合には、検出部(エンジン監視型)513aは、判定部517に判定リクエストを渡す(S1211)。このとき、判定リクエストに当該APIの種別を含める。この処理は、図9のS903に示したステップに相当する。
検出部(エンジン監視型)513aは、判定部517から判定結果を受ける(S1213)。図9のS919に示したステップに相当する。
そして、検出部(エンジン監視型)513aは、判定結果が成功であるか、あるいは失敗であるかを判定する(S1215)。判定結果が成功であると判定した場合には、検出部(エンジン監視型)513aは、スクリプトエンジン451へスクリプトを渡す(S1217)。この処理は、図10のS1003に示したステップに相当する。
そして、検出部(エンジン監視型)513aは、スクリプトエンジン451におけるスクリプト処理の終了を待つ(S1219)。図10のS1009に示したステップに相当する。
スクリプトエンジン451におけるスクリプト処理が終了すると、検出部(エンジン監視型)513aは、Webブラウザ405へ処理を戻す(S1221)。検出部(エンジン監視型)513aは、API戻り値を返すようにしてもよい。図10のS1011に示したステップに相当する。
S1215において判定結果が失敗であると判定した場合には、検出部(エンジン監視型)513aは、Webブラウザ405へAPI利用不可の通知を渡す(S1223)。図11のS1103に示したステップに相当する。以上で、検出部513の処理についての説明を終える。
次に、判定部517の処理について説明する。図13に、判定処理フローの例を示す。判定部517は、判定リクエストを待つ(S1301)。判定リクエストには、判定対象となるAPI種別が含まれている。判定リクエストを受けると、判定部517は、呼び出し元のWebアプリケーションを特定する(S1303)。判定部517は、例えば、抽出部(プロキシ型)507aからWebアプリケーションサーバ301のURLを取得し、当該URLによって呼び出し元のWebアプリケーションを特定する。あるいは、判定部517は、記憶部411に記憶されているWebアプリケーションリストに登録されているWebアプリケーションサーバ301のURLによって判定対象のWebアプリケーションを特定する。WebアプリケーションリストにWebアプリケーションサーバ301のURLが複数含まれている場合には、判定部517は、最も遅く登録されたWebアプリケーションサーバ301のURLによって呼び出し元のWebアプリケーションを特定するようにしてもよい。
判定部517は、コンテキストを生成するリクエストを渡す(S1305)。この処理は、図9のS905に示したステップに相当する。
そして、判定部517は、生成されたコンテキストを受ける(S1307)。この処理は、図9のS915に示したステップに相当する。
判定部517は、判定ルールテーブルから、生成されたコンテキストに適合し、更に呼び出し元のWebアプリケーションにも適合するレコードを特定する(S1309)。判定部517は、当該レコードにおいて判定対象のAPI種別に対応する利用可否を読む(S1311)。S1309とS1311とは、図9のS917に示した利用可否判定処理に相当する。
判定部517は、検出部(エンジン監視型)513aに判定結果を返す(S1313)。図9のS919に示したステップに相当する。以上で、判定部517の処理についての説明を終える。
次に、コンテキスト生成部515の処理について説明する。図14に、コンテキスト生成処理フローの例を示す。コンテキスト生成部515は、コンテキストを生成するリクエストを待つ(S1401)。コンテキストを生成するリクエストを受けると、コンテキスト生成部515は、格納部409に格納されている生成ルールテーブルのうち、未処理のレコードを1つ特定する(S1403)。コンテキスト生成部515は、例えば順次レコードを特定する。
コンテキスト生成部515は、未処理の条件のフィールドを1つ特定する。コンテキスト生成部515は、例えば順次条件のフィールドを特定する(S1405)。コンテキスト生成部515は、当該条件のフィールドに条件があるか否かを判定する(S1407)。当該条件のフィールドに条件がないと判定した場合には、当該条件のフィールドについての判定を行わずに、S1413の処理に移る。
当該条件のフィールドに条件があると判定した場合には、コンテキスト生成部515は、当該条件の対象データを取得する(S1409)。時刻条件であれば、時計機能に係るAPI431fから現在時刻を取得する。位置条件であれば、API431aから位置情報を取得する。ネットワーク条件であれば、記憶部411からネットワークアドレスを読み取る。Webアプリケーション条件であれば、記憶部411のWebアプリケーションリストから動作している他のWebアプリケーションのURLを読み取る。そして、コンテキスト生成部515は、対象データが条件に合致するか否かを判定する(S1411)。
対象データが条件に合致すると判定した場合には、コンテキスト生成部515は、未処理の条件フィールドがあるか否かを判定する(S1413)。未処理の条件フィールドがあると判定した場合には、S1405の処理に戻る。未処理の条件フィールドがないと判定した場合には、合致しない条件が無いので、コンテキスト生成部515は、当該レコードのコンテキストを特定する(S1415)。
一方、S1411で対象データが条件に合致しないと判定した場合には、コンテキストを生成しない。
コンテキスト生成部515は、未処理のレコードがあるか否かを判定する(S1417)。未処理のレコードがあると判定した場合には、S1403の処理に戻る。
未処理のレコードがないと判定した場合には、コンテキスト生成部515は、S1415で特定したコンテキストを判定部517に返す(S1419)。この処理は、図9のS915に示したステップに相当する。
そして、S1401に戻り、次の生成リクエストを待つ。以上で、コンテキスト生成部515の処理についての説明を終える。
本実施の形態によれば、Webアプリケーションによる特定機能の利用を、自動的に制限できる。例えば、利用者端末100で計測された情報(位置情報や時刻情報など)や秘密に符号処理された情報(暗号化されたデータ、復号されたデータ、署名データなど)が不正使用されることを防ぐことができる。
また、Webアプリケーション又はWebアプリケーションを提供するサービスに応じて、Webアプリケーションによる特定機能の利用を制限できる。
また、ネットワークとの接続状況に応じて、Webアプリケーションによる特定機能の利用を制限できる。
また、他のWebアプリケーションの動作状況に応じて、Webアプリケーションによる特定機能の利用を制限できる。
本実施の形態によれば、スクリプトエンジン451を監視するので、オペレーティングシステム401に依存しない。
[実施の形態2]
実施の形態1で説明した抽出部(プロキシ型)507aに代えて、抽出部(API監視型)507bを用いる例を説明する。また、実施の形態1で説明した検出部(エンジン監視型)513aに代えて、検出部(API監視型)513bを用いる例についても併せて説明する。
抽出部(API監視型)507bは、通信機能に係るAPI431cの呼び出しをフックすることによって、通信状況を監視し、通信に係る情報(接続先ネットワークのURLやWebアプリケーションを提供するサービスのURLなど)を抽出する。
また、検出部(API監視型)513bは、各機能に係るAPIの呼び出しをフックすることによって、API431の呼び出しの発生を検出する。
図15乃至18に基づいて、実施の形態2に係るシーケンスについて説明する。まず、図15のシーケンスの例について説明する。この例では、ソケットを用いた通信を想定する。この図では、ソケットを用いた通信のシーケンスの一部を示している。例えば、Webブラウザ405によるソケットオープンを抽出部(API監視型)507bでフックし(S1501)、ソケットオープンを通信機能に係るAPI431cに渡す(S1503)。データの送信も、抽出部(API監視型)507bを介する(S1505,S1507)。
そして、通信機能に係るAPI431cからWebアプリケーションサーバ301へHTTPリクエストが送出される(S1509)。Webアプリケーションサーバ301から返されたHTTPレスポンスは、通信機能に係るAPI431cから抽出部(API監視型)507bに渡される(S1511、S1513)。
HTTPレスポンスに相当するデータを受信すると、抽出部(API監視型)507bは、ネットワークアドレスを抽出する処理を行う(S1515)。具体的には、抽出部(API監視型)507bは、接続先ネットワークのURLを特定する。このとき、接続先ネットワークのURLは、Webアプリケーションサーバ301のURLと一致する。抽出した接続先ネットワークのURLは、前述の通り記憶部411に記憶される。この例では、Webアプリケーションサーバ301へのアクセスの例を示したが、他の装置にアクセスする場合にも、抽出部(API監視型)507bは、ネットワークアドレスを抽出するようにしてもよい。
抽出部(API監視型)507bは、検証部509に、Webアプリケーションサーバ301のURLとHTTPレスポンスとを渡す(S1517)。URLとHTTPレスポンスとを受けると、検証部509は検証処理を行う(S1519)。具体的には、検証部509は、HTTPレスポンスに付されている署名データを検証する。署名データの検証に成功した場合には、Webアプリケーションは真正であると判断される。署名データの検証に失敗した場合には、Webアプリケーションは不正であると判断される。
また、検証部509は、SSL通信の開始時にWebアプリケーションサーバ301を認証するようにしてもよい。Webアプリケーションサーバ301の認証に成功した場合には、Webアプリケーションサーバ301は真正であり、Webアプリケーションサーバ301の認証に失敗した場合には、Webアプリケーションサーバ301は不正であると判断される。
検証部509は、抽出部(API監視型)507bへ検証結果を返す(S1521)。検証結果が失敗である場合には、抽出部(API監視型)507bは処理を中断する。
検証結果が成功である場合には、抽出部(API監視型)507bは、Webアプリケーション登録部511にWebアプリケーションサーバ301のURLを渡す(S1523)。Webアプリケーションサーバ301のURLを受けると、Webアプリケーション登録部511は、Webアプリケーション登録処理を行う(S1525)。具体的には、Webアプリケーション登録部511は、Webアプリケーションサーバ301のURLを記憶部411に記憶されているWebアプリケーションリストに加える。
そして、抽出部(API監視型)507bは、Webブラウザ405へHTTPレスポンスを渡す(S1527)。
図16に、続きのシーケンスの例を示す。Webブラウザ405からAPIが呼び出されると、検出部(API監視型)513bは当該API呼び出しをフックする(S1601)。フックする箇所によって、呼び出されるAPIの種別は特定される。
API呼び出しをフックすると、検出部(API監視型)513bは、判定部517に当該APIについての利用可否の判定を求める。そのため、検出部(API監視型)513bは、判定部517に判定リクエスト(API種別を含む。)を渡す(S1603)。
判定リクエストを受けると、判定部517は、コンテキスト生成部515にコンテキストを生成するリクエストを渡す(S1605)。
コンテキストを生成するリクエストを受けると、コンテキスト生成部515は、コンテキスト生成処理を行う(S1607)。コンテキスト生成部515は、ネットワークアドレスの情報を用いる場合に、記憶部411からネットワークアドレスを読み出す。コンテキスト生成部515は、動作しているWebアプリケーションの情報を用いる場合に、記憶部411からWebアプリケーションリストを読み出す。コンテキスト生成部515は、APIから取得する情報(例えば、位置情報や時間情報)を用いる場合に、API431を呼び出し(S1609)、API戻り値を得る(S1613)。そして、コンテキスト生成部515は、収集した情報と生成ルールとに基づいてコンテキストを生成する。
生成されたコンテキストは、コンテキスト生成部515から判定部517に返される(S1615)。
コンテキストを受けると、判定部517は、利用可否判定処理を行う(S1617)。具体的には、判定部517は、コンテキストと判定ルールに基づいて、当該APIの利用可否を判定する。そして、判定部517は、検出部(API監視型)513bに判定結果を返す(S1619)。
図17に、判定結果が成功である場合のシーケンスの例を示す。検出部(API監視型)513bが成功の判定結果(S1701)を受けた場合には、検出部(API監視型)513bは、API431を呼び出す(S1703)。検出部(API監視型)513bは、API431から戻り値を受けると(S1705)、Webブラウザ405にその戻り値を渡す(S1707)。
図18に、判定結果が失敗である場合のシーケンスの例を示す。検出部(API監視型)513bが失敗の判定結果(S1801)を受けた場合には、検出部(API監視型)513bは、Webブラウザ405にAPI利用不可の通知を渡す(S1803)。以上でシーケンスについての説明を終える。
続いて、処理の詳細について説明する。まず、検出部(API監視型)513bの処理について説明する。図19に、検出処理(API監視型)フローの例を示す。検出部(API監視型)513bは、API呼び出しをフックする(S1901)。図16のS1601に示したステップに相当する。このとき、検出部(API監視型)513bは、APIの種別も特定する。
検出部(API監視型)513bは、判定部517に判定リクエストを渡す(S1903)。このとき、判定リクエストに当該APIの種別を含める。図16のS1603に示したステップに相当する。
検出部(API監視型)513bは、判定部517から判定結果を受ける(S1905)。図16のS1619に示したステップに相当する。
そして、検出部(エンジン監視型)513aは、判定結果が成功であるか、あるいは失敗であるかを判定する(S1907)。判定結果が成功であると判定した場合には、検出部(API監視型)513bは、種別に応じてAPI431を呼び出す(S1909)。図17のS1703に示したステップに相当する。
そして、検出部(API監視型)513bは、API431から戻り値を受ける(S1911)。図17のS1705に示したステップに相当する。
検出部(API監視型)513bは、API戻り値をWebブラウザ405に返す(S1913)。図17のS1707に示したステップに相当する。
S1907において判定結果が失敗であると判定した場合には、検出部(API監視型)513bは、API利用不可の通知を渡す(S1915)。図18のS1803に示したステップに相当する。以上で、検出部(API監視型)513bの処理についての説明を終える。
抽出部(プロキシ型)507aと検出部(API監視型)513bとを組み合わせる形態としてもよい。また、抽出部(API監視型)507bと検出部(エンジン監視型)513aとを組み合わせる形態としてもよい。
本実施の形態によれば、API呼び出しをフックするので、Webブラウザ405に依存しない。更に、プロセス単位で通信を監視することができる。
[実施の形態3]
上述の実施の形態では、Webブラウザを有する利用者端末100内でAPI431の利用を制限する処理を行う例について説明したが、本実施の形態では、Webブラウザを有する利用者端末100とは別に設けた中継装置200においてAPIの利用を制限する例について説明する。
図20に、実施の形態3に係る機能制限システムの構成例を示す。中継装置200は、インターネットに接続する機能を有している。そして、中継装置200は、Webアプリケーションサーバ301a乃至c、利用者端末100及び社内サーバ305とインターネットを介して通信する。尚、中継装置200と利用者端末100との間は、近距離無線通信や無線LANなどの他の通信媒体によって接続されるようにしてもよい。
中継装置200は、利用者端末100とWebアプリケーションサーバ301a乃至cとの間の通信を中継する。また、中継装置200は、利用者端末100にAPIの機能を提供する。そして、利用者端末100にAPIの機能を提供する前に、コンテキストを生成し、APIの利用可否判定を行い、利用可と判定されたAPIの機能を提供するように動作する。
図21に、中継装置200のモジュール構成例を示す。中継装置200は、オペレーティングシステム(OS)2101、制限部2107、格納部2109、記憶部2111、送信部2113、受信部2115、表示部2117及び受付部2119を有している。
オペレーティングシステム2101は、API群を備えるフレームワーク2103を有している。この例で、API群には、GPS機能に係るAPI2131a、署名機能に係るAPI2131b、通信機能に係るAPI2131c、復号機能に係るAPI2131d及び時計機能に係るAPI2131fが含まれている。但し、他の機能に係るAPIを設けるようにしてもよい。
図22を用いて、格納部2109と制限部2107と記憶部2111との詳細について説明する。格納部2109は、この例では生成ルールテーブル、判定ルールテーブル及び検証データを格納する。
制限部2107は、生成ルール設定部2201、判定ルール設定部2203、検証データ登録部2205、抽出部(プロキシ型)2207a、検証部2209、Webアプリケーション登録部2211、コンテキスト生成部2215、判定部2217及び中継部2219を有している。
生成ルール設定部2201は、上述した生成ルールテーブルを格納部2109に格納させる。生成ルール設定部2201は、例えば、表示部2117に生成ルールの入力画面を表示させ、生成ルール入力画面に対する入力の操作を受付部2119で受け付けることによって、利用者に生成ルールを設定させる。あるいは、生成ルール設定部2201は、インターネットを介して、生成ルールテーブルを配信する装置(例えば、社内サーバ305)から生成ルールテーブルをダウンロードするようにしてもよい。利用者は、例えば準備段階で生成ルール設定部2201を起動し、生成ルールテーブルを用意する。
判定ルール設定部2203は、上述した判定ルールを格納部2109に格納させる。判定ルール設定部2203は、例えば、表示部2117に判定ルールの入力画面を表示させ、判定ルール入力画面に対する入力の操作を受付部2119で受け付けることによって、利用者に判定ルールを設定させる。あるいは、判定ルール設定部2203は、インターネットを介して、判定ルールテーブルを配信する装置(例えば、社内サーバ305)から判定ルールテーブルをダウンロードするようにしてもよい。利用者は、例えば準備段階で判定ルール設定部2203を起動し、判定ルールテーブルを用意する。
検証データ登録部2205は、検証データを所定の機関(例えば認証局)から取得し、格納部2109に格納させる。利用者は、例えば準備段階で検証データ登録部2205を起動し、検証データを用意する。
抽出部(プロキシ型)2207aは、通信状況を監視し、通信に係る情報(接続先ネットワークのURLやWebアプリケーションを提供するサービスのURLなど)を抽出する。また、抽出部(プロキシ型)2207aは、接続先のネットワークのURLを記憶部2111に記憶させる。
検証部2209は、Webアプリケーションサーバ301からダウンロードされるWebアプリケーションを検証する。例えば、WebアプリケーションがHTML5ファイル形式である場合、検証部2209は、ダウンロードされるHTML5ファイルに相当するHTTPレスポンスの署名を検証する。検証部2209は、Webアプリケーションサーバ301を認証するようにしてもよい。Webアプリケーション登録部2211は、Webアプリケーションサーバ301のURLを記憶部2111に記憶させる。
コンテキスト生成部2215は、コンテキストを生成する。判定部2217は、コンテキストに基づき、APIの利用可否の判定を行う。
中継部2219は、利用者端末100からのAPI利用を中継する。
記憶部2111は、例えば、ネットワークアドレスとWebアプリケーションリストとを記憶する。ネットワークアドレスは、接続先ネットワークのURLである。Webアプリケーションリストは、利用者端末100で動作しているWebアプリケーションを提供したサービスのURLのリストである。動作を終えたWebアプリケーションについても、当該URLが残されるようにしてもよい。
図23に、実施の形態3に係る利用者端末のモジュール構成例を示す。利用者端末100は、検出部(エンジン監視型)2301aを有している。検出部(エンジン監視型)2301aは、スクリプトエンジン451を監視する。
図24に、実施の形態3に係るシーケンスの例を示す。利用者端末100のWebブラウザ405から送出されるHTTPリクエストは、利用者端末100のWebブラウザ405におけるプロキシの設定に従って、中継装置200の抽出部(プロキシ型)2207aに送られる(S2401)。このHTTPリクエストは、Webアプリケーションサーバ301のURLへのアクセス要求に相当する。そして、中継装置200の抽出部(プロキシ型)2207aは、HTTPリクエストをWebアプリケーションサーバ301に転送する(S2403)。
HTTPリクエストに対するHTTPレスポンスは、Webアプリケーションサーバ301から中継装置200の抽出部(プロキシ型)2207aへ返される(S2405)。HTTPレスポンスは、例えばHTML5ファイルに相当する。
監視していたHTTPリクエストとHTTPレスポンスとに基づいて、中継装置200の抽出部(プロキシ型)2207aは、ネットワークアドレスを抽出する処理を行う(S2407)。具体的には、中継装置200の抽出部(プロキシ型)2207aは、接続先ネットワークのURLを特定する。このとき、接続先ネットワークのURLは、Webアプリケーションサーバ301のURLと一致する。抽出した接続先ネットワークのURLは、前述の通り記憶部2111に記憶される。この例では、Webアプリケーションサーバ301へのアクセスの例を示したが、他の装置にアクセスする場合にも、中継装置200の抽出部(プロキシ型)2207aは、ネットワークアドレスを抽出するようにしてもよい。
中継装置200の抽出部(プロキシ型)2207aは、中継装置200の検証部2209に、Webアプリケーションサーバ301のURLとHTTPレスポンスとを渡す(S2409)。URLとHTTPレスポンスと受けると、中継装置200の検証部2209は検証処理を行う(S2411)。具体的には、中継装置200の検証部2209は、HTTPレスポンスに付されている署名データを検証する。署名データの検証に成功した場合には、Webアプリケーションは真正であると判断される。署名データの検証に失敗した場合には、Webアプリケーションは不正であると判断される。
また、中継装置200の検証部2209は、SSL通信の開始時にWebアプリケーションサーバ301を認証するようにしてもよい。Webアプリケーションサーバ301の認証に成功した場合には、Webアプリケーションサーバ301は真正であり、Webアプリケーションサーバ301の認証に失敗した場合には、Webアプリケーションサーバ301は不正であると判断される。
中継装置200の検証部2209は、中継装置200の抽出部(プロキシ型)2207aへ検証結果を返す(S2413)。検証結果が失敗である場合には、中継装置200の抽出部(プロキシ型)2207aは処理を中断する。
検証結果が成功である場合には、中継装置200の抽出部(プロキシ型)2207aは、中継装置200のWebアプリケーション登録部2211にWebアプリケーションサーバ301のURLを渡す(S2415)。Webアプリケーションサーバ301のURLを受けると、中継装置200のWebアプリケーション登録部2211は、Webアプリケーション登録処理を行う(S2417)。具体的には、中継装置200のWebアプリケーション登録部2211は、Webアプリケーションサーバ301のURLを記憶部2111に記憶されているWebアプリケーションリストに加える。
そして、中継装置200の抽出部(プロキシ型)2207aは、利用者端末100のWebブラウザ405へHTTPレスポンスを渡す(S2419)。
図25に、続きのシーケンスの例を示す。利用者端末100の検出部(エンジン監視型)2301aは、利用者端末100のWebブラウザ405から受けたスクリプトに前述のAPI群のうちのいずれかのAPIの機能に関する記述が含まれている場合に、中継装置200の中継部2219に当該APIの利用を求める。そのため、利用者端末100の検出部(エンジン監視型)2301aは、インターネットを介して中継装置200の中継部2219にAPI利用リクエストを送る(S2501)。このとき、インターネットに代えて、近距離無線通信や無線LANなどの他の通信媒体が用いられるようにしてもよい。
中継装置200の中継部2219は、中継装置200の判定部2217に判定リクエスト(API種別を含む。)を渡す(S2503)。
判定リクエストを受けると、中継装置200の判定部2217は、中継装置200のコンテキスト生成部2215にコンテキストを生成するリクエストを渡す(S2505)。
コンテキストを生成するリクエストを受けると、中継装置200のコンテキスト生成部2215は、コンテキスト生成処理を行う(S2507)。中継装置200のコンテキスト生成部2215は、ネットワークアドレスの情報を用いる場合に、記憶部2111からネットワークアドレスを読み出す。また、中継装置200のコンテキスト生成部2215は、動作しているWebアプリケーションの情報を用いる場合に、記憶部2111からWebアプリケーションリストを読み出す。更に、中継装置200のコンテキスト生成部2215は、APIから取得する情報(例えば、位置情報や時間情報)を用いる場合に、中継装置200のAPI2131を呼び出し(S2509)、中継装置200のAPI2131から戻り値を得る(S2513)。そして、中継装置200のコンテキスト生成部2215は、収集した情報と生成ルールとに基づいてコンテキストを生成する。
生成されたコンテキストは、中継装置200のコンテキスト生成部2215から中継装置200の判定部2217に返される(S2515)。
コンテキストを受けると、中継装置200の判定部2217は、利用可否判定処理を行う(S2517)。具体的には、中継装置200の判定部2217は、コンテキストと判定ルールとに基づいて、当該APIの利用可否を判定する。そして、中継装置200の判定部2217は、中継装置200の中継部2219に判定結果を返す(S2519)。
図26に、判定結果が成功である場合のシーケンスの例を示す。中継装置200の中継部2219が成功の判定結果(S2601)を受けた場合には、中継装置200の中継部2219は、中継装置200における当該機能に係るAPI2131を呼び出す(S2603)。そして、中継装置200のAPI2131は、中継装置200の中継部2219にAPI戻り値を返す(S2605)。そして、中継装置200の中継部2219は、インターネットを介して利用者端末100の検出部(エンジン監視型)2301aにAPI利用結果を送る(S2607)。API利用結果は、API戻り値を含んでいる。利用者端末100側は、API戻り値を用いて処理を続行する。このとき、インターネットに代えて、近距離無線通信や無線LANなどの他の通信媒体が用いられるようにしてもよい。
図27に、判定結果が失敗である場合のシーケンスの例を示す。中継装置200の中継部2219が失敗の判定結果(S2701)を受けた場合には、中継装置200の中継部2219は、インターネットを介して利用者端末100の検出部(エンジン監視型)2301aにAPI利用不可の通知を送る(S2703)。このとき、インターネットに代えて、近距離無線通信や無線LANなどの他の通信媒体が用いられるようにしてもよい。
本実施の形態によれば、プログラムを実行する装置とは別の装置の状況に応じて、プログラムによる特定機能の利用を制限できる。
[実施の形態4]
利用者端末100で監視するAPIの呼び出しに基づいて、利用者端末100と中継装置200とが連携する形態について説明する。
図28に、実施の形態4に係る格納部2109と制限部2107と記憶部2111の構成例を示す。図22の抽出部(プロキシ型)2207aに代えて、抽出部(API監視型)2207bを有している。
図29に、実施の形態4に係る利用者端末100のモジュール構成例を示す。利用者端末100は、図23に示した検出部(エンジン監視型)2301aに代えて、検出部(API監視型)2301bを有している。更に、利用者端末100は、転送部2901を有している。
図30に、実施の形態4に係るシーケンスの例を示す。この例では、ソケットを用いた通信を想定する。この図では、ソケットを用いた通信のシーケンスの一部を示している。例えば、利用者端末100のWebブラウザ405からのソケットオープンをフックした利用者端末100の転送部2901は、インターネットを介してソケットオープンを中継装置200の抽出部(API監視型)2207bに送る(S3001)。中継装置200の抽出部(API監視型)2207bは、ソケットオープンを中継装置200における通信機能に係るAPI2131cに渡す(S3003)。データ送信の場合も、利用者端末100の転送部2901と中継装置200の抽出部(API監視型)2207bとを介して送られる(S3005,S3007)。このとき、インターネットに代えて、近距離無線通信や無線LANなどの他の通信媒体が用いられるようにしてもよい。
そして、中継装置200における通信機能に係るAPI2131cからWebアプリケーションサーバ301へHTTPリクエストが送出される(S3009)。Webアプリケーションサーバ301から返されたHTTPレスポンスは、中継装置200における通信機能に係るAPI2131cから中継装置200の抽出部(API監視型)2207bに渡される(S3011、S3013)。
HTTPレスポンスに相当するデータを受信すると、中継装置200の抽出部(API監視型)2207bは、ネットワークアドレスを抽出する処理を行う(S3015)。具体的には、中継装置200の抽出部(API監視型)2207bは、接続先ネットワークのURLを特定する。このとき、接続先ネットワークのURLは、Webアプリケーションサーバ301のURLと一致する。抽出した接続先ネットワークのURLは、前述の通り記憶部2111に記憶される。この例では、Webアプリケーションサーバ301へのアクセスの例を示したが、他の装置にアクセスする場合にも、中継装置200の抽出部(API監視型)2207bは、ネットワークアドレスを抽出するようにしてもよい。
中継装置200の抽出部(API監視型)2207bは、中継装置200の検証部2209に、Webアプリケーションサーバ301のURLとHTTPレスポンスとを渡す(S3017)。URLとHTTPレスポンスとを受けると、中継装置200の検証部2209は検証処理を行う(S3019)。具体的には、中継装置200の検証部2209は、HTTPレスポンスに付されている署名データを検証する。署名データの検証に成功した場合には、Webアプリケーションは真正であると判断される。署名データの検証に失敗した場合には、Webアプリケーションは不正であると判断される。
また、中継装置200の検証部2209は、SSL通信の開始時にWebアプリケーションサーバ301を認証するようにしてもよい。Webアプリケーションサーバ301の認証に成功した場合には、Webアプリケーションサーバ301は真正であり、Webアプリケーションサーバ301の認証に失敗した場合には、Webアプリケーションサーバ301は不正であると判断される。
中継装置200の検証部2209は、中継装置200の抽出部(API監視型)2207bへ検証結果を返す(S3021)。検証結果が失敗である場合には、中継装置200の抽出部(API監視型)2207bは処理を中断する。
検証結果が成功である場合には、中継装置200の抽出部(API監視型)2207bは、中継装置200のWebアプリケーション登録部2211にWebアプリケーションサーバ301のURLを渡す(S3023)。Webアプリケーションサーバ301のURLを受けると、中継装置200のWebアプリケーション登録部2211は、Webアプリケーション登録処理を行う(S3025)。具体的には、中継装置200のWebアプリケーション登録部2211は、Webアプリケーションサーバ301のURLを記憶部2111に記憶されているWebアプリケーションリストに加える。
そして、中継装置200の抽出部(API監視型)2207bは、インターネットを介して利用者端末100の転送部2901へHTTPレスポンスに相当するデータを送信する(S3027)。このとき、インターネットに代えて、近距離無線通信や無線LANなどの他の通信媒体が用いられるようにしてもよい。
図31に、続きのシーケンスの例を示す。利用者端末100のWebブラウザ405からのAPI呼び出しをフックした利用者端末100の検出部(API監視型)2301bは、インターネットを介して中継装置200の中継部2219にAPI利用のリクエストを送る(S3101)。このとき、インターネットに代えて、近距離無線通信や無線LANなどの他の通信媒体が用いられるようにしてもよい。
中継装置200の中継部2219は、中継装置200の判定部2217に当該APIについての利用可否の判定を求める。そのため、中継装置200の中継部2219は、中継装置200の判定部2217に判定リクエスト(API種別を含む。)を渡す(S3103)。
判定リクエストを受けると、中継装置200の判定部2217は、中継装置200のコンテキスト生成部2215にコンテキストを生成するリクエストを渡す(S3105)。
コンテキストを生成するリクエストを受けると、中継装置200のコンテキスト生成部2215は、コンテキスト生成処理を行う(S3107)。中継装置200のコンテキスト生成部2215は、ネットワークアドレスの情報を用いる場合に、記憶部2111からネットワークアドレスを読み出す。中継装置200のコンテキスト生成部2215は、動作しているWebアプリケーションの情報を用いる場合に、記憶部2111からWebアプリケーションリストを読み出す。中継装置200のコンテキスト生成部2215は、APIから取得する情報(例えば、位置情報や時間情報)を用いる場合に、中継装置200のAPI2131を呼び出し(S3109)、API戻り値を得る(S3113)。そして、中継装置200のコンテキスト生成部2215は、収集した情報と生成ルールとに基づいてコンテキストを生成する。
生成されたコンテキストは、中継装置200のコンテキスト生成部2215から中継装置200の判定部2217に返される(S3115)。
コンテキストを受けると、中継装置200の判定部2217は、利用可否判定処理を行う(S3117)。具体的には、中継装置200の判定部2217は、コンテキストと判定ルールに基づいて、当該APIの利用可否を判定する。そして、中継装置200の判定部2217は、中継装置200の中継部2219に判定結果を返す(S3119)。
図32に、判定結果が成功である場合のシーケンスの例を示す。中継装置200の中継部2219が成功の判定結果(S3201)を受けた場合には、中継装置200の中継部2219は、中継装置200のAPI2131を呼び出す(S3203)。中継装置200の中継部2219は、中継装置200のAPI2131から戻り値を受けると(S3205)、インターネットを介して利用者端末100の検出部(API監視型)2301bにAPI利用結果を送る(S3207)。API利用結果には、API戻り値が含まれる。このとき、インターネットに代えて、近距離無線通信や無線LANなどの他の通信媒体が用いられるようにしてもよい。利用者端末100側は、API戻り値を用いて処理を続行する。
図33に、判定結果が失敗である場合のシーケンスの例を示す。中継装置200の中継部2219が失敗の判定結果(S3301)を受けた場合には、中継装置200の中継部2219は、インターネットを介して利用者端末100の検出部(API監視型)2301bにAPI利用不可の通知を送る(S3303)。このとき、インターネットに代えて、近距離無線通信や無線LANなどの他の通信媒体が用いられるようにしてもよい。以上でシーケンスについての説明を終える。
本実施の形態によれば、プログラムを実行する装置とは別の装置の状況に応じて、プログラムによる特定機能の利用を制限できる。
以上本技術の一実施の形態を説明したが、本技術はこれに限定されるものではない。例えば、上述の機能ブロック構成は実際のプログラムモジュール構成に一致しない場合もある。
また、上で説明した各記憶領域の構成は一例であって、上記のような構成でなければならないわけではない。さらに、処理フローにおいても、処理結果が変わらなければ処理の順番を入れ替えることも可能である。さらに、並列に実行させるようにしても良い。
利用者端末100と中継装置200とは、例えば携帯型情報処理装置である。図34に、携帯型情報処理装置のハードウエア構成例を示す。携帯型情報処理装置は、RAM(Random Access Memory)3403、スピーカ3405、LCD(Liquid Crystal Display:液晶ディスプレイ)3407、タッチパネル3409、マイク3411、NAND(Not AND)メモリ3413、通信CPU(Central Processing Unit)3415、アプリCPU3417、近距離通信デバイス3419、GPSセンサー3421、無線LAN(Local Area Network)デバイス3423、DSP(Digital Signal Processor)3425、ISP(Image Signal Processor)3427、カメラ3429、バス3431、サブプロセッサ3433、地磁気センサー3435、ジャイロセンサー3437及び加速度センサー3439を有している。そのうち、RAM3403、スピーカ3405、LCD3407、タッチパネル3409、マイク3411、NANDメモリ3413、通信CPU3415、アプリCPU3417、近距離通信デバイス3419、GPSセンサー3421、無線LANデバイス3423、DSP3425、ISP3427及びカメラ3429は、バス3431を介して接続されている。LCD3407は、表示装置の例である。
RAM3403は、例えばプログラムやデータを記憶する。スピーカ3405は、音声を出力する。LCD3407は、画像や画面を表示する。タッチパネル3409は、接触状態と接触位置などを検出する。マイク3411は、音声を入力する。NANDメモリ3413は、不揮発性記憶素子のフラッシュメモリである。このNANDメモリ3413は、例えばプログラムやデータを記憶する。通信CPU3415は、通信処理に係る演算処理を行う。アプリCPU3417は、アプリケーションソフトを実行する演算装置である。近距離通信デバイス3419は、近距離通信を制御するデバイスである。GPSセンサー3421は、位置を測定する装置である。無線LANデバイス3423は、無線LANの通信を制御するデバイスである。DSP3425は、デジタル信号処理を行うプロセッサである。ISP3427は、画像処理を行うプロセッサである。カメラ3429は、撮影する装置である。また、アプリCPU3417は、サブプロセッサ3433と接続している。サブプロセッサ3433は、地磁気センサー3435、ジャイロセンサー3437、及び加速度センサー3439に接続している。サブプロセッサ3433は、地磁気センサー3435、ジャイロセンサー3437、及び加速度センサー3439を制御する。
この例では、アプリCPU3417は、サブプロセッサ3433を介して地磁気センサー3435、ジャイロセンサー3437、及び加速度センサー3439の計測結果を取得するが、アプリCPU3417は、直接に地磁気センサー3435、ジャイロセンサー3437、及び加速度センサー3439の計測結果を取得するようにしてもよい。
以上述べた本発明の実施の形態をまとめると、以下のようになる。
本実施の形態に係る情報処理装置は、プログラムの実行中に、特定機能に係る呼び出しの発生を検出すると、自装置の状況に係るコンテキストを生成する生成部と、コンテキストに基づいて、呼び出しの許否を判定する判定部とを有する。
このようにすれば、プログラムによる特定機能の利用を、自動的に制限できる。
また、上記判定部は、更に、プログラム又はプログラムを提供するサービスに対応するルールに従って、呼び出しの許否を判定するようにしてもよい。
このようにすれば、プログラム又はプログラムを提供するサービスに応じて、プログラムによる特定機能の利用を制限できる。
また、上記自装置の状況は、情報処理装置におけるネットワークとの接続状況であってもよい。
このようにすれば、ネットワークとの接続状況に応じて、プログラムによる特定機能の利用を制限できる。
また、上記自装置の状況は、情報処理装置における他のプログラムの動作状況であってもよい。
このようにすれば、他のプログラムの動作状況に応じて、プログラムによる特定機能の利用を制限できる。
本実施の形態に係るシステムは、プログラムの実行中に、特定機能に係る呼び出しの発生を検出する検出部を有する第1の情報処理装置と、呼び出しの発生を検出すると、自装置の状況に係るコンテキストを生成する生成部と、コンテキストに基づいて、呼び出しの許否を判定する判定部とを有する第2の情報処理装置とを含む。
このようにすれば、プログラムを実行する装置とは別の装置の状況に応じて、プログラムによる特定機能の利用を制限できる。
なお、上で述べた処理をコンピュータに行わせるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブルディスク、CD−ROM、光磁気ディスク、半導体メモリ、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納されるようにしてもよい。尚、中間的な処理結果は、一般的にメインメモリ等の記憶装置に一時保管される。
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)
プログラムの実行中に、特定機能に係る呼び出しの発生を検出すると、自装置の状況に係るコンテキストを生成する生成部と、
前記コンテキストに基づいて、前記呼び出しの許否を判定する判定部と
を有する情報処理装置。
(付記2)
前記判定部は、更に、前記プログラム又は前記プログラムを提供するサービスに対応するルールに従って、前記呼び出しの許否を判定する
付記1記載の情報処理装置。
(付記3)
前記自装置の状況は、前記情報処理装置におけるネットワークとの接続状況である
付記1又は2記載の情報処理装置。
(付記4)
前記自装置の状況は、前記情報処理装置における他のプログラムの動作状況である
付記1乃至3のいずれか1つ記載の情報処理装置。
(付記5)
プログラムの実行中に、特定機能に係る呼び出しの発生を検出する検出部
を有する第1の情報処理装置と、
前記呼び出しの発生を検出すると、自装置の状況に係るコンテキストを生成する生成部と、
前記コンテキストに基づいて、前記呼び出しの許否を判定する判定部と
を有する第2の情報処理装置と
を含むシステム。
(付記6)
プログラムの実行中に、特定機能に係る呼び出しの発生を検出すると、自装置の状況に係るコンテキストを生成する処理と、
前記コンテキストに基づいて、前記呼び出しの許否を判定する処理と
を含む情報処理方法。
(付記7)
プログラムの実行中に、特定機能に係る呼び出しの発生を検出すると、自装置の状況に係るコンテキストを生成する処理と、
前記コンテキストに基づいて、前記呼び出しの許否を判定する処理と
をコンピュータに実行させるためのプログラム。
100 利用者端末 200 中継装置
301 Webアプリケーションサーバ 303 ルータ
305 社内サーバ 401 オペレーティングシステム
403 フレームワーク 405 Webブラウザ
407 制限部 409 格納部
411 記憶部 413 送信部
415 受信部 417 表示部
419 受付部 431 API
431a GPS機能に係るAPI 431b 署名機能に係るAPI
431c 通信機能に係るAPI 431d 復号機能に係るAPI
431e アドレス帳機能に係るAPI 431f 時計機能に係るAPI
451 スクリプトエンジン 453 プラグイン
501 生成ルール設定部 503 判定ルール設定部
505 検証データ登録部 507 抽出部
507a 抽出部(プロキシ型) 507b 抽出部(API監視型)
509 検証部 511 Webアプリケーション登録部
513 検出部 513a 検出部(エンジン監視型)
513b 検出部(API監視型) 515 コンテキスト生成部
517 判定部 2101 オペレーティングシステム
2103 フレームワーク 2107 制限部
2109 格納部 2111 記憶部
2113 送信部 2115 受信部
2117 表示部 2119 受付部
2131 API 2131a GPS機能に係るAPI
2131b 署名機能に係るAPI 2131c 通信機能に係るAPI
2131d 復号機能に係るAPI 2131f 時計機能に係るAPI
2201 生成ルール設定部 2203 判定ルール設定部
2205 検証データ登録部 2207 抽出部
2207a 抽出部(プロキシ型) 2207b 抽出部(API監視型)
2209 検証部 2211 Webアプリケーション登録部
2215 コンテキスト生成部 2217 判定部
2219 中継部 2301a 検出部(エンジン監視型)
2301b 検出部(API監視型) 2901 転送部

Claims (1)

  1. 第1の情報処理装置と、前記第1の情報処理装置とWebサーバとのデータ通信を中継する携帯型の第2の情報処理装置とを含み、
    前記第1の情報処理装置は、
    前記第2の情報処理装置を介して第1Webサーバから受信した第1プログラムの実行中に、特定機能に係る呼び出しの発生を検出する検出部
    を有し、
    前記第2の情報処理装置は、
    前記呼び出しの発生を検出すると、第2Webサーバから受信した第2プログラムの動作状況に係るコンテキストを生成する生成部と、
    前記コンテキストに基づいて、前記呼び出しの許否を判定する判定部と
    前記呼び出しを許容すると判定した場合に、前記第2の情報処理装置における前記特定機能を呼び出す中継部
    有するシステム。
JP2013043286A 2013-03-05 2013-03-05 情報処理装置、システム、情報処理方法及びプログラム Expired - Fee Related JP6217092B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013043286A JP6217092B2 (ja) 2013-03-05 2013-03-05 情報処理装置、システム、情報処理方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013043286A JP6217092B2 (ja) 2013-03-05 2013-03-05 情報処理装置、システム、情報処理方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2014170501A JP2014170501A (ja) 2014-09-18
JP6217092B2 true JP6217092B2 (ja) 2017-10-25

Family

ID=51692831

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013043286A Expired - Fee Related JP6217092B2 (ja) 2013-03-05 2013-03-05 情報処理装置、システム、情報処理方法及びプログラム

Country Status (1)

Country Link
JP (1) JP6217092B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6404773B2 (ja) * 2015-05-29 2018-10-17 株式会社 日立産業制御ソリューションズ モバイルデバイス及びコンテンツ閲覧制御方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3249597B2 (ja) * 1992-10-15 2002-01-21 富士通株式会社 端末接続管理装置
JP4220189B2 (ja) * 2002-07-15 2009-02-04 株式会社日立製作所 情報ネットワークシステムの制御方法および情報ネットワークシステム
US7613426B2 (en) * 2005-12-20 2009-11-03 Microsoft Corporation Proximity service discovery in wireless networks
JP4012945B1 (ja) * 2006-05-12 2007-11-28 クオリティ株式会社 管理システムおよび管理プログラム
WO2008050512A1 (fr) * 2006-09-29 2008-05-02 Nec Corporation Dispositif, procédé et programme de commande de démarrage
JP4473256B2 (ja) * 2006-12-27 2010-06-02 インターナショナル・ビジネス・マシーンズ・コーポレーション アプリケーションプログラムによるリソースアクセスを制御するための情報処理装置、方法、及びプログラム
JP2009130856A (ja) * 2007-11-27 2009-06-11 Nec Corp 携帯端末、アプリケーション実行方法、コンピュータプログラム、およびシステム
US20090183227A1 (en) * 2008-01-11 2009-07-16 Microsoft Corporation Secure Runtime Execution of Web Script Content on a Client
JP2010011101A (ja) * 2008-06-27 2010-01-14 Kyocera Corp 携帯端末機器

Also Published As

Publication number Publication date
JP2014170501A (ja) 2014-09-18

Similar Documents

Publication Publication Date Title
US11777951B2 (en) Data and source validation for equipment output data or equipment failure prediction using blockchains
EP3069231B1 (en) Automated sdk ingestion
CN108076052B (zh) 授权服务器、非暂时性计算机可读介质以及权限委托系统
US9729506B2 (en) Application programming interface wall
CN104468531B (zh) 敏感数据的授权方法、装置和系统
US11902268B2 (en) Secure gateway onboarding via mobile devices for internet of things device management
US8176538B2 (en) Information processing system, recording medium storing control program, and computer data signal embodied in a carrier wave
US20160321167A1 (en) Developer Channel Compliance
US10305961B2 (en) Information processing apparatus, information processing apparatus control method, and storage medium storing program
CN111177735B (zh) 身份认证方法、装置、系统和设备以及存储介质
JP6881949B2 (ja) 管理システム、および制御方法
JP2015503792A (ja) ウェブ認証を用いるクライアントプラットフォームの信頼のルート
JP2014081779A (ja) 機器管理システム、周辺機器、及びその制御方法。
US20180060545A1 (en) Information processing system, method of controlling the system, information processing apparatus, web server, and storage medium
CN114417344A (zh) 资源安全集成平台
CN115037552A (zh) 鉴权方法、装置、设备及存储介质
CN113472735B (zh) 一种大数据服务单点登录方法、装置及存储介质
JP6217092B2 (ja) 情報処理装置、システム、情報処理方法及びプログラム
US10701128B2 (en) Systems and methods for accessing multiple resources via one identifier
JP2008282212A (ja) 認証装置及び認証システム
CN105141586B (zh) 一种对用户进行验证的方法和系统
CN108259456B (zh) 实现用户免登录的方法、装置、设备、计算机存储介质
JP6305005B2 (ja) 認証サーバーシステム、制御方法、そのプログラム
CN106878018B (zh) 操作验证方法及装置
US11770365B2 (en) Contextual awareness with Internet of Things (IoT) infrastructure for managed devices

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151007

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160831

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160913

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161111

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170110

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170310

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170829

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170911

R150 Certificate of patent or registration of utility model

Ref document number: 6217092

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees