(57)【要約】【課題】遠隔サーバや外部機器から特定端末に接続されている周辺デバイス等をロックするシナリオを実現する場合の安全性に関する問題点を解決する。【解決手段】本発明に係る機能ロック制御装置２０は、端末Ａにおいて利用可能な機能を特定する機能種別について階層的に管理する機能管理部２１と、特定の機能に対するロック制御要求と当該ロック制御要求の要求元とを関連付けて管理するセッション管理部２２と、各階層における機能種別により特定される機能のロック状態を管理するロック状態管理部２３とを具備し、ロック状態管理部２３は、第１階層の機能種別により特定される機能に対するロック制御要求を受信した場合、第１階層の機能種別により特定される機能のロック状態を更新すると共に、第２階層の機能種別により特定される機能のロック状態を更新する。【選択図】  図１
2008130051.tif 000002
【特許請求の範囲】
【請求項１】
セキュアドメイン及び非セキュアドメインを具備する端末内に設けられており、前記端末において利用可能な機能を制御する機能ロック制御装置であって、
前記機能を特定する機能種別について、階層的に管理するように構成されている機能管理部と、
前記非セキュアドメインから前記機能へのアクセスが制限されているか否かについて示すロック状態を更新するためのロック制御要求と、該ロック制御要求の要求元とを関連付けて管理するように構成されているセッション管理部と、
各階層における前記機能種別により特定される機能のロック状態を管理するように構成されているロック状態管理部と、
前記ロック状態に応じて、前記機能へのアクセスを制限する機能アクセス制御装置に対する制御コマンドを生成するように構成されている制御コマンド出力部と、
前記機能アクセス制御装置に対して、前記制御コマンド出力部により生成された前記制御コマンドを送信するように構成されているアクセス制御装置管理部とを具備し、
前記ロック状態管理部は、第１階層の機能種別により特定される機能に対する前記ロック制御要求を受信した場合、該第１階層の機能種別により特定される機能のロック状態を更新すると共に、該第１階層の機能種別に属する第２階層の機能種別により特定される機能のロック状態を更新するように構成されていることを特徴とする機能ロック制御装置。
【請求項２】
前記ロック状態管理部は、前記ロック状態を永続ストレージに保持するように構成されており、
前記制御コマンド出力部は、前記端末の起動時に、前記ロック状態管理部によって管理されている前記機能のロック状態に応じて、前記制御コマンドを生成するように構成されていることを特徴とする請求項１に記載の機能ロック制御装置。
【請求項３】
前記アクセス制御装置管理部によって前記制御コマンドが送信される前に、前記機能のロック状態を更新する旨を外部に通知するように構成されている状態通知部を具備することを特徴とする請求項１又は２に記載の機能ロック制御装置。
【請求項４】
外部からの前記機能のロック状態に対する問合せに対して応答するように構成されている状態応答部を具備することを特徴とする請求項１乃至３のいずれか一項に記載の機能ロック制御装置。
【請求項５】
前記端末において前記機能が利用可能になったことを検出するように構成されている機能監視部を具備し、
前記制御コマンド出力部は、前記端末において前記機能が利用可能になったことを検出した際に、前記ロック状態管理部によって管理されている該機能のロック状態に応じて、前記制御コマンドを生成するように構成されていることを特徴とする請求項１乃至４のいずれか一項に記載の機能ロック制御装置。
【請求項６】
前記非セキュアドメインから前記機能へのアクセス制限の解除を強制的に要求する強制ロック解除要求を受信した場合に、前記セッション管理部により管理されている該機能に対するロック制御要求と該機能に対するロック制御要求の要求元との関連付けを削除するように構成されている強制ロック制御部を具備することを特徴とする請求項１乃至５のいずれか一項に記載の機能ロック制御装置。
【請求項７】
前記セッション管理部は、受信した前記機能に対するロック制御要求に含まれている時間制限を経過した場合、該機能に対するロック制御要求と該機能に対するロック制御要求の要求元との関連付けを削除するように構成されていることを特徴とする請求項１乃至６のいずれか一項に記載の機能ロック制御装置。
【請求項８】
前記機能は、前記端末に接続されている周辺デバイス、或いは、前記端末に組み込まれたソフトウェアであることを特徴とする請求項１乃至７のいずれか一項に記載の機能ロック制御装置。
【請求項９】
セキュアドメイン及び非セキュアドメインを具備する端末において利用可能な機能を制御する機能ロック制御方法であって、
前記機能を特定する機能種別について、階層的に管理する工程と、
前記非セキュアドメインから前記機能へのアクセスが制限されているか否かについて示すロック状態を更新するためのロック制御要求と、該ロック制御要求の要求元とを関連付けて管理する工程と、
各階層における機能種別により特定される機能のロック状態を管理する工程と、
前記ロック状態に応じて、前記機能へのアクセスを制限する機能アクセス制御装置に対する制御コマンドを生成する工程と、
前記機能アクセス制御装置に対して、前記制御コマンド出力部により生成された前記制御コマンドを送信する工程とを有し、
前記ロック状態を管理する工程において、第１階層の機能種別により特定される機能に対する前記ロック制御要求を受信した場合、該第１階層の機能種別により特定される機能のロック状態を更新すると共に、該第１階層の機能種別に属する第２階層の機能種別により特定される機能のロック状態を更新することを特徴とする機能ロック制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、携帯電話やＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔｓ）やＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）等のセキュアドメイン及び非セキュアドメインを具備する端末内に設けられており、かかる端末において利用可能な機能を制御する機能ロック制御装置、及び、かかる端末において利用可能な機能を制御する機能ロック制御方法に関する。
【背景技術】
【０００２】
従来、セキュアドメイン及び非セキュアドメインの２つのドメインを持つ端末に接続された周辺デバイスに対するハードウェアベースによるアクセス制御技術が知られている（特許文献１参照）。
【０００３】
図１４に示すように、上述のアクセス制御技術によれば、セキュアドメイン（ドメイン１）内の周辺デバイス制御装置２０が、非セキュアドメイン（ドメイン２）から周辺デバイス１２へのアクセス制限を行うように周辺デバイスアクセス制御装置１１Ａの設定を変更し、ドメイン２からの周辺デバイス１２の利用をロックすることができる。
【０００４】
なお、上述のアクセス制御技術により、ロックされた周辺デバイス１２は、ドメイン２からのアクセスを拒否しつつ、ドメイン１からの利用を可能とすることができる。
【０００５】
かかるアクセス制御技術の応用により、遠隔サーバや外部機器から、特定端末に接続された周辺デバイス、例えば、カメラ機能やＩＣカード機能等をロックすることができる。
【０００６】
具体的には、特定端末を管理するサーバから、当該特定端末に対して、カメラ機能のロック要求を含むロック要求メッセージを送信し、ドメイン１内の周辺デバイス制御装置２０が、かかるロック要求メッセージを受け付けて、周辺デバイスアクセス制御装置１１Ａの設定を変更し、ドメイン２からカメラ機能へのアクセスを不可能にすることができる。
【０００７】
上述のアクセス制御技術によれば、ハードウェアによるアクセス制御機構を利用するため、ウィルス等の悪意のあるソフトウェアによるロックの無効化やバイパス等を試みる攻撃に対しても、耐性があり、高い安全性を実現できるといえる。
【特許文献１】ＵＳ２００５０１１４６１６
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、上述のアクセス制御技術を応用して、遠隔サーバや外部機器から、特定端末に接続されている周辺デバイスをロックするシナリオを実現する場合、以下のような安全性に関する問題点があった。
【０００９】
第１に、上述のアクセス制御技術によれば、多様かつ動的な端末の構成に対するロックの漏れが発生する可能性が高いという問題点があった。
【００１０】
ここで、多様な端末の構成とは、各端末において、カメラを１つ又は２つ（メインカメラとサブカメラ等)を備えているか或いはカメラを備えていないかについてや、３Ｇセルラや無線ＬＡＮ（ＷｉＦｉ）やＢｌｕｅｔｏｏｔｈ（登録商標）やＩｒＤＡ等といった複数の通信デバイスのうち、いずれの通信デバイスを搭載するかについて、各端末の各機種やカスタマイズの状態によって異なることを意味する。
【００１１】
さらに、多様な端末の構成とは、周辺デバイスだけでなく、各端末に組み込まれているソフトウェアについても、各端末の各機種やカスタマイズの状態によって異なることを意味する。
【００１２】
例えば、位置情報を取得する測位機能についても、ＧＰＳによる測位機能を備えている端末もあれば、セルラベースの測位機能やＷｉＦｉベースの測位機能を搭載している端末や、全く測位機能を持たない端末や、これらのいずれかの測位機能を備える端末や、複数の測位機能を持つ端末等、多様な構成が考えられる。
【００１３】
ここで，カメラや通信デバイス等の周辺デバイスをロックしたい場合に、メインカメラやセルラだけをロックするだけでは、端末の構成によってはサブカメラや無線ＬＡＮ等が搭載されているため、ロックの漏れが発生する。
【００１４】
同様に、測位機能をロックする場合、ＧＰＳだけでなく、セルラベースの測位機能もロックしなければ、完全なロックとはならず、多様な端末の構成によるロックの漏れの問題点がある。
【００１５】
一方、動的な端末の構成とは、まず，ＳＤＩＯ（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ  Ｉｎｐｕｔ/Ｏｕｔｐｕｔ  Ｃａｒｄ）やＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）等の汎用外部インタフェースに、随時、周辺デバイスが装着されるケースを指す。
【００１６】
さらに、周辺デバイスのようにハードウェア的な構成の変化だけでなく，アプリケーションやミドルウェアやＯＳ機能の追加によって端末に新たなソフトウェアが組み込まれるケースも含まれる。
【００１７】
例えば、端末に新たにＷｉＦＩベースの測位ソフトウェアをインストールすることで、端末のソフトウェア的な構成が変化する。
【００１８】
ここで、端末内蔵のカメラを、メインカメラとサブカメラを含めてロックしている状態で、新たにＳＤＩＯインタフェースに基づくデジタルカメラカードが装着された際、当該周辺デバイスに対してロックが適用されないと、ロックの漏れが発生する問題点がある。
【００１９】
同様に、測位機能をロックしている状態で、ＷｉＦiベースの測位ソフトがインストールされた際、この測位機能もロックする必要があるが、かかるロックが漏れるという問題点がある。
【００２０】
第２に、上述のアクセス制御技術によれば、複数の要求元からのロック制御要求の対応付け機能を備えていないことによる不正なロック解除の可能性があるという問題点があった。
【００２１】
すなわち、上述のアクセス制御技術によれば、ある要求元からのロック要求が、別の要求元からのロック解除要求により、無効化される可能性があるという問題点があった。
【００２２】
複数の要求元としては、企業システムに接続する端末の場合、企業サーバや通信オペレータのサーバが想定され、或いは、公共機関が提供するサーバ等が想定される。
【００２３】
一方で、要求元の障害等により、正しくロックが解除されないと、周辺デバイスや端末に組み込まれたソフトウェアがいつまでも利用不可能になって利便性や可用性が損なわれるという安全性の問題点もある。
【００２４】
第３に、上述のアクセス制御技術によれば、端末の再起動による初期化への対策に欠点があるという問題点があった。
【００２５】
すなわち、上述のアクセス制御技術によれば、再起動により、機能のロックの設定が消去される場合、かかるロックが無効化されてしまう可能性があるという問題点があった。
【００２６】
第４に、上述のアクセス制御技術によれば、機能のロックによる障害の可能性があるという問題点があった。
【００２７】
すなわち、上述のアクセス制御技術によれば、アプリケーション等が周辺デバイスやソフトウェア等の機能を利用中の際に当該周辺デバイスや当該ソフトウェア等の機能をロックしてしまうと、当該アプリケーションが異常終了や誤動作等の不具合を起こしてしまう可能性があるという問題点があった。
【００２８】
そこで、本発明は、上述の課題に鑑みてなされたものであり、遠隔サーバや外部機器から、特定端末に接続されている周辺デバイスや当該特定端末に組み込まれたソフトウェア等の機能をロックするシナリオを実現する場合の安全性に関する問題点を解決することができる機能ロック制御装置及び機能ロック制御方法を提供することを目的とする。
【課題を解決するための手段】
【００２９】
本発明の第１の特徴は、セキュアドメイン及び非セキュアドメインを具備する端末内に設けられており、前記端末において利用可能な機能を制御する機能ロック制御装置であって、前記機能を特定する機能種別について、階層的に管理するように構成されている機能管理部と、前記非セキュアドメインから前記機能へのアクセスが制限されているか否かについて示すロック状態を更新するためのロック制御要求と、該ロック制御要求の要求元とを関連付けて管理するように構成されているセッション管理部と、各階層における機能種別により特定される機能のロック状態を管理するように構成されているように構成されているロック状態管理部と、前記ロック状態に応じて、前記機能へのアクセスを制限する機能アクセス制御装置に対する制御コマンドを生成するように構成されている制御コマンド出力部と、前記機能アクセス制御装置に対して、前記制御コマンド出力部により生成された前記制御コマンドを送信するように構成されているアクセス制御装置管理部とを具備し、前記ロック状態管理部は、第１階層の機能種別により特定される機能に対する前記ロック制御要求を受信した場合、該第１階層の機能種別により特定される機能のロック状態を更新すると共に、該第１階層の機能種別に属する第２階層の機能種別により特定される機能のロック状態を更新するように構成されていることを要旨とする。
【００３０】
かかる発明によれば、周辺デバイスやアプリケーションやミドルウェア等の機能を特定する機能種別を階層的に管理しているため、特定の機能に対するロック制御要求（ロック要求又はロック解除要求）を受信した場合に、同じ機能種別により特定される機能に対しても同時に当該ロック制御要求を適用することができる。
【００３１】
例えば、かかる発明によれば、グループ種別「カメラグループ」により特定される周辺デバイス（機能）に対するロック制御要求を受信した場合には、グループ種別「カメラグループ」に属する個別種別「背面カメラ」や「前面カメラ」により特定される複数のカメラ（カメラメインカメラやサブカメラ等）に対して漏れなく当該ロック制御要求を適用し、グループ種別「通信グループ」に属する個別種別「セルラ」や「無線ＬＡＮ」や「Ｂｌｕｅｔｏｏｔｈ（登録商標）」等により特定される複数の通信デバイスに対して漏れなく当該ロック制御要求を適用することができる。
【００３２】
さらに、かかる発明によれば、グループ種別「位置情報取得機能グループ」により特定されるソフトウェアに対するロック制御要求を受信した場合には、グループ種別「位置情報取得機能グループ」に属する個別種別「ＧＰＳ」や「ＮＷベース測位機能」や「ＷｉＦＩベース測位機能」により特定される複数の測位機能に対して漏れなく当該ロック制御要求を適用することができる。
【００３３】
さらに、かかる発明によれば、複数の要求元からの特定の機能に対するロック制御要求を受信した場合であっても、当該ロック制御要求の要求元を管理することができるため、かかる機能のロック状態を正しく設定することができる。
【００３４】
本発明の第１の特徴において、前記ロック状態管理部は、前記ロック状態を永続ストレージに保持するように構成されており、前記制御コマンド出力部は、前記端末の起動時に、前記ロック状態管理部によって管理されている前記機能のロック状態に応じて、前記制御コマンドを生成するように構成されていてもよい。
【００３５】
かかる発明によれば、端末が再起動した場合であっても、各機能のロック状態を正しく反映することができる。
【００３６】
本発明の第１の特徴において、前記アクセス制御装置管理部によって前記制御コマンドが送信される前に、前記機能のロック状態を更新する旨を外部に通知するように構成されている状態通知部を具備してもよい。
【００３７】
かかる発明によれば、状態通知部からの通知を受け取ったオペレーティングシステム（ＯＳ）やミドルウェアが、特定の周辺デバイスやソフトウェア等の機能を利用しているアプリケーションを終了して、異常動作の発生を防止することができる。
【００３８】
本発明の第１の特徴において、外部からの前記機能のロック状態に対する問合せに対して応答するように構成されている状態応答部を具備してもよい。
【００３９】
かかる発明によれば、アプリケーションやミドルウェアやＯＳが、特定の周辺デバイスやソフトウェア等の機能がロックされている（利用可能でない）のか、或いは、かかる周辺デバイスやソフトウェア等の機能が利用可能であるのかについて知ることができると共に、当該周辺デバイスやソフトウェア等の機能がロックされているのか、或いは、当該周辺デバイスやソフトウェア等の機能が異常状態であるのかについて識別することができる。
【００４０】
本発明の第１の特徴において、前記端末において前記機能が利用可能になったことを検出するように構成されている機能監視部を具備し、前記制御コマンド出力部は、前記端末において前記機能が利用可能になったことを検出した際に、前記ロック状態管理部によって管理されている該機能のロック状態に応じて、前記制御コマンドを生成するように構成されていてもよい。
【００４１】
かかる発明によれば、特定の周辺デバイスが端末に装着されたタイミング（又は、特定のアプリケーションやミドルウェアやデバイスドライバが端末に組み込まれたタイミング）で、即座に、当該周辺デバイス（又は、アプリケーションやミドルウェアやデバイスドライバ）のロック状態を反映することができる。
【００４２】
本発明の第１の特徴において、前記非セキュアドメインから前記機能へのアクセス制限の解除を強制的に要求する強制ロック解除要求を受信した場合に、前記セッション管理部により管理されている該機能に対するロック制御要求と該機能に対するロック制御要求の要求元との関連付けを削除するように構成されている強制ロック制御部を具備してもよい。
【００４３】
かかる発明によれば、要求元が、障害等により、特定の機能がロックされている状態を正しく解除できない場合であっても、かかる機能に対するロックを解除することができる。
【００４４】
本発明の第１の特徴において、前記セッション管理部は、受信した前記機能に対するロック制御要求に含まれている時間制限を経過した場合、該機能に対するロック制御要求と該機能に対するロック制御要求の要求元との関連付けを削除するように構成されていてもよい。
【００４５】
かかる発明によれば、端末が通信サービスの圏外にいる場合や、要求元に障害が発生した場合等、要求元からのロック解除要求を受け付けられない場合であっても、特定の機能に対するロックを安全に解除することができ、ユーザに対して利便性と可用性を提供することができる。
【００４６】
本発明の第１の特徴において、前記機能は、前記端末に接続されている周辺デバイス、或いは、前記端末内に組み込まれたソフトウェアであってもよい。
【００４７】
本発明の第２の特徴は、セキュアドメイン及び非セキュアドメインを具備する端末において利用可能な機能を制御する機能制御方法であって、前記機能を特定する機能種別について、第１階層の機能種別及び該第１階層の機能種別に属する第２階層の機能種別ごとに管理する工程と、前記非セキュアドメインから前記機能へのアクセスが制限されているか否かについて示す該機能のロック状態を更新するための該機能に対するロック制御要求と、該機能に対するロック制御要求の要求元とを関連付けて管理する工程と、前記第１階層の機能種別及び前記第２階層の機能種別により特定される機能のロック状態を管理する工程と、前記ロック状態に応じて、前記機能へのアクセスを制限する機能アクセス制御装置に対する制御コマンドを生成する工程と、前記機能アクセス制御装置に対して、前記制御コマンド出力部により生成された前記制御コマンドを送信する工程とを有し、前記ロック状態を管理する工程において、前記第１階層の機能種別により特定される機能に対する前記ロック制御要求を受信した場合、該第１階層の機能種別により特定される機能のロック状態を更新すると共に、該第１階層の機能種別に属する前記第２階層の機能種別により特定される機能のロック状態を更新することを要旨とする。
【発明の効果】
【００４８】
以上説明したように、本発明によれば、遠隔サーバや外部機器から、特定端末に接続されている周辺デバイスや当該特定端末内に組み込まれたソフトウェアの機能をロックするシナリオを実現する場合の安全性に関する問題点を解決することができる機能ロック制御装置及び機能ロック制御方法を提供することができる。
【発明を実施するための最良の形態】
【００４９】
（本発明の第１の実施形態に係る機能ロック制御装置の構成）
図１及び図２を参照して、本発明の第１の実施形態に係る機能ロック制御装置２０の構成について説明する。本実施形態では、周辺デバイスをロックするシナリオを扱う。
【００５０】
本実施形態では、端末Ａは、ハードウェアベースの周辺デバイスアクセス制御装置１１Ａを備えるように構成されている。周辺デバイスアクセス制御装置１１Ａは、機能アクセス制御装置の一種であり、後述する第２の実施形態では、ソフトウェアベースのアクセス制御装置を扱う。
【００５１】
図１に示すように、本実施形態に係る機能ロック制御装置２０を具備する端末Ａは、上述の特許文献１の構成と同様に、セキュアドメイン（ドメイン１）及び非セキュアドメイン（ドメイン２）の２つのドメインを有する。
【００５２】
具体的には、機能ロック制御装置２０は、端末Ａのドメイン１内に配置され、外部のサーバやドメイン２等のロック要求元Ｂからロック制御要求を受け取り、ハードウェアベースの周辺デバイスアクセス制御装置１１Ａを制御することによって、ドメイン２に対する周辺デバイス１２の利用のロック及びロック解除を行うように構成されている。
【００５３】
図１に示すように、機能ロック制御装置２０は、機能管理部２１と、セッション管理部２２と、ロック状態管理部２３と、制御コマンド出力部２４と、アクセス制御管理部２５と、機能監視部２６と、状態通知部２８と、状態応答部２９と、強制ロック制御部３０とを具備している。
【００５４】
また、ロック要求元Ｂである外部のサーバからのロック制御要求を受信するための通信手段は、セルラ通信や無線ＬＡＮやＢｌｕｅｔｏｏｔｈ（登録商標）や赤外線や非接触ＩＣカード（Ｆｅｌｉｃａ等）等、その通信方式や通信媒体を問わない。
【００５５】
機能管理部２１は、端末Ａにおいて利用可能な機能を特定する機能種別について、階層的に管理するように構成されている。本実施形態では、機能管理部２１は、端末Ａに接続されている周辺デバイス１２（機能の一種である）を特定する周辺デバイス種別（機能種別の一種である）について、階層的に管理するように構成されている。
【００５６】
例えば、本実施形態では、機能管理部２１は、図２に示すロック状態管理テーブルを用いて、周辺デバイス種別として、「カメラグループ」や「ディスプレイグループ」や「通信グループ」等の「グループ種別（第１階層の周辺デバイス種別、上位レベルの周辺デバイス種別）」と、「背面カメラ」や「無線ＬＡＮ」や「前面ディスプレイ」等の「個別種別（第１階層の周辺デバイス種別に属する第２階層の周辺デバイス種別、下位レベルの周辺デバイス種別）の２つを管理するように構成されている。
【００５７】
なお、機能管理部２１は、周辺デバイス種別として、内蔵の無線ＬＡＮや外付けのＢｌｕｅｔｏｏｔｈ（登録商標）等の端末Ａに対する接続形態についての情報を管理してもよい。
【００５８】
また、図２の例では、階層構造として、「グループ種別」と「個別種別」の２つのレベルが例示されているが、機能管理部２１は、更に細分化した階層構造によって周辺デバイス種別を管理するように構成されていてもよい。また、１つの周辺デバイス種別が、複数の上位レベルの周辺デバイス種別に属するように構成されていてもよい。
【００５９】
セッション管理部２２は、ドメイン２（非セキュアドメイン）から特定の機能（本実施形態では、周辺デバイス１２）へのアクセスが制限されているか否かについて示す「ロック状態」を更新するための「ロック制御要求」と、かかるロック制御要求の要求元（ロック要求元Ｂ）とを関連付けて管理するように構成されている。
【００６０】
具体的には、セッション管理部２２は、図２に示すロック状態管理テーブルを用いて、周辺デバイス種別の指定を含むロック制御要求（ロック要求又はロック解除要求）を外部のロック要求元Ｂから受け付け、当該ロック制御要求と当該ロック要求元Ｂとを対応付けて管理するように構成されている。
【００６１】
具体的には、セッション管理部２２は、ロック要求元Ｂからロック要求を受け付けた場合には、当該ロック要求により指定されている周辺デバイス種別（「グループ種別」又は「個別種別」）に対して当該ロック要求元Ｂの識別子をロック状態管理テーブルに追加する。ロック要求元Ｂの識別子は，例えばホスト名やIPアドレス，ロック要求元Bが生成したランダム値などであり，それらの組合せでもよい．
一方、セッション管理部２２は、ロック要求元Ｂからロック解除要求を受け付けた場合には、当該ロック解除要求により指定されている周辺デバイス種別に対して当該ロック要求元Ｂの識別子をロック状態管理テーブルから削除する。
【００６２】
図２に示すロック状態管理テーブルには、「グループ種別」として「カメラグループ」と「ディスプレイグループ」と「通信グループ」とが含まれており、「個別種別」として「背面カメラ」や「前面カメラ」等の個別の周辺デバイス１２の種別が含まれている。
【００６３】
ここで、図２に示すロック状態管理テーブルには、グループ種別「カメラグループ」に対しては、ロック要求元Ｂとして「要求元１」が登録されており、個別種別「セルラ」に対しては、ロック要求元Ｂとして「要求元２」及び「要求元４」が登録されており、個別種別「無線ＬＡＮ」に対しては、ロック要求元Ｂとして「要求元３」が登録されている。
【００６４】
例えば、セッション管理部２２は、ロック要求元Ｂにより送信されたロック制御要求内で指定されている識別子をキーとして、当該ロック要求元Ｂを識別することができる。
【００６５】
ここで、かかる識別子は、ロック要求元Ｂによって決定されてもよいし、セッション管理部２２によって決定されてもよい。
【００６６】
また、セッション管理部２２は、ロック要求元Ｂの認証を行ってもよく、登録されていないロック要求元Ｂからのロック制御要求を拒否してもよい。
【００６７】
さらに、セッション管理部２２は、ロック制御要求で指定されている周辺デバイス種別のロック状態を制御する権限を持っていないロック要求元Ｂからのロック制御要求を拒否してもよい。
【００６８】
例えば、ロック状態管理テーブルにおいて、各周辺デバイス種別に対して権限を持つロック要求元のリストを保持させることで権限の有無を判定してもよい。
【００６９】
ロック制御要求のメッセージ形式は、（識別子，ロック制御要求の種類（ロック要求又はロック解除要求），周辺デバイス種別）の組で表すことができ、例えば、（１２３，ロック要求、「カメラグループ」）や、(４５６，ロック解除要求，「無線ＬＡＮ」)のように指定される。
【００７０】
さらに、ロック制御要求のメッセージ形式は、(１２４，ロック要求，「カメラグループ，メインスピーカ」)のように、同時に複数の周辺デバイスに対するロック要求を含んでいてもよい。
【００７１】
また、ロック制御要求には、「時間間隔」や「時刻範囲」のような時間制限の指定が付与されていてもよい。
【００７２】
例えば、ロック制御要求において、（１２３，ロック要求，「カメラグループ」，「１２０分」）と指定されている場合、「１２０分（２時間）」という「時間間隔」についての時間制限が、かかるロック制御要求に付与されたことになる。
【００７３】
また、ロック制御要求において、（１２３，ロック要求，「カメラグループ」，「１２：００〜１３：００」）や（１２３，ロック要求，「カメラグループ」，「１３：００まで」）と指定されている場合、「１２：００〜１３：００」又は「１３：００まで」という「時刻範囲」についての時間制限が、かかるロック制御要求に付与されたことになる。
【００７４】
かかる場合、セッション管理部２２は、受信した周辺デバイス１２に対するロック制御要求に含まれている時間制限を経過した場合、図２に示すロック状態管理テーブルから、かかる周辺デバイス１２に対するロック制御要求と当該周辺デバイス１２に対するロック制御要求の要求元（ロック要求元Ｂ）との関連付けを削除するように構成されている。
【００７５】
ロック状態管理部２３は、各階層における機能種別により特定される機能のロック状態を管理するように構成されている。本実施形態では、ロック状態管理部２３は、各階層における周辺デバイス種別（「グループ種別」又は「個別種別」）により特定される周辺デバイス１２のロック状態を管理するように構成されている。
【００７６】
例えば、ロック状態管理部２３は、図２に示すロック状態管理テーブルにおいて、ある周辺デバイス種別に対して、少なくとも１つのロック要求元Ｂからのロック要求が送信されている場合（すなわち、少なくとも１つの「要求元」がリストに登録されている場合）、かかる周辺デバイス種別により特定される周辺デバイス１２はロックされている状態にあると設定する（図２では，ロック状態の列の「Ｓｅｔ」がこれに対応する)。
【００７７】
一方、ロック状態管理部２３は、図２に示すロック状態管理テーブルにおいて、ある周辺デバイス種別に対して、ロック要求元Ｂからのロック要求が送信されていない場合（すなわち、「要求元」が１つもリストに登録されていない場合）、かかる周辺デバイス種別により特定される周辺デバイスはロックが解除されている状態にあると設定する。
【００７８】
また、ロック状態管理部２３は、端末Ａの電源がオフにされても記録データ（例えば、ロック状態に係る情報）が保持される永続ストレージ（フラッシュＲＯＭやハードディスクや，メモリカード等の外部ストレージ）によって構成されていてもよい。
【００７９】
また、ロック状態管理部２３は、第１階層の機能種別（第１階層の周辺デバイス種別である「グループ種別」）により特定される機能（周辺デバイス１２）に対するロック制御要求を受信した場合、かかる第１階層の機能種別（「グループ種別」）により特定される機能（周辺デバイス１２）のロック状態を更新すると共に、かかる第１階層の機能種別（「グループ種別」）に属する第２階層の機能種別（第２階層の周辺デバイス種別である「個別種別」）により特定される機能（周辺デバイス１２）のロック状態を更新するように構成されている。
【００８０】
具体的には、ロック状態管理部２３は、各グループ種別に対するロック要求が受信されている場合、当該グループ種別に対応するロック状態を「Ｓｅｔ」に設定した後、当該グループ種別に属する個別種別に対応するロック状態を「Ｓｅｔ」に設定する。
【００８１】
図２の例では、「カメラグループ」に対するロック要求が受信されているため、「背面カメラ」や「前面カメラ」に対応するロック状態も「Ｓｅｔ」に設定されている。
【００８２】
制御コマンド出力部２４は、ロック状態管理部２３によって管理されている各機能（本実施形態では、周辺デバイス１２）に対するロック状態（ロックされている状態、又は、ロックが解除されている状態）に応じて、各機能（本実施形態では、周辺デバイス１２）へのアクセスを制限する機能アクセス制御装置（本実施形態では、周辺デバイスアクセス制御装置１１Ａ）に対する制御コマンドを生成するように構成されている。
【００８３】
制御コマンド出力部２４は、各周辺デバイス１２に対するロック状態の全てを設定するための制御コマンドを出力してもよいし、現在の周辺デバイスアクセス制御装置１１Ａの状態との差分のみを変更するための制御コマンドを出力してもよい。
【００８４】
制御コマンド出力部２４は、端末Ａの起動時（リセットによる再起動も含む）に、ロック状態管理部２３によって管理されている周辺デバイス１２のロック状態に応じて、周辺デバイスアクセス制御装置１１Ａの制御コマンドを生成するように構成されていてもよい。
【００８５】
また、制御コマンド出力部２４は、端末Ａにおいて特定の機能が利用可能になったことが検出された際に（具体的には、周辺デバイス１２の接続が検出された際に）、ロック状態管理部２３によって管理されている当該周辺デバイス１２のロック状態に応じて、周辺デバイスアクセス制御装置１１Ａの制御コマンドを生成するように構成されていてもよい。
【００８６】
なお、ＯＳからの通知や、ハードウェア（例えば、周辺デバイスのコントローラ等）からの割込みによって、周辺デバイス１２の接続を検出するように構成されていてもよいし、機能監視部２６からの通知（オンデマンド又は一定周期）に基づいて、周辺デバイス１２の接続を検出するように構成されていてもよい。
【００８７】
アクセス制御装置管理部２５は、機能アクセス制御装置（本実施形態では、周辺デバイスアクセス制御装置１１Ａ）に対して、制御コマンド出力部２４により生成された制御コマンドを送信するように構成されている。
【００８８】
なお、アクセス制御装置管理部２５は、周辺デバイスアクセス制御装置１１Ａによって当該制御コマンドが正しく実行されたことを確認するように構成されていてもよいし、また、かかる制御コマンドの実行が失敗した場合には、かかる制御コマンドを再送するように構成されていてもよい。
【００８９】
機能監視部２６は、端末Ａにおいて特定の機能が利用可能になったことを検出するように構成されている。本実施形態では、機能監視部２６は、端末Ａに対する周辺デバイス１２の接続を検出するように構成されている。
【００９０】
なお、機能監視部２６は、かかる検出結果を、周期的に、制御コマンド出力部２４に通知するように構成されていてもよい。
【００９１】
状態通知部２８は、アクセス制御装置管理部２５によって上述の制御コマンドが送信される前に（すなわち、ある種別により特定される周辺デバイス１２に対するロックを実行する前に）、周辺デバイス１２のロック状態を更新する旨（ロックの実行予定）を、外部（ドメイン２におけるＯＳ７０やミドルウェア６０やアプリケーション５０等）に通知するように構成されている。
【００９２】
状態応答部２９は、外部（ＯＳやミドルウェアやアプリケーション等）からの特定の機能（本実施形態では、周辺デバイス１２）のロック状態に対する問合せに対して応答するように構成されている。
【００９３】
強制ロック制御部３０は、非セキュアドメイン（ドメイン２）に対する特定の機能（本実施形態では、周辺デバイス１２）へのアクセス制限の解除を強制的に要求する強制ロック解除要求を受信した場合に、セッション管理部２２により管理されている特定の機能（本実施形態では、周辺デバイス１２）に対するロック制御要求と特定の機能（本実施形態では、周辺デバイス１２）に対するロック制御要求の要求元（ロック要求元Ｂ）との関連付けを削除する（初期化する）ように構成されている。
【００９４】
また、強制ロック制御部３０は、強制ロック解除要求を送信したロック要求元の認証を行うように構成されていてもよい。
【００９５】
かかる場合、強制ロック制御部３０は、かかる認証結果に応じて、例えば、特定のロック要求元Ｂからの強制ロック解除要求のみ受け付けるように構成されていてもよい。
【００９６】
例えば、強制ロック制御部３０は、通信オペレータからの強制ロック解除要求のみ受け入れるように構成されていてもよい。
【００９７】
また、強制ロック制御部３０は、特定の通信手段で送信された強制ロック解除要求のみを受け付けるように構成されていてもよい。
【００９８】
例えば、強制ロック制御部３０は、端末Ａのシリアルインタフェース等の特定の通信手段で送信された強制ロック解除要求や、特定のキー操作によって入力された強制ロック解除要求等のみを受け付けるように構成されていてもよい。
【００９９】
（本発明の第１の実施形態に係る機能ロック制御装置の動作）
図３乃至図８を参照して、本発明の第１の実施形態に係る機能制御装置２０の動作について説明する。
【０１００】
第１に、図３及び図４を参照して、本実施形態に係る機能ロック制御装置２０が、外部サーバから受信したロック制御要求に応じて、周辺デバイス１２に対するロックを実施する動作について説明する。
【０１０１】
図３に示すように、ステップＳ１００１において、セッション管理部２２は、受信したロック制御要求が、ロック要求であるか、或いは、ロック解除要求であるかについて判定する。
【０１０２】
ロック要求である場合、ステップＳ１００２において、セッション管理部２２は、受信したロック要求と、当該ロック要求の要求元（ロック要求元Ｂ）とを関連付けて、図２に示すロック状態管理テーブルに保持する。
【０１０３】
かかる場合、セッション管理部２２は、具体的には、図２に示すロック状態管理テーブルにおいて、受信したロック要求において指定されている周辺デバイス種別（第１階層の周辺デバイス種別の場合、関連する第２階層の周辺デバイス種別を含む）のロック状態を「Ｓｅｔ」に設定し、当該ロック要求内で指定されている要求元の識別子を、当該周辺デバイス種別に対応する「要求元リスト」に追加する。
【０１０４】
一方、ロック解除要求である場合、ステップＳ１００２において、セッション管理部２２は、図２に示すロック状態管理テーブルにおいて、受信したロック解除要求により指定されている周辺デバイス種別（第１階層の周辺デバイス種別の場合、関連する第２階層の周辺デバイス種別を含む）と、当該ロック解除要求の要求元（ロック要求元Ｂ）との関連付けを削除する。
【０１０５】
かかる場合、セッション管理部２２は、具体的には、図２に示すロック状態管理テーブルにおいて、受信したロック解除要求において指定されている周辺デバイス種別（第１階層の周辺デバイス種別の場合、関連する第２階層の周辺デバイス種別を含む）のロック状態を「Ｎｏ」に設定し、当該周辺デバイス種別に対応する「要求元リスト」を削除する。
【０１０６】
ステップＳ１００４において、機能ロック制御装置２０が、ロック更新手順を実施する。ここで、図４を参照して、かかるロック更新手順について説明する。
【０１０７】
図４に示すように、ロック更新手順が開始されると、ステップＳ２００１において、ロック状態管理部２３は、ロック状態管理テーブル上で、全ての「グループ種別」及び「個別種別」により特定される周辺デバイス１２のロック状態をクリアする。
【０１０８】
ステップＳ２００２において、ロック状態管理部２３は、「グループ種別」により特定される周辺デバイス１２に対するロック要求の有無を検査する。
【０１０９】
「グループ種別」により特定される周辺デバイス１２に対するロック要求がある場合（ステップＳ２００３）、本動作は、ステップＳ２００４に進み、「グループ種別」により特定される周辺デバイス１２に対するロック要求がない場合（ステップＳ２００３）、本動作は、ステップＳ２００６に進む。
【０１１０】
ロック状態管理部２３は、ステップＳ２００４において、ロック要求があると判定された「グループ種別」により特定される周辺デバイス１２のロック状態を「Ｓｅｔ」に設定とした後、ステップＳ２００５において、かかる「グループ種別」に属する「個別種別」により特定される周辺デバイス１２のロック状態を「Ｓｅｔ」に設定する。
【０１１１】
ステップＳ２００６において、ロック状態管理部２３は、「個別種別」により特定される周辺デバイス１２に対するロック要求の有無を検査する。
【０１１２】
少なくとも１つの「個別種別」により特定される周辺デバイス１２に対するロック要求がある場合（ステップＳ２００７）、本動作は、ステップＳ２００８に進み、「個別種別」により特定される周辺デバイス１２に対するロック要求が１つもない場合（ステップＳ２００７）、本動作は、ステップＳ２００９に進む。
【０１１３】
ステップＳ２００８において、ロック状態管理部２３は、ロック要求があると判定された「個別種別」により特定される周辺デバイス１２のロック状態を「Ｓｅｔ」に設定とする。
【０１１４】
一方、ロック要求がないと判定された「個別種別」により特定される周辺デバイス１２のロック状態に対しては、「Ｓｅｔ」が設定されず、クリアにされたままとなり、ロックが解除された状態として設定される。
【０１１５】
なお、図２の例では、グループ種別「カメラグループ」に対するロック要求があったため、かかるグループ種別「カメラグループ」に属する個別種別「背面カメラ」や「前面カメラ」のロック状態も「Ｓｅｔ」に設定されている。
【０１１６】
ステップＳ２００９において、状態通知部２８は、ロック要求があると判定された周辺デバイス１２に対するロックを実行する前に、該当する周辺デバイス１２を特定する周辺デバイス種別及び当該ロックの実行予定を、ドメイン２のＯＳ７０やミドルウェア６０やアプリケーション５０に通知する。
【０１１７】
ＯＳ７０やミドルウェア６０やアプリケーション５０は、これらの通知を利用して、当該周辺デバイス１２を利用するアプリケーション５０やミドルウェア６０やデバイスドライバを終了したりアンロードしたりすることで、異常処理の発生を抑止する。
【０１１８】
状態通知部２８は、ドメイン２からの確認応答を受け取るか、所定の設定時間が経過した後、ステップ２０１０に進む。
【０１１９】
ステップＳ２０１０において、制御コマンド出力部２４は、ロック状態管理テーブルに従って、周辺デバイスアクセス制御装置１１Ａの制御コマンドを生成する。
【０１２０】
ステップＳ２０１１において、周辺デバイスアクセス制御管理部２５は、かかる制御コマンドを、周辺デバイスアクセス制御装置１１Ａに対して発行する。これにより、ロック要求が発行された周辺デバイス１２に対して、ドメイン２からのアクセスが不能となる。
【０１２１】
第２に、図５を参照して、本実施形態に係る機能ロック制御装置２０が、端末Ａに対する着脱可能な周辺デバイス１２の装着を契機に、当該周辺デバイス１２を特定する周辺デバイス種別に対応するロック状態の設定に従って、当該周辺デバイス１２に対するロックを行う動作について説明する。
【０１２２】
図５に示すように、ステップＳ３００１において、機能監視部２６が、着脱可能な周辺デバイス１２が装着されたことを検知する。
【０１２３】
ここで、機能監視部２６は、ドメイン１のＯＳ４０やドメイン２のＯＳ７０や周辺デバイス１２のデバイスドライバ４１、７１等からの通知に基づいて、かかる周辺デバイス１２の装着を検知してもよいし、周期的に、周辺デバイス１２の装着状態を監視してもよい。
【０１２４】
ステップＳ３００２において、機能管理部２１は、ロック状態管理テーブルに、端末Ａに装着された周辺デバイス１２を特定する周辺デバイス種別を追加する。例えば、機能管理部２１は、ＵＳＢの無線ＬＡＮアダプタが接続された場合、グループ種別「通信グループ」に、個別種別「無線ＬＡＮ」を追加する。
【０１２５】
ステップＳ３００３において、ロック状態管理部２３は、かかる周辺デバイス１２を特定する個別種別に対応するロック状態を、当該個別種別が属するグループ種別に対応するロック状態に従って設定する。
【０１２６】
装着された当該周辺デバイス１２を特定するグループ種別に対してロックが解除されている状態である場合（ステップＳ３００４）、本動作は、終了し、装着された当該周辺デバイス１２を特定するグループ種別に対してロックが行われている状態である場合（ステップＳ３００４）、本動作は、ステップＳ３００５に進む。
【０１２７】
ステップＳ３００５乃至Ｓ３００８の動作は、上述の図４におけるステップＳ２００９乃至Ｓ２０１１の動作と同一である。
【０１２８】
第３に、図６を参照して、本実施形態に係る機能ロック制御装置２０を具備する端末Ａの起動時に、周辺デバイス１２に対してロックを行う動作について説明する。
【０１２９】
図６に示すように、ステップＳ４００１において、端末Ａが起動する。ここで、端末Ａの電源オフの状態からの起動や、端末Ａのリセットによる再起動等の端末Ａの起動時に、端末Ａ側の初期化シーケンスにおいて、機能ロック制御装置２０が起動されるものとする。
【０１３０】
機能ロック制御装置２０は、起動されると、ステップＳ４００２において、図４に示すロック更新手順を行う。
【０１３１】
第４に、図７を参照して、本実施形態に係る機能ロック制御装置２０が、強制ロック解除要求を受信した場合の周辺デバイス１２に対するロック解除を行う動作について説明する。
【０１３２】
図７に示すように、ステップＳ５００１において、強制ロック制御部３０は、強制的なロック解除を要求する強制ロック解除要求を受け付け、かかる強制ロック解除要求が正しい要求元から送信されたものであるか否かについて検査する。
【０１３３】
かかる強制ロック解除要求が正しい要求元から送信されたものであった場合、本動作は、ステップＳ５００２に進み、かかる強制ロック解除要求が正しい要求元から送信されたものでない場合、本動作は、終了する。
【０１３４】
ステップＳ５００２において、強制ロック制御部３０は、ロック状態管理テーブル上で、強制ロック解除要求によって指定されている周辺デバイス種別に対応する要求元リスト及びロック状態をクリアする。
【０１３５】
ステップＳ５００３において、強制ロック制御部３０は、ロック状態管理テーブル上で、強制ロック解除要求によって指定されている周辺デバイス１２を特定する「グループ種別」及び「個別種別」に対応するロック状態をリセット（解除）する。
【０１３６】
ステップＳ５００４において、状態通知部２８は、かかる周辺デバイス１２に対するロック解除を実行する前に、該当する周辺デバイス１２を特定する周辺デバイス種別及び当該ロック解除の実行予定を、ドメイン２のＯＳ７０やミドルウェア６０やアプリケーション５０に通知する。
【０１３７】
ＯＳ７０やミドルウェア６０やアプリケーション５０は、これらの通知を利用して、アプリケーション５０やミドルウェア６０やドライバが、かかる周辺デバイス１２の利用準備を行う。
【０１３８】
状態通知部２８は、ドメイン２からの確認応答を受け取るか、所定の設定時間が経過した後、ステップ５００５に進む。
【０１３９】
ステップＳ５００５において、制御コマンド出力部２４は、ロック状態管理テーブルに従って、周辺デバイスアクセス制御装置１１Ａの制御コマンドを生成する。
【０１４０】
ステップＳ５００６において、周辺デバイスアクセス制御管理部２５は、かかる制御コマンドを、周辺デバイスアクセス制御装置１１Ａに対して発行する。これにより、強制ロック解除要求が発行された周辺デバイス１２に対して、ドメイン２からのアクセスが可能となる。
【０１４１】
第５に、図８を参照して、本実施形態に係る機能ロック制御装置２０が、時間制限付きのロック要求を受信した場合の動作について説明する。
【０１４２】
図８に示すように、ステップＳ６００１において、セッション管理部２２は、周期的に起動されて、ロック状態管理テーブルの要求元リストをスキャンして、時間制限の経過したロック要求が存在するか否かについて検査する。
【０１４３】
時間制限の経過したロック要求が存在した場合には（ステップＳ６００２）、本動作は、ステップＳ６００３に進み、時間制限の経過したロック要求が存在しない場合には（ステップＳ６００２）、本動作は、終了する。
【０１４４】
ステップＳ６００３において、セッション管理部２２は、時間制限の経過したロック要求があった場合、かかるロック要求に対応する要求元の識別子を、要求元リストから削除する。
【０１４５】
その後、ステップＳ６００４において、本実施形態に係る機能ロック制御装置２０は、図４に示すロック更新手順を実行する。
【０１４６】
（本発明の第１の実施形態に係る機能ロック制御装置の作用・効果）
本発明の第１の実施形態に係る機能ロック制御装置２０によれば、周辺デバイスやアプリケーションやミドルウェア等の機能を特定する機能種別を階層的に管理しているため、特定の周辺デバイス１２（機能）に対するロック制御要求（ロック要求又はロック解除要求）を受信した場合に、同じ周辺デバイス種別により特定される周辺デバイス１２に対しても同時に当該ロック制御要求を適用することができる。
【０１４７】
例えば、本発明の第１の実施形態に係る機能ロック制御装置２０によれば、図２に示すように、グループ種別「カメラグループ」により特定される周辺デバイス１２に対するロック制御要求を受信した場合には、グループ種別「カメラグループ」に属する個別種別「背面カメラ」や「前面カメラ」により特定される複数のカメラ（カメラメインカメラやサブカメラ等）に対して漏れなく当該ロック制御要求を適用し、グループ種別「通信グループ」に属する個別種別「セルラ」や「無線ＬＡＮ」や「Ｂｌｕｅｔｏｏｔｈ（登録商標）」等により特定される複数の通信デバイスに対して漏れなく当該ロック制御要求を適用することができる。
【０１４８】
さらに、本発明の第１の実施形態に係る機能ロック制御装置２０によれば、グループ種別「位置情報取得機能グループ」により特定されるソフトウェアに対するロック制御要求を受信した場合には、グループ種別「位置情報取得機能グループ」に属する個別種別「ＧＰＳ」や「ＮＷベース測位機能」や「ＷｉＦＩベース測位機能」により特定される複数の測位機能に対して漏れなく当該ロック制御要求を適用することができる。
【０１４９】
さらに、本発明の第１の実施形態に係る機能ロック制御装置２０によれば、複数のロック要求元Ｂからの特定の機能に対するロック制御要求を受信した場合であっても、当該ロック制御要求の要求元であるロック要求元Ｂを管理することができるため、かかる周辺デバイス１２のロック状態を正しく設定することができる。
【０１５０】
本発明の第１の実施形態に係る機能ロック制御装置２０によれば、端末Ａが再起動した場合であっても、各周辺デバイス１２のロック状態を正しく反映することができる。
【０１５１】
本発明の第１の実施形態に係る機能ロック制御装置２０によれば、状態通知部２８からの通知を受け取ったオペレーティングシステム（ＯＳ）７０やミドルウェア６０が、特定の周辺デバイス１２やソフトウェア等の機能を利用しているアプリケーション５０を終了して、異常動作の発生を防止することができる。
【０１５２】
本発明の第１の実施形態に係る機能ロック制御装置２０によれば、アプリケーション５０やミドルウェア６０やＯＳ７０が、特定の周辺デバイス１２やソフトウェア等の機能がロックされている（利用可能でない）のか、或いは、特定の周辺デバイス１２やソフトウェア等の機能が利用可能であるのかについて知ることができると共に、当該周辺デバイス１２やソフトウェア等の機能がロックされているのか、或いは、当該周辺デバイス１２やソフトウェア等の機能が異常状態であるのかについて識別することができる。
【０１５３】
本発明の第１の実施形態に係る機能ロック制御装置２０によれば、周辺デバイス１２が端末Ａに装着されたタイミング（或いは、特定のアプリケーションやミドルウェアやデバイスドライバ等のソフトウェアが端末に組み込まれたタイミング）で、即座に、当該周辺デバイス１２（或いは、当該アプリケーションやミドルウェアやデバイスドライバ等のソフトウェア）のロック状態を反映することができる。
【０１５４】
本発明の第１の実施形態に係る機能ロック制御装置２０によれば、ロック要求元Ｂが、障害等により、特定の機能がロックされている状態を正しく解除できない場合であっても、当該特定の機能に対するロックを解除することができる。
【０１５５】
本発明の第１の実施形態に係る機能ロック制御装置２０によれば、端末Ａが通信サービスの圏外にいる場合や、ロック要求元Ｂに障害が発生した場合等、ロック要求元Ｂからのロック解除要求を受け付けられない場合であっても、特定の機能に対するロックを安全に解除することができ、ユーザに対して利便性と可用性を提供することができる。
【０１５６】
（第２の実施形態）
図９乃至図１２を参照して、本発明の第２の実施形態に係る機能ロック制御装置２０について説明する。以下、本発明の第２の実施形態に係る機能ロック制御装置２０について、上述の第１の実施形態に係る機能ロック制御装置２０との相違点に着目して説明する。
【０１５７】
本実施形態では、端末Ａには、１つのドメイン（ドメイン１)だけが備えられており、ソフトウェアベースのアクセス制御装置１１Ｂが備えられている。
【０１５８】
アクセス制御装置１１Ｂは、あるアプリケーションやミドルウェアが呼び出すＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）やシステムコールを受け付け、そのアクセス可否を判定して、アクセス可の場合、その呼び出しを受け付け、アクセス否の場合、その呼出を拒否する装置である。かかるアクセス制御装置１１Ｂの一例としては、Ｊａｖａ（登録商標）サンドボックスが挙げられる。
【０１５９】
アクセス制御装置１１Ｂは、アクセス可否の判定において、呼び出し元のアプリケーションやミドルウェアの種別によってアクセス可否を判定してもよい。
【０１６０】
例えば、アクセス制御装置１１Ｂは、デジタル署名が付与されている又はプリンストールされている「信頼できるアプリケーション」に対しては、アクセス可とし、それ以外のアプリケーションに対しては、ブロックするように構成されていてもよい。
【０１６１】
図９では、アクセス制御装置１１Ｂは、ＯＳ４０の外側に配置されているが、ＯＳ４０内に組み込まれていてもよいし、デバイスドライバ４１やミドルウェア６０Ａやアプリケーション５０Ａとして実装されていてもよく、その実装形態は問わない。
【０１６２】
図９に示すように、本実施形態に係る機能ロック制御装置２０は、アプリケーションやミドルウェアと同じドメイン（ドメイン１）に配置されている。
【０１６３】
本実施形態に係る機能ロック制御装置２０は、外部のサーバやドメイン１内のアプリケーションやミドルウェアやＯＳからのロック制御要求を受け取り、受け取ったロック制御要求に応じて、アクセス制御装置１１Ｂを制御することで、周辺デバイス１２やアプリケーションやミドルウェアやＯＳが提供するソフトウェア等の機能に対するロック又はロック解除を行うように構成されている。
【０１６４】
例えば、本実施形態では、機能管理部２１は、図１２に示すロック状態管理テーブルを用いて、ソフトウェアを特定するソフトウェア種別として、「メディアプレーヤグループ」や「位置情報取得機能グループ」等の「グループ種別（第１階層のソフトウェア種別、上位レベルのソフトウェア種別）」と、「音楽プレーヤ」や「ビデオプレーヤ」や「画像ビューア」や「ＧＰＳ」や「ＮＷベース測位機能」や「ＷｉＦｉベース測位機能」等の「個別種別（第１階層のソフトウェア種別に属する第２階層のソフトウェア種別、下位レベルのソフトウェア種別）の２つを管理するように構成されている。
【０１６５】
なお、本実施形態に係る機能ロック制御装置２０における状態通知部２８は、アクセス制御装置管理部２５によって上述の制御コマンドが送信される前に（すなわち、ある周辺デバイス種別により特定される周辺デバイス１２やあるソフトウェア種別により特定されるソフトウェアに対するロックを実行する前に）、周辺デバイス１２やソフトウェア等の機能のロック状態を更新する旨（ロックの実行予定）を、外部（ドメイン１のＯＳ４０やミドルウェア６０Ａやアプリケーション５０Ａ等）に通知するように構成されている。
【０１６６】
その結果、ドメイン１のＯＳ４０やミドルウェア６０Ａやアプリケーション５０Ａ等は、これらの通知を利用して、当該周辺デバイス１２やソフトウェア等の機能の利用を中止すること等で、異常処理の発生を抑制することができる。
【０１６７】
また、アクセス制御装置管理部２５が、上述の制御コマンドを周辺デバイスアクセス制御装置１１Ｂに対して発行した後、ロック要求が発行された周辺デバイス１２やソフトウェア等の機能は、アクセス制御装置１１Bが例外としたドメイン１のアプリケーション５０Aやミドルウェア６０Aを除き，ドメイン１のミドルウェア６０Ａやアプリケーション５０Ａからアクセス不能となる。
【０１６８】
（第３の実施形態）
図１０を参照して、本発明の第３の実施形態に係る機能ロック制御装置２０について説明する。以下、本発明の第３の実施形態に係る機能ロック制御装置２０について、上述の第１の実施形態に係る機能ロック制御装置２０との相違点に着目して説明する。
【０１６９】
本実施形態では、端末Ａには、２つのドメインが備えられており、ソフトウェアベースの周辺デバイスアクセス制御装置１１Ｃが備えられている。
【０１７０】
図１０に示すように、本実施形態では、周辺デバイス１２は、ドメイン１内のバックエンドデバイスドライバ４１Ａからのみ直接アクセス可能である。
【０１７１】
また、ドメイン２から周辺デバイス１２にアクセスする際は、ドメイン２内のフロントエンドデバイスドライバ７１Ａを通じて、ドメイン１内のバックエンドデバイスドライバ４１Ａにアクセスして、間接的にアクセスするものとする。
【０１７２】
本実施形態に係る機能ロック制御装置２０は、ドメイン１内に配置され、外部のサーバ（ロック要求元Ｂ）やドメイン２内のアプリケーション５０やミドルウェア６０やＯＳ７０からロック制御要求を受け取り、受け取ったロック制御要求に応じて、周辺デバイスアクセス制御装置１１Ｃを制御することで、ドメイン２に対する周辺デバイス１２のロックを行うように構成されている。
【０１７３】
図１０では、周辺デバイスアクセス制御装置１１Ｃは、ＯＳ４０の内側に配置されているが、デバイスドライバやミドルウェアやアプリケーションとして実装されていてもよく、その実装形態は問わない。
【０１７４】
周辺デバイスアクセス制御装置１１Ｃは、ドメイン２内のフロントエンドデバイス７１Ａからのアクセス要求の受付の可否を制御することで、ドメイン２内のアプリケーション５０やミドルウェア６０からの周辺デバイス１２へのアクセス可否を制御する。
【０１７５】
（第４の実施形態）
図１１及び図１２を参照して、本発明の第４の実施形態に係る機能ロック制御装置２０について説明する。以下、本発明の第４の実施形態に係る機能ロック制御装置２０について、上述の第１の実施形態に係る機能ロック制御装置２０との相違点に着目して説明する。
【０１７６】
図１１に示すように、本実施形態に係る機能ロック制御装置２０を具備する端末Ａには、第１の実施形態の場合と同様に、セキュアドメイン（ドメイン１）及び非セキュアドメイン（ドメイン２）の２つのドメインが備えられている。
【０１７７】
また、かかる端末Ａには、第１の実施形態におけるハードウェアベースの周辺デバイスアクセス制御装置１１Ａの代わりに、ソフトウェアベースのアクセス制御装置４０Ｃ（機能アクセス制御装置の一種である）が備えられている。
【０１７８】
アクセス制御装置４０Ｃは、あるアプリケーションやミドルウェアが呼び出すＡＰＩやシステムコールを受け付け、そのアクセス可否を判定して、アクセス可の場合、その呼び出しを受け付け、アクセス否の場合、その呼出を拒否する装置である。かかるアクセス制御装置４０Ｃの一例としては、Ｊａｖａ（登録商標）サンドボックスが挙げられる。
【０１７９】
具体的には、機能ロック制御装置２０は、端末Ａのドメイン１内に配置され、外部のサーバやドメイン２等のロック要求元Ｂからロック制御要求を受け取り、アクセス制御装置４０Ｃを制御することによって、ドメイン２に対するアプリケーション４０Ａ及びミドルウェア４０Ｂが提供するソフトウェアの利用のロック及びロック解除を行うように構成されている。
【０１８０】
図１１の例では、アクセス制御装置４０Ｃは、ＯＳ４０の外側に配置されているが、ＯＳ４０に組み込まれていてもよいし、ミドルウェアやアプリケーション等のソフトウェアとして実装されていてもよく、その実装形態は問わない。
【０１８１】
本実施形態では、機能管理部２１は、端末Ａにおいて利用可能な機能を特定する機能種別として、端末Ａに組み込まれているアプリケーション４０Ａやミドルウェア４０Ｂ等のソフトウェアを特定するソフトウェア種別について、階層的に管理するように構成されている。
【０１８２】
本実施形態では、ドメイン２のアプリケーション５０やミドルウェア６０やＯＳ７０から、ドメイン１のアプリケーション４０Ａやミドルウェア４０Ｂを利用する際のロックのシナリオについて説明する。
【０１８３】
例えば、本実施形態では、機能管理部２１は、図１２に示すロック状態管理テーブルを用いて、ソフトウェア種別として、「メディアプレーヤグループ」や「位置情報取得機能グループ」等の「グループ種別（第１階層のソフトウェア種別、上位レベルのソフトウェア種別）」と、「音楽プレーヤ」や「ビデオプレーヤ」や「画像ビューア」や「ＧＰＳ」や「ＮＷベース測位機能」や「ＷｉＦｉベース測位機能」等の「個別種別（第１階層のソフトウェア種別に属する第２階層のソフトウェア種別、下位レベルのソフトウェア種別）の２つを管理するように構成されている。
【０１８４】
また、図１２の例では、階層構造として、「グループ種別」と「個別種別」の２つのレベルが例示されているが、機能管理部２１は、更に細分化した階層構造によってソフトウェア種別を管理するように構成されていてもよい。また、１つのソフトウェア種別が、複数の上位レベルのソフトウェア種別に属するように構成されていてもよい。
【０１８５】
なお、本実施形態に係る機能ロック制御装置２０における状態通知部２８は、アクセス制御装置管理部２５によって上述の制御コマンドが送信される前に（すなわち、あるソフトウェア種別により特定されるソフトウェア（アプリケーション４０Ａ又はミドルウェア４０Ｂ）に対するロックを実行する前に）、当該ソフトウェアのロック状態を更新する旨（ロックの実行予定）を、外部（ドメイン１のＯＳ４０やミドルウェア４０Ｂやアプリケーション４０Ａや、ドメイン２のＯＳ７０やアプリケーション５０やミドルウェア６０等）に通知するように構成されている。
【０１８６】
その結果、ドメイン１のＯＳ４０やミドルウェア４０Ｂやアプリケーション４０Ａや、ドメイン２のＯＳ７０やミドルウェア６０やアプリケーション５０等は、これらの通知を利用して、当該ソフトウェアの利用を中止すること等で、異常処理の発生を抑制することができる。
【０１８７】
また、アクセス制御装置管理部２５が、上述の制御コマンドをアクセス制御装置４０Ｃに対して発行した後、ロック要求が発行されたソフトウェアは、ドメイン２のＯＳ７０やミドルウェア６０やアプリケーション５０からアクセス不能となる。
【０１８８】
さらに、アクセス制御装置管理部２５が、上述の制御コマンドをアクセス制御装置４０Ｃに対して発行した後、ロック要求が発行されたソフトウェアは、ドメイン１のＯＳ４０やミドルウェア４０Ｂやアプリケーション４０Ａからアクセス不能としてもよい。
【０１８９】
（第５の実施形態）
図１２及び図１３を参照して、本発明の第５の実施形態に係る機能ロック制御装置２０について説明する。以下、本発明の第５の実施形態に係る機能ロック制御装置２０について、上述の第１の実施形態に係る機能ロック制御装置２０との相違点に着目して説明する。
【０１９０】
図１３に示すように、本実施形態に係る機能ロック制御装置２０を具備する端末Ａには、第１の実施形態の場合と同様に、セキュアドメイン（ドメイン１）及び非セキュアドメイン（ドメイン２）の２つのドメインが備えられている。
【０１９１】
また、かかる端末Ａには、第１の実施形態におけるハードウェアベースの周辺デバイスアクセス制御装置１１Ａの代わりに、ソフトウェアベースのアクセス制御装置８０（機能アクセス制御装置の一種である）が備えられている。
【０１９２】
アクセス制御装置８０は、あるアプリケーションやミドルウェアが呼び出すＡＰＩやシステムコールを受け付け、そのアクセス可否を判定して、アクセス可の場合、その呼び出しを受け付け、アクセス否の場合、その呼出を拒否する装置である。かかるアクセス制御装置８０の一例としては、Ｊａｖａ（登録商標）サンドボックスが挙げられる。
【０１９３】
具体的には、機能ロック制御装置２０は、端末Ａのドメイン１内に配置され、外部のサーバやドメイン２等のロック要求元Ｂからロック制御要求を受け取り、アクセス制御装置８０を制御することによって、ドメイン２のアプリケーション５０及びミドルウェア６０から、ドメイン２のアプリケーション５０やミドルウェア６０やＯＳ７０が提供するソフトウェアの利用のロック及びロック解除を行うように構成されている。
【０１９４】
図１３の例では、アクセス制御装置８０は、ＯＳ７０の外側に配置されているが、ＯＳ７０に組み込まれていてもよいし、ミドルウェア６０やアプリケーション５０等のソフトウェアとして実装されていてもよく、その実装形態は問わない。
【０１９５】
本実施形態では、機能管理部２１は、端末Ａにおいて利用可能な機能を特定する機能種別として、端末Ａに組み込まれているアプリケーション５０やミドルウェア６０やＯＳ７０等のソフトウェアを特定するソフトウェア種別について、階層的に管理するように構成されている。
【０１９６】
例えば、本実施形態では、機能管理部２１は、図１２に示すロック状態管理テーブルを用いて、ソフトウェア種別として、「メディアプレーヤグループ」や「位置情報取得機能グループ」等の「グループ種別（第１階層のソフトウェア種別、上位レベルのソフトウェア種別）」と、「音楽プレーヤ」や「ビデオプレーヤ」や「画像ビューア」や「ＧＰＳ」や「ＮＷベース測位機能」や「ＷｉＦｉベース測位機能」等の「個別種別（第１階層のソフトウェア種別に属する第２階層のソフトウェア種別、下位レベルのソフトウェア種別）の２つを管理するように構成されている。
【０１９７】
また、図１２の例では、階層構造として、「グループ種別」と「個別種別」の２つのレベルが例示されているが、機能管理部２１は、更に細分化した階層構造によってソフトウェア種別を管理するように構成されていてもよい。また、１つのソフトウェア種別が、複数の上位レベルのソフトウェア種別に属するように構成されていてもよい。
【０１９８】
なお、本実施形態に係る機能ロック制御装置２０における状態通知部２８は、アクセス制御装置管理部２５によって上述の制御コマンドが送信される前に（すなわち、あるソフトウェア種別により特定されるソフトウェア（アプリケーション５０又はミドルウェア６０）に対するロックを実行する前に）、当該ソフトウェアのロック状態を更新する旨（ロックの実行予定）を、外部（ドメイン２のＯＳ７０やミドルウェア６０やアプリケーション５０等）に通知するように構成されている。
【０１９９】
その結果、ドメイン２のＯＳ７０やミドルウェア６０やアプリケーション５０等は、これらの通知を利用して、当該ソフトウェアの利用を中止すること等で、異常処理の発生を抑制することができる。
【０２００】
また、アクセス制御装置管理部２５が、上述の制御コマンドをアクセス制御装置８０に対して発行した後、ロック要求が発行されたソフトウェアは、アクセス制御装置８０が例外としたドメイン２のアプリケーション５０やミドルウェア６０を除き、ドメイン２のミドルウェア６０やアプリケーション５０からアクセス不能となる。
【０２０１】
以上、上述の実施形態を用いて本発明について詳細に説明したが、当業者にとっては、本発明が本明細書中に説明した実施形態に限定されるものではないということは明らかである。本発明は、特許請求の範囲の記載により定まる本発明の趣旨及び範囲を逸脱することなく修正及び変更態様として実施することができる。従って、本明細書の記載は、例示説明を目的とするものであり、本発明に対して何ら制限的な意味を有するものではない。
【図面の簡単な説明】
【０２０２】
【図１】本発明の第１の実施形態に係る機能ロック制御装置の機能ブロック図である。
【図２】本発明の第１の実施形態に係る機能ロック制御装置で用いられるロック状態管理テーブルの一例を示す図である。
【図３】本発明の第１の実施形態に係る機能ロック制御装置がロック制御要求を受信した際の動作を示すフローチャートである。
【図４】本発明の第１の実施形態に係る機能ロック制御装置におけるロック更新手順を示すフローチャートである。
【図５】本発明の第１の実施形態に係る機能ロック制御装置が周辺デバイスの装着を検知した際の動作を示すフローチャートである。
【図６】本発明の第１の実施形態に係る機能ロック制御装置を具備する端末の起動時の動作を示すフローチャートである。
【図７】本発明の第１の実施形態に係る機能ロック制御装置が強制ロック解除要求を受信した際の動作を示すフローチャートである。
【図８】本発明の第１の実施形態に係る機能ロック制御装置が時間制限付きのロック要求を受信した際の動作を示すフローチャートである。
【図９】本発明の第２の実施形態に係る機能ロック制御装置の機能ブロック図である。
【図１０】本発明の第３の実施形態に係る機能ロック制御装置の機能ブロック図である。
【図１１】本発明の第４の実施形態に係る機能ロック制御装置の機能ブロック図である。
【図１２】本発明の第４の実施形態に係る機能ロック制御装置で用いられるロック状態管理テーブルの一例を示す図である。
【図１３】本発明の第５の実施形態に係る機能ロック制御装置の機能ブロック図である。
【図１４】従来の周辺デバイス制御装置を具備する端末について説明するための図である。
【符号の説明】
【０２０３】
Ａ…端末
Ｂ…ロック要求元
１０…ハードウェア
１１Ａ、１１Ｃ…周辺デバイスアクセス制御装置
１１Ｂ、４０Ｂ、８０…アクセス制御装置
１２…周辺デバイス
２０…機能ロック制御装置
２１…機能管理部
２２…セッション管理部
２３…ロック状態管理部
２４…制御コマンド出力部
２５…アクセス制御装置管理部
２６…機能監視部
２８…状態通知部
２９…状態応答部
３０…強制ロック制御部
４０、４０Ｃ、７０…ＯＳ
４１、７１…デバイスドライバ
４１Ａ…バックエンドデバイスドライバ
４０Ａ、５０、５０Ａ…アプリケーション
４０Ｂ、６０、６０Ａ…ミドルウェア
７１Ａ…フロントエンドデバイスドライバ
【図１】
2008130051.tif 000003
【図２】
2008130051.tif 000004
【図３】
2008130051.tif 000005
【図４】
2008130051.tif 000006
【図５】
2008130051.tif 000007
【図６】
2008130051.tif 000008
【図７】
2008130051.tif 000009
【図８】
2008130051.tif 000010
【図９】
2008130051.tif 000011
【図１０】
2008130051.tif 000012
【図１１】
2008130051.tif 000013
【図１２】
2008130051.tif 000014
【図１３】
2008130051.tif 000015
【図１４】
2008130051.tif 000016