(57)【要約】【課題】柔軟な機能制限を実行することができる情報処理装置を実現する。【解決手段】実施形態によれば、情報処理装置は、管理手段と、制御手段とを具備する。前記制御手段は、処理の実行を要求するイベントの発生を検出し、前記イベントに対応する処理の実行に先立って、前記イベントの内容を前記管理手段に送信する。前記管理手段は、前記情報処理装置の使用状況に応じて選択的に採用される第１のポリシーまたは前記第１のポリシーとは異なる第２のポリシーに基づき決定される、前記イベントに対応する処理の実行の許可又は禁止を示す判定結果を、前記制御手段に送信し、さらに、前記イベントが発生した期間が前記第１のポリシーが採用されている期間または前記第２のポリシーが採用されている期間のいずれであるかに応じて、前記イベントの内容をサーバに通知すべきか否かを決定する。【選択図】図１
2014099020.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置の実行可能な処理を制限するための環境を提供する管理手段と、
処理の実行を要求するイベントの発生を検出し、前記イベントに対応する処理の実行に先立って、前記イベントの内容を前記管理手段に送信する制御手段とを具備し、
前記管理手段は、前記情報処理装置の使用状況に応じて選択的に採用される第１のポリシーまたは前記第１のポリシーとは異なる第２のポリシーに基づき決定される、前記イベントに対応する処理の実行の許可又は禁止を示す判定結果を、前記制御手段に送信し、さらに、前記イベントが発生した期間が前記第１のポリシーが採用されている期間または前記第２のポリシーが採用されている期間のいずれであるかに応じて、前記イベントの内容をサーバに通知すべきか否かを決定する、情報処理装置。
【請求項２】
前記第１のポリシーは前記情報処理装置が個人使用される使用状況において許可又は禁止すべき各処理を示し、前記第２のポリシーは前記情報処理装置が業務で使用される使用状況において許可又は禁止すべき各処理を示し、
前記管理手段は、前記イベントが前記第１のポリシーが採用されている期間内に発生した場合、前記イベントの内容をサーバに通知すべきイベントではないと決定する請求項１記載の情報処理装置。
【請求項３】
前記管理手段は、前記イベントの内容を判定プログラムに通知し、前記判定プログラムから前記判定結果を受信する請求項１記載の情報処理装置。
【請求項４】
前記管理手段は、前記第１のポリシーが採用されている期間内に発生した第１のイベント群の内容を記録し、前記第１のイベント群の内容を前記判定プログラムに通知し、
前記判定プログラムは、発生した全てのイベントから前記第１のイベント群を除いた残りの各イベントを前記サーバに送信する請求項３記載の情報処理装置。
【請求項５】
前記判定プログラムは、特定の処理を要求する第１のイベントが前記第１のポリシーが採用されている期間中に前記管理手段から通知された場合、採用すべきポリシーを前記第１のポリシーから前記第２のポリシーに切り替える請求項３記載の情報処理装置。
【請求項６】
前記制御手段はオペレーティングシステム層内のソフトウェアモジュールを含み、前記管理手段はアプリケーション層で実行される第１のアプリケーションプログラムを含み、前記判定プログラムは前記アプリケーション層で実行される請求項３記載の情報処理装置。
【請求項７】
前記管理手段は、前記判定プログラムに付与された証明書に基づいて前記判定プログラムの正当性を確認し、前記判定プログラムの正当性が確認された場合に、前記判定プログラムを前記イベントの内容を通知すべき通信相手に特定する請求項３記載の情報処理装置。
【請求項８】
情報処理装置の実行可能な処理を制限するための制御方法であって、
処理の実行を要求するイベントの発生を検出し、
前記イベントに対応する処理の実行に先立って、前記イベントの内容を、前記実行可能な処理を制限するための環境を提供するための管理手段に送信し、
前記情報処理装置の使用状況に応じて選択的に採用される第１のポリシーまたは前記第１のポリシーとは異なる第２のポリシーに基づき決定される判定結果が、前記イベントに対応する処理の実行の許可を示す場合、前記イベントに対応する処理を実行し、
前記イベントが発生した期間が前記第１のポリシーが採用されている期間または前記第２のポリシーが採用されている期間のいずれであるかに応じて、前記イベントの内容をサーバに通知すべきか否かを決定する、制御方法。
【請求項９】
コンピュータによって実行されるプログラムであって、
処理の実行を要求するイベントの発生を検出する手順と、
前記イベントに対応する処理の実行に先立って、前記イベントの内容を、前記コンピュータによって実行可能な処理を制限するための環境を提供するための管理手段に送信する手順と、
前記コンピュータの使用状況に応じて選択的に採用される第１のポリシーまたは前記第１のポリシーとは異なる第２のポリシーに基づき決定される判定結果が、前記イベントに対応する処理の実行の許可を示す場合、前記イベントに対応する処理を実行する手順と、
前記イベントが発生した期間が前記第１のポリシーが採用されている期間または前記第２のポリシーが採用されている期間のいずれであるかに応じて、前記イベントの内容をサーバに通知すべきか否かを決定する手順とを前記コンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、実行可能な処理を制限するための情報処理装置および制御方法に関する。
【背景技術】
【０００２】
近年、企業においては、個人所有の情報端末等を企業内に持ち込んで業務で利用すること（いわゆる、Bring Your Own Device（ＢＹＯＤ））が注目されている。情報端末としては、様々な情報処理装置、例えば、タブレット端末、スマートフォン等、を使用することができる。
【０００３】
ＢＹＯＤを実現するためには、情報処理装置に対して様々なセキュリティー対策を施すことが必要とされる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−９２２０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、個人所有の情報処理装置は、企業内において使用されるだけでなく、家庭内のような別の環境において使用される場合がある。したがって、もし情報処理装置に常に同じ機能制限を適用すると、その情報処理装置の使い勝手が悪くなる可能性がある。
【０００６】
本発明の目的は、柔軟な機能制限を実行することができる情報処理装置および制御方法を提供することである。
【課題を解決するための手段】
【０００７】
実施形態によれば、情報処理装置は、管理手段と、制御手段とを具備する。前記管理手段は、情報処理装置の実行可能な処理を制限するための環境を提供する。前記制御手段は、処理の実行を要求するイベントの発生を検出し、前記イベントに対応する処理の実行に先立って、前記イベントの内容を前記管理手段に送信する。前記管理手段は、前記情報処理装置の使用状況に応じて選択的に採用される第１のポリシーまたは前記第１のポリシーとは異なる第２のポリシーに基づき決定される、前記イベントに対応する処理の実行の許可又は禁止を示す判定結果を、前記制御手段に送信し、さらに、前記イベントが発生した期間が前記第１のポリシーが採用されている期間または前記第２のポリシーが採用されている期間のいずれであるかに応じて、前記イベントの内容をサーバに通知すべきか否かを決定する。
【図面の簡単な説明】
【０００８】
【図１】実施形態に係る情報処理装置の構成を示すブロック図。
【図２】同実施形態の情報処理装置内に設けられる、アクセス検出・制御部とアプリケーション実行部の構成を示すブロック図。
【図３】同実施形態の情報処理装置に設けられる管理アプリケーション部の構成を示すブロック図。
【図４】同実施形態の情報処理装置に設けられる判定アプリケーション部の構成を示すブロック図。
【図５】イベントの発生時に同実施形態の情報処理装置によって実行される処理の手順を示すフローチャート。
【図６】同実施形態の情報処理装置によって実行されるイベントログ送信処理の手順を示すフローチャート。
【図７】同実施形態の情報処理装置によって実行されるイベントログ送信処理の別の手順を示すフローチャート。
【図８】同実施形態の情報処理装置のハードウェア構成例を示すブロック図。
【発明を実施するための形態】
【０００９】
以下、実施の形態について図面を参照して説明する。  
図１は、一実施形態に係る情報処理装置１の構成を示している。この情報処理装置１は様々なアプリケーションプログラムを実行するように構成されており、例えば、タブレット端末、スマートフォン、ＰＤＡ、他の各種情報端末によって実現されうる。情報処理装置１は、ＵＳＢメモリ、ＳＤメモリカードといった外部ストレージ装置にアクセスする機能を有している。また、情報処理装置１は、幾つかの無線通信規格、例えば、ＷｉＦｉ（登録商標）、第三世代移動通信（３Ｇ）、Ｂｌｕｅｔｏｏｔｈ（登録商標）等、にそれぞれ対応する無線通信を実行するように構成されている。情報処理装置１は、この無線通信機能を使用して、外部の通信装置２、例えば、無線アクセスポイント、インターネット上の様々なサーバ、等との通信を行うことができる。
【００１０】
この情報処理装置１は、様々な処理の制限、例えば、特定の幾つかのアプリケーションプログラムのインストールの制限、特定の幾つかのアプリケーションプログラムの起動の制限、特定の幾つかのアプリケーションプログラムのアンインストールの制限、情報処理装置１と各種外部通信機器との間の接続の制限、情報処理装置１と各種外部ストレージデバイスとの間の接続の制限、等を行うための処理制限機能を有している。
【００１１】
この処理制限機能を実現するために、情報処理装置１は、３つの異なるモジュール、つまり、アクセス検出・実行部１０と、管理アプリケーション部２１と、判定アプリケーション部２２とを備える。
【００１２】
アクセス検出・実行部１０は、オペレーティングシステム（ＯＳ）層内のソフトウェアモジュールによって実現することができる。このソフトウェアモジュールは、例えば、ＯＳ層内のミドルウェアであってよいし、ＯＳ層内のカーネル、たとえばLinux（登録商標）カーネルであってもよい。管理アプリケーション部２１と、判定アプリケーション部２２の各々は、アプリケーション実行部２０上で実行されるアプリケーションプログラムによって実現することができる。アプリケーションプログラムは、たとえばＡｎｄｒｏｉｄ（登録商標）アプリケーションプログラムであってもよい。管理アプリケーション部２１は、判定アプリケーション部２２と共同して、情報処理装置１によって実行可能な様々な処理を制限する。
【００１３】
アプリケーション実行部２０は、様々なアプリケーションプログラムを実行するためのプラットフォームであり、例えば、Ｊａｖａ（登録商標）仮想マシンのような仮想マシンによって実現することができる。
【００１４】
情報処理装置１は、インターネットを介してアプリケーション配布サーバ４から様々なアプリケーションプログラム（各種アプリケーションパッケージファイル）をダウンロードすることができる。ダウンロードされる各アプリケーションプログラムは、情報処理装置１内の蓄積部３０に格納される。判定アプリケーション部２２も、アプリケーション配布サーバ４からダウンロードされて蓄積部３０に保存される。管理アプリケーション部２１およびインストーラ部２３の各々も、アプリケーション配布サーバ４からダウンロードすることができる。なお、管理アプリケーション部２１とインストーラ部２３は情報処理装置１にプリインストールされていてもよい。この場合、管理アプリケーション部２１を必ずしもダウンロードする必要はない。同様に、インストーラ部２３も必ずしもダウンロードする必要はない。
【００１５】
インストーラ部２３は、アプリケーション配布サーバから蓄積部３０にダウンロードしてきた各アプリケーションプログラム（管理アプリケーション部２１、判定アプリケーション部２２、および他の各種アプリケーション等）のアプリケーションパッケージファイルを展開して、蓄積部３０にインストールする処理を行う。
【００１６】
アプリケーション実行部２０は、蓄積部３０から各アプリケーションプログラム（管理アプリケーション実行部２１、判定アプリケーション部２２、インストーラ部２３、および他の各種アプリケーション等）をロードして実行する。
【００１７】
アクセス検出・制御部１０は、処理の実行を要求するイベントの発生を検出し、このイベントに対応する処理の実行に先立って、このイベントの内容を管理アプリケーション部２１に送信する。そして、アクセス検出・制御部１０は、イベントに対応する処理の実行の許可又は禁止を示す判定結果を管理アプリケーション部２１から受信し、この判定結果に基づいて、イベントに対応する処理の実行を制御する。判定結果が処理の実行の許可を示すならば、アクセス検出・制御部１０は、この処理を実行する。一方、判定結果が処理の実行の禁止を示すならば、アクセス検出・制御部１０は、この処理の実行を禁止する。
【００１８】
ここで、アプリケーションプログラムのインストールおよびアンインストールを制限する場合を想定する。アクセス検出・制御部１０は、アプリケーションプログラムのインストールまたはアンインストールを要求するイベントを検出し、このイベントの実行前に、つまりインストールまたはアンインストールの実行前に、管理アプリケーション部２１にインストールまたはアンインストール対象のアプリケーション名を通知し、管理アプリケーション部２１からの判定結果に基づいてインストールまたはアンインストールの実行を制御する。
【００１９】
例えば、アクセス検出・制御部１０は、あるアプリケーションプログラムのインストールを要求するイベントを検出したならば、アプリケーションプログラムをインストールする処理を保留して、このアプリケーションプログラムのアプリケーション名を含むイベントの内容を管理アプリケーション部２１に送信する。そして、管理アプリケーション部２１から返されるインストールの許可または禁止を示す判定結果に基づいて、アクセス検出・制御部１０は、インストール処理を実行するか、またはインストール処理の実行を中止（禁止）する。
【００２０】
同様に、アクセス検出・制御部１０は、あるアプリケーションプログラムのアンインストールを要求するイベントを検出したならば、アプリケーションプログラムをアンインストールする処理を保留して、このアプリケーションプログラムのアプリケーション名を含むイベントの内容を管理アプリケーション部２１に送信する。そして、管理アプリケーション部２１から返されるアンインストールの許可または禁止を示す判定結果に基づいて、アクセス検出・制御部１０は、アンインストール処理を実行するか、またはアンインストール処理の実行を中止（禁止）する。
【００２１】
さらに、アクセス検出・制御部１０は、アプリケーションプログラムのインストールまたはアンインストールを要求するイベントのみならず、他の様々なイベントも検出することができる。例えば、アプリケーションプログラムの起動要求、各種通信装置との接続要求（例えば、ＷｉＦｉアクセスポイントへの接続要求、ＶＰＮ接続要求、Ｂｌｕｅｔｏｏｔｈ機器との接続要求）、ＳＤカード接続要求、ＵＳＢメモリ接続要求、等の様々なイベントがアクセス検出・制御部１０によって検出される。インストール・アンインストールイベント以外のこれらイベントが検出された際も、アクセス検出・制御部１０は、そのイベントに対応する処理の実行前に、検出されたイベントの内容を示すイベント情報を管理アプリケーション部２１に送信し、管理アプリケーション部２１からの判定結果に基づいて、そのイベントの実行の可否を制御することができる。
【００２２】
管理アプリケーション部２１は、情報処理装置１の実行可能な処理を制限するための環境を提供する管理モジュールとして機能する。管理アプリケーション部２１は、この管理アプリケーション部２１の起動時に、各種イベントを管理アプリケーション部２１に通知するようにアクセス検出・制御部１０に要求することができる。さらに、管理アプリケーション部２１は、アクセス制御・検出部１０からイベント（イベントの内容を示すイベント情報）を受信すると、受信されたイベントを判定アプリケーション部２２に通知し、判定アプリケーション部２２から受信される判定結果（例えば、このイベントに対応する処理の許可または禁止を示す判定結果）をアクセス検出・制御部１０に送信する。
【００２３】
さらに、管理アプリケーション部２１は、判定アプリケーション部２２に対する署名検証を実行して、判定アプリケーション部２２が正当な判定アプリケーションであるか否かを判定する機能を有している。署名検証は、例えば、判定アプリケーション部２２の起動時等に実行される。署名検証では、管理アプリケーション部２１は、蓄積部３０に保存されている判定アプリケーション部２２のアプリケーションパッケージファイルを取得し、このアプリケーションパッケージファイルに含まれる証明書等に基づいて、判定アプリケーション部２２が正当な判定アプリケーションであるか否かを判定する。この署名検証により、判定アプリケーション部２２のアプリケーションパッケージファイルの作成者が正しいか否かが検証されると共に、アプリケーションパッケージファイルが改竄されていない正当なものであるか否かが検証される。
【００２４】
判定アプリケーション部２２は、所定のポリシー（判定ルール）を有し、このポリシーに基づいて、管理アプリケーション部２１から受信されるイベントの許可または禁止を判定し、その判定結果を管理アプリケーション部２１に通知する。ポリシーは、許可すべき各イベントの内容を示すホワイトリストであっても良いし、禁止すべき各イベントの内容を示すブラックリストであっても良いし、これらホワイトリストとブラックリストの双方を有していても良い。なお、判定アプリケーション部２２は、必要に応じて、ポリシー配布サーバ５からポリシー（判定ルール）をダウンロードすることもできる。ポリシー配布サーバ５からポリシー（判定ルール）をダウンロードすることにより、ポリシーを例えば定期的に容易に更新することができる。また、判定アプリケーション部２２に予めポリシーが組み込まれていてもよい。さらに、判定アプリケーション部２２は、イベントの実行の可否をイベント可否判断サーバ６に問い合わせることもできる。
【００２５】
本実施形態では、情報処理装置１の使用状況に応じて選択的に２種類のポリシー（第１のポリシーおよび第２のポリシー）が各イベントの許可または禁止の判定のために採用される。第１のポリシーは、情報処理装置１が家庭等で個人使用されることを前提としたポリシー制御を行うためのポリシー（判定ルール）である。この第１のポリシーは情報処理装置１が個人使用される使用状況において許可又は禁止すべき各処理を示す。第２のポリシーは、情報処理装置１がオフィスで業務のために使用されることを前提としたポリシー制御を行うためのポリシー（判定ルール）である。この第２のポリシーは、情報処理装置１が業務で使用される使用状況において許可又は禁止すべき各処理を示す。第１のポリシーの内容と第２のポリシーの内容は互いに異なる。第１のポリシーが採用される動作モード、つまり第１のポリシーに基づいて各イベントの実行の可否を決定するための動作モードは、プライベートモードと称される。一方、第２のポリシーが採用される動作モード、つまり第２のポリシーに基づいて各イベントの実行の可否を決定するための動作モードはオフィスモードと称される。
【００２６】
採用されるべきポリシーは、情報処理装置１の使用状況に応じて自動的に切り替えることができる。例えば、情報処理装置１が会社内のネットワークのような特定のネットワークに接続したことを条件に、採用されるべきポリシーを上述の第１のポリシーから上述の第２のポリシーに切り替えても良い。この場合、会社内のネットワークへの接続を要求するイベントがアクセス検出・制御部１０によって検出され、このイベントの内容が管理アプリケーション部２１から判定アプリケーション部２２に通知される。判定アプリケーション部２２は、上述の第１のポリシーが採用（使用）されている期間中にこのイベントが管理アプリケーション部２１から通知された場合に、このイベントに対応する処理の実行の可否を判定する。上述の第１のポリシーには、上述の特定のネットワークへの接続の許可を示す判定ルールが記述され、且つ採用されるべきポリシーを上述の第１のポリシーから上述の第２のポリシーに切り替えるべきことを指定するアクションが記述されていても良い。この場合、判定アプリケーション部２２は、このイベントに対応する処理の実行の許可を示す判定結果を管理アプリケーション部２１に返すと共に、採用されるべきポリシーを上述の第１のポリシーから上述の第２のポリシーに切り替える。
【００２７】
さらに、情報処理装置１がユーザの家庭内のネットワークのような別の特定のネットワークに接続したことを条件に、採用されるべきポリシーを上述の第２のポリシーから上述の第１のポリシーに切り替えても良い。この場合、家庭内のネットワークへの接続を要求するイベントがアクセス検出・制御部１０によって検出され、このイベントの内容が管理アプリケーション部２１から判定アプリケーション部２２に通知される。判定アプリケーション部２２は、上述の第２のポリシーが採用されている期間中にこのイベントが管理アプリケーション部２１から通知された場合に、このイベントに対応する処理の実行の許可を示す判定結果を管理アプリケーション部２１に送信すると共に、採用されるべきポリシーを上述の第２のポリシーから上述の第１のポリシーに切り替えても良い。
【００２８】
あるいは、ＧＰＳによって情報処理装置１の現在の使用場所を特定し、現在の使用場所に応じて、採用されるべきポリシーを上述の第１のポリシーと上述の第２のポリシーとの間で切り替えても良い。
【００２９】
あるいは、会社のような施設内の入退場ゲートに設置されたセキュリティー機器と情報処理装置１との間の通信を利用して、採用されるべきポリシーを切り替えても良い。セキュリティー機器と情報処理装置１との間の通信には、ＮＦＣのような近接無線通信を使用し得る。情報処理装置１が会社のような施設内に入ると、採用されるべきポリシーは上述の第１のポリシーから上述の第２のポリシーに切り替えられる。また、情報処理装置１が会社のような施設から外に出ると、採用されるべきポリシーは上述の第２のポリシーから上述の第１のポリシーに切り替えられる。
【００３０】
管理アプリケーション部２１は、判定アプリケーション部２２によって現在採用されているポリシーを判定アプリケーション部２２に問い合わせたり、判定アプリケーション部２２がポリシー変更時に管理アプリケーション部２１に新たに採用されたポリシーを通知することにより、現在採用（使用）されているポリシーが第１のポリシーまたは第２のポリシーのいずれであるかを判定することができる。管理アプリケーション部２１は、さらに、各イベントが発生した期間が第１のポリシーが採用（使用）されている期間または第２のポリシーが採用（使用）されている期間のいずれであるかに応じて、各イベントの内容をサーバ（イベントログ管理サーバ）７に通知すべきか否かを決定する機能を有している。管理アプリケーション部２１は、第１のポリシーが採用されている期間内に発生した各イベントについては、イベントログ管理サーバ７に通知すべきイベントではないと決定する。この機能により、第１のポリシーが採用されている期間に発生したイベント、つまりプライベートモードにおいて発生したイベントが、判定アプリケーション部２２からイベントログ管理サーバ７に送信されることを防止することができる。すなわち、イベントログ管理サーバ７からイベントログの問い合わせを受けた場合、判定アプリケーション部２２は、オフィスモードで発生した各イベントのみをイベントログ管理サーバ７に通知し、プライベートモードにおいて発生した各イベントはイベントログ管理サーバ７に通知しない。これにより、ユーザのプライバシーを保護することができる。
【００３１】
インストーラ部２３は、ユーザ操作に応じて、アプリケーションプログラムのインストールまたはアンインストールの開始をアクセス検出・制御部１０に指示する。インストーラ部２３からの指示に応じて、アクセス検出・制御部１０は、インストールイベントまたはアンインストールイベントを検出することができる。
【００３２】
アクセス検出・制御部１０は、管理アプリケーション部２１から通知される判定結果がインストール禁止を示す場合、インストール（例えばディレクトリ(フォルダ)やファイルの作成）を禁止する。これにより、使用が許可されていないアプリケーションプログラムのインストールを防止することができる。一方、管理アプリケーション部２１から通知される判定結果がインストール許可を示す場合、アクセス検出・制御部１０は、アプリケーションプログラムをインストールするためのインストール処理を実行する。
【００３３】
図２は、上述のアクセス検出・制御部１０およびアプリケーション実行部２０の構成を示している。ここでは、インストール制限、アンインストール制限、外部通信装置２との接続制限を行う場合が想定されている。
【００３４】
図２に示されているように、インストールやアンインストールの指示はインストーラ部２３（インストールアプリケーション）が開始する。インストール時には、インストーラ部２３のインストール情報収集部６１が、蓄積部３０から、インストール対象のアプリケーションに対応するアプリケーションパッケージファイルを取得する。そして、インストーラ部２３のアプリケーション登録部６２が、サムネイル画像ファイルなどを格納しているデータベースであるアプリケーション情報格納部５０にインストール対象のアプリケーションを登録する。ファイル作成等の実際のインストール処理は、アクセス検出・制御部１０によって実行される。
【００３５】
アンインストール指示部６３は、ユーザ操作に応じてアプリケーションのアンインストールをアプリケーション削除部６４に指示すると共に、アクセス検出・制御部１０にアンインストールの開始を指示する。アプリケーション削除部６４は、アンインストール対象のアプリケーションに対応するサムネイル画像ファイルなどをアプリケーション情報格納部５０から削除する。
【００３６】
アクセス検出・制御部１０は、インストール処理部１０１、アンインストール処理部１０２、通信接続管理部１０３、イベント検出部１０４、管理アプリケーションイベント通信部１０５、管理アプリケーション特定部１０６、インストール可否通知部１０７、アンインストール可否通知部１０８、および通信接続可否通知部１０９を備える。
【００３７】
インストール処理部１０１は、インストーラ部２３からインストール開始の指示（インストール要求）を受信すると、インストーラ部２３にインストールの処理の実行を待機させる。インストール要求が発生したことは、イベント検出部１０４よってインストールイベントとして検出される。管理アプリケーションイベント通信部１０５は、インストール対象のアプリケーション名を含むイベント情報（インストールイベント情報）を、管理アプリケーション部２１に通知する。
【００３８】
管理アプリケーション特定部１０６は、アプリケーション実行部２０上のどのアプリケーションが管理アプリケーション部２１であるかを特定する。イベント情報は、イベント検出部１０４で検出された後、管理アプリケーションイベント通信部１０５を介して、管理アプリケーション特定部１０６によって管理アプリケーション部２１であると特定されたアプリケーションに送信される。具体的には、管理アプリケーション特定部１０６は、管理アプリケーション部２１のアプリケーション名を予め保持している。そして、管理アプリケーション特定部１０６は、アプリケーションからの登録要求を受信すると、この予め保持しているアプリケーション名に基づいて、そのアプリケーションが、管理アプリケーション部２１（この予め保持しているアプリケーション名を有するアプリケーションプログラム）か否か、つまりイベント情報を送信すべき通信相手か否かを判定する。もしイベント情報を送信すべき通信相手であると判定した場合には、そのアプリケーションを、管理アプリケーション部２１として特定する。
【００３９】
管理アプリケーションイベント通信部１０５は、管理アプリケーション特定部１０６によって特定されたアプリケーションプログラムとの通信を実行する。これにより、不正なアプリケーションプログラムにイベント情報が横取りされることを防止することができる。
【００４０】
管理アプリケーション部２１からインストールイベントに対する判定結果を受信すると、管理アプリケーションイベント通信部１０５は、受信した判定結果をインストール可否通知部１０７に出力する。インストール可否通知部１０７は、判定結果の内容に基づいてインストール処理部１０１の動作を制御する。判定結果がインストールの許可を示すならば、インストール処理部１０１は、インストーラ部２３と共同して、インストール処理を実行する。一方、判定結果がインストールの禁止を示すならば、インストール処理部１０１は、インストール処理を中止する。
【００４１】
アンインストール処理部１０２は、インストーラ部２３からアンインストール開始の指示（アンインストール要求）を受信すると、インストーラ部２３にアンインストールの処理の実行を待機させる。アンインストール要求が発生したことは、イベント検出部１０４よってアンインストールイベントとして検出される。管理アプリケーションイベント通信部１０５は、アンインストール対象のアプリケーション名を含むイベント情報（アンインストールイベント情報）を、管理アプリケーション部２１に通知する。
【００４２】
管理アプリケーション部２１からアンインストールイベントの実行の許可又は禁止を示す判定結果を受信すると、管理アプリケーションイベント通信部１０５は、受信した判定結果をアンインストール可否通知部１０８に出力する。アンインストール可否通知部１０８は、判定結果の内容に基づいてアンインストール処理部１０２の動作を制御する。判定結果がアンインストールの許可を示すならば、アンインストール処理部１０２は、インストーラ部２３と共同して、アンインストール処理を実行する。一方、判定結果がアンインストールの禁止を示すならば、アンインストール処理部１０２は、アンインストール処理を実行しない。これにより、ユーザによって要求されたアプリケーションのアンインストールの実行は禁止される。
【００４３】
通信接続管理部１０３は、情報処理装置１とＷｉＦｉアクセポイント、Ｂｌｕｅｔｏｏｔｈ機器、他のネットワーク機器のような外部の通信装置２との間の接続を制御する。通信接続管理部１０３は、外部の通信装置２からコネクション確立要求を受信した時、または外部の通信装置２にコネクション確立要求を送信する要求が発生した時に、接続要求の発生を検出し、接続要求が発生したことをイベント検出部１０４に通知する。外部の通信装置２との接続要求が発生したことは、イベント検出部１０４よってネットワーク接続イベントとして検出される。管理アプリケーションイベント通信部１０５は、接続対象の外部通信装置を示す情報を含むイベント情報（接続イベント）を、管理アプリケーション部２１に通知する。
【００４４】
管理アプリケーション部２１から接続イベントの実行の許可又は禁止を示す判定結果を受信すると、管理アプリケーションイベント通信部１０５は、受信した判定結果を通信接続可否通知部１０９に出力する。通信接続可否通知部１０９は、判定結果の内容に基づいて通信接続管理部１０３の動作を制御する。判定結果が接続の許可を示すならば、通信接続管理部１０３は、接続対象の通信装置との接続を確立する処理を実行する。一方、判定結果が接続の禁止を示すならば、通信接続管理部１０３は、接続対象の通信装置との接続の確立を禁止する。
【００４５】
図３は、管理アプリケーション部２１の構成を示す。  
管理アプリケーション部２１は、通信処理部２０１、サービス提供通信部２０２、イベント処理部２０３、イベントログ管理部２０４、ポリシー種別管理部２０５、およびイベントログデータベース２０６を備える。
【００４６】
通信処理部２０１はアクセス検出・制御部１０との通信を実行する。通信処理部２０１は、アクセス検出・制御部１０から通知される様々なイベント（インストールイベント、各種通信装置との接続要求イベント、ＳＤカード接続要求イベント、ＵＳＢメモリ接続要求イベント、アンインストールイベント、等）を受信する。なお、管理アプリケーション部２１とアクセス検出・制御部との通信にはたとえばシグナルシステムコールなどの方法を用いればよい。
【００４７】
サービス提供通信部２０２は、判定アプリケーション部２２との通信を実行する。イベント処理部２０３は、イベントの内容をサービス提供通信部２０２を介して判定アプリケーション部２２に送信し、そのイベントの実行の許可又は禁止を示す判定結果をサービス提供通信部２０２を介して判定アプリケーション部２２から受信する。すなわち、イベント処理部２０３は、上述の第１のポリシーまたは上述の第２のポリシーに基づき決定される、イベントに対応する処理の実行の許可又は禁止を示す判定結果を判定アプリケーション部２２から受信し、この判定結果を通信処理部２０１を介してアクセス検出・制御部１０に送信する。情報処理装置１がプライベートモードであれば、つまり判定アプリケーション部２２によって現在採用されているポリシーが上述の第１のポリシーであれば、イベント処理部２０３は、第１のポリシーに基づき決定される判定結果を通信処理部２０１を介してアクセス検出・制御部１０に送信する。一方、情報処理装置１がオフィスモードであれば、つまり判定アプリケーション部２２によって現在採用されているポリシーが上述の第２のポリシーであれば、イベント処理部２０３は、第２のポリシーに基づき決定される判定結果を通信処理部２０１を介してアクセス検出・制御部１０に送信する。
【００４８】
イベントログ管理部２０４は、プライベートモードで発生した各イベントがイベントログサーバ７に通知されるのを防止するために、第１のポリシーが採用されている期間内に発生したイベント群の内容（第１のイベント群の内容）をイベントログデータベース２０６に通知禁止対象のイベントログとして記録する。ポリシー種別管理部２０５は、サービス提供通信部２０２を介して判定アプリケーション部２２に対して現在採用されているポリシーを定期的に問い合わせる。これにより、ポリシー種別管理部２０５は、判定アプリケーション部２２によって現在使されているポリシー、つまり現在のモード（プライベートモードまたはオフィスモード）を管理する。イベントログ管理部２０４は、ポリシー種別管理部２０５と通信して現在採用されているポリシーが第１のポリシーであるか否かを判定する。現在採用されているポリシーが第１のポリシーであれば、イベントログ管理部２０４は、イベント処理部２０３から受信される各イベントの内容をイベントログデータベース２０６に記録する。一方、現在採用されているポリシーが第２のポリシーであれば、イベントログ管理部２０４は、イベント処理部２０３から受信される各イベントの内容をイベントログデータベース２０６に記録しない。
【００４９】
サービス提供通信部２０２は、イベントログデータベース２０６に記録された各イベントの内容を通知禁止対象のイベントログとして判定アプリケーション部２２に通知する。判定アプリケーション部２２は、イベントログ管理サーバ７からイベントログの問い合わせを受信した場合、管理アプリケーション部２１に通知禁止対象のイベントログを問い合わせる。この判定アプリケーション部２２からの問い合わせに応答して、サービス提供通信部２０２は、通知禁止対象のイベントログを判定アプリケーション部２２に通知する。
【００５０】
判定アプリケーション部２２は、発生した全てのイベントから、通知禁止対象のイベントログ内のイベント群（第１イベント群）を取り除き、残りのイベント群のみをイベントログ管理サーバ７に送信する。判定アプリケーション部２２は、管理アプリケーション部２１から受信した全てのイベントを記録しておき、これらイベントから第１のイベント群を除いた残りの各イベントをイベントログ管理サーバ７に送信してもよい。あるいは、イベントログ管理サーバ７からのイベントログの問い合わせに応答して、判定アプリケーション部２２は、発生した全てのイベントをオペレーティングシステムから取得し、これらイベントから第１のイベント群を除いた残りの各イベントをイベントログ管理サーバ７に送信してもよい。
【００５１】
なお、判定アプリケーション部２２は、第２のポリシーが採用されている期間中に管理アプリケーション部２１から受信した各イベントのみを通知対象のイベントログとして記録することもできる。
【００５２】
図４は、判定アプリケーション部２２の構成を示している。図４に示すように、判定アプリケーション部２２は、サービス利用通信部１１１、イベント判定部１１２、判定ルール管理部１１３、イベント可否判定サーバ通信処理部１１４、イベントログ管理部１１５、およびイベントログデータベース１１６を備える。
【００５３】
サービス利用通信部１１１は、管理アプリケーション部２１との通信を実行する。イベント判定部１１２は、判定ルール管理部１１３内に存在する第１および第２のポリシーを選択的に採用（選択的に使用）し、採用した現在のポリシーに基づいて各イベントに対応する処理の実行の許可または禁止を判定する。
【００５４】
イベント可否判定サーバ通信処理部１１４は、各イベントに対応する処理の実行の可否をイベント可否判定サーバ６に問い合わせて、処理の実行の可否をイベント可否判定サーバ６から受信する。イベント判定部１１２は、必要に応じてイベント可否判定サーバ通信処理部１１４を使用して、処理の実行の可否を判定することもできる。
【００５５】
イベントログ管理部１１５は、例えば、発生した全てのイベントから通知禁止対象のイベント群（第１イベント群）を除いた残りのイベント群のみをイベントログデータベース１１６に記録する。そして、イベントログ管理部１１５は、イベントログデータベース１１６に記録された各イベントの内容をイベントログ管理サーバ７に送信する。
【００５６】
図５のフローチャートは、イベントの発生時に情報処理装置１によって実行されるイベント処理の手順を示す。  
アクセス検出・制御部１０は、イベントの発生を検出し、そのイベントの内容を管理アプリケーション部２１に通知する（ステップＳ１１）。管理アプリケーション部２１は、現在採用されているポリシー（現在のモード）をチェックし、現在採用されているポリシーが第１のポリシー（プライベートモード）または第２のポリシー（オフィスモード）のいずれであるかを判定する（ステップＳ１２、Ｓ１３）。
【００５７】
現在採用されているポリシーが第１のポリシー（プライベートモード）であれば（ステップＳ１２のポリシー＃１）、管理アプリケーション部２１は、アクセス検出・制御部１０から受信したイベントの内容をイベントログデータベース２０６に通知禁止対象のイベントとして記録する（ステップＳ１４）。そして、管理アプリケーション部２１は、アクセス検出・制御部１０から受信したイベントの内容を判定アプリケーション部２２に通知する（ステップＳ１５）。
【００５８】
一方、現在採用されているポリシーが第２のポリシー（オフィスモード）であれば（ステップＳ１３のポリシー＃１）、管理アプリケーション部２１は、アクセス検出・制御部１０から受信したイベントの内容をイベントログデータベース２０６に記録せずに、判定アプリケーション部２２に通知する（ステップＳ１５）。
【００５９】
判定アプリケーション部２２が第２のポリシーを採用（使用）してイベントの実行の可否を判定している間は（ステップＳ１６のポリシー＃２）、判定アプリケーション部２２は、管理アプリケーション部２１から受信したイベントの内容を通知対象のイベントとしてイベントログデータベース１１６に記録する（ステップＳ１７）。そして、判定アプリケーション部２２は、第２のポリシーに従って、管理アプリケーション部２１から受信したイベントの実行の可否を判定する（ステップＳ１８）。
【００６０】
一方、判定アプリケーション部２２が第１のポリシーを採用（使用）してイベントの実行の可否を判定している間は（ステップＳ１６のポリシー＃１）、判定アプリケーション部２２は、管理アプリケーション部２１から受信したイベントの内容をイベントログデータベース１１６に記録しない。そして、判定アプリケーション部２２は、第１のポリシーに従って、管理アプリケーション部２１から受信したイベントの実行の可否を判定する（ステップＳ１９）。
【００６１】
判定アプリケーション部２２は、第１のポリシーまたは第２のポリシーに基づき決定される、そのイベントに対応する処理の実行の許可又は禁止を示す判定結果を、管理アプリケーション部２１に通知する（ステップＳ２０）。管理アプリケーション部２１は、判定アプリケーション部２２から受信した判定結果をアクセス検出・制御部１０に通知する（ステップＳ２１）。アクセス検出・制御部１０は、管理アプリケーション部２１から受信した判定結果に基づき、検出されたイベントに対応する処理を実行するか、あるいはその実行を禁止する（ステップＳ２２）。
【００６２】
図６のフローチャートは、判定アプリケーション部２２によって実行されるイベントログ送信処理の手順の例を示す。
【００６３】
判定アプリケーション部２２は、イベントログ管理サーバ７からイベントログの問い合わせを受信すると（ステップＳ３１）、イベントログ管理サーバ７にアップロードされておらず且つ第２のポリシーが採用されている期間中に発生したイベント群のみをイベントログ管理サーバ７に送信する（ステップＳ３２）。第２のポリシーが採用されている期間中に発生したイベント群のみがイベントログデータベース１１６に記録されている場合には、判定アプリケーション部２２は、イベントログデータベース１１６から、アップロードされていない各イベントを取得し、その取得した各イベントをイベントログ管理サーバ７に送信すればよい。
【００６４】
なお、判定アプリケーション部２２は、発生した全てのイベントをオペレーティングシステムから取得してもよいし、管理アプリケーション部２１から受信した全てのイベントを発生した全てのイベントとして記録しておいても良い。この場合、判定アプリケーション部２２は、発生した全てのイベントから通知禁止対象のイベント群を除いた残りのイベント群のみをイベントログ管理サーバ７に送信すればよい。
【００６５】
図７のフローチャートは、判定アプリケーション部２２によって実行されるイベントログ送信処理の手順の別の例を示す。
【００６６】
ここでは、管理アプリケーション部２１から受信した全てのイベントがイベントログデータベース１１６に記録されている場合を想定する。
【００６７】
判定アプリケーション部２２は、イベントログ管理サーバ７からイベントログの問い合わせを受信すると（ステップＳ３１）、管理アプリケーション部２１に対して第１のポリシーが採用されている期間中に発生したイベントを問い合わせ、第１のポリシーが採用されている期間中に発生したイベント群を管理アプリケーション部２１から取得する（ステップＳ４２）。そして、判定アプリケーション部２２は、イベントログデータベース１１６からイベントログ管理サーバ７にアップロードされていないイベント群を抽出し、そしてこれらイベント群から、第１のポリシーが採用されている期間中に発生したイベント群を取り除く。そして、判定アプリケーション部２２は、残りのイベント群のみをイベントログ管理サーバ７に送信する（ステップＳ４３）。
【００６８】
なお、上述したように、判定アプリケーション部２２は、発生した全てのイベントをオペレーティングシステムから取得し、これらイベントから第１のポリシーが採用されている期間中に発生したイベント群を除いた残りのイベント群をイベントログ管理サーバ７に送信してもよい。
【００６９】
図８は、情報処理装置１のハードウェア構成例を示す。情報処理装置１は、ＣＰＵ４１１、主メモリ４１２、タッチスクリーンディスプレイ４１３、ストレージ装置４１４、ＵＳＢコントローラ４１５、ＳＤカードコントローラ４１６、無線ＬＡＮコントローラ４１７、３Ｇ通信デバイス４１８、Ｂｌｕｅｔｏｏｔｈデバイス（ＢＴデバイス）４１９等を備える。
【００７０】
ＣＰＵ４１１は情報処理装置１内の各コンポーネントを制御するプロセッサである。ＣＰＵ４１１は、ストレージ装置４１４から主メモリ４１２にロードされる様々なソフトウェア、例えば、ＯＳ、アプリケーションプログラム等を実行する。上述のアクセス検出・実行部１０はＯＳの一部として実行される。
【００７１】
管理アプリケーション部２１および判定アプリケーション部２２は、上述したように、異なるアプリケーションプログラムとして実現されている。管理アプリケーション部２１に相当するアプリケーションプログラムは、上述したように、ストレージ装置４１４にプレインストールされていてもよい。
【００７２】
判定アプリケーション部２２に相当するアプリケーションプログラムは、例えば、企業毎に用意されるアプリケーションプログラムであり、対応する企業に適した判定ルールに従ってイベントの実行の許可または禁止の判定を行う。判定アプリケーション部２２は、管理アプリケーション部２１とは別のモジュールであるので、企業毎にその企業に合った判定アプリケーションを容易に作成することができる。
【００７３】
タッチスクリーンディスプレイ４１３は画面上のタッチ位置を検出可能なディスプレイであり、液晶表示装置（ＬＣＤ）のようなフラットパネルディスプレイとタッチパネルとを備える。
【００７４】
ＵＳＢコントローラ４１５は、情報処理装置１に設けられたＵＳＢポートに取り付けられるＵＳＢデバイス（例えば、ＵＳＢメモリ等）との通信を実行するように構成されている。ＳＤカードコントローラ４１６は、情報処理装置１に設けられたカードスロットに挿入されるメモリカード（例えば、ＳＤカード等）との通信を実行するように構成されている。無線ＬＡＮコントローラ４１７はＷｉＦｉ等に準拠した無線通信を実行するように構成された無線通信デバイスである。３Ｇ通信デバイス４１８は３Ｇ移動通信を実行するように構成された無線通信デバイスである。Ｂｌｕｅｔｏｏｔｈデバイス４１９は外部のＢｌｕｅｔｏｏｔｈデバイスとの通信を実行するように構成された無線通信デバイスである。
【００７５】
以上説明したように、本実施形態によれば、処理の実行を要求するイベントの内容が、アクセス検出・制御部１０から管理アプリケーション部２１に送信される。そして、管理アプリケーション部２１は、情報処理装置１の使用状況に応じて選択的に採用される第１のポリシーまたは第２のポリシーに基づき決定される、イベントに対応する処理の実行の許可又は禁止を示す判定結果を、アクセス検出・制御部１０に送信する。このように、イベントに対応する処理の実行の許可または禁止は、管理アプリケーション部２１とは独立した判定プログラム（判定アプリケーション部２２）によって判定される。したがって、たとえば、企業毎に判定プログラムを用意すること等により、企業毎に異なったルールセットを使用してインストールの可否を判定することができる。
【００７６】
また、第１のポリシーと第２のポリシーとが選択的に採用されるので、柔軟な機能制限を実行することができる。
【００７７】
さらに、管理アプリケーション部２１は、イベントが発生した期間が第１のポリシーが採用されている期間または第２のポリシーが採用されている期間のいずれであるかに応じて、イベントの内容をサーバに通知すべきか否かを決定する。これにより、プライベートモードにおいて発生した各イベントがイベントログ管理サーバ７に通知されることを防止することができるので、ユーザのプライバシーを保護することができる。
【００７８】
また、アクセス検出・制御部１０との通信等の、実行可能な処理を制限するための環境は管理アプリケーション部２１によって提供されているので、判定アプリケーション部２２の構成を簡単化することができる。
【００７９】
また、管理アプリケーション部２１もアプリケーションプログラムによって実現できるので、管理アプリケーション部２１自体のアップデートも容易に行うことができる。
【００８０】
さらに、管理アプリケーション部２１は、判定アプリケーション部２２に付与された署名に基づいて判定アプリケーション部２２の正当性を確認し、判定アプリケーション部２２の正当性が確認された場合に、この判定アプリケーション部２２をイベントの内容を通知すべき通信相手に特定する。したがって、偽の判定アプリケーションの使用を確実に防止することができる。
【００８１】
なお、本実施形態の処理手順は全てソフトウェアによって実現することができるので、この手順を実行するコンピュータプログラムを、このコンピュータプログラムを格納したコンピュータ読み取り可能な記憶媒体を通じて通常のコンピュータにインストールすることにより、本実施形態と同様の効果を容易に実現することができる。
【００８２】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００８３】
１…情報処理装置、１０…アクセス検出・制御部、２０…アプリケーション実行部、２１…管理アプリケーション部、２２…判定アプリケーション部、２３…インストーラ部。
【図１】
2014099020.tif 000003
【図２】
2014099020.tif 000004
【図３】
2014099020.tif 000005
【図４】
2014099020.tif 000006
【図５】
2014099020.tif 000007
【図６】
2014099020.tif 000008
【図７】
2014099020.tif 000009
【図８】
2014099020.tif 000010