(57)【要約】【課題】個々の処理の実行の可否を柔軟に制御することができる情報処理装置を実現する。【解決手段】実施形態によれば、制御手段は、複数の外部通信機器のいずれかとの接続を要求するイベントと外部通信機器との接続要求以外の他の処理の実行を要求するイベントとを含む複数のイベントの各々を検出し、検出されたイベントの内容を管理手段に送信する。管理手段は、検出されたイベントの内容を判定プログラムに通知し、検出されたイベントの許可または禁止を示す判定結果を制御手段に送信する。管理手段は、検出されたイベントが特定の外部通信機器との接続を要求する第１のイベントである場合は前記特定の外部通信機器との接続の許可を示す判定結果を前記制御手段に送信し、前記検出されたイベントが特定の処理の実行を要求する第２のイベントである場合は、前記特定の外部通信機器との接続が許可される前と後との間で、異なる判定結果を前記制御手段に送信する。【選択図】図１
2014021929.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置に実行を許可する処理を制限するための環境を提供する管理手段と、
複数の外部通信機器のいずれかとの接続を要求するイベントと外部通信機器との接続要求以外の他の処理の実行を要求するイベントとを含む複数のイベントの各々を検出し、検出されたイベントに対応する処理の実行に先立って、前記検出されたイベントの内容を前記管理手段に送信する制御手段とを具備し、
前記管理手段は、前記検出されたイベントの内容を判定プログラムに通知し、前記検出されたイベントの許可または禁止を示す判定結果を前記判定プログラムから受信し、前記判定結果を前記制御手段に送信するように構成され、前記検出されたイベントが特定の外部通信機器との接続を要求する第１のイベントである場合は前記特定の外部通信機器との接続の許可を示す判定結果を前記制御手段に送信し、前記検出されたイベントが特定の処理の実行を要求する第２のイベントであり且つ前記特定の外部通信機器との接続が許可されていない場合は前記特定の処理の実行の許可または禁止の一方を示す第１の判定結果を前記制御手段に送信し、前記検出されたイベントが前記第２のイベントであり且つ前記特定の外部通信機器との接続が許可されている場合は前記特定の処理の実行の許可または禁止の他方を示す第２の判定結果を前記制御手段に送信する、情報処理装置。
【請求項２】
前記判定プログラムから受信される前記第２のイベントに対する判定結果の内容は、前記特定の外部通信機器との接続が許可されていない場合は、前記特定の処理の実行の許可または禁止の前記一方を示し、前記特定の外部通信機器との接続が許可されている場合は、前記特定の処理の実行の許可または禁止の前記他方を示す請求項１記載の情報処理装置。
【請求項３】
前記制御手段はオペレーティングシステム層内のソフトウェアモジュールを含み、前記管理手段はアプリケーション層で実行される第１のアプリケーションプログラムを含み、前記判定プログラムは前記アプリケーション層で実行される請求項１記載の情報処理装置。
【請求項４】
前記管理手段は、前記判定プログラムに付与された証明書に基づいて前記判定プログラムの正当性を確認し、前記判定プログラムの正当性が確認された場合に、前記判定プログラムを前記検出されたイベントの内容を通知すべき通信相手に特定する請求項１記載の情報処理装置。
【請求項５】
前記制御手段はオペレーティングシステム層内のソフトウェアモジュールを含み、前記管理手段はアプリケーション層で実行される第１のアプリケーションプログラムを含み、
前記制御手段は、前記第１のアプリケーションプログラムのアプリケーション名を保持しており、前記保持しているアプリケーション名に基づいて、前記第１のアプリケーションプログラムを前記検出されたイベントの内容を通知すべき通信相手に特定する請求項１記載の情報処理装置。
【請求項６】
前記特定の外部通信機器は、特定の名前又は特定のアドレスを有するアクセスポイントまたは特定のアドレスを有する通信機器である請求項１記載の情報処理装置。
【請求項７】
前記特定の外部通信機器は、仮想プライベートネットワークを介して前記情報処理装置が接続される外部通信機器である請求項１記載の情報処理装置。
【請求項８】
前記特定の処理は、特定のアプリケーションプログラムの起動を含む請求項１記載の情報処理装置。
【請求項９】
前記特定の処理は、特定のアプリケーションプログラムのインストールを含む請求項１記載の情報処理装置。
【請求項１０】
前記特定の処理は、前記情報処理装置と外部ストレージデバイスとの間の接続を確立する処理を含む請求項１記載の情報処理装置。
【請求項１１】
前記特定の処理は、前記情報処理装置を特定のネットワークアドレスに接続する処理を含む請求項１記載の情報処理装置。
【請求項１２】
情報処理装置に実行を許可する処理を制限するための制御方法であって、
複数の外部通信機器のいずれかとの接続を要求するイベントと外部通信機器との接続要求以外の他の処理の実行を要求するイベントとを含む複数のイベントの各々を検出することと、
検出されたイベントに対応する処理の実行に先立って、前記検出されたイベントの内容を、前記情報処理装置に実行を許可する処理を制限するための環境を提供するための管理手段に送信し、
前記検出されたイベントの内容を前記管理手段が判定プログラムに問い合わせることによって、前記検出されたイベントの許可または禁止を示す判定結果を出力することを具備し、
前記判定結果を出力することは、
前記検出されたイベントが特定の外部通信機器との接続を要求する第１のイベントである場合は前記特定の外部通信機器との接続の許可を示す判定結果を出力することと、
前記検出されたイベントが特定の処理の実行を要求する第２のイベントであり且つ前記特定の外部通信機器との接続が許可されていない場合は前記特定の処理の実行の許可または禁止の一方を示す第１の判定結果を出力することと、
前記検出されたイベントが前記第２のイベントであり且つ前記特定の外部通信機器との接続が許可されている場合は前記特定の処理の実行の許可または禁止の他方を示す第２の判定結果を出力すること
とを含む、制御方法。
【請求項１３】
前記判定プログラムから受信される前記第２のイベントに対する判定結果の内容は、前記特定の外部通信機器との接続が許可されていない場合は、前記特定の処理の実行の許可または禁止の前記一方を示し、前記特定の外部通信機器との接続が許可されている場合は、前記特定の処理の実行の許可または禁止の前記他方を示す請求項１２記載の制御方法。
【請求項１４】
前記イベントを検出することと前記検出されたイベントの内容を送信することは、オペレーティングシステム層内のソフトウェアモジュールによって実行され、
前記管理手段はアプリケーション層で実行される第１のアプリケーションプログラムを含み、前記判定プログラムは前記アプリケーション層で実行される請求項１２記載の制御方法。
【請求項１５】
前記判定プログラムに付与された証明書に基づいて前記判定プログラムの正当性を確認することと、
前記判定プログラムの正当性が確認された場合、前記判定プログラムを、前記インストールイベント情報を通知すべき通信相手に特定することとをさらに具備する請求項１２記載の制御方法。
【請求項１６】
前記イベントを検出することと前記検出されたイベントの内容を送信することは、オペレーティングシステム層内のソフトウェアモジュールによって実行され、
前記管理手段はアプリケーション層で実行される第１のアプリケーションプログラムを含み、
前記ソフトウェアモジュールは前記第１のアプリケーションプログラムのプログラム名を保持しており、
前記保持しているプログラム名に基づいて、前記第１のアプリケーションプログラムを前記インストールイベント情報を送信すべき通信相手に特定することをさらに具備する請求項１２記載の制御方法。
【請求項１７】
複数の外部通信機器のいずれかとの接続を要求するイベントと外部通信機器との接続要求以外の他の処理の実行を要求するイベントとを含む複数のイベントの各々を検出する手順と、
検出されたイベントに対応する処理の実行に先立って、前記検出されたイベントの内容を、コンピュータに実行を許可する処理を制限するための環境を提供するための管理手段に送信する手順と、
前記検出されたイベントの内容を前記管理手段が判定プログラムに問い合わせることによって、前記検出されたイベントの許可または禁止を示す判定結果を出力する判定結果出力手順であって、前記検出されたイベントが特定の外部通信機器との接続を要求する第１のイベントである場合は前記特定の外部通信機器との接続の許可を示す判定結果を出力する手順と、前記検出されたイベントが特定の処理の実行を要求する第２のイベントであり且つ前記特定の外部通信機器との接続が許可されていない場合は前記特定の処理の実行の許可または禁止の一方を示す第１の判定結果を出力する手順と、前記検出されたイベントが前記第２のイベントであり且つ前記特定の外部通信機器との接続が許可されている場合は前記特定の処理の実行の許可または禁止の他方を示す第２の判定結果を出力する手順とを含む、判定結果出力手順とをコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、実行可能な処理を制限するための情報処理装置および制御方法に関する。
【背景技術】
【０００２】
近年、企業においては、個人所有の情報端末等を企業内に持ち込んで業務で利用すること（いわゆる、Bring Your Own Device（ＢＹＯＤ））が注目されている。情報端末としては、様々な情報処理装置、例えば、タブレット端末、スマートフォン等、を使用することができる。
【０００３】
ＢＹＯＤを実現するためには、情報処理装置に対して様々なセキュリティー対策を施すことが必要とされる。
【０００４】
セキュリティー技術の一つとして、端末が特定のエリアに存在するか否かを判定し、特定のエリアに存在する場合には端末の使用を制限する技術が知られている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−１９３５４６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、使用許可すべき機能（処理）の種類と使用禁止すべき機能（処理）の種類は企業毎に異なる。したがって、情報処理装置を業務で使用する場合には、個々の機能（処理）毎にその使用を柔軟に制御するための新たな機能の実現が必要である。
【０００７】
本発明の目的は、個々の処理の実行の可否を柔軟に制御することができる情報処理装置および制御方法を提供することである。
【課題を解決するための手段】
【０００８】
実施形態によれば、情報処理装置は、管理手段と、制御手段とを具備する。前記管理手段は、前記情報処理装置に実行を許可する処理を制限するための環境を提供する。前記制御手段は、複数の外部通信機器のいずれかとの接続を要求するイベントと外部通信機器との接続要求以外の他の処理の実行を要求するイベントとを含む複数のイベントの各々を検出し、検出されたイベントに対応する処理の実行に先立って、前記検出されたイベントの内容を前記管理手段に送信する。前記管理手段は、前記検出されたイベントの内容を判定プログラムに通知し、前記検出されたイベントの許可または禁止を示す判定結果を前記判定プログラムから受信し、前記判定結果を前記制御手段に送信するように構成されている。前記管理手段は、前記検出されたイベントが特定の外部通信機器との接続を要求する第１のイベントである場合は前記特定の外部通信機器との接続の許可を示す判定結果を前記制御手段に送信し、前記検出されたイベントが特定の処理の実行を要求する第２のイベントであり且つ前記特定の外部通信機器との接続が許可されていない場合は前記特定の処理の実行の許可または禁止の一方を示す第１の判定結果を前記制御手段に送信し、前記検出されたイベントが前記第２のイベントであり且つ前記特定の外部通信機器との接続が許可されている場合は前記特定の処理の実行の許可または禁止の他方を示す第２の判定結果を前記制御手段に送信する。
【図面の簡単な説明】
【０００９】
【図１】実施形態に係る情報処理装置の構成を示すブロック図。
【図２】同実施形態の情報処理装置において使用されるアプリケーションパッケージファイルの構成を示す図。
【図３】同実施形態の情報処理装置内に設けられる、ネットワーク接続制限機能付きアクセス検出・制御部の構成を示すブロック図。
【図４】同実施形態の情報処理装置内に設けられるアクセス検出・制御部の他の構成を示すブロック図。
【図５】同実施形態の情報処理装置内に設けられるアクセス検出・制御部のさらに他の構成を示すブロック図。
【図６】同実施形態の情報処理装置内に設けられるアクセス検出・制御部内の通信接続管理部の構成を示すブロック図。
【図７】同実施形態の情報処理装置内に設けられる管理アプリケーション部の構成を示すブロック図。
【図８】同実施形態の情報処理装置内に設けられる判定アプリケーション部の構成を示すブロック図。
【図９】図８の判定アプリケーション部が保持するルールの例を示す図。
【図１０】同実施形態の情報処理装置内に設けられる、アクセス検出・制御部、管理アプリケーション部および判定アプリケーション部それぞれによって実行される処理の手順を示すフローチャート。
【図１１】同実施形態の情報処理装置内に設けられる、判定アプリケーション登録部を備えた管理アプリケーション部の構成を示すブロック図。
【図１２】同実施形態の情報処理装置内に設けられる、デフォルト判定ルール管理部を備えたアクセス検出・制御部の構成を示すブロック図。
【図１３】同実施形態の情報処理装置内に設けられる、デフォルト判定ルール管理部を備えた管理アプリケーション部の構成を示すブロック図。
【図１４】同実施形態の情報処理装置内に設けられる、アクセス検出・制御部、管理アプリケーション部および判定アプリケーション部それぞれによって実行される適用ルール選択処理の手順を示すフローチャート。
【図１５】同実施形態の情報処理装置内に設けられる管理アプリケーション部のさらに他の構成を示すブロック図。
【図１６】同実施形態の情報処理装置内に設けられる判定アプリケーション部のさらに他の構成を示すブロック図。
【図１７】同実施形態の情報処理装置内に設けられるアクセス検出・制御部のさらに他の構成を示すブロック図。
【図１８】同実施形態の情報処理装置内に設けられる、インストーラ部、アクセス検出・制御部、管理アプリケーション部および判定アプリケーション部それぞれによって実行される処理の別の手順の一部を示すフローチャート。
【図１９】同実施形態の情報処理装置内に設けられる、インストーラ部、アクセス検出・制御部、管理アプリケーション部および判定アプリケーション部それぞれによって実行される処理の別の手順の残りの部分の一部を示すフローチャート。
【図２０】同実施形態の情報処理装置内に設けられる、インストーラ部、アクセス検出・制御部、管理アプリケーション部および判定アプリケーション部それぞれによって実行される処理の別の手順の残りの部分の他の部分を示すフローチャート。
【図２１】同実施形態の情報処理装置内に設けられる、アクション設定部を備えた判定アプリケーション部の構成を示すブロック図。
【図２２】図２１の判定アプリケーション部が保持するルールの一部を示す図。
【図２３】同実施形態の情報処理装置内に設けられる、アクション受信部とイベント判定部を備えた管理アプリケーション部の構成を示すブロック図。
【図２４】同実施形態の情報処理装置内に設けられるアクセス検出・制御部によってアクションが実行される場合に対応する処理の手順を示すフローチャート。
【図２５】同実施形態の情報処理装置内に設けられるアクセス検出・制御部によってアクションが実行される場合に対応する処理の他の手順を示すフローチャート。
【図２６】同実施形態の情報処理装置内に設けられるアクセス検出・制御部によってアクションが実行される場合に対応する処理の他の手順を示すフローチャート。
【図２７】同実施形態の情報処理装置の他の構成を示すブロック図。
【図２８】同実施形態の情報処理装置のアクセス検出・制御部内に設けられる通信接続管理部の他の構成を示すブロック図。
【図２９】同実施形態の情報処理装置内に設けられる判定アプリケーション部によって実行されるルール変更処理を説明するための図。
【図３０】同実施形態の情報処理装置内に設けられる判定アプリケーション部が保持するルールの他の例を示す図。
【図３１】同実施形態の情報処理装置のハードウェア構成例を示すブロック図。
【発明を実施するための形態】
【００１０】
以下、実施の形態について図面を参照して説明する。  
図１は、一実施形態に係る情報処理装置１の構成を示している。この情報処理装置１は様々なアプリケーションプログラムを実行するように構成されており、例えば、タブレット端末、スマートフォン、ＰＤＡ、他の各種情報端末によって実現されうる。情報処理装置１は、幾つかの無線通信規格、例えば、ＷｉＦｉ（登録商標）、第三世代移動通信（３Ｇ）、Ｂｌｕｅｔｏｏｔｈ（登録商標）等、にそれぞれ対応する無線通信を実行するように構成されている。情報処理装置１は、この無線通信機能を使用して、無線アクセスポイントを含む外部の通信装置２（外部通信機器）およびインターネット上の様々なサーバとの通信を行うことができる。また、情報処理装置１は、ＵＳＢメモリ、ＳＤメモリカードといった外部ストレージデバイスをアクセスする機能を有している。
【００１１】
この情報処理装置１は、様々な処理の制限、例えば、情報処理装置１と各種外部通信機器との間の接続の制限、情報処理装置１と各種外部ストレージデバイスとの間の接続の制限、特定の幾つかのアプリケーションプログラムのインストールの制限、特定の幾つかのアプリケーションプログラムの起動の制限、等を行うための処理制限機能を有している。この処理制限機能を実現するために、情報処理装置１は、３つの異なるモジュール、つまり、アクセス検出・実行部１０と、管理アプリケーション実行部２１と、判定アプリケーション部２２とを備える。
【００１２】
アクセス検出・実行部１０は、オペレーティングシステム（ＯＳ）層内のソフトウェアモジュールによって実現することができる。このソフトウェアモジュールは、例えば、ＯＳ層内のミドルウェアであってよいし、ＯＳ層内のカーネル、たとえばLinux（登録商標）カーネルであってもよい。管理アプリケーション実行部２１と、判定アプリケーション部２２の各々は、アプリケーション実行部２０上で実行されるアプリケーションプログラムによって実現することができる。アプリケーションプログラムは、たとえばＡｎｄｒｏｉｄ（登録商標）アプリケーションプログラムであってもよい。
【００１３】
アプリケーション実行部２０は、様々なアプリケーションプログラムを実行するためのプラットフォームであり、例えば、Ｊａｖａ（登録商標）仮想マシンのような仮想マシンによって実現することができる。
【００１４】
情報処理装置１は、インターネットを介してアプリケーション配布サーバ４から様々なアプリケーションプログラム（各種アプリケーションパッケージファイル）をダウンロードすることができる。ダウンロードされる各アプリケーションプログラムは、情報処理装置１内の蓄積部３０に格納される。判定アプリケーション部２２も、アプリケーション配布サーバ４からダウンロードされて蓄積部３０に保存される。管理アプリケーション部２１も、アプリケーション配布サーバ４からダウンロードすることができる。なお、管理アプリケーション部２１とインストーラ部２３は情報処理装置１にプリインストールされていてもよい。この場合、管理アプリケーション部２１を必ずしもダウンロードする必要はない。
【００１５】
インストーラ部２３は、アプリケーション配布サーバから蓄積部３０にダウンロードしてきた各アプリケーションプログラム（管理アプリケーション実行部２１、判定アプリケーション部２２、および他の各種アプリケーション等）のアプリケーションパッケージファイルを展開して、蓄積部３０にインストールする処理を行う。
【００１６】
アプリケーション実行部２０は、蓄積部３０から各アプリケーションプログラム（管理アプリケーション実行部２１、判定アプリケーション部２２、および他の各種アプリケーション等）をロードして実行する。
【００１７】
アクセス検出・制御部１０は、様々な外部通信機器のいずれかとの接続を要求するイベントを検出し、検出されたイベントに対応する処理の実行に先立って、つまり要求された接続処理の実行に先立って、検出されたイベントの内容を管理アプリケーション部２１に通知し、管理アプリケーション部２１からの指示に基づいて接続処理の可否を制御する。
【００１８】
外部通信機器との接続の要求には、例えば、ＷｉＦｉアクセスポイントへの接続要求、およびＢｌｕｅｔｏｏｔｈ機器との接続要求等がある。
【００１９】
例えば、アクセス検出・制御部１０は、ある特定の名前またはある特定のアドレスを持つＷｉＦｉアクセスポイントとの接続を要求するイベントを検出したならば、情報処理装置１とこのＷｉＦｉアクセスポイントとを接続するための接続処理を保留して、このイベントの内容を示すイベント情報を管理アプリケーション部２１に送信する。そして、管理アプリケーション部２１から返される接続の許可または禁止を示す判定結果に基づいて、アクセス検出・制御部１０は、接続処理を実行するか、または接続処理の実行を中止（禁止）する。
【００２０】
さらに、アクセス検出・制御部１０は、外部通信機器との接続を要求するイベント（ネットワーク接続イベント）のみならず、外部通信機器との接続以外の他の様々な処理の実行を要求する様々なイベントを検出することができる。たとえば、ＳＤカード接続要求、ＵＳＢメモリ接続要求、アプリケーションプログラムの起動要求、アプリケーションプログラムのインストール要求、アプリケーションプログラムのアンインストール要求等の様々なイベントが、アクセス検出・制御部１０によって検出される。
【００２１】
外部通信機器との接続を要求するイベント以外のこれらイベントが検出された際も、アクセス検出・制御部１０は、そのイベント実行前に、検出されたイベントを示すイベント情報を管理アプリケーション部２１に送信し、管理アプリケーション部２１からの指示に基づいて、そのイベントの実行の可否を制御することができる
例えば、アクセス検出・制御部１０は、あるアプリケーションプログラムのインストールを要求するイベント（インストールイベント）を検出したならば、アプリケーションプログラムをインストールする処理を保留して、このアプリケーションプログラムのアプリケーション名を含むイベント情報（インストールイベント情報）を管理アプリケーション部２１に送信する。そして、管理アプリケーション部２１から返されるインストールの許可または禁止を示す判定結果に基づいて、アクセス検出・制御部１０は、インストール処理を実行するか、またはインストール処理の実行を中止（禁止）する。
【００２２】
また、アクセス検出・制御部１０は、あるアプリケーションプログラムの起動を要求するイベント（アプリケーション起動イベント）を検出したならば、アプリケーションプログラムを起動する処理を保留して、このアプリケーションプログラムのアプリケーション名を含む起動イベント情報を管理アプリケーション部２１に送信する。そして、管理アプリケーション部２１から返される起動の許可または禁止を示す判定結果に基づいて、アクセス検出・制御部１０は、起動処理を実行するか、または起動処理の実行を中止（禁止）する。
【００２３】
管理アプリケーション部２１は、情報処理装置１に実行を許可する処理を制限するための環境を提供する管理モジュールとして機能する。管理アプリケーション部２１は、この管理アプリケーション部２１の起動時に、上述の様々なイベントを管理アプリケーション部２１に通知するようにアクセス検出・制御部１０に要求することができる。さらに、管理アプリケーション部２１は、アクセス制御・検出部１０からイベント情報を受信すると、受信されたイベント情報の内容を判定アプリケーション部２２に通知し、判定アプリケーション部２２から受信される判定結果をアクセス検出・制御部１０に送信する。
【００２４】
判定アプリケーション部２２は、所定のポリシー（判定ルール）を有し、このポリシーに基づいて、管理アプリケーション部２１から受信される各イベントに対応する処理の許可または禁止を判定し、その判定結果を管理アプリケーション部２１に通知する。なお、判定アプリケーション部２２は、必要に応じて、ポリシー配布サーバ５からポリシー（判定ルール）をダウンロードすることもできる。ポリシー配布サーバ５からポリシー（判定ルール）をダウンロードすることにより、ポリシーを例えば定期的に容易に更新することができる。また、判定アプリケーション部２２に予めポリシーが組み込まれていてもよい。この場合、アプリ実行部２０によって実行されるべき判定アプリケーション部２２自体をバージョンアップすることにより、ポリシーを更新することができる。さらに、判定アプリケーション部２２は、イベントの実行の可否をイベント可否判断サーバ６に問い合わせることもできる。
【００２５】
アクセス検出・制御部１０は、管理アプリケーション部２１から通知される判定結果が例えば、接続禁止を示す場合、要求された接続を確立する処理を禁止する。例えば、ネットワーク（外部通信機器）との接続を確立する処理、またはＳＤメモリカード、ＵＳＢメモリのような外部ストレージデバイスとの接続を確立する処理が禁止する。これにより、接続が許可されていないＷｉＦｉアクセポイントとの接続、接続が許可されていないＢｌｕｅｔｏｏｔｈ機器との接続、使用が許可されていない外部ストレージデバイスとの接続、等を防止することができる。
【００２６】
一方、管理アプリケーション部２１から通知される判定結果が接続許可を場合、アクセス検出・制御部１０は、要求された接続処理を実行する。
【００２７】
図２は、情報処理装置１において使用されるアプリケーションパッケージファイル４０の構成を示す。図２に示すように、各アプリケーションパッケージファイル４０にはアプリケーション名（パッケージ名）と、署名を含む証明書が付与されている。
【００２８】
より詳しくは、各アプリケーションパッケージファイル４０は、実行コード４１と、リソース４２と、マニュフェストファイル４３と、証明書４４とを含む。リソース４２は、例えば、アイコンとして使用されるサムネイル画像ファイルのような画像ファイル４２Ａを含む。マニュフェストファイル４３は、パッケージ名（アプリケーション名）４３Ａ、バージョン番号４３Ｂ、および設定情報４３Ｃ等を含む。
【００２９】
証明書４４は、アプリケーションパッケージファイル４０の作成者の確認とアプリケーションパッケージファイル４０が改竄されていないこととを証明するための情報であり、電子署名（署名４４Ａ）を含む。署名４４Ａは、例えば、アプリケーションプログラムの作成者が有する秘密鍵と、メッセージとによって公開鍵暗号を使って計算される。署名計算に用いる公開鍵暗号アルゴリズムとして、たとえばRSAやEC-DSAなど良く知られた公開鍵暗号アルゴリズムを用いればよい。このメッセージは、アプリケーションパッケージファイル４０に含まれる各ファイル（実行コード４１、リソース４２、マニュフェストファイル４３）のダイジェスト値であってもよい。リソース４２は、例えば、アイコンとして使用されるサムネイル画像ファイルを含む。
【００３０】
アプリケーション作成者ごとに署名に用いる秘密鍵は異なる。本実施形態では、管理アプリケーション部２１の署名に使う秘密鍵は判定アプリケーション部２２の署名に使う秘密鍵と異なるものとする。つまり、管理アプリケーション部２１および判定アプリケーション部２２は異なるアプリケーション作成者によって作成されたものと仮定する。
【００３１】
図３は、上述のアクセス検出・制御部１０の構成を示している。ここでは、アクセス検出・制御部１０が、ネットワーク（外部通信機器）接続制限機能と、インストール制限機能とを有している場合が想定されている。
【００３２】
図３に示されているように、アクセス検出・制御部１０は、通信接続管理部１００、インストール処理部１０１、イベント検出部１０２、管理アプリケーションイベント通信部１０３、管理アプリケーション特定部１０４、および通信接続可否通知部１０５を備える。
【００３３】
通信接続管理部１００は、情報処理装置１とＷｉＦｉアクセポイント、Ｂｌｕｅｔｏｏｔｈ機器のような外部の通信装置２との間の接続を制御する。通信接続管理部１００は、コネクション確立部１１１とデータ送受信部１１２とを備える。コネクション確立部１１１は、外部の通信装置２からコネクション確立要求を受信した時、または外部の通信装置２にコネクション確立要求を送信する要求が発生した時に、接続要求の発生を検出し、接続要求が発生したことをイベント検出部１０２に通知する。外部の通信装置２との接続要求が発生したことは、イベント検出部１０２よってネットワーク接続イベントとして検出される。
【００３４】
管理アプリケーションイベント通信部１０３は、ネットワーク接続イベントの内容を示すイベント情報を、アプリケーション実行部２０内の上述の管理アプリケーション部２１に通知する。管理アプリケーション特定部１０４は、アプリケーション実行部２０上のどのアプリケーションが管理アプリケーション部２１であるかを特定する。イベント情報（ネットワーク接続イベント情報）は、イベント検出部１０２で検出された後、管理アプリケーションイベント通信部１０３を介して、管理アプリケーション特定部１０４によって管理アプリケーション部２１であると特定されたアプリケーションに送信される。具体的には、管理アプリケーション特定部１０４は、管理アプリケーション部２１のアプリケーション名を予め保持している。そして、管理アプリケーション特定部１０４は、アプリケーションからの登録要求を受信すると、この予め保持しているアプリケーション名に基づいて、そのアプリケーションが、管理アプリケーション部２１（この予め保持しているアプリケーション名を有するアプリケーションプログラム）か否か、つまりネットワーク接続イベント情報を送信すべき通信相手か否かを判定する。もしインストールイベント情報を送信すべき通信相手であると判定した場合には、そのアプリケーションを、管理アプリケーション部２１として特定する。アプリケーションのアップデートを除き、アプリケーション実行部２０内のインストーラ部によって、同じアプリケーション名を有する２つのアプリケーションがシステムにインストールされることが制限される。したがって、管理アプリケーション部２１のアプリケーション名を管理アプリケーション特定部１０４内に予め保持しておくことにより、管理アプリケーション部２１を一意に特定することができる。
【００３５】
管理アプリケーションイベント通信部１０３は、管理アプリケーション特定部１０４によって特定されたアプリケーションプログラムとの通信を実行する。これにより、不正なアプリケーションプログラムにイベント情報が横取りされることを防止することができる。
【００３６】
アプリケーション実行部２０内の管理アプリケーション部２１から判定結果を受信すると、管理アプリケーションイベント通信部１０３は、受信した判定結果を通信接続可否判定部１０５に出力する。通信接続可否判定部１０５は、判定結果の内容に基づいて、コネクション確立可否を、通信接続管理部１００のコネクション確立部１１１に通知する。判定結果がネットワーク接続許可を示すならば、コネクション確立部１１１は、コネクション確立処理を実行して外部の通信装置２とのコネクションを確立する。一方、判定結果がネットワーク接続禁止を示すならば、コネクション確立部１１１は、コネクション確立処理を中止（禁止）する。
【００３７】
インストール処理部１０１は、アプリケーション実行部２０内のインストーラからインストール開始の指示（インストール要求）を受信すると、アプリケーション実行部２０内のインストーラにインストールの処理の実行を待機させる。インストール要求が発生したことは、イベント検出部１０２よってインストールイベントとして検出される。管理アプリケーションイベント通信部１０３は、インストールイベントおよびインストール対象のアプリケーション名を含むイベント情報（インストールイベント情報）を、アプリケーション実行部２０内の管理アプリケーション部２１に通知する。管理アプリケーション部２１から判定結果を受信すると、管理アプリケーションイベント通信部１０３は、受信した判定結果（インストールの可否）をインストール処理部１０１に通知する。
【００３８】
判定結果がインストール許可を示すならば、インストール処理部１０１は、インストーラ部２３と共同して、インストール処理を実行する。一方、判定結果がインストール禁止を示すならば、インストール処理部１０１は、インストール処理を中止（禁止）する。
【００３９】
図４は、アクセス検出・制御部１０の別の構成を示している。図３との違いは、ネットワークフィルター部１０７とフィルタールール管理部１０８を備えている点である。
【００４０】
ネットワークフィルター部１０７は、通信接続管理部１００によってＷｉＦｉコネクションまたはＢｌｅｕｔｏｏｔｈコネクションが確立した後、インターネットプロトコルによってアプリケーション実行部２０のアプリケーションがサーバなどの機器と通信する際、通信先のＩＰアドレスや通信先のポート番号（ＴＣＰポート番号またはＵＤＰポート番号）をフィルタールール管理部１０８に設定されたルールに従って制限する処理部である。
【００４１】
フィルタールール管理部１０８は、使用を許可すべき通信先ＩＰアドレスと通信先ポート番号のルール、または使用を禁止すべき通信先ＩＰアドレスとポート番号のルールを蓄積する。フィルタールール管理部１０８は、初期設定時にはデフォルトのルールを備えていてもよい。この場合、フィルタールール管理部１０８内のフィルタールールは、管理アプリケーション部２１の指示によって、管理アプリケーションイベント通信部１０３を介して更新できるようになっていてもよい。
【００４２】
図５は、アクセス検出・制御部１０の別の構成を示している。図４との違いは、プロキシ設定部１０９を備えている点である。
【００４３】
プロキシ設定部１０９は、ＨＴＴＰプロキシ、ＳＳＬプロキシ、ＦＴＰプロキシなどのプロキシサーバの設定を行う処理部である。アプリケーション実行部２０の各アプリケーションがネットワーク通信を行いサーバ等の通信機器と通信する際、各アプリケーションは、このプロキシ設定部１０９で設定されたプロキシサーバと通信する。プロキシ設定部１０９に何も設定されていない場合は、各アプリケーションは、直接、通信機器と通信する。
【００４４】
図６は、アクセス検出・制御部１０に設けられた通信接続管理部１００の構成を示す。通信接続管理部１００からイベント検出部１０２に送信されるネットワーク接続イベントの種類は、例えば、以下の３つである。
【００４５】
（１）ＷｉＦｉ接続検出
（２）Ｂｌｕｅｔｏｏｔｈ接続要求送信（Ｂｌｕｅｔｏｏｔｈクライアント機能）
（３）Ｂｌｕｅｔｏｏｔｈ接続要求受信（Ｂｌｕｅｔｏｏｔｈサーバ機能）
通信接続管理部１００のコネクション確立部１１１は、ＷｉＦｉコネクション確立部１２１、およびＢｌｕｅｔｏｏｔｈコネクション確立部１２２を備える。ＷｉＦｉコネクション確立部１２１はＷｉＦｉ接続検出部１２１Ａを備える。ＷｉＦｉ接続検出部１２１Ａは、周辺のＷｉＦｉアクセスポイントを検出し、検出されたＷｉＦｉアクセスポイントの名前およびアドレスを含む接続要求をイベント検出部１０２に通知する。Ｂｌｕｅｔｏｏｔｈコネクション確立部１２２は、Ｂｌｕｅｔｏｏｔｈ接続要求送信部１２２ＡおよびＢｌｕｅｔｏｏｔｈ接続要求受信部１２２Ｂを備える。Ｂｌｕｅｔｏｏｔｈ接続要求送信部１２２Ａは、外部のＢｌｕｅｔｏｏｔｈデバイスにコネクション確立要求信号を送信する処理を実行する。このＢｌｕｅｔｏｏｔｈ接続要求送信部１２２Ａは、外部のＢｌｕｅｔｏｏｔｈデバイスにコネクション確立要求信号を送信する要求が発生したときに、この外部のＢｌｕｅｔｏｏｔｈデバイスのアドレス等を含む接続要求をイベント検出部１０２に通知する。Ｂｌｕｅｔｏｏｔｈ接続要求受信部１２２Ｂは、外部のＢｌｕｅｔｏｏｔｈデバイスからコネクション確立要求信号を受信するように構成されている。このＢｌｕｅｔｏｏｔｈ接続要求受信部１２２Ｂは、外部のＢｌｕｅｔｏｏｔｈデバイスからコネクション確立要求信号を受信した時、外部のＢｌｕｅｔｏｏｔｈデバイスのアドレス等を含む接続要求をイベント検出部１０２に通知する。
【００４６】
図７は、管理アプリケーション部２１の構成を示す。管理アプリケーション部２１は、通信処理部２０１、サービス提供通信部２０２、イベント受信部２０１Ａ、および登録要求部２１０を備える。
【００４７】
通信処理部２０１はアクセス検出・制御部１０との通信を実行する。イベント受信部２０１Ａは、通信処理部２０１を介して、アクセス検出・制御部１０から様々なイベント（ネットワーク接続イベント、外部ストレージ接続イベント、インストールイベント、アプリケーション起動イベント、等）を受信する。受信されたイベントの内容は、サービス提供通信部２０２にイベント情報として通知される。サービス提供通信部２０２は、イベントの内容を判定アプリケーション部２２に通知し、そのイベントの実行の許可又は禁止を示す判定結果を判定アプリケーション部２２から受信する。判定結果は、通信処理部２０１を介してアクセス検出・制御部１０に送信される。
【００４８】
登録要求部２１０は、管理アプリケーション部２１の起動時に、以降、アクセス検出・制御部１０で検出したイベントを管理アプリケーション部２１に送信してくれるよう依頼するための要求をアクセス検出・制御部１０に通信処理部２０１を介して送信する処理部である。
【００４９】
図８は、判定アプリケーション部２２の構成を示している。図８に示すように、判定アプリケーション部２２は、サービス利用通信部３１１、イベント判定部３１２、判定ルール管理部３１３、およびイベント可否判定サーバ通信処理部３１４を備える。
【００５０】
サービス利用通信部３１１は、管理アプリケーション部２１との通信を実行する。イベント判定部３１２は、判定ルール管理部１１３内に存在するルールセット（判定ルール）に基づいて、受信したイベントに対応する処理の許可または禁止を判定する。ルールセット（判定ルール）は、例えば、接続を許可する外部通信機器の名前またはアドレスを示すリスト（ホワイトリスト）であってもよいし、接続を禁止する外部通信機器の名前またはアドレスを示すリスト（ブラックリスト）であってもよい。さらに、ルールセットは、接続を禁止すべきＩＰアドレスを保持していていても良い。さらに、ルールセットは、インストールを許可すべきアプリケーション名のリスト（またはインストールを禁止すべきアプリケーション名のリスト）、起動を許可すべきアプリケーション名のリスト（または起動を禁止すべきアプリケーション名のリスト）、アンインストールを許可すべきアプリケーション名のリスト（またはアンインストールを禁止すべきアプリケーション名のリスト）を保持していても良い。
【００５１】
イベント可否判定サーバ通信処理部３１４は、各イベントの実行の可否をイベント可否判定サーバ６に問い合わせて、各イベントの実行の可否をイベント可否判定サーバ６から受信する。イベント判定部３１２は、必要に応じてイベント可否判定サーバ通信処理部１１４を使用して、イベントの実行の可否を判定することもできる。
【００５２】
なお、必ずしも判定ルール管理部３１３およびイベント可否判定サーバ通信処理部３１４の双方が判定アプリケーション部２２に設けられている必要は無く、判定ルール管理部３１３およびイベント可否判定サーバ通信処理部３１４の何れか一方のみが判定アプリケーション部２２に設けられる構成を使用してもよい。
【００５３】
また、イベント判定部１１２は、外部ストレージデバイスとの接続を要求する外部ストレージイベントの許可又は禁止の判定も、判定ルール管理部３１３内に存在するルールセットに基づいて、またはイベント可否判定サーバ６を利用して、実行することができる。
【００５４】
図９は、図８の判定アプリケーション部２２が保持するルールセット（判定ルール）の例を示す。図９では、ネットワーク接続イベントに関するルールセットについてのみ例示されている。図９に示すように、判定アプリケーション部２２には、ネットワーク接続イベントに関するイベントの内容毎に、そのイベントの許可または禁止を示す判定結果が上述のルールセットとして保持されている。各イベント内容は、以下のように分類することができる。
【００５５】
（１）ＷｉＦｉ接続
（２）ＷｉＦｉ接続とアクセスポイント名の組み合わせ
（３）ＷｉＦｉ接続とアドレス（ＭＡＣアドレス）の組み合わせ
（４）ＷｉＦｉ接続とアクセスポイント名とアドレス（ＭＡＣアドレス）の組み合わせ
（５）Ｂｌｕｅｔｏｏｔｈ接続
（６）Ｂｌｕｅｔｏｏｔｈ接続要求受信
（７）Ｂｌｕｅｔｏｏｔｈ接続要求受信と、Ｂｌｕｅｔｏｏｔｈ接続要求の送信元のＢｌｕｅｔｏｏｔｈ機器のアドレスとの組み合わせ
（８）Ｂｌｕｅｔｏｏｔｈ接続要求送信
（９）Ｂｌｕｅｔｏｏｔｈ接続要求送信と、Ｂｌｕｅｔｏｏｔｈ接続要求の送信先のＢｌｕｅｔｏｏｔｈ機器のアドレスとの組み合わせ
これら（１）〜（９）の内の任意の組み合わせをイベントとして使用しても良い。
【００５６】
図９では、アクセスポイント名“Ｘ”または“Ｙ”のＷｉＦｉアクセスポイントとの接続を許可し、“Ｘ”、“Ｙ”以外のアクセスポイント名を有するＷｉＦｉアクセスポイントとの接続を禁止する場合が想定されている。さらに、ＭＡＣアドレス “Ｘ”のＷｉＦｉアクセスポイントとの接続が許可される。また、外部Ｂｌｕｅｔｏｏｔｈ機器から接続要求を受信した場合には接続が禁止される（Ｂｌｕｅｔｏｏｔｈ接続要求受信＝受信拒否）。また、情報処理装置１がイニシエータとして動作してアドレス“Ｚ”の外部Ｂｌｕｅｔｏｏｔｈ機器と接続する処理は許可される。
【００５７】
次に、図１０のフローチャートを参照して、アクセス検出・制御部１０、管理アプリケーション部２１および判定アプリケーション部２２それぞれによって実行される処理の手順を説明する。
【００５８】
管理アプリケーション部２１が起動されると（ステップＳ１１）、管理アプリケーション部２１の登録要求部２１０は、アクセス検出・制御部１０に対して、管理アプリケーション部２１の登録を要求する（ステップＳ１２）。アクセス検出・制御部１０は、アプリケーションからの登録要求を受信すると、登録要求を送信したアプリケーションの名前を調査し、予め保持しているアプリケーション名に基づいて、登録要求を送信したアプリケーションが、管理アプリケーション部２１（この予め保持しているアプリケーション名を有するアプリケーションプログラム）であるか否かをチェックし、管理アプリケーション部２１であることが確認されたならば、登録要求を送信したアプリケーションを管理アプリケーション部２１として登録する（ステップＳ１３）。そして、アクセス検出・制御部１０は、管理アプリケーション部２１に対して、つまり、登録要求を送信したアプリケーションに対して、管理アプリケーション部２１の登録成功を通知する（ステップＳ１４）。
【００５９】
ネットワーク接続イベントのようなあるイベントが発生すると（ステップＳ１５）、アクセス検出・制御部１０は、そのイベントの実行に先立って、そのイベントの内容を示すイベント情報を管理アプリケーション部２１に送信する（ステップＳ１６）。
【００６０】
管理アプリケーション部２１は、アクセス検出・制御部１０からのイベント情報を受信し（ステップＳ１７）、その受信したイベント情報を判定アプリケーション部２２に通知する（ステップＳ１８）。判定アプリケーション部２２は、上述のルールセットに基づいて、イベント情報によって指定されるイベント、例えばネットワーク接続処理、の許可または禁止を判定する（ステップＳ１９）。そして、判定アプリケーション部２２は、このイベントの許可または禁止を示す判定結果を管理アプリケーション部２１に送信する（ステップＳ２０）。
【００６１】
管理アプリケーション部２１は、上述の判定結果を判定アプリケーション部２２から受信し、その受信した判定結果をアクセス検出・制御部１０に送信する（ステップＳ２１、Ｓ２２）。アクセス検出・制御部１０は、判定結果に基づいて、発生したイベントに対応する処理の実行を制御する（ステップＳ２３）。ステップＳ２３では、判定結果がイベントの許可を示すならば、アクセス検出・制御部１０は、イベントによって要求された処理、例えば、ネットワーク接続処理を実行する。一方、判定結果がイベントの禁止を示すならば、アクセス検出・制御部１０は、イベントによって要求された処理、例えば、ネットワーク接続処理の実行を中止（禁止）する。
【００６２】
図１１は、管理アプリケーション部２１の別の構成を示している。管理アプリケーション部２１は、判定アプリケーション部２２（判定プログラム）がインストールされる際に、判定アプリケーション部２２に付与された証明書（署名）に基づいて判定アプリケーション部２２の正当性を確認し、判定アプリケーション部２２の正当性が確認された場合に、判定アプリケーション部２２をイベント情報を通知すべき通信相手に特定する。
【００６３】
この管理アプリケーション部２１は、通信処理部２０１、サービス提供通信部２０２、選別ルール管理部２０３、イベント選別部２０４、アプリケーション選別部２０５、署名検証部２０６、証明書管理部２０７、アプリケーション取得部２０８、および判定アプリケーション登録部２０９を備える。
【００６４】
通信処理部２０１はアクセス検出・制御部１０との通信を実行する。通信処理部２０１は、アクセス検出・制御部１０から通知される様々なイベント（ネットワーク接続イベント、外部ストレージ接続イベント、インストールイベント、アプリケーション起動イベント、アンインストールイベント、等）を受信する。
【００６５】
サービス提供通信部２０２は、判定アプリ登録部２０９に登録されている判定アプリケーション部２２、つまり正当な判定アプリケーションであることが確認された判定アプリケーション部２２に対してイベントの内容を通知し、そのイベントの実行の許可又は禁止を示す判定結果を判定アプリケーション部２２から受信する。
【００６６】
選別ルール管理部２０３は、アクセス検出・制御部１０から通知される各種イベントをイベント種類毎に分けるための選別ルールを保持している。選別ルールには、例えば、ネットワーク接続イベント、外部ストレージ接続イベント、インストールイベント、アプリケーション起動イベント、アンインストールイベントそれぞれに対応するイベント名と、判定アプリケーションとして使用可能な１以上のアプリケーション名（判定アプリケーション名）とを保持していてもよい。
【００６７】
イベント選別部２０４は、アクセス検出・制御部１０から受信されたイベントがネットワーク接続イベント、外部ストレージ接続イベント、インストールイベント、アプリケーション起動イベント、アンインストールイベントのいずれであるかを判定する。受信されたイベントがインストールイベントである場合は、イベント選別部２０４は、受信されたイベントの内容を、つまりこのインストールイベントとこのインストールイベントに関連付けられたアプリケーション名を、アプリケーション選別部２０５に送信する。受信されたイベントがインストールイベント以外の他のイベントである場合は、イベント選別部２０４は、受信されたイベントの内容をサービス提供通信部２０２に送信する。
【００６８】
アプリケーション選別部２０５は、イベント選別部２０４から受信されたアプリケーション名が選別ルール管理部２０３に保存されている判定アプリケーション名であるか否かを判定し、これによってインストール対象のアプリケーションが判定アプリケーションであるか否かを判定する。インストール対象のアプリケーションが判定アプリケーションであるならば、アプリケーション選別部２０５は、その判定アプリケーションのアプリケーション名を署名検証部２０６に送信して、インストール対象のアプリケーションが判定アプリケーションであることを署名検証部２０６に通知する。一方、インストール対象のアプリケーションが判定アプリケーション以外の他のアプリケーションである場合には、アプリケーション選別部２０５は、インストール対象のアプリケーションのアプリケーション名を含むインストールイベント情報をサービス提供通信部２０２に送信する。
【００６９】
インストール対象のアプリケーションが判定アプリケーション部２２であった場合、署名検証部２０６は、判定アプリケーション部２２に対する署名検証を実行して、インストール対象の判定アプリケーション部２２が正当な判定アプリケーションであるか否かを判定する。署名検証では、署名検証部２０６は、アプリケーション取得部２０８に蓄積部３０に保存されている判定アプリケーションのアプリケーションパッケージファイルを取得するよう指示し、このアプリケーションパッケージファイルに含まれる証明書等に基づいて、判定アプリケーション部２２が正当な判定アプリケーションであるか否かを判定する。
【００７０】
例えば、証明書管理部２０７には、各作成者に対応する公開鍵が格納されている。この公開鍵と、証明書に含まれる署名４４と、アプリケーションパッケージファイル４０に含まれる各ファイル（実行コード４１、リソース４２、マニュフェストファイル４３）の内容とに基づいて、上述の署名検証が実行されてもよい。この署名検証により、判定アプリケーションのアプリケーションパッケージファイルの作成者が正しいか否かが検証されると共に、アプリケーションパッケージファイルが改竄されていない正当なものであるか否かが検証される。
【００７１】
署名検証が成功した場合に限り、署名検証部２０６は、インストール対象の判定アプリケーション部２２のアプリケーション名を判定アプリケーション登録部２０９に登録する。判定アプリケーション登録部２０９は、インストール対象の判定アプリケーション部２２のインストールの許可を示す判定結果を通信処理部２０１を介してアクセス検出・実行部１０に送信する。これにより、判定アプリケーション部２２のインストールがアクセス検出・実行部１０によって実行される。サービス提供通信部２０２は、判定アプリケーション登録部２０９に登録されているアプリケーションとしか通信を行わない。すなわち、管理アプリケーション部２１は、判定アプリケーション部２２の署名検証が成功した場合に限り、以後のイベントをこの判定アプリケーション部２２に送信する。
【００７２】
署名検証が失敗した場合、署名検証処理部２０６は、通信処理部２０１を介してアクセス検出・制御部１０にインストールを禁止する旨を通知する。アクセス検出・制御部１０はこの指示に基づいてインストール対象となっている判定アプリケーションのインストールを失敗（禁止）させる。結果としてそのアプリケーションはインストールされない。あるいは、署名検証処理部２０６は、判定アプリケーション登録部２０９に署名検証が失敗した事を通知し、その通知を受けた判定アプリケーション登録部２０９はアプリケーション名を登録せず、インストール対象の判定アプリケーション部２２のインストールの許可を示す判定結果を通信処理部２０１を介してアクセス検出・実行部１０に送信してもよい。この場合、インストール対象となっているアプリケーションそのもののインストールは実行されるが、管理アプリケーション部２１はそのアプリケーションを判定アプリケーション部としては登録しないため、以後のイベントもそのアプリケーションに送信されることはない。
【００７３】
登録要求部２１０は、管理アプリケーション部２１の起動時に、アクセス検出・制御部１０に対して以降、アクセス検出・制御部１０で検出したイベントを管理アプリケーション部２１に送信してくれるよう依頼するための要求をアクセス検出・制御部１０に通信処理部２０１を介して送信する処理部である。
【００７４】
図１２は、デフォルト判定ルール管理部１０６が追加されたアクセス検出・制御部１０の構成を示す。
【００７５】
アクセス検出・制御部１０は、個々のイベントの許可または禁止を判定するためのデフォルトポリシー（デフォルト判定ルール）を有している。アクセス検出・制御部１０は、例えば、管理アプリケーション部２１との通信が何らかの原因でできない場合には、デフォルト判定ルール管理部１０６内に保持されるデフォルト判定ルールに従って各イベントの許可または禁止を判定する。管理アプリケーション部２１のアプリケーション名がアクセス検出・制御部１０に登録されていない場合にも、管理アプリケーション部２１との通信ができないので、デフォルト判定ルールが使用される。
【００７６】
図１３は、デフォルト判定ルール管理部２１１が追加された管理アプリケーション部２１の構成を示す。
【００７７】
管理アプリケーション部２１も、個々のイベントの許可または禁止を判定するためのデフォルトポリシー（デフォルト判定ルール）を有していてもよい。管理アプリケーション部２１は、判定アプリケーション登録部２０９に登録されたアプリケーション名によって特定される判定アプリケーション部２２との通信が何らかの原因でできなかった場合、あるいは判定アプリケーション部２２が未登録である場合には、デフォルト判定ルール管理部２１１内に保持されるデフォルト判定ルールに従って、受信された各イベントの許可または禁止を判定する。デフォルト判定ルールに従った判定結果は、通信処理部２０１を介してアクセス検出・制御部１０に送信される。
【００７８】
次に、図１４のフローチャートを参照して、アクセス検出・制御部１０、管理アプリケーション部２１および判定アプリケーション部２２それぞれによって実行される処理の手順の他の例を説明する。ここでは、管理アプリケーション部２１および判定アプリケーション部２２がそれぞれ起動されているものと仮定する（ステップＳ３１、Ｓ３２）。
【００７９】
ネットワーク接続イベントのようなあるイベントの発生が検出されると（ステップＳ３３）、アクセス検出・制御部１０は、管理アプリケーション部２１が登録済みであるか否かを判定する（ステップＳ３４）。
【００８０】
管理アプリケーション部２１が未登録であるならば、アクセス検出・制御部１０は、アクセス検出・制御部１０内に保持されているデフォルト判定ルールに基づいて、検出されたイベントの許可または禁止を判定し、その判定結果に基づいて、検出されたイベントに対応する処理の実行を制御する（ステップＳ３６）。ステップＳ３６では、判定結果がイベントの許可を示すならば、アクセス検出・制御部１０は、イベントによって要求された処理、例えば、ネットワーク接続処理を実行する。一方、判定結果がイベントの禁止を示すならば、アクセス検出・制御部１０は、イベントによって要求された処理、例えば、ネットワーク接続処理の実行を中止（禁止）する。
【００８１】
一方、管理アプリケーション部２１が登録済みであるならば、アクセス検出・制御部１０は、検出されたイベントの内容を示すイベント情報を管理アプリケーション部２１に送信する（ステップＳ３７）。管理アプリケーション部２１は、判定アプリケーション部２２が登録済みであるか否かを判定する（ステップＳ３８）。
【００８２】
判定アプリケーション部２２が未登録であれば、管理アプリケーション部２１は、管理アプリケーション部２１内に保持されているデフォルト判定ルールに基づいて、イベントの許可または禁止を判定する（ステップＳ３９）。一方、判定アプリケーション部２２が登録済みであれば、管理アプリケーション部２１は、イベント情報を判定アプリケーション部２２に通知する（ステップＳ４０）。判定アプリケーション部２２は、上述のルールセットに基づいて、イベント情報によって指定されるイベントの許可または禁止を判定する（ステップＳ４１）。そして、判定アプリケーション部２２は、このイベントの許可または禁止を示す判定結果を管理アプリケーション部２１に送信する（ステップＳ４２）。
【００８３】
管理アプリケーション部２１は、デフォルト判定ルールに基づく判定結果または判定アプリケーション部２２から受信される判定結果を、アクセス検出・制御部１０に送信する（ステップＳ４３、Ｓ４４）。アクセス検出・制御部１０は、管理アプリケーション部２１から受信される判定結果に基づいて、検出したイベントに対応する処理の実行を制御する（ステップＳ３６）。
【００８４】
図１５は、管理アプリケーション部２１の他の構成を示す。
【００８５】
図１３では、管理アプリケーション部２１が判定アプリケーション部２２と何らかの原因で通信できなかった場合、または判定アプリケーション部２２が管理アプリケーション部２１の判定アプリケーション登録部２０９に登録されていなかった場合に、デフォルト判定ルール管理部２１１でインストールの許可または禁止を示す判定結果を通信処理部２０１を介してアクセス検出・制御部１０に送信する構成を示していた。図１５は、図１３で説明した条件が成立する場合のみならず、管理アプリケーション部２１が判定アプリケーション部２２と通信可能な状態にあり、かつ判定アプリケーション部２２が管理アプリケーション部２１の判定アプリケーション登録部２０９に登録されていたとしても、判定アプリケーション部２２からイベント登録要求がない限りは管理アプリケーション部２１のデフォルト判定ルール管理部２１１でインストールイベントを含むすべてのイベントを処理する構成となっている。
【００８６】
また、図１３では、判定アプリケーションのインストールイベントの受信に応答して署名検証を実行して、判定アプリケーションの正当性を確認するという処理手順を説明した。図１５の管理アプリケーション部２１の構成は、インストールされた判定アプリケーションからの登録要求の受信に応答して、判定アプリケーションの正当性を確認する処理を実行する場合が想定されている。
【００８７】
すなわち、図１５の管理アプリケーション部２１においては、初期状態（判定アプリケーションがインストールされていない状態）では特定のアプリ名以外のインストールイベント以外はアクセス検出・制御部から通知されない。
【００８８】
管理アプリケーション部２１は、判定アプリケーション部２２のインストールイベントそのものは検出しない。判定アプリケーンション部２２からサービス提供通信部２０２に登録要求が送信された時に、管理アプリケーション部２１は、判定アプリケーンション部２２のアプリケーション名を特定し、このアプリケーション名が選別ルール管理部２０３で保持している判定アプリケーション名と一致しているか検査する。もし一致している場合は、判定アプリケーンション部２２が偽の判定アプリケーションではない事を確かめるために、管理アプリケーション部２１は、署名検証部２０６によって、上述の署名検証を行う。もし判定アプリケーション部２２が正当な判定アプリケーションであることが確認されたならば、管理アプリケーション部２１は、全てのイベントを管理アプリケーション部に送信すべきことを、アクティベート部２１２によってイベント検出部１０に指示する。
【００８９】
すなわち、判定アプリケーション登録部２０９に判定アプリケーション部２２が登録されると、アクティベート部２１２は、アクティベーション命令を通信処理部２０１を介してアクセス検出・制御部１０に送信する。これにより、以降は、全てのイベントがアクセス検出・制御部１０から管理アプリケーション部２１に通知される。しかし、判定アプリケーション登録部２０９に判定アプリケーション部２２が登録されたとしても、判定アプリケーション部２２から管理アプリケーション部２１にイベント登録要求が送信されるまでは、全てのイベントが管理アプリケーション部２１で処理される。この場合、イベント選別部２０４およびアプリケーション選別部２０５は、選別ルール管理部２０３のルールに従って、全てのイベントをデフォルトルール判定部２１１に通知する。各イベントの実行の可否はデフォルトルール判定部２１１に保持されている判定ルールに従ってデフォルトルール判定部２１１にて判定され、その判定結果が通信処理部２０１を介してアクセス検出・制御部１０に送信される。
【００９０】
サービス提供通信部２０２が判定アプリケーション部２１からイベント登録要求を受信すると、サービス提供通信部２０２は、イベント登録要求に従って選別ルール管理部２０３のルールを更新する。これにより、以降は、イベント登録要求によって指定される各イベントは、判定アプリケーション部２２に送信される。すなわち、イベント選別部２０４およびアプリケーション選別部２０５は、選別ルール管理部２０３のルールに従って、受信されたイベントが判定アプリケーション部２２に送信すべきイベントであるか否かを判定する。受信されたイベントが判定アプリケーション部２２に送信すべきイベントであれば、受信されたイベントは、サービス提供通信部２０２を介して判定アプリケーション部２１に送信される。一方、受信されたイベントが判定アプリケーション部２２に送信すべきイベントではないならば、受信されたイベントは、デフォルトルール判定部２１１に送信される。
【００９１】
図１６は、登録要求部３１５とイベント登録要求処理部３１６が追加された判定アプリケーション部２２の構成を示す。
【００９２】
登録要求部１１５は、判定アプリケーション部２２が起動すると、サービス利用通信部３１１を介して管理アプリケーション部２１に対して、判定アプリケーション部２２を登録するための登録処理を実行するように要求する命令を送信する処理部である。イベント登録要求処理部３１６は、受信したい各イベントを示すイベント登録要求をサービス利用通信部３１１を介して管理アプリケーション部２１に送信する。
【００９３】
イベント登録要求とは、たとえば「インストールイベントを通知するように依頼する要求」、「WiFi接続イベントを通知するように依頼する要求」、「ＳＤカード接続イベントを通知するように依頼する要求」、「ＵＳＢメモリ接続イベントを通知するように依頼する要求」などのように、イベントごとにそのイベントの通知を管理アプリケーション部２１に依頼するための要求である。なお、イベント登録要求は、すべてのイベントの通知を依頼する要求であってもよい。
【００９４】
判定アプリケーション部２２が管理アプリケーション部２１に登録され、且つイベント登録要求を判定アプリケーション部２２から受け取ると、管理アプリケーション部２１は、以降、イベント登録要求によって指定されるイベントを判定アプリケーション部２２に送信する。
【００９５】
なお、たとえ全てのイベントの通知を依頼するイベント登録要求を判定アプリケーション部２２から受けたとしても、管理アプリケーション部２１は、特定のアプリケーション名を持つインストールイベントについては判定アプリケーション部２２に通知しない。
【００９６】
図１７は、イベント設定変更部１１０が追加されたアクセス検出・制御部１０の構成を示している。
【００９７】
図１２のアクセス検出・制御部１０は、管理アプリケーション部２１のアップデートの可否の判定と判定アプリケーション部のインストールの可否の判定のために、全てのインストールイベントを管理アプリケーション部２１に送信する。しかし、図１７のアクセス検出・制御部１０は、管理アプリケーション部２１からのアクティベーション命令を受けるまでは、インストールイベント以外の他のイベントは送信しない。アクティベーション指示を受けて初めて、アクセス検出・制御部１０は、インストールイベント以外の他のイベントを管理アプリケーション部２１に送信する。
【００９８】
イベント設定変更部１１０はイベント検出部１０２に対してどのイベントを管理アプリケーション部２１に送信すべきかを指示を出す。管理アプリケーション部２１からのアクティベーション命令を受けると、イベント設定変更部１１０は、全てのイベントを管理アプリケーション部２１に送信すべきことを、イベント検出部１０２に指示する。
【００９９】
上述した図１５、図１６、図１７の構成は、特にビジネス利用と一般コンシューマー利用を一台の端末で兼用する時に有用である。一般コンシューマー利用では、アプリケーションのインストールや起動、またはネットワーク接続など、アクセス検出・制御部１０のイベント検出部１０２で検出するイベントの実行を制限する必要はない。この時、判定アプリケーション部２２をインストールしなければ、判定アプリケーション部２２が管理アプリケーション部２１に登録要求を送信する事もなく、管理アプリケーション部２１がアクセス検出・制御部１０にアクティベーション命令を送信する事もなく、結果としてイベントはイベント設定変更部１１０の初期ルールに従って可否判断がなされる。この時、イベント設定変更部１１０には、制限を行わない(禁止しない)ルールを設定しておけばよい。これにより、一般コンシューマーが利用する場合はイベント検出部１０２で検出されるイベントは特に制限されない。一方、情報処理装置１を企業内で業務用に利用する場合においては、管理者のセキュリティポリシーに従って端末に各種制限を施す必要があり、その場合には各企業のセキュリティポリシーに従った判定ルールを備えた判定アプリケーション部２２をインストールする。判定アプリケーション部２２が管理アプリケーション部２１に登録要求を送信し、管理アプリケーション部２１がアクティベーション命令をアクセス検出・制御部１０に送信すれば、以後にイベント検出部１０２で検出されるイベントは管理アプリケーション部２１に送信されるようになる。判定アプリケーション部２２が管理アプリケーション部２１にイベント登録要求を送信すれば、アクセス検出・制御部１０から送信されてくる各イベントは、管理アプリケーション部２１を経由して判定アプリケーション部２２に送信される事になり、各企業のセキュリティポリシーに従った判定ルールによって各イベントの可否が判断されるようになる。
【０１００】
さらに、判定アプリケーション部２２は上述のイベント登録要求を使用して通知を依頼すべきイベントを管理アプリケーション部２１に指示することにより、受信したいイベントのみを管理アプリケーション部２１から受け取ることができる。よって、特に制限をかける必要のないイベントは管理アプリケーション部２１のデフォルトルール判定部２１１で処理されるため、管理アプリケーション部２１と判定アプリケーション部２２の通信が不要となり、高速に判定を行う事が可能になり機器の処理速度を向上させることができる。判定アプリケーション部２２は、受信したいイベントを上述のイベント登録要求によって管理アプリケーション部２１に通知することができる。
【０１０１】
また、判定アプリケーション部２２のイベント登録要求に、デフォルト判定ルール管理部２１１の判定ルールを更新するような命令を含めても良い。管理アプリケーション部２１はデフォルト判定ルール管理部２１１の判定ルールは、判定アプリケーション部２２が判定アプリケーション登録部２０９に登録されていない状態と、判定アプリケーション部２２が判定アプリケーション登録部２０９に登録された後、何らかの理由で管理アプリケーション部２１が判定アプリケーション登録部２０９と通信できなくなった場合の両方で利用されるが、この二つの状態で判定ルールを変える事ができるようになる。たとえば、判定アプリケーション部２２が判定アプリケーション登録部２０９に登録されていない状態では、一般コンシューマー向けに利用されるため、イベントを制限しない（アンインストールや、WiFi接続や、ＳＤカード接続や、ＵＳＢメモリ接続を許可する）が、判定アプリケーション部２２が判定アプリケーション登録部２０９に登録された後は、ビジネス目的に利用されているため、何らかの理由で管理アプリケーション部２１が判定アプリケーション登録部２０９と通信できなくなった場合にイベントを制限するように変更する事ができるようになる。
【０１０２】
次に、図１８、図１９、図２０のフローチャートを参照して、インストーラ部２３、アクセス検出・制御部１０、管理アプリケーション部２１および判定アプリケーション部２２それぞれによって実行される処理の手順を説明する。
【０１０３】
インストーラ部２３は、ユーザによるアプリケーションインストール操作に応じてインストール要求が発生すると（ステップＳ１１１）、インストール対象のアプリケーションに対応するアプリケーションパッケージファイルを取得する（ステップＳ１１２）。そして、インストーラ部２３は、このインストール対象のアプリケーションのインストールを指示するインストール命令をアクセス検出・制御部１０に送信する（ステップＳ１１３）。
【０１０４】
アクセス検出・制御部１０は、インストール命令の受信に応じて、アプリケーションのインストールを要求するイベントが発生したことを検出する。アクセス検出・制御部１０は、インストール処理の実行を保留する（ステップＳ１１４）。
【０１０５】
アクセス検出・制御部１０は、アクセス検出・制御部１０がアクティベーションされていない状態（初期状態）であるか否かを判定する（ステップＳ１１５）。アクセス検出・制御部１０がアクティベーションされていない状態（初期状態）であれば、アクセス検出・制御部１０は、インストーラ部２３がインストールしようとするアプリケーションが上述の特定のアプリケーション名を有するアプリケーションであるか否かを判定する（ステップＳ１１６）。
【０１０６】
インストーラ部２３がインストールしようとするアプリケーションが上述の特定のアプリケーション名を有するアプリケーションでないならば、アクセス検出・制御部１０は、アクセス検出・制御部１０内に保持される初期状態イベントルールに従って、このインストールイベントの許可または禁止を判定する（ステップＳ１１７）。この初期状態イベントルールは、初期状態においてアクセス検出・制御部１０が各イベントの可否を判定するためのルールである。初期状態イベントルールは、イベント設定変更部１０６またはデフォルト判定ルール管理部１０６に格納されていてもよい。
【０１０７】
一方、インストールしようとするアプリケーションが上述の特定のアプリケーション名を有するアプリケーションであれば、アクセス検出・制御部１０は、インストールイベントと上述の特定のアプリケーション名をインストールイベント情報として管理アプリケーション部２１に送信する。
【０１０８】
管理アプリケーション部２１は、アクセス検出・制御部１０から受信されるインストールイベント情報に含まれるアプリケーション名に対応するアプリケーションパッケージファイルを取得し（ステップＳ１１８）、このアプリケーションパッケージファイルに付与された証明書（署名）とこの証明書（署名）に対応する公開鍵とを使用して、インストーラ部２３がインストールしようとするアプリケーションの正当性を確認するための署名検証を実行する（ステップＳ１１９）。そして、管理アプリケーション部２１は、署名検証の結果を確認し（ステップＳ１２０）、署名検証の結果に応じて、インストールを許可するか否かを判定する（ステップＳ１２１）。
【０１０９】
そして、図１９に示すように、管理アプリケーション部２１は、判定結果をアクセス検出・制御部１０に送信する（ステップＳ１２２）。判定結果は、管理アプリケーション部２１内の通信処理部２０１を介してアクセス検出・制御部１０に送信される（ステップＳ１２３）。
【０１１０】
アクセス検出・制御部１０は、判定結果（初期状態イベントルールに基づく判定結果または管理アプリケーション部２１から受信された判定結果）が、インストール許可を示すか否かを判定する（ステップＳ１２４）。判定結果がインストール禁止を示すならば（ステップＳ１２４のＮＯ）、アクセス検出・制御部１０は、インストール対象のアプリケーションのインストール処理を実行せずに、エラーメッセージをインストーラ部２３に返す（ステップＳ１２６）。インストーラ部２３はインストールのエラーをユーザに通知する等のエラー処理を実行する（ステップＳ１２７）。
【０１１１】
一方、判定結果がインストール許可を示すならば（ステップＳ１２４のＹＥＳ）、アクセス検出・制御部１０は、インストール対象のアプリケーションをインストールするためのインストール処理を実行する（ステップＳ１２５）。インストール処理では、たとえば、アプリケーションパッケージファイルに対応するファイルが所定のディレクトリに作成される。そして、インストール処理が完了すると、インストーラ部２３は、アプリケーションパッケージファイル内のサムネイル画像ファイル等をアプリケーション情報格納部に登録する（ステップＳ１２８）。
【０１１２】
図２０に示されているように、判定アプリケーション部２２がインストールされると、判定アプリケーション部２２を管理アプリケーション部２１に登録するための登録処理が開始される（ステップＳ１３０）。管理アプリケーション部２１は、アクティベーション命令をアクセス検出・制御部１０に送信する（ステップＳ１３１）。
【０１１３】
アクセス検出・制御部１０がアクティベーションされている場合、つまり初期状態ではない場合（ステップＳ１１５のＮＯ）、アクセス検出・制御部１０は、発生した全てのイベントを管理アプリケーション部２１に送信する。例えば、もしあるアプリケーションのインストールイベントが発生したならば、アクセス検出・制御部１０は、インストールイベントとインストールしようとするアプリケーション名とをインストールイベント情報として管理アプリケーション部２１に送信する（ステップＳ１３２）。
【０１１４】
管理アプリケーション部２１は、アクセス検出・制御部１０から受信されるインストールイベント情報に含まれるアプリケーション名（インストーラ部２３がインストールしようとするアプリケーション）が、特定のアプリケーション名であるか否かを判定する（ステップＳ１３３）。
【０１１５】
インストーラ部２３がインストールしようとするアプリケーションが特定のアプリケーション名であるならば（ステップＳ１３３のＹＥＳ）、管理アプリケーション部２１は、特定のアプリケーション名に対応するアプリケーションパッケージファイルを取得し（ステップＳ１３４）、このアプリケーションパッケージファイルに付与された証明書（署名）とこの証明書（署名）に対応する公開鍵とを使用して、インストーラ部２３がインストールしようとするアプリケーションの正当性を確認するための署名検証を実行する（ステップＳ１３５）。そして、管理アプリケーション部２１は、署名検証の結果を確認し、署名検証の結果に応じて、インストールを許可するか否かを判定する（ステップＳ１３６）。
【０１１６】
一方、インストーラ部２３がインストールしようとするアプリケーションが特定のアプリケーション名でないならば（ステップＳ１３３のＮＯ）、管理アプリケーション部２１は、インストールイベント情報を判定アプリケーション部２２に通知する（ステップＳ１３７）。判定アプリケーション部２２は、インストールイベント情報に含まれるアプリケーション名に基づいて、そのアプリケーションのインストールの許可または禁止を判定する（ステップＳ１３８）。管理アプリケーション部２１は、インストールの許可または禁止を示す判定結果を判定アプリケーション部２２から受信する（ステップＳ１３９）。
【０１１７】
管理アプリケーション部２１は、管理アプリケーション部２１内の署名検証部２０６による判定結果、または判定アプリケーション部２２による判定結果を、アクセス検出・制御部１０に送信する（ステップＳ１４０）。判定結果は、管理アプリケーション部２１内の通信処理部２０１を介してアクセス検出・制御部１０に送信される（ステップＳ１４１
）。そして、アクセス検出・制御部１０によって図１９のステップＳ１２４以降の処理が実行される。
【０１１８】
図２１は、アクションルール管理部３１７およびアクション設定部３１８が追加された判定アプリケーション部２２の構成を示す。
【０１１９】
判定アプリケーション部２２は、ある特定のイベント情報を受信した時に、そのイベントの許可または禁止を判定するだけでなく、そのイベントの許可を判定したことに応答して所定のアクションを実行するように構成されている。アクションルール管理部３１７には、幾つかの特定のイベント毎に実行すべきアクションの内容を定義するアクションルールが保持されている。アクション設定部３１８は、あるイベントの許可判定に応答して実行すべきアクションの内容をアクションルールに基づいて決定し、決定したアクションを管理アプリケーション部２１に通知するか、もしくは、決定したアクションの内容に基づいて判定ルール管理部３１３のルールを更新する。
【０１２０】
アクション設定部３１８は、たとえば、ある特定のイベント（第１のイベント）に対応する処理を許可したら、特定の処理の実行を要求する別のイベント（第２のイベント）に対する判定結果の内容を動的に変更するための処理を実行する。これにより、これまでは禁止されていた特定のイベントの実行を許可したり、あるいはこれまでは許可されていた特定のイベントの実行を禁止したりすることができる。
【０１２１】
第１のイベントとしては、特定の外部通信機器との接続を要求するネットワーク接続イベント等を使用することができる。これにより、例えば、特定のＷｉＦｉアクセスポイントとの接続を要求するイベントが検出され且つそのイベントが許可された後は、これまでは禁止されていたアプリケーションの起動を許可したり、これまでは許可されたＵＳＢメモリの接続を禁止したりすることができる。
【０１２２】
例えば、企業内のＷｉＦｉアクセスポイントを上述の特定のＷｉＦｉアクセスポイントとして設定した場合には、上述の特定のＷｉＦｉアクセスポイントへの接続を要求するイベントは、情報処理装置１が企業内で使用される場合に発生する。よって、情報処理装置１が企業内で使用されるという状況を自動的に検出し、これに応答して、自動的に、（ａ）インストール制限の有効化・無効化の切り替え、（ｂ）アプリケーション起動制限の有効化・無効化の切り替え、（ｃ）接続を禁止するＩＰアドレスとポート番号の追加または変更、（ｄ）アプリケーションアンインストール制限の有効化・無効化の切り替え、（ｅ）ＳＤメモリカードまたはＵＳＢメモリ接続制限の有効化・無効化の切り替え、（ｆ）アプリケーションアンインストール制限の有効化・無効化の切り替え、（ｇ）プロキシの有効化・無効化の切り替え等を実行することができる。例えば、以下のようなアクションを実行することができる。
【０１２３】
（１）情報処理装置１が特定のＷｉＦｉアクセスポイントと接続した場合にアプリケーション起動制限が有効になり、且つ接続を許可する外部通信機器のリストが更新される（企業内ではゲームアプリケーションの起動禁止、且つ接続可能な外部通信機器を制限）。
【０１２４】
（２）情報処理装置１が特定のＢｌｕｅｔｏｏｔｈ機器に接続された場合にＶＰＮ（仮想プライベートネットワーク）アプリケーションの起動を許可する（特定のＢｌｕｅｔｏｏｔｈ機器をトークンとして使用）。
【０１２５】
（３）情報処理装置１が特定のＷｉＦｉアクセスポイントと接続した場合にアプリケーションアンインストール制限が無効になる。
【０１２６】
（４）情報処理装置１が特定のＷｉＦｉアクセスポイントと接続した場合に特定のＩＰアドレスとポート番号に限って接続が可能になる（企業内では接続先のサーバを制限する）。
【０１２７】
（５）情報処理装置１が特定のＷｉＦｉアクセスポイントと接続した場合にＳＤメモリカード／ＵＳＢメモリの使用を禁止する（情報の持ち出し禁止）。
【０１２８】
（６）情報処理装置１が特定のＷｉＦｉアクセスポイントと接続した場合に特定のアプリケーションの起動を許可（企業内でのみ、業務用アプリケーションの使用を許可）。
【０１２９】
いま、ある特定の外部通信機器との接続を要求するイベント（第１のイベント）に応じて、別の特定の処理の実行を要求する第２のイベントに対する判定結果の内容を動的に変更する場合を想定する。この場合、第１のイベントがアクセス検出・制御部１０によって検出されて、そのイベント情報が管理アプリケーション部２１を介して判定アプリケーション部２２に送られると、判定アプリケーション部２２は、第１のイベントの許可を示す判定結果を出力すると共に、第２のイベントに対する判定結果を、例えば、禁止から許可に、あるいは許可から禁止に更新する。したがって、管理アプリケーション部２１は判定アプリケーション部２２から受信された判定結果をアクセス検出・制御部１０に送信するので、管理アプリケーション部２１は、結果的に、以下のように動作する。
【０１３０】
すなわち、管理アプリケーション部２１は、アクセス検出・制御部１０によって検出されたイベントが特定の外部通信機器との接続を要求するイベント（第１のイベント）である場合は、この特定の外部通信機器との接続の許可を示す判定結果をアクセス検出・制御部１０に送信する。
【０１３１】
アクセス検出・制御部１０によって検出されたイベントが特定の処理の実行を要求するイベント（第２のイベント）であり、且つ上述の特定の外部通信機器との接続が許可されていない場合、つまり第１のイベントが検出される前に第２のイベントが検出された場合には、管理アプリケーション部２１は、判定アプリケーション部２２から得られる第２のイベントに対する判定結果にしたがって、上述の特定の処理の実行の許可または禁止の一方を示す第１の判定結果をアクセス検出・制御部１０に送信する。
【０１３２】
アクセス検出・制御部１０によって検出されたイベントが上述の第２のイベントであり、且つ上述の特定の外部通信機器との接続が許可されている場合は、つまり第１のイベントが検出された後に第２のイベントが検出された場合には、管理アプリケーション部２１は、判定アプリケーション部２２から得られる第２のイベントに対する判定結果にしたがって、上述の特定の処理の実行の許可または禁止の他方を示す第２の判定結果をアクセス検出・制御部１０に送信する。
【０１３３】
図２２は、図２１の判定アプリケーション部２２が保持するルール、つまりイベントと判定結果とアクションとの関係を示す。
【０１３４】
各イベント内容は、以下のように分類することができる。  
（１）ＷｉＦｉ接続
（２）ＷｉＦｉ接続とアクセスポイント名の組み合わせ
（３）ＷｉＦｉ接続とアドレス（ＭＡＣアドレス）の組み合わせ
（４）ＷｉＦｉ接続とアクセスポイント名とアドレス（ＭＡＣアドレス）の組み合わせ
（５）Ｂｌｕｅｔｏｏｔｈ接続
（６）Ｂｌｕｅｔｏｏｔｈ接続要求受信
（７）Ｂｌｕｅｔｏｏｔｈ接続要求受信と、Ｂｌｕｅｔｏｏｔｈ接続要求の送信元のＢｌｕｅｔｏｏｔｈ機器のアドレスとの組み合わせ
（８）Ｂｌｕｅｔｏｏｔｈ接続要求送信
（９）Ｂｌｕｅｔｏｏｔｈ接続要求送信と、Ｂｌｕｅｔｏｏｔｈ接続要求の送信先のＢｌｕｅｔｏｏｔｈ機器のアドレスとの組み合わせ
これら（１）〜（９）の内の任意の組み合わせをイベントとして使用しても良い。
【０１３５】
アクションの内容、つまり有効または無効を切り替えることが可能な処理制限の内容は、例えば、以下の通りである。
【０１３６】
（ａ）アプリケーション起動制限（リスト以外のアプリは起動してはいけない）、
（ｂ）接続先ＩＰアドレスとポート番号の制限、
（ｃ）アプリケーションインストール制限
（ｄ）アプリケーションアンインストール制限
（ｅ）ＳＤメモリカード接続禁止
（ｆ）ＵＳＢメモリ接続禁止
（ｇ）プロキシの有効化（設定したプロキシサーバとの通信しか許可しない）
図２２では、「アクセスポイント名“Ｘ”のＷｉＦｉアクセスポイントとの接続」、「アクセスポイント名“Ｙ”のＷｉＦｉアクセスポイントとの接続」、「ＭＡＣアドレス“Ｘ”のＷｉＦｉアクセスポイントとの接続」、「Ｂｌｕｅｔｏｏｔｈアドレス“Ｚ”の機器との接続」が上述の第１のイベントとして定義されている。
【０１３７】
例えば、「アクセスポイント名“Ｘ”のＷｉＦｉアクセスポイントとの接続」のイベントが検出されると、このイベントは許可される。さらに、以降は、これまで許可されていた特定のＩＰアドレスを有するサーバへの接続が禁止される。なお、ＩＰアドレスに加えてポート番号で制限してもよい。「アクセスポイント名“Ｙ”のＷｉＦｉアクセスポイントとの接続」のイベントが検出されると、このイベントは許可される。さらに、以降は、これまで禁止されていた特定のアプリケーションの起動が許可される。
【０１３８】
このように、本実施形態では、個々のネットワークイベント接続イベント毎に接続の許可または禁止を制御でき、さらに、情報処理装置１と接続されるＷｉＦｉアクセスポイント等に応じて、情報処理装置１の挙動を動的に変更することができる。
【０１３９】
図２３は、アクション受信部２１２とイベント判定部２１３が追加された管理アプリケーション部２１の構成を示す。
【０１４０】
管理アプリケーション部２１は、判定アプリケーション部２２から判定結果とアクションを受信する。アクションなしの場合は、サービス提供通信部２０２から通信処理部２０１へ判定結果が通知される。アクションありの場合は、アクション受信部２１２が、判定アプリケーション部２２からのアクションをサービス提供通信部２０２を介して受信する。この受信されたアクションは、通信処理部２０１を介してアクセス検出・実行部１０に送信される。アクセス検出・実行部１０は、受信したアクションを実行することができる。これにより、以降は、特定の幾つかのイベントの許可または禁止をアクセス検出・実行部１０内で判定することができる。
【０１４１】
管理アプリケーション部２１内のイベント判定部２１３は、判定アプリケーション部２２内のイベント判定部３１２と同じ処理を実行することができる。特定の幾つかのイベントの可否がイベント判定部２１３で判定されるように選別ルール管理部２０３のルールを、アクションに応じて、変更するようにしても良い。また、特定の幾つかのイベントの可否が管理アプリケーション部２１で判定されるようにデフォルト判定ルール管理部２０３のルールを、アクションに応じて、変更するようにしても良い。
【０１４２】
次に、図２４のフローチャートを参照して、アクセス検出・制御部１０、管理アプリケーション部２１および判定アプリケーション部２２それぞれによって実行される処理の手順のさらに他の例を説明する。
【０１４３】
ネットワーク接続イベントのようなあるイベントの発生が検出されると（ステップＳ５１）、アクセス検出・制御部１０は、検出されたイベントの内容を示すイベント情報を管理アプリケーション部２１に送信する（ステップＳ５２）。管理アプリケーション部２１は、イベント情報を受信し（ステップＳ５３）、受信したイベント情報を判定アプリケーション部２２に通知する（ステップＳ５４）。判定アプリケーション部２２は、上述のルールセットに基づいて、イベント情報によって指定されるイベントの許可または禁止を判定する（ステップＳ５５）。そして、判定アプリケーション部２２は、もしこのイベントがアクションが関連づけられた特定のイベントであるならば、このイベントに対応するアクションを管理アプリケーション部２１に送信する（ステップＳ５６）。これにより、アクセス検出・制御部１０によって検出されるイベントがある特定のイベントである場合には、アクションを含む判定結果が、判定アプリケーション部２２から管理アプリケーション部２１に送信される（ステップＳ５７）。
【０１４４】
管理アプリケーション部２１は、受信した判定結果（または、アクションを含む受信した判定結果）を、アクセス検出・制御部１０に送信する（ステップＳ５８、Ｓ５９）。アクセス検出・制御部１０は、管理アプリケーション部２１から受信される判定結果に基づいて、検出したイベントに対応する処理の実行を制御する（ステップＳ６０）。そして、アクセス検出・制御部１０は、受信した判定結果にアクションが含まれているか否かを判定する（ステップＳ６１）。受信した判定結果にアクションが含まれているならば、アクセス検出・制御部１０は、そのアクションを実行する（ステップＳ６２）。
【０１４５】
例えば、アクションとしては、接続先ＩＰアドレスとポート番号を制限するアクションが使用される。つまり、このアクションは、あるＷｉＦｉアクセスポイントとの接続に応じて、特定のＩＰアドレスを有するＷｅｂサイトへの特定のポート番号を使った接続を禁止するアクションである。このアクション（ＩＰアドレス・ポート番号制限）はアクセス検出・制御部１０で処理され、アクセス検出・制御部１０のフィルタールール管理部１０８を更新し、ネットワークフィルター部１０７に設定される事で、特定のＩＰアドレスを有するＷｅｂサイトへの特定のポート番号を使った接続を禁止する処理がアクセス検出・制御部１０によって実行される。
【０１４６】
次に、図２５のフローチャートを参照して、アクセス検出・制御部１０、管理アプリケーション部２１および判定アプリケーション部２２それぞれによって実行される処理の手順のさらに他の例を説明する。
【０１４７】
ネットワーク接続イベントのようなあるイベントの発生が検出されると（ステップＳ７１）、アクセス検出・制御部１０は、検出されたイベントの内容を示すイベント情報を管理アプリケーション部２１に送信する（ステップＳ７２）。管理アプリケーション部２１は、イベント情報を受信し（ステップＳ７３）、受信したイベント情報を判定アプリケーション部２２に通知する（ステップＳ７４）。判定アプリケーション部２２は、上述のルールセットに基づいて、イベント情報によって指定されるイベントの許可または禁止を判定する（ステップＳ７５）。そして、判定アプリケーション部２２は、もしこのイベントがアクションが関連づけられた特定のイベントであるならば、このイベントにしたがって、判定アプリケーション部２２内に保持されている判定ルールを更新する（ステップＳ７６）。例えば、特定のＷｉＦｉアクセスポイントの接続を要求するイベントを検出すると、判定アプリケーション部２２部は自分で判定ルールを更新し、起動不可とするアプリケーションを追加する処理などを行っても良い（業務中はゲームアプリケーションの起動を禁止）。イベントによって要求される特定のＷｉＦｉアクセスポイントと接続は、許可される。そして、判定結果のみが、判定アプリケーション部２２から管理アプリケーション部２１に送信される（ステップＳ７７）。
【０１４８】
管理アプリケーション部２１は、例えば、「接続先ＷｉＦｉアクセスポイントに応じて、特定のＩＰアドレスとポート番号への接続を禁止する」というアクションを有しており、受信した判定結果とこのアクションとをアクセス検出・制御部１０に送信する（ステップＳ７８、Ｓ７９）。アクションの内容は「特定のIPアドレスには接続禁止」である。
【０１４９】
アクセス検出・制御部１０は、管理アプリケーション部２１から受信される判定結果に基づいて、検出したイベントに対応する処理の実行を制御する（ステップＳ８０）。そして、アクセス検出・制御部１０は、受信した判定結果にアクションが含まれているか否かを判定する（ステップＳ８１）。受信した判定結果にアクションが含まれているならば、アクセス検出・制御部１０は、そのアクションを実行する（ステップＳ８２）。この結果、アクセス検出・制御部１０のフィルタールール管理部１０８が更新されることで、特定のIPアドレスを有するサーバへの接続を禁止する処理がアクセス検出・制御部１０によって実行される。
【０１５０】
同様に、管理アプリケーション部２１が、例えば、「接続先ＷｉＦｉアクセスポイントに応じて、ＨＴＴＰ通信はＩＰアドレスＡ、ＴＣＰポート番号Ｂのプロキシサーバと通信するように設定する」というアクションを有しており、受信した判定結果とこのアクションとをアクセス検出・制御部１０に送信する（ステップＳ７８、Ｓ７９）。アクションの内容は「ＨＴＴＰプロキシサーバをＩＰアドレスＡ、ＴＣＰポート番号Ｂに設定する」である。
【０１５１】
アクセス検出・制御部１０はプロキシ設定部１０９に、ＨＴＴＰプロキシサーバとしてＩＰアドレスＡ、ＴＣＰポート番号Ｂを設定する。これ以降、情報処理装置１はＨＴＴＰのプロトコルで通信する場合、必ずＩＰアドレスＡ、ＴＣＰポート番号Ｂのプロキシサーバを経由して通信する事になる。このようにすることで、企業内の利用者が社内の無線ＬＡＮアクセスポイントに接続すると、自動的にプロキシの設定が施されるようになるため、利用者の使い勝手が良くなるだけでなく、企業内のネットワークセキュリティ管理者にとってみれば、情報処理装置１は必ずプロキシサーバを経由して通信することになるため、不正なＷｅｂサイトを閲覧していないかといった利用情報を監視する事もできるようになり、セキュリティを向上させることができる。
【０１５２】
次に、図２６のフローチャートを参照して、アクセス検出・制御部１０、管理アプリケーション部２１および判定アプリケーション部２２それぞれによって実行される処理の手順のさらに他の例を説明する。
【０１５３】
ネットワーク接続イベントのようなあるイベントの発生が検出されると（ステップＳ９１）、アクセス検出・制御部１０は、検出されたイベントの内容を示すイベント情報を管理アプリケーション部２１に送信する（ステップＳ９２）。管理アプリケーション部２１は、イベント情報を受信し（ステップＳ９３）、受信したイベント情報を判定アプリケーション部２２に通知する（ステップＳ９４）。判定アプリケーション部２２は、上述のルールセットに基づいて、イベント情報によって指定されるイベントの許可または禁止を判定する（ステップＳ９５）。そして、判定アプリケーション部２２は、もしこのイベントがアクションが関連づけられた特定のイベントであるならば、このイベントに対応するアクションを管理アプリケーション部２１に送信する（ステップＳ９６）。これにより、アクセス検出・制御部１０によって検出されるイベントがある特定のイベントである場合には、アクションを含む判定結果が、判定アプリケーション部２２から管理アプリケーション部２１に送信される（ステップＳ９７）。
【０１５４】
管理アプリケーション部２１は、受信したアクションに従って、管理アプリケーション部２１内に保持されている判定ルール（選別ルール、イベント判定ルール）を更新する（ステップＳ９８）。例えば、これまでアプリケーションインストールイベントは管理アプリケーション部２１から判定アプリケーション部２２に送信していたが、管理アプリケーション部２１のイベント判定部２１３に、「特定のＷｉＦｉアクセスポイントに接続したら特定のアプリケーションはインストール許可とする」というルールを設定し、該当するインストールイベントを受信したら、判定アプリケーション部２２ではなく、管理アプリケーション部２１がインストール許可と判定し、判定結果をアクセス検出・制御部１０に送信する。この場合、管理アプリケーション部２１と判定アプリケーション部２２の通信が発生しないので、処理を高速に行う事ができる。
【０１５５】
管理アプリケーション部２１は、特定のＷｉＦｉアクセスポイントとの接続を許可という判定結果を、アクセス検出・制御部１０に送信する（ステップＳ９９）。なお、判定アプリケーション部２２から受信されるアクションによっては、図２４のステップＳ５９と同様に、アクションを含む判定結果をアクセス検出・制御部１０に送信してもよい。
【０１５６】
アクセス検出・制御部１０は、管理アプリケーション部２１から受信される判定結果に基づいて、検出したイベントに対応する処理の実行を制御する（ステップＳ１００）。そして、アクセス検出・制御部１０は、受信した判定結果にアクションが含まれているか否かを判定する（ステップＳ１０１）。受信した判定結果にアクションが含まれているならば、アクセス検出・制御部１０は、そのアクションを実行する（ステップＳ１０２）。
【０１５７】
図２７は、情報処理装置１の他の構成を示している。図２７の情報処理装置１においては、ＶＰＮ（仮想プライベートネットワーク）アプリケーション部２４がアプリケーション実行部２０上で実行される。ＶＰＮアプリケーション部２４もアプリケーションプログラムである。ＶＰＮアプリケーション部２４はＶＰＮ設定アプリケーションであり、アクセス検出・制御部１０のＶＰＮクライアントにＶＰＮ設定とＶＰＮ接続命令を送信し、インターネットを介してＶＰＮサーバ７と通信することによってＶＰＮ接続を確立する。ＶＰＮサーバ７は、情報処理装置１がＢＹＯＤとして用いられる企業内のサーバであってもよい。情報処理装置１のユーザは、例えば、自宅からＶＰＮサーバ７に接続することができる。なお、図２７ではインストーラ部２３が図示されていないが、図２７の構成においても、インストーラ部２３がアプリケーション実行部２０上で実行されてもよい。
【０１５８】
図２８は、図２７の情報処理装置１内のアクセス検出・制御部１０内に設けられる通信接続管理部１００の構成例を示す。この通信接続管理部１００は、上述のＷｉＦｉコネクション確立部１２１およびＢｌｕｅｔｏｏｔｈコネクション確立部１２２に加え、ＶＰＮコネクション確立部１２３を備えている。
【０１５９】
ＶＰＮコネクション確立部１２３はいわゆるＶＰＮクライアントである。ＶＰＮコネクション確立部１２３内のＶＰＮ接続管理部１２３Ａは、ＶＰＮアプリケーション部２４からの要求に基づいてＶＰＮ接続を確立し、確立したらＶＰＮ接続検出部１２Ｂに確立したＶＰＮ接続の通知する。ＶＰＮ接続検出部１２ＢはＶＰＮ接続を検出し、検出したＶＰＮ接続をイベント検出部１０２に送信する。イベント検出部１０２は、ＶＰＮ接続を示すイベント情報を管理アプリケーション部２１に送信する。このイベント情報には、ＶＰＮ接続した事と、通信先ＩＰアドレスが含まれている。
【０１６０】
図２９は、ＶＰＮ接続前における判定アプリケーション部２２内の判定ルールの内容とＶＰＮ接続後における判定ルールの変更内容とを示している。
【０１６１】
図２９において、アプリケーション“１”，“２”はシステムアプリケーションであり、アプリケーション“３”はＶＰＮアプリケーションを示す。つまり、初期状態（ＶＰＮ接続前）では、ＶＰＮアプリケーションしか起動できない。ＶＰＮ接続後は、アプリケーション４も起動許可となる。たとえば、アプリケーション４が人事情報管理データベースを操作するアプリケーションのように企業内ネットワークでのみ利用を許可するアプリケーションであったとする。情報処理装置１がユーザの自宅ネットワークなど社外の外部ネットワークに接続している間は、このアプリケーション４の起動は許可されていないが、社外ネットワークからＶＰＮによって社内イントラネットワークへの接続が成功した場合に、アプリケーション４の起動を許可するといった利用シーンを実現することができる。なお、この例では、判定アプリケーション部２２内に保持されているルールセット（判定ルール）を変更する例を示したが、管理アプリケーション部２１内に保持されているルールセットが変更されるように、ＶＰＮ接続のイベントの受信に応答して判定アプリケーション部２２が管理アプリケーション部２１にアクションを送信しても良い。
【０１６２】
ルール変更後にＶＰＮ接続断のイベントが受信されたならば、判定アプリケーション部２２内に保持されているルールセットの内容は、初期状態（ＶＰＮ接続前）のルールセットの内容に戻される。
【０１６３】
図３０は、判定アプリケーション部２２内に保持されているルール、つまりイベントと判定結果とアクションとの関係の他の例を示す。  
各イベント内容は、以下のように分類することができる。  
（１）ＷｉＦｉ接続
（２）ＷｉＦｉ接続とアクセスポイント名の組み合わせ
（３）ＷｉＦｉ接続とアドレス（ＭＡＣアドレス）の組み合わせ
（４）Ｂｌｕｅｔｏｏｔｈ接続要求受信
（５）Ｂｌｕｅｔｏｏｔｈ接続要求受信と、Ｂｌｕｅｔｏｏｔｈ接続要求の送信元のＢｌｕｅｔｏｏｔｈ機器のアドレスとの組み合わせ
（６）Ｂｌｕｅｔｏｏｔｈ接続要求送信
（７）Ｂｌｕｅｔｏｏｔｈ接続要求送信と、Ｂｌｕｅｔｏｏｔｈ接続要求の送信先のＢｌｕｅｔｏｏｔｈ機器のアドレスとの組み合わせ
（８）ＶＰＮサーバ認証成功
（９）特定のアプリケーションの起動
これら（１）〜（９）の内の任意の組み合わせをイベントとして使用しても良い。
【０１６４】
アクションの内容、つまり有効または無効を切り替えることが可能な処理制限の内容は、例えば、以下の通りである。
【０１６５】
（ａ）アプリケーション起動制限（リスト以外のアプリは起動してはいけない）
（ｂ）接続先ＩＰアドレスとポート番号の制限
（ｃ）アプリケーションインストール制限
（ｄ）アプリケーションアンインストール制限
（ｅ）ＳＤメモリカード接続禁止
（ｆ）ＵＳＢメモリ接続禁止
（ｇ）ＶＰＮアプリケーションの起動許可
（ｈ）ＷｉＦｉアクセスポイントへの接続許可
（ｉ）プロキシの有効化（設定したプロキシサーバとの通信しか許可しない）
これら（ａ）〜（ｉ）の内の任意の組み合わせをアクションとして使用しても良い。
【０１６６】
図３１は、情報処理装置１のハードウェア構成例を示す。情報処理装置１は、ＣＰＵ４１１、主メモリ４１２、タッチスクリーンディスプレイ４１３、ストレージ装置４１４、ＵＳＢコントローラ４１５、ＳＤカードコントローラ４１６、無線ＬＡＮコントローラ４１７、３Ｇ通信デバイス４１８、Ｂｌｕｅｔｏｏｔｈデバイス（ＢＴデバイス）４１９等を備える。
【０１６７】
ＣＰＵ４１１は情報処理装置１内の各コンポーネントを制御するプロセッサである。ＣＰＵ４１１は、ストレージ装置４１４から主メモリ４１２にロードされる様々なソフトウェア、例えば、ＯＳ、アプリケーションプログラム等を実行する。上述のアクセス検出・実行部１０はＯＳの一部として実行される。
【０１６８】
管理アプリケーション部２１および判定アプリケーション部２２は、上述したように、異なるアプリケーションプログラムとして実現されている。管理アプリケーション部２１に相当するアプリケーションプログラムは、上述したように、ストレージ装置４１４にプレインストールされていてもよい。
【０１６９】
判定アプリケーション部２２に相当するアプリケーションプログラムは、例えば、企業毎に用意されるアプリケーションプログラムであり、対応する企業に適した判定ルールに従ってイベントの実行の許可または禁止の判定を行う。判定アプリケーション部２２は、管理アプリケーション部２１とは別のモジュールであるので、企業毎にその企業のポリシーに合った判定アプリケーションを容易に作成することができる。
【０１７０】
たとえば、情報処理装置１をある企業Ａの業務で使用する場合には、企業Ａ用の判定アプリケーション部２２と企業Ａ用の様々なアプリケーションプログラムが情報処理装置１にインストールされうる。企業Ａ用の判定アプリケーション部２２は、企業Ａ用の様々なアプリケーションプログラムの各々のインストールを許可し且つ他のアプリケーションプログラムのインストールを禁止するためのルールセットを有していても良い。さらに、このルールセットには、例えば、企業Ａ内のあるＷｉＦｉアクセスポイントに接続に応じて、別のある処理の有効・無効が切り替えるというアクションが定義されていても良い。
【０１７１】
また、情報処理装置１をある企業Ｂの業務で使用する場合には、企業Ｂ用の判定アプリケーション部２２と企業Ｂ用の様々なアプリケーションプログラムが情報処理装置１にインストールされうる。企業Ｂ用の判定アプリケーション部２２は、企業Ｂ用の様々なアプリケーションプログラムの各々のインストールを許可し且つ他のアプリケーションプログラムのインストールを禁止するためのルールセットを有していても良い。さらに、このルールセットには、例えば、企業Ｂ内のあるＷｉＦｉアクセスポイントに接続に応じて、別のある処理の有効・無効が切り替えるというアクションが定義されていても良い。
【０１７２】
タッチスクリーンディスプレイ４１３は画面上のタッチ位置を検出可能なディスプレイであり、液晶表示装置（ＬＣＤ）のようなフラットパネルディスプレイとタッチパネルとを備える。
【０１７３】
ＵＳＢコントローラ４１５は、情報処理装置１に設けられたＵＳＢポートに取り付けられるＵＳＢデバイス（例えば、ＵＳＢメモリ等）との通信を実行するように構成されている。ＳＤカードコントローラ４１６は、情報処理装置１に設けられたカードスロットに挿入されるメモリカード（例えば、ＳＤカード等）との通信を実行するように構成されている。無線ＬＡＮコントローラ４１７はＷｉＦｉ等に準拠した無線通信を実行するように構成された無線通信デバイスである。３Ｇ通信デバイス４１８は３Ｇ移動通信を実行するように構成された無線通信デバイスである。Ｂｌｕｅｔｏｏｔｈデバイス４１９は外部のＢｌｕｅｔｏｏｔｈデバイスとの通信を実行するように構成された無線通信デバイスである。
【０１７４】
以上説明したように、本実施形態によれば、ネットワーク接続等のイベントの実行に先立って、そのイベントの内容が、アクセス検出・制御部１０から管理アプリケーション部２１に送信される。そして、管理アプリケーション部２１は、イベントの内容を判定プログラムである判定アプリケーション部２２に通知し、判定アプリケーション部２２から受信されるインストールの許可または禁止を示す判定結果をアクセス検出・制御部１０に送信する。このように、イベントの許可または禁止は、管理アプリケーション部２１とは独立した判定プログラム（判定アプリケーション部２２）によって判定される。したがって、たとえば、企業毎に判定プログラムを用意すること等により、企業毎に異なったルールセットを使用して各種イベントの可否を判定することができる。
【０１７５】
さらに、アクセス検出・制御部１０によって特定の外部通信機器との接続を要求するイベント（第１のイベント）が検出される前は、管理アプリケーション部２１は、ある特定の処理を要求するイベント（第２のイベント）を受信した時に第１の判定結果をアクセス検出・制御部１０に送信するが、アクセス検出・制御部１０によって特定の外部通信機器との接続を要求するイベント（第１のイベント）が検出された後は、管理アプリケーション部２１は、ある特定の処理を要求するイベント（第２のイベント）を受信した時に第１の判定結果とは逆の第２の判定結果をアクセス検出・制御部１０に送信する。したがって、個々のイベントの可否を判定できるだけでなく、情報処理装置１の使用状況や使用場所に応じて、（ａ）インストール制限の有効化・無効化の切り替え、（ｂ）アプリケーション起動制限の有効化・無効化の切り替え、（ｃ）接続を禁止するＩＰアドレスとポート番号の追加または変更、（ｄ）アプリケーションアンインストール制限の有効化・無効化の切り替え、（ｅ）ＳＤメモリカードまたはＵＳＢメモリ接続制限の有効化・無効化の切り替え、（ｆ）プロキシ設定の有効化・無効化等を容易に実行することができる。
【０１７６】
また、各処理を制限のための環境は管理アプリケーション部２１によって提供されているので、判定アプリケーション部２２の構成を簡単化することができる。
【０１７７】
また、管理アプリケーション部２１もアプリケーションプログラムによって実現できるので、管理アプリケーション部２１自体のアップデートも容易に行うことができる。
【０１７８】
さらに、管理アプリケーション部２１は、判定アプリケーション部２２に付与された署名に基づいて判定アプリケーション部２２の正当性を確認し、判定アプリケーション部２２の正当性が確認された場合に、この判定アプリケーション部２２をインストールイベント情報を通知すべき通信相手に特定する。したがって、偽の判定アプリケーションが使用を確実に防止することができる。
【０１７９】
また、さらに、アクセス検出・制御部１０は、管理アプリケーション部２１のアプリケーション名を保持しており、この保持しているアプリケーション名に基づいて、管理アプリケーション部２１に相当するアプリケーションを、インストールイベント情報を送信すべき通信相手に特定する。通常、インストールされているアプリケーションと同じアプリケーション名のアプリケーションを新たにインストールすることはできない。よって、偽の管理アプリケーション部にインストール情報が送られてしまうことを確実に防止することができる。
【０１８０】
なお、本実施形態では、判定アプリケーションの内の判定ルールを動的に変更する場合を例示したが、あるイベントが検出された後は、管理アプリケーション内に保持される判定ルールに基づいて各イベントの許可または禁止を判定するようにしてもよい。
【０１８１】
また、本実施形態では、判定アプリケーション部２２がアクションのポリシーを有していたが、イベントによっては管理アプリケーション部２１が処理しても良い。また、本実施形態ではアクションがアクセス検出・制御部１０が実行していたが、ルールを書き変える事もアクションとして定義してよい。たとえば、社外ではアプリケーションＡとＢしか起動できなかったが、社内ネットワークに接続すれば、アプリケーションＣとＤも起動できるようになるといったようにルールを動的に更新しても良い。
【０１８２】
なお、本実施形態の処理の手順は全てソフトウェアによって実現することができるので、この手順を実行するコンピュータプログラムを、このコンピュータプログラムを格納したコンピュータ読み取り可能な記憶媒体を通じて通常のコンピュータにインストールすることにより、本実施形態と同様の効果を容易に実現することができる。
【０１８３】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１８４】
１…情報処理装置、１０…アクセス検出・制御部、２０…アプリケーション実行部、２１…管理アプリケーション部、２２…判定アプリケーション部、通信接続管理部１００。
【図１】
2014021929.tif 000003
【図２】
2014021929.tif 000004
【図３】
2014021929.tif 000005
【図４】
2014021929.tif 000006
【図５】
2014021929.tif 000007
【図６】
2014021929.tif 000008
【図７】
2014021929.tif 000009
【図８】
2014021929.tif 000010
【図９】
2014021929.tif 000011
【図１０】
2014021929.tif 000012
【図１１】
2014021929.tif 000013
【図１２】
2014021929.tif 000014
【図１３】
2014021929.tif 000015
【図１４】
2014021929.tif 000016
【図１５】
2014021929.tif 000017
【図１６】
2014021929.tif 000018
【図１７】
2014021929.tif 000019
【図１８】
2014021929.tif 000020
【図１９】
2014021929.tif 000021
【図２０】
2014021929.tif 000022
【図２１】
2014021929.tif 000023
【図２２】
2014021929.tif 000024
【図２３】
2014021929.tif 000025
【図２４】
2014021929.tif 000026
【図２５】
2014021929.tif 000027
【図２６】
2014021929.tif 000028
【図２７】
2014021929.tif 000029
【図２８】
2014021929.tif 000030
【図２９】
2014021929.tif 000031
【図３０】
2014021929.tif 000032
【図３１】
2014021929.tif 000033