ホームゲートウェイソフトウェアパーミッション管理システム
【課題】ホームゲートウェイ上で稼働するソフトウェア実体に付与するパーミッションをセンタから遠隔設定可能にし、同一のホームゲートウェイに相乗りした複数のソフトウェア実体のそれぞれが管理する情報がソフトウェア実体同士で互いに引き出されることを防止する。
【解決手段】ソフトウェア実体を特定するソフトウェア識別子と、ホームゲートウェイ1上のソフトウェア実行環境10上で、そのソフトウェア実体が動作する際に、動作上の実行権限に制限を課すためにそのソフトウェア実体に付与するパーミッション情報を、センタ装置2からホームゲートウェイ1に伝達し、ホームゲートウェイ1側で、センタ装置2から送り込まれたパーミッション情報のみにもとづいて、パーミッションを設定させる手段を設ける。
【解決手段】ソフトウェア実体を特定するソフトウェア識別子と、ホームゲートウェイ1上のソフトウェア実行環境10上で、そのソフトウェア実体が動作する際に、動作上の実行権限に制限を課すためにそのソフトウェア実体に付与するパーミッション情報を、センタ装置2からホームゲートウェイ1に伝達し、ホームゲートウェイ1側で、センタ装置2から送り込まれたパーミッション情報のみにもとづいて、パーミッションを設定させる手段を設ける。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は同一のホームゲートウェイに、サービスプロバイダが提供するソフトウェアを相乗りさせて同時運用するホームゲートウェイ管理システムに関し、相乗りして動作するソフトウェア実体の実行権限を、センタ装置から、一元的に制御することにより、各ソフトウェア実体の実装上のミスあるいは悪意をもった実装により、他のソフトウェア実体に割り当てられているシステムリソースや、他のソフトウェア実体へのアクセスを遮断し、適正にセパレートして運用することのできるホームゲートウェイソフトウェアパーミッション管理システムに関する。
【背景技術】
【0002】
従来のホームゲートウェイ管理システムの一例が、特開2003−271480に記載されている。図11に示すように、この従来のホームゲートウェイ管理システムは、多数のホームゲートウェイ100とゲートウェイ管理サーバ101との間で前記伝送情報を仲介する仲介サーバ102を設け、ホームネットワーク上の家電デバイス105、106に必要な情報の伝送をゲートウェイ管理サーバ101と仲介サーバ102とで分担する構成となっている。
【0003】
この構成を有する従来のホームゲートウェイ管理システムでは、ホームネットワーク上の家電に必要な情報の所在位置を、典型的にはURLの形式で、ホームゲートウェイ100に伝え、ホームゲートウェイ100は、URLで指定された仲介サーバ102から、ホームネットワーク上の家電デバイス105、106に必要な情報を取得する動作(S1〜4)をする(特許文献1参照)。
【特許文献1】特開2003−271480
【発明の開示】
【発明が解決しようとする課題】
【0004】
ソフトウェアの実行環境を提供するホームゲートウェイにおいて、従来のホームゲートウェイ管理システムが扱う、「家電に必要な情報」としては、様々なものが考えられるが、高度なものとして、家電に必要な情報を内包したソフトウェア実体があげられる。
【0005】
このソフトウェア実体がダウンロード、インストール、起動される時、このソフトウェア実体は、ホームゲートウェイ上のソフトウェア実行環境から、ストレージ領域などのリソースが配布され、それらのリソースを活用して家電デバイスの制御を行う。
【0006】
しかし、複数の家電ベンダが作成したそれぞれのソフトウェア実体が同一のホームゲートウェイ上で相乗りしてサービスを提供する環境において、各ソフトウェア実体に割り当てられたリソースは、それぞれのソフトウェアが管理する他のベンダには、参照されたくない情報が存在する。
【0007】
また異なるベンダのソフトウェア実体が提供する機能が、許可なく他のベンダのソフトウェア実体から利用されることによって、参照されたくない情報が、別ベンダへ流出するおそれもある。
【0008】
またホームゲートウェイの持ち主である、エンドユーザ側も、そのサービス実体が実行されることによって、そのサービスの提供を受けるために必要な情報以外の個人情報を、不正にソフトウェア実体に読み出されるおそれもある。特に各ベンダのサービスが相乗りする環境においては、各ベンダに対してそのベンダのサービスを受けるために提示する必要のある個人情報は異なるため、結果として、それらの情報を全てあわせた和集合が、情報漏えいの危険にさらされることになる。
【0009】
また、不正な情報引き出しに限らず、リソースを制限なく浪費することにより、ソフトウェアの実行環境そのものに、ダメージをあたえるおそれもあった。
【0010】
複数の家電ベンダが作成したそれぞれのソフトウェア実体が同一のホームゲートウェイ上で相乗りしてサービスを提供する環境において、ある不正なソフトウェアのソフトウェア実行環境にダメージを与える動作は、他の正規のソフトウェアの動作を妨害することになる。
【0011】
従来のホームゲートウェイ管理システムは、各ソフトウェア実体がホームゲートウェイのソフトウェア実行環境上で動作する際に、動作上の実行権限に制限を課す「パーミッション情報」をセンタ装置からの指示で設定する手段がない。
【0012】
したがって、前述した問題を回避するために、ホームゲートウェイに適切なパーミッションは、エンドユーザが自ら手動で行わなければならなかった。
【0013】
また、どのようなパーミッション設定にすればよいかは、高度な専門情報が必要な場合が多く、パーミッションの設定ミスが多く、発生していた。
【0014】
なお、個々のベンダから専門の作業者を派遣してエンドユーザ宅のホームゲートウェイ上で、そのベンダが製作したソフトウェアパーミッション設定させる運用形態は、そもそも、ネットワーク経由でソフトウェア実体をダウンロードしていることに意味がなくなり、各ユーザの宅を訪問する手間もかかるという問題がある。
【0015】
そして、特には、同一のホームゲートウェイ上に異なるベンダのソフトウェアを相乗りさせる形態の場合、自己、他者問わずにソフトウェアのパーミッションを不正に設定したり、他のベンダの管理情報をホームゲートウェイから直接閲覧される可能性があるため、望ましいことではない。
【0016】
同一のホームゲートウェイ上に異なるベンダのソフトウェアを相乗りさせる形態においては、パーミッションの設定は、各ベンダから信頼を得ている共通の運営体により行われることが望ましい。
【0017】
更に、ホームゲートウェイ上のソフトウェア実行環境で実行される、ソフトウェア実体のダウンロードおよびインストールおよび起動は、必ずしも、センタの指示で行われるとはかぎらず、エンドユーザが、そのサービスを受ける必要が出たときに、一時的にそのソフトウェア実体を、入手インストールして実行する場合もあった。あるいは、コアとなるソフトウェアが、必要となった時に、オプショナルなソフトウェアを一時的にインストールして稼働させる場合もあった。
【0018】
これらの場合においては、センタの指示に基づいて、仲介サーバ経由でソフトウェア実体のダウンロード、インストールが行われることを前提においている従来のシステム構成では、対応できなかった。
【0019】
本発明は、上述の課題を鑑みてなされたものであり、その目的は、ホームゲートウェイ上で稼働するソフトウェア実体に付与するパーミッションをセンタから遠隔設定可能にし、同一のホームゲートウェイに相乗りした複数のソフトウェア実体のそれぞれが管理する情報がソフトウェア実体同士で互いに引き出されることを防止することにある。
【課題を解決するための手段】
【0020】
上記課題を解決するため、請求項1に記載の本発明は、サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、前記ソフトウェア実体を特定するためのソフトウェア識別子と、前記ホームゲートウェイ上で稼働する前記ソフトウェア実体に付与される実行権限となるパーミッション情報を前記ソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を前記ホームゲートウェイへ伝達するための識別情報伝達手段と、を有するセンタ装置と、前記センタ装置から前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を取得するための識別情報取得手段と、前記センタ装置から取得した前記パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、を有する前記ホームゲートウェイと、を備える。
【0021】
また、請求項2に記載の本発明は、サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、前記ソフトウェア実体を特定するためのソフトウェア識別子と、前記ホームゲートウェイを特定するためのホームゲートウェイ識別子と、前記ホームゲートウェイ識別子に対応する前記ホームゲートウェイ上で稼働する前記ソフトウェア実体に付与される実行権限となるパーミッション情報と、を前記ソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を前記ホームゲートウェイ識別子に対応する前記ホームゲートウェイへ伝達するための識別情報伝達手段と、を有するセンタ装置と、前記センタ装置から前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を取得するための識別情報取得手段と、前記センタ装置から取得した前記パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、を有する前記ホームゲートウェイと、を備える。
【0022】
また、請求項3に記載の本発明は、サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、前記ソフトウェア実体を格納し要求に応じて配布するためのソフトウェア配布サーバと、前記ソフトウェア配布サーバに格納されている前記ソフトウェア実体を特定するためのソフトウェア識別子と、ホームゲートウェイ上で稼働する前記ソフトウェア実体に付与される実行権限となるパーミッション情報と、を前記ソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を前記ホームゲートウェイへ伝達するための識別情報伝達手段と、を有するセンタ装置と、前記ソフトウェア実体と前記ソフトウェア識別子を対応付けて格納するためのソフトウェア情報格納手段と、前記ソフトウェア識別子が指定された前記ソフトウェア実体が前記ホームゲートウェイから要求されることを受け付けるためのソフトウェア要求受付手段と、前記ソフトウェア識別子で指定された前記ソフトウェア実体を前記ホームゲートウェイからの前記要求に応答するための要求応答手段を備えた前記ソフトウェア配布サーバと、前記センタ装置から前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を取得するための識別情報取得手段と、前記センタ装置から取得した前記パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、前記ソフトウェア識別子で特定される前記ソフトウェア実体を前記ソフトウェア配布サーバへ要求して取得するためのソフトウェア取得手段と、取得した前記ソフトウェア実体を前記ホームゲートウェイにインストールするためのインストール手段と、インストールした前記ソフトウェア実体を前記ホームゲートウェイ上で起動するためのソフトウェア起動手段と、を有する前記ホームゲートウェイと、を備える。
【0023】
また、請求項4に記載の本発明は、サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、前記ソフトウェア実体を特定するためのソフトウェア識別子と、前記ホームゲートウェイ上で稼働する前記ソフトウェア実体に付与される実行権限となるパーミッション情報を前記ソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を前記ホームゲートウェイへ伝達するための識別情報伝達手段と、を有するセンタ装置と、前記センタ装置から前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を取得するための識別情報取得手段と、前記センタ装置から取得した前記パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、を有する前記ホームゲートウェイと、前記ソフトウェア実体と前記ソフトウェア識別子を組にして非可分にパッケージ化されたパッケージ化ソフトウェアが前記ホームゲートウェイにインストールされたことを検出するためのインストール検出手段と、インストールされた前記パッケージ化ソフトウェアから前記ソフトウェア識別子を取得するための識別子取得手段と、前記ソフトウェア識別子に対応する前記パーミッション情報の設定が存在するか否かを確認するためのパーミッション情報確認手段と、前記パーミッション情報確認手段による前記設定の存在確認が完了するまでの間において前記インストールされた前記パッケージ化ソフトウェアの起動を抑制するための起動抑制手段と、前記パーミッション設定が存在しない場合に前記パッケージ化ソフトウェアのアンインストールの実行または前記実行権限を奪うためのソフトウェア処分手段と、を有するホームゲートウェイと、を備える。
【0024】
また、請求項5に記載の本発明は、請求項4において、前記ホームゲートウェイは、前記ソフトウェア実体と、前記ソフトウェア識別子と、前記センタ装置の運営主体が許可しているパーミッション情報と、を組み合わせて非可分にパッケージ化されたパッケージ化ソフトウェアがインストールされたことを検出するためのインストール検出手段と、前記パッケージ化ソフトウェアから前記センタ装置の運営主体が許可した前記パーミッション情報を取り出すためのパーミッション情報取り出し手段と、前記センタ装置から取得した前記パーミッション情報によるパーミッション設定が存在しない場合において、前記パッケージ化ソフトウェアから取り出した前記パーミッション情報にもとづいて設定を行うための設定手段と、前記センタ装置からの前記パーミッション情報による前記パーミッション設定の存在の確認と、および前記パッケージ化ソフトウェアから取り出した前記パーミッション設定が完了するまでの間においてインストールされた前記パッケージ化ソフトウェアの起動を抑制するための起動抑制手段と、を備える。
【0025】
また、請求項6に記載の本発明は、サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、デバイスオブジェクトと、その属性情報をあらわすデバイスカテゴリ情報と共に登録するためのデバイス管理ソフトウェアと、前記デバイスオブジェクトに適合するドライバソフトウェア実体のドライバ識別子を前記デバイスカテゴリ情報に基づいて特定し、前記ドライバ識別子を伴うドライバソフトウェア要求に対応して前記ドライバソフトウェア実体を取得するためのドライバロケータソフトウェアと、前記ドライバロケータソフトウェアに不可分にパッケージ化されるプレフィックス識別子と、前記プレフィックス識別子と前記ドライバロケータソフトウェアに体系付けられたドライバ識別子との組み合わせからなるソフトウェア識別子と、前記ホームゲートウェイ上で稼働する前記ドライバソフトウェア実体に付与される実行権限となるパーミッション情報と、を前記ドライバソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を前記ホームゲートウェイへ伝達するための識別情報伝達手段と、を有するセンタ装置と、前記センタ装置から前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を取得するための識別情報取得手段と、前記センタ装置から取得した前記パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、前記デバイス管理ソフトウェアにより登録される前記デバイスオブジェクトから前記デバイスカテゴリ情報を取得するためのデバイスカテゴリ情報取得手段と、前記ドライバロケータソフトウェアに前記デバイスカテゴリ情報を与えて前記ドライバ識別子を応答させるためのドライバ識別子応答手段と、前記ドライバロケータソフトウェアに前記ドライバ識別子を与えて前記デバイスオブジェクトと連携動作する前記ドライバソフトウェア実体を取得させるためのドライバソフトウェア実体取得手段と、前記ドライバロケータソフトウェアから前記ドライバロケータソフトウェアに不可分にパッケージ化された前記プレフィックス識別子を取得するためのプレフィックス識別子取得手段と、前記プレフィックス識別子と前記ドライバ識別子から前記ソフトウェア識別子を生成するためのソフトウェア識別子生成手段と、前記ドライバソフトウェア実体を生成した前記ソフトウェア識別子に対応するものとしてインストールおよび起動する起動手段と、を有する前記ホームゲートウェイと、を備える。
【0026】
また、請求項7に記載の本発明は、サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、デバイスオブジェクトと、その属性情報をあらわすデバイスカテゴリ情報と共に登録するためのデバイス管理ソフトウェアと、前記デバイスオブジェクトに適合するドライバソフトウェア実体のドライバ識別子を前記デバイスカテゴリ情報に基づいて特定し、前記ドライバ識別子を伴うドライバソフトウェア要求に対応して前記ドライバソフトウェア実体を取得するためのドライバロケータソフトウェアと、ドライバソフトウェア実体を定めるドライバ識別子をキーにして一意にソフトウェア識別子を検索可能なように体系付けられたドライバソフトウェアのソフトウェア識別子と、前記ホームゲートウェイ上で稼働しドライバロケータソフトウェアが取得する前記ドライバソフトウェア実体に付与される実行権限となるパーミッション情報を前記ドライバソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を前記ホームゲートウェイへ伝達するための識別情報伝達手段と、を有するセンタ装置と、前記センタ装置から前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を取得するための識別情報取得手段と、前記センタ装置から取得した前記パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、デバイス管理ソフトウェアにより登録されるデバイスオブジェクトからデバイスカテゴリ情報を取得するためのデバイスカテゴリ情報取得手段と、前記ドライバロケータソフトウェアに前記デバイスカテゴリ情報を与えて前記ドライバ識別子を応答させるためのドライバ識別子取得手段と、前記ドライバロケータソフトウェアに前記ドライバ識別子を与えて前記デバイスオブジェクトと連携動作する前記ドライバソフトウェア実体を取得させるためのドライバソフトウェア実体取得手段と、前記ドライバ識別子をキーに前記センタ装置より取得した前記パーミッション情報の前記ソフトウェア識別子を検索してソフトウェア識別子を一意に特定する手段と、前記ドライバソフトウェア実体を検索により特定した前記ソフトウェア識別子に対応するものとしてインストールおよび起動する起動手段と、を有する前記ホームゲートウェイと、を備える。
【0027】
また、請求項8に記載の本発明は、サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、前記ソフトウェア実体を特定するためのソフトウェア識別子と、それぞれの前記ホームゲートウェイで差異のある情報を具体的な値に置き換える対象としてマクロ表現してパーミッションを記載したマクロ表現入りパーミッション情報と、を対応づけて登録するための識別子登録手段と、前記ソフトウェア識別子とそれに対応する前記マクロ表現入りパーミッション情報を前記ホームゲートウェイに伝達するためのパーミッション情報伝達手段と、を有するセンタ装置と、前記ソフトウェア識別子と前記マクロ表現入りパーミッション情報を前記センタ装置より取得するためのマクロ表現入りパーミッション情報取得手段と、取得した前記マクロ表現入りパーミッション情報を保持格納するためのパーミッション情報格納手段と、前記マクロ表現を具体的な値に展開するマクロ表現展開情報をローカルに維持管理するためのマクロ情報管理手段と、前記マクロ表現入りパーミッション情報と前記マクロ表現展開情報からパーミッション情報を生成するためのパーミッション情報生成手段と、前記マクロ表現入りパーミッション情報または前記マクロ表現展開情報が変化した際に前記パーミッション情報を生成しなおすためのパーミッション情報再生成手段と、前記パーミッション情報再生成手段で生成した前記パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、を有する前記ホームゲートウェイと、を備える。
【0028】
また、請求項9に記載の本発明は、サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、前記ソフトウェア実体を特定するためのソフトウェア識別子と、前記ホームゲートウェイ上で稼働する前記ソフトウェア実体に付与される実行権限を表すためのパーミッション情報、または、前記ソフトウェア実体が提供する機能の実行権限をあらわすために該ソフトウェア実体が自身で定義する独自定義パーミッション情報と、を対応づけて登録するためのパーミッション情報登録手段と、ソフトウェア識別子とそれに対応する前記パーミッション情報と前記独自定義パーミッション情報を前記ホームゲートウェイへ伝達するためのパーミッション情報達手段と、を有するセンタ装置と、前記ソフトウェア識別子と前記パーミッション情報と前記独自定義パーミッション情報を前記センタ装置より取得するためのパーミッション情報取得手段と、前記センタ装置から取得した前記パーミッション情報および前記独自定義パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、前記ソフトウェア実体が他のソフトウェア実体を利用する際において、該ソフトウェア実体が前記独自定義パーミッションを持っているか否かの確認の問合せに応答するためのパーミッション確認応答手段と、を有する前記ホームゲートウェイと、を備える。
【0029】
また、請求項10に記載の本発明は、請求項9において、前記独自定義パーミッション情報と、該独自定義パーミッション情報の設定制御を許可する前記ソフトウェア実体を特定するパーミッション設定ソフトウェア識別子の対応情報と、を共に登録するための対応情報登録手段と、前記独自定義パーミッション情報と前記対応情報を前記ホームゲートウェイに伝達するための対応情報伝達手段と、を有するセンタ装置と、前記対応情報を前記センタ装置より取得するための対応情報取得手段と、前記独自定義パーミッションの付与および没収の設定を他のソフトウェア実体に対して行う依頼としてパーミッションを設定する対象の前記ソフトウェア実体を特定するソフトウェア識別子と、および独自定義パーミッションの情報を伴う独自定義パーミッション設定依頼と、を前記ソフトウェア実体から受け付けるための設定依頼受け取り手段と、前記独自定義パーミッションの設定依頼をした前記ソフトウェア実体の前記ソフトウェア識別子と、および前記独自定義パーミッションの設定依頼で指示されたパーミッション情報と、の組に対し、前記センタ装置から取得した前記独自定義パーミッション情報と、および前記パーミッション設定ソフトウェア識別子と、の対応情報に該当するものがあるか否かを判断するための対応判断手段と、前記対応判断手段において該当するものがあると判断された場合にのみ前記独自定義パーミッション設定依頼にて設定対象として前記ソフトウェア識別子で指定されたソフトウェア実体に対し、前記設定依頼された前記独自定義パーミッションの付与もしくは没収の設定を行うための付与没収手段と、を有する前記ホームゲートウェイと、を備える。
【発明の効果】
【0030】
本発明によれば、ホームゲートウェイ上で稼働するソフトウェア実体に付与するパーミッションをセンタから遠隔設定可能にし、同一のホームゲートウェイに相乗りした複数のソフトウェア実体のそれぞれが管理する情報がソフトウェア実体同士で互いに引き出されることを防止することができる。
【発明を実施するための最良の形態】
【0031】
<第1の実施の形態>
図1は、第1の実施の形態を説明する構成図である。
【0032】
第1の実施の形態によるホームゲートウェイソフトウェアパーミッション管理システムは、ソフトウェア実体6、6’を特定するための図示しないソフトウェア識別子が設定され、ホームゲートウェイ1上で稼働する際にそのソフトウェア実体6、6’に付与すべき実行権限を表すパーミッション情報を対応づけて登録するためのパーミッション情報登録手段と、ソフトウェア識別子とそれに対応するパーミッション情報をホームゲートウェイ1に伝達する手段を持つセンタ装置2と、ソフトウェア識別子とパーミッション情報をセンタ装置2より取得するための識別情報取得手段と、センタ装置2から取得した該パーミッション情報のみに従ってソフトウェア実体6、6’の実行権限を設定するための実行権限設定手段と、を持つホームゲートウェイ1を備える。
【0033】
まず、ソフトウェア識別子と、そのソフトウェア識別子に対応するソフトウェア実体6、6’が、ホームゲートウェイ1上で動作する際に与えられるべきパーミッションの組が、対応づけられてセンタ装置2内のACL(アクセスコントロールリスト)4に登録される。
【0034】
登録されたソフトウェア識別子とパーミッション情報は、センタ装置2からホームゲートウェイ1へ向けて送信される。
【0035】
ホームゲートウェイ1側は、ソフトウェア識別子とパーミッション情報を取得したら、そのソフトウェア識別子に対するソフトウェア実体6、6’が動作する際に、そのソフトウェア実体6、6’がそのパーミッション権限で動作するようにACL3の設定を行う。OSGi(Open Service Gateway Initiative)の環境下では、指定されたURLに対してパーミッション情報を付与することができ、そのURLからダウンロードされたソフトウェア実体6、6’は、以後、設定されたパーミッションで動作させることができる。
【0036】
従って、OSGiの活用を前提とするならば、センタ装置2からパーミッション情報を送り込み、OSGiが提供するパーミッション設定機能を活用することにより、第1の実施の形態を実施することができる。なお、図1中にはOSGiに則った権限設定管理手段として、権限設定管理5、9が説明のために示されている。
【0037】
ここで、センタ装置2から送り込まれたパーミッション情報を設定する時点で、ソフトウェア識別子に対応するソフトウェア実体6、6’は、まだ、ホームゲートウェイ1上にインストールされていなくてもよい。
【0038】
あるソフトウェア識別子に対応づけてパーミッション情報を設定したあと、そのソフトウェア識別子に対応するソフトウェア実体6、6’が、ダウンロード、インストール、起動されると、事前に設定されたパーミッション設定に従って、そのソフトウェア実体6、6’は実行される。
【0039】
ソフトウェア実体6、6’の動作はホームゲートウェイ1内の実行環境10において行われ、ここでリソース7、7’をそれぞれ確保している。ソフトウェア実体6、6’を実行することにより制御されるのはホームゲートウェイ1に接続された家電デバイス8、8’である。
【0040】
また、ソフトウェア実体6、6’の動作に、後々、不具合があり、付与するパーミッションを変更する必要が生じた場合、センタ装置2は、直ちに、ソフトウェア識別子と新たなパーミッションを、ホームゲートウェイ1に送り込み、ホームゲートウェイ1側で、アクセスコントロールリストへ新たなパーミッションが書き込まれるとそれ以降、新たなパーミッション設定に従って、そのソフトウェア実体6、6’を稼働させることができる。
【0041】
これは、パーミッション情報がソフトウェア識別子と対応づけて管理し、いつでもセンタ装置2側から、ソフトウェア識別子を指定して、ホームゲートウェイ1上のソフトウェア実体6、6’の、パーミッション設定を変更できる構成としていることにより生じる効果である。
【0042】
のちのちの状況変化により、パーミッションをセンタ装置2側の制御により、随時変更することが可能なため、例えばセキュリティ上の不具合が発見された、ソフトウエア実体に対して、ホームゲートウェイ1上のリソース7、7’にアクセスする権限を奪うことにより、情報漏洩リスクを最小限に抑えることができる効果がある。新たなパーミッション設定には、以前には与えていたパーミッション設定を取り消し、抹消することも含まれる。
【0043】
ソフトウェア識別子に対応づけられてセンタ装置2に登録されるパーミッション情報は、インストールされている、あるいはインストールされる予定である、あるいはインストールされる可能性があるソフトウェア実体6、6’に対し、そのソフトウェア実体6、6’の動作内容を吟味して、そのソフトウェア実体6、6’が、ホームゲートウェイ1上でサービス機能を提供するにあたって、どのような権限が必要があるかを見極め、必要最小限のパーミッション設定内容が、ホームゲートウェイソフトウェアパーミッション管理システムの利用者によって決定され、センタ装置2に登録されることを想定している。
【0044】
「センタ装置2からホームゲートウェイ1に伝達する手段」は、通信途中で改竄されないよう、またセンタ装置2からの送信であると成りすましされることのないよう配慮されることが必要である。
【0045】
改竄や、成りすましをされると、本物のセンタ装置2が指示したパーミッション設定とはことなる、パーミッション情報に基づいて、ホームゲートウェイ1側で、ソフトウェア実体6、6’の実行権限を設定させられるおそれがあり、そのような不正が起こりうる環境においては、「センタ装置2から取得したパーミッション情報のみに従ってソフトウェア実体6、6’の実行権限を設定する手段」を実装することができないので注意が必要である。センタ装置2とホームゲートウェイ1間の通信において、改竄や、成りすましを防止することは、暗号通信を行うなど広く一般的な手法を用いることで実現できる。
【0046】
ソフトウェア実体6、6’を特定するソフトウェア識別子として、例えばOSGiにおいては、そのソフトウェア実体6、6’の入手先URL文字列が利用される。
【0047】
同じ内容のソフトウェア実体6、6’ならば、その入手先が異なっても、同一のソフトウェア識別子が付与されることが、「識別子」の役割としてはふさわしいが、この制約に縛られる必要はなく、全く同じ内容のソフトウェア実体6、6’でも、その入手先URLが異なる場合に、異なるソフトウェア識別子としてそれぞれの入手先URLを付与してもかまわない。
【0048】
URLをソフトウェア識別子として用いると、ソフトウェア実体6、6’の格納場所を決めた時点で、ソフトウェア識別子が即定まることになり、ソフトウェア実体6、6’と、ソフトウェア識別子の対応の管理を簡素化することができるメリットもある。
【0049】
センタ装置2からパーミッション情報を、ホームゲートウェイ1に伝達する手段は、センタ装置2側からホームゲートウェイ1にアクセスしてパーミッション情報を送り込む、プッシュ形態が典型的であるが、これに限る必要はない。
【0050】
例えば、ホームゲートウェイ1側から、定期的にセンタ装置2へ繰り返しアクセスし、更新されたパーミッション情報の有無を調べ、更新されていたらパーミッション情報を取得する形態でもよい。プッシュ型にせよプル型にせよ、センタ装置2がゲートウェイへパーミッション情報を伝達する手段が確保されていればよい。
【0051】
<第2の実施の形態>
図2は、第2の実施の形態を説明する構成図である。
【0052】
この図2には、ソフトウェア実体を特定するためのソフトウェア識別子と、ホームゲートウェイを特定するためのホームゲートウェイ識別子と、ホームゲートウェイ識別子に対応するホームゲートウェイ上で稼働するソフトウェア実体に付与される実行権限となるパーミッション情報と、をソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、ソフトウェア識別子およびそれに対応するパーミッション情報をホームゲートウェイ識別子に対応するホームゲートウェイへ伝達するための識別情報伝達手段と、を有するセンタ装置と、センタ装置からソフトウェア識別子およびそれに対応するパーミッション情報を取得するための識別情報取得手段と、センタ装置から取得したパーミッション情報のみに従ってソフトウェア実体の実行権限を設定するための実行権限設定手段と、を有するホームゲートウェイと、が示されている。
【0053】
このような構成のセンタ装置2は、複数のホームゲートウェイ(1)1、ホームゲートウェイ(2)1’、ホームゲートウェイ(3)1’’を一括管理するが、一般に、各ホームゲートウェイ(1)〜(3)1、1’、1’’上にインストールされるソフトウェア実体13〜15の集合は各ホームゲートウェイ(1)〜(3)1、1’、1’’毎に異なり、よって各ホームゲートウェイ(1)〜(3)1、1’、1’’に送り込むソフトウェア識別子とパーミッション情報の内容は、各ホームゲートウェイ(1)〜(3)1、1’、1’’毎に異なる。
【0054】
本第2の実施の形態のセンタ装置2は、第1の実施の形態に加えて、各ホームゲートウェイ(1)〜(3)1、1’、1’’に対応するホームゲートウェイ(1)〜(3)1、1’、1’’識別子と対応づけて、個々のホームゲートウェイ(1)〜(3)1、1’、1’’毎に、ソフトウェア識別子と設定すべきパーミッション情報を登録し、各ホームゲートウェイ(1)〜(3)1、1’、1’’に対しては、そのホームゲートウェイ(1)〜(3)1、1’、1’’識別子に対応づけて、登録されたソフトウェア識別子とパーミッション情報を伝達する。
【0055】
各ホームゲートウェイ(1)〜(3)1、1’、1’’識別子およびソフトウェア識別子に対応付けられて登録されるパーミッション情報は、各ホームゲートウェイ(1)〜(3)1、1’、1’’ごとに、インストールされている、あるいはインストールされる予定である、あるいはインストールされる可能性があるソフトウェア実体13〜15に対し、必要最小限のパーミッションが、ホームゲートウェイソフトウェアパーミッション管理システムの利用者によって内容が決定され、センタ装置2に登録されることを想定している。ソフトウェア識別子と、そのソフトウェア識別子に対応するそれぞれのソフトウェア実体13〜15が、ホームゲートウェイ(1)〜(3)1、1’、1’’上で動作する際に与えられるべきパーミッションの組が、対応づけられてセンタ装置2内のACL(アクセスコントロールリスト)4内のホームゲートウェイ(1)〜(3)に対するACL11〜11’’それぞれに登録される。
【0056】
このような構成にすることにより、各ホームゲートウェイ(1)〜(3)1、1’、1’’毎に、インストールされているソフトウェアの内容が異なる運用形態においても、それぞれの実行環境10〜10’’において個別のパーミッション管理を行うことができる効果が得られる。
【0057】
例えば、各ゲートウェイの所有者であるエンドユーザと、サービスプロバイダの間でサービス提供に関わる契約が結ばれた時点で、ホームゲートウェイ(1)〜(3)1、1’、1’’にサービスソフトウェアの実体がいつインストールされ、起動されてもよいように、センタ装置2は、速やかに、契約を結んだ、エンドユーザのホームゲートウェイ(1)〜(3)1、1’、1’’に、パーミッション情報を送り込みパーミッション設定を行う運用をすることができる。
【0058】
<第3の実施の形態>
図3は、第3の実施の形態を説明する構成図である。
【0059】
第1の実施の形態に加えて、ソフトウェア実体を格納し要求に応じて配布するためのソフトウェア配布サーバと、ソフトウェア配布サーバに格納されているソフトウェア実体を特定するためのソフトウェア識別子と、ホームゲートウェイ上で稼働するソフトウェア実体に付与される実行権限となるパーミッション情報と、をソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、ソフトウェア識別子およびそれに対応するパーミッション情報をホームゲートウェイへ伝達するための識別情報伝達手段と、を有するセンタ装置と、ソフトウェア実体とソフトウェア識別子を対応付けて格納するためのソフトウェア情報格納手段と、ソフトウェア識別子が指定されたソフトウェア実体がホームゲートウェイから要求されることを受け付けるためのソフトウェア要求受付手段と、ソフトウェア識別子で指定されたソフトウェア実体をホームゲートウェイからの要求に応答するための要求応答手段を備えたソフトウェア配布サーバと、センタ装置からソフトウェア識別子およびそれに対応するパーミッション情報を取得するための識別情報取得手段と、センタ装置から取得したパーミッション情報のみに従ってソフトウェア実体の実行権限を設定するための実行権限設定手段と、ソフトウェア識別子で特定されるソフトウェア実体をソフトウェア配布サーバへ要求して取得するためのソフトウェア取得手段と、取得したソフトウェア実体をホームゲートウェイにインストールするためのインストール手段と、インストールしたソフトウェア実体をホームゲートウェイ上で起動するためのソフトウェア起動手段と、を有するホームゲートウェイと、を備える。
【0060】
まず、ソフトウェア実体21とソフトウェア識別子をソフトウェア配布サーバにあらかじめ格納する。
【0061】
次に、ソフトウェア識別子と、そのソフトウェア識別子に対応するソフトウェア実体21が、ホームゲートウェイ1上で動作する際に与えられるべきパーミッションの組が、対応づけられてセンタ装置2に登録される。
【0062】
登録されたソフトウェア識別子とパーミッション情報は、センタ装置2からホームゲートウェイ1へ向けて送信される。ホームゲートウェイ1側は、ソフトウェア識別子とパーミッション情報を取得したら、そのソフトウェア識別子に対するソフトウェア実体21が動作する際に、そのソフトウェア実体21がそのパーミッション権限で動作するようにACL3の設定を行う。更に、ホームゲートウェイ1は、パーミッション設定の完了したソフトウェア識別子を指定して、ソフトウェア配布サーバ20に対して、ソフトウェア実体21を要求をする。
【0063】
ソフトウェア配布サーバは、ソフトウェア実体21要求を受け付けると、指定されたソフトウェア識別子に対応するソフトウェア実体21をホームゲートウェイ1へ応答送信する。ホームゲートウェイ1は、ソフトウェア実体21をソフトウェア配布サーバから取得すると、そのソフトウェアをインストールしたのち実行環境10にて起動する。
【0064】
この構成により、センタ装置2からソフトウェア識別子とパーミッション情報を送り込み、そのパーミッションの設定が確実に完了したあとに、ソフトウェア実体21が稼働することになり、パーミッション設定を行わないままに、ソフトウェア実体21が稼働することにより、本来、パーミッションを制限するはずだった、ソフトウェア実体21が、制限を受けないままに稼働することにより、他のベンダが提供するソフトウェア実体21が管理するリソースにアクセスすることにより、情報が流出するおそれはなくなる。
【0065】
この構成は、ソフトウェアを、センタ装置2の指示に基づいてダウンロードすることよりも、パーミッションの設定が完了したあとに、ソフトウェアが稼働することを確実ならしめることを主目的としている。
【0066】
ソフトウェア実体21に何らのパーミッションの設定をすることなく、ソフトウェア実体21を起動した際に、そのソフトウェア実体21が、どのようなデフォルト権限を取得するかは、ソフトウェア実体21の実行環境10による。特に、OSGiにおいては、パーミッションの設定を全く行わないままに、ソフトウェア実体21(バンドル)を起動すると、全権限を与えた状態で、ソフトウェア実体21が稼働する場合もあるため、そのような環境において、本第3の実施の形態の構成は、特に効果がある。
【0067】
パーミッション設定を全く設定せずソフトウェア実体21を起動しても全権限とならないソフトウェア実行環境10においても、必要最小限の権限を越えた強い権限を与えたまま、ソフトウェア実体21が稼働する事態の発生を避けることができという効果がある。
【0068】
また、本来パーミッションを与えるべきでなかったものにパーミッションが与えられるケースとは逆に、本来、パーミッションを与えるべきであったのに、パーミッションを与えられないで、ソフトウェア実体21が稼働すると、そのソフトウェア実体21は、正常にサービス機能を提供できなくなる。本第3の実施の形態は、意図したパーミッションの設定が完了してから、ソフトウェア実体21が稼働することを保障する構成であり、この面でも効果がある。
【0069】
なお、本第3の実施の形態において、センタ装置2自体は、特にソフトウェア実体21そのものを取り扱うことは必須ではない。例えば、Webサーバをソフトウェア配布サーバとして設置し、そのソフトウェア配布サーバに直接CD−ROMを持ち込みソフトウェア実体21を登録する運営形態でもよい。多くの場合、そのソフトウェア実体21がホームゲートウェイ1上で稼働する際に、どのようなパーミッションを付与すべきかは、そのソフトウェア実体21の内容をよく把握して、その上で、センタ装置2の管理主体へ、パーミッションの設定を依頼する運用形態が典型的である。
【0070】
もちろん、センタ装置2がソフトウェア実体21も扱い、ソフトウェア配布サーバを仲介者として、ホームゲートウェイ1へソフトウェア実体21を送り込む構成をとっても構わないが、それは本第3の実施の形態の必須事項ではない。
【0071】
ソフトウェア配布サーバへソフトウェア実体21を登録する際に、ソフトウェア識別子を付与し、ソフトウェア実体21とソフトウェア識別子を対応づけて登録するが、Webサーバをソフトウェア配布サーバとして設置し、そのWebサーバにソフトウェア実体21を格納した位置に対応するURLをソフトウェア識別子として代用する場合は、ソフトウェア実体21をどの位置に格納するかによりURLが即定まるため、ソフトウェア識別子がすぐに定まる。その場合、ソフトウェア実体21の格納位置を定めることがソフトウェア識別子を定めてソフトウェア実体21を対応づけることに相当し、この形態も、本第3の実施の形態が、必須事項としてあげている、「ソフトウェア実体21とソフトウェア識別子を対応づけて登録する」ことに相当するものとみなせる。
【0072】
<第4の実施の形態>
図4は、第4の実施の形態を説明する構成図である。
【0073】
この図4には、ソフトウェア実体を特定するためのソフトウェア識別子と、ホームゲートウェイ上で稼働するソフトウェア実体に付与される実行権限となるパーミッション情報をソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、ソフトウェア識別子およびそれに対応するパーミッション情報をホームゲートウェイへ伝達するための識別情報伝達手段と、を有するセンタ装置と、センタ装置からソフトウェア識別子およびそれに対応するパーミッション情報を取得するための識別情報取得手段と、センタ装置から取得したパーミッション情報のみに従ってソフトウェア実体の実行権限を設定するための実行権限設定手段と、を有するホームゲートウェイと、ソフトウェア実体とソフトウェア識別子を組にして非可分にパッケージ化されたパッケージ化ソフトウェアがホームゲートウェイにインストールされたことを検出するためのインストール検出手段と、インストールされたパッケージ化ソフトウェアからソフトウェア識別子を取得するための識別子取得手段と、ソフトウェア識別子に対応するパーミッション情報の設定が存在するか否かを確認するためのパーミッション情報確認手段と、パーミッション情報確認手段による設定の存在確認が完了するまでの間においてインストールされたパッケージ化ソフトウェアの起動を抑制するための起動抑制手段と、パーミッション設定が存在しない場合にパッケージ化ソフトウェアのアンインストールの実行または実行権限を奪うためのソフトウェア処分手段と、を有するホームゲートウェイと、が示されている。
【0074】
このような構成のゲートウェイ装置上にインストールするソフトウェア実体は、かならずしもソフトウェア配布サーバに登録する形態がとれるとは限らない。ただし、パーミッション情報は、各サービスプロバイダから供給されるソフトウェア実体の相互作用を横断的に把握するホームゲートウェイソフトウェアパーミッション管理システムの運用者によって、一元的に制御するものとする。
【0075】
本第4の実施の形態では、ソフトウェア実体とソフトウェア識別子を不可分にパッケージ化されて、流通することを前提とする。ここで、「不可分」とは、パッケージ内のソフトウェア識別子のみを変更したり、ソフトウェア実体のみを変更することを防止するという意味である。
【0076】
ソフトウェア実体とソフトウェア識別子が不可分にパッケージ化する方法は、例えば、それらのデータ全体のダイジェストを、信頼できる認証局の秘密鍵で暗号化した署名データをパッケージと共に合わせて提示し、改竄の有無をチェックする側で、署名データを、その信頼できる認証局の公開鍵で復号化したダイジェストが、あらためてチェック側で計算したダイジェストと一致するか否かで、改竄を検出する、広く一般に知られた電子署名の方法により実施できる。
【0077】
センタ装置2側の動作、およびホームゲートウェイ1側で、ソフトウェア識別子とパーミッション情報をセンタ装置2から受信してアクセスコントロールリスト3に登録する動作は、第1の実施の形態と同じである。
【0078】
本第4の実施の形態の、ホームゲートウェイ1の構成は、第1の実施の形態のホームゲートウェイ1の構成に加えて、ソフトウェア実体とソフトウェア識別子の組を非可分にパッケージ化されてリリースされたパッケージ化ソフトウェア24、24’が、インストールされたことを検出する手段と、インストールされたパッケージ化ソフトウェアからソフトウェア識別子を取得する手段と、ソフトウェア識別子に対応するパーミッションの設定が存在するか否かを確認する手段と、パーミッション設定の存在確認が済むまでインストールされたパッケージのソフトウェア実体の起動を抑制する手段と、パーミッション設定が存在しない時に該ソフトウェアのアンインストールまたは全ての権限を奪う手段とを備える。
【0079】
ホームゲートウェイ1は、パッケージ化されたパッケージ化ソフトウェア24がインストールされたことを検出すると、まず、そのパッケージからソフトウェア識別子を取得し、そのソフトウェア識別子とパーミッション情報の対応情報がアクセスコントロールリストに登録されているか否かをチェックする。該当するパーミッション情報が存在しなければ、ホームゲートウェイ1は、そのソフトウェア識別子に対応するパッケージ化ソフトウェア24に対して、全てのパーミッション権限を奪い取る。何のパーミッション権限も持たないパッケージ化ソフトウェア24は、ディスク領域を消費するだけの存在であるため、典型的には消去される。
【0080】
あるいは、後々パーミッション情報がセンタ装置2から送り込まれそのソフトウェア識別子にパーミッション情報が確認されれば、そのパーミッション設定で、パッケージ化ソフトウェア24が起動してもよいので、ディスク上に存続させる形態をとってもよい。ホームゲートウェイ1は、そのソフトウェア識別子のパーミッション情報の存在が確認されないかぎり、対応するパッケージ化ソフトウェア24の起動を抑制する。
【0081】
そのソフトウェア識別子に対応するパーミッション情報が確認されれば、ホームゲートウェイ1は、パッケージ化ソフトウェア24の起動を妨げない。ホームゲートウェイ1の所有者であるエンドユーザの操作により起動されてもよいし、ホームゲートウェイ1上で稼働する別のパッケージ化ソフトウェア24からの指示により、起動されてもよい。
【0082】
本第4の実施の形態は、ソフトウェア識別子のパーミッション設定が確実に完了したあとに、そのソフトウェア識別子に対応するパッケージ化ソフトウェア24が起動することを確実ならしめることを主目的とするものであり、そのパッケージ化ソフトウェア24が、どのようなタイミングで起動するかについては自由である。
【0083】
ソフトウェア識別子とパッケージ化ソフトウェア24を非可分にパッケージ化したものを対象として、本第4の実施の形態の構成をとることにより、センタ装置2は、ソフトウェア識別子とパーミッション情報の設定処理のみに注力し、そのソフトウェア識別子に対応するパッケージ化ソフトウェア24のインストールや起動の管理をホームゲートウェイ1上の、他のパッケージ化ソフトウェア24や、そのパッケージ化ソフトウェア24に対して、外部から通信路を介して指示を出す運営体、ホームゲートウェイ1の所有者であるエンドユーザなど、別の運営体に一任することができ、センタ装置2の側の管理負荷を軽減する効果をもたらす。
【0084】
特にOSGiにおいては、ゲートウェイが存在するエンドユーザ宅のホームネットワーク上に、特定のデバイスが接続されたことを検出すると、そのデバイスを扱うための、パッケージ化ソフトウェア24(デバイスドライバ)が、自動的にダウンロードされ、インストール、起動される仕組みをそなえている。デバイスは、エンドユーザが、めいめい別途購入して、ホームネットワーク上に設置するかもしれず、いつそのデバイスドライバのパッケージ化ソフトウェア24が、ホームゲートウェイ1にインストールされるかはわからない。
【0085】
センタ装置2側は、そのデバイスドライバのソフトウェア識別子と、そのデバイスドライバに付与すべきパーミッション情報をあらかじめホームゲートウェイ1に伝達し、ホームゲートウェイ1は、そのパーミッション情報にもとづいて、あらかじめそのソフトウェア識別子に対するパーミッション設定を済ませておくが、パッケージ化ソフトウェア24が、いつインストールされ、実行されても、センタ装置2側は関知する必要はない。パッケージ化ソフトウェア24は、ソフトウェア識別子に対するパーミッション情報と比して、メモリ、ディスク領域を多く占有するため、あらかじめ必要になる可能性のある全てのデバイスドライバをインストールして準備しておくことは現実的ではない。
【0086】
しかし、本実施の形態の構成のように、ソフトウェア識別子とパーミッション情報のみならば、後々インストールされる可能性のあるパッケージ化ソフトウェア24に対応するものを、あらかじめ全てホームゲートウェイ1へ送り込み設定をすませておくことは十分に現実的である。
【0087】
<第5の実施の形態>
図5は、第5の実施の形態を説明する構成図である。
【0088】
本第5の実施の形態は、ソフトウェア実体とソフトウェア識別子とパーミッション情報の3つ組が不可分にパッケージ化されて、流通することを前提とする。パーミッションについては、ソフトウェア識別子に対して、センタ装置2が、パッケージの作成に先立ち、そのソフトウェア実体のパーミッション設定として一度は認めた内容が格納されていることを前提とする。
【0089】
図5には、ホームゲートウェイが、ソフトウェア実体と、ソフトウェア識別子と、センタ装置の運営主体が許可しているパーミッション情報と、を組み合わせて非可分にパッケージ化されたパッケージ化ソフトウェアがインストールされたことを検出するためのインストール検出手段と、パッケージ化ソフトウェアからセンタ装置の運営主体が許可したパーミッション情報を取り出すためのパーミッション情報取り出し手段と、センタ装置から取得したパーミッション情報によるパーミッション設定が存在しない場合において、パッケージ化ソフトウェアから取り出したパーミッション情報にもとづいて設定を行うための設定手段と、センタ装置からのパーミッション情報によるパーミッション設定の存在の確認と、およびパッケージ化ソフトウェアから取り出したパーミッション設定が完了するまでの間においてインストールされたパッケージ化ソフトウェアの起動を抑制するための起動抑制手段と、が示されている。
【0090】
このような構成の第5の実施の形態において、センタ装置2側の動作、およびホームゲートウェイ1側で、ソフトウェア識別子とパーミッション情報をセンタ装置2のACL4から受信してACL3に登録する動作は、第4の実施の形態と同じである。
【0091】
本第5の実施の形態のホームゲートウェイ1は、第4の実施の形態のホームゲートウェイ1の構成に加えて、3つ組が不可分にパッケージ化されたソフトウェアのインストールを検出する手段と、ソフトウェア識別子に対応するセンタ装置2から取得したパーミッション情報によるパーミッションの設定が存在するか否かを確認する手段と、3つ組のパッケージから、ソフトウェア識別子だけでなくパーミッション情報を取り出す手段と、センタ装置2から取得したパーミッション情報によるパーミッション設定がない場合は、パッケージ化ソフトウェアから取り出したパーミッション情報にもとづいて設定を行う手段と、センタ装置2から取得したパーミッション情報の存在の確認および、存在が確認できない場合のパッケージ化ソフトウェアから取り出したパーミッション情報にもとづくパーミッションの設定が完了するまで、インストールされたソフトウェア実体の起動を抑制する手段を備える。
【0092】
本第5の実施の形態におけるホームゲートウェイ1は、ソフトウェア実体とソフトウェア識別子とパーミッション情報の3つ組が不可分にパッケージ化されたパッケージ化ソフトウェア26のインストールを検出すると、そのパッケージ化ソフトウェア26から、ソフトウェア識別子を取り出す。そして、取り出したソフトウェア識別子に対して、そのソフトウェア識別子に対応するセンタ装置2から送り込まれ取得したパーミッション情報にもとづくパーミッション設定が、ACL3に既に登録されているか否かを調べる。
【0093】
そのソフトウェア識別子に対応するパーミッション設定が既に存在するならば、既にパーミッション設定が有効になっているということなので、ソフトウェア実体を起動する。
【0094】
一方、そのソフトウェア識別子に対応するセンタ装置2から取得したパーミッション情報が存在しなければ、パッケージ化ソフトウェア26’から取り出したパーミッション情報を使って、パーミッションを設定する。
【0095】
センタ装置2からすでにパーミッション情報がおくりこまれて、そのソフトウェア識別子に対するパーミッション設定が既に済んでいるか、あるいは、済んでいない場合に、パッケージから取り出したパーミッション情報にもとづくパーミッション設定が完了するまで、ホームゲートウェイ1は、そのソフトウェア識別子に対応するソフトウェア実体の起動を抑制する。
【0096】
第4の実施の形態では、センタ装置2から送り込まれ取得したパーミッション情報にもとづくパーミッション設定が存在しない場合は、ソフトウェア実体には、なにもパーミッションを与えず、起動も許さないが、本第5の実施の形態においては、センタ装置2から送り込まれ取得したパーミッション情報にもとづくパーミッション設定が存在しない場合は、パッケージ内のパーミッション情報にもとづいてパーミッション設定を行う。
【0097】
このような構成にすると、センタ装置2は、3つ組のパッケージ化時に、ソフトウェア実体を吟味して、適切なパーミッション設定であると認めたパーミッション情報に、その後変化がない場合は、そのあと、そのパッケージ化ソフトウェア26をダウンロードして、インストール、起動するホームゲートウェイ1に、パーミッション情報を送り込む必要はなくなる。
【0098】
対し、もしもソフトウェア実体の内容に、後々、セキュリティ上の不具合が発覚し、付与するパーミッションを変更する必要が生じた場合、センタ装置2は、ソフトウェア識別子と新たなパーミッションを、ホームゲートウェイ1に送り込み、変更されたパーミッション情報にもとづいてパーミッションの設定を行い、新たなパーミッション設定に従って、ソフトウェア識別子に対応するソフトウェア実体を稼働させることができる。
【0099】
センタ装置2は、設定すべきパーミッション設定内容に変更の生じたソフトウェア実体に関わるパーミッション情報のみを管理し、ホームゲートウェイ1へ送り込むだけで済み、管理の手間を軽減させる効果をえられる。
【0100】
なお、ソフトウェア実体の実行環境10によっては、パーミッション設定内容を変更したあと、そのソフトウェア実体を再起動する必要がある場合がある。ソフトウェア実体が稼働する環境に即して、新たに設定したパーミッション情報が有効になるように必要な手段をこうじる必要がある。
【0101】
本第5の実施の形態は、本第4の実施の形態と、混合して運用してもよい。つまり、ソフトウェア実体とソフトウェア識別子の2つ組が不可分にパッケージ化されたものと、ソフトウェア実体とソフトウェア識別子とパーミッション情報の3つ組が不可分にパッケージ化されたものとが、混在して流通してもよい。センタ装置2から送り込まれ取得したパーミッション情報にもとづくパーミッション設定が存在しない場合、前者の2つ組パッケージのソフトウェア実体は、起動が禁止され、後者の3つ組パッケージのソフトウェア実体は、パッケージ内から取り出したパーミッション情報の設定が完了すればその後の起動が許可される。
【0102】
<第6の実施の形態>
図6は、第6の実施の形態を説明する構成図である。
【0103】
図6には、デバイスオブジェクトと、その属性情報をあらわすデバイスカテゴリ情報と共に登録するためのデバイス管理ソフトウェアと、デバイスオブジェクトに適合するドライバソフトウェア実体のドライバ識別子をデバイスカテゴリ情報に基づいて特定し、ドライバ識別子を伴うドライバソフトウェア要求に対応してドライバソフトウェア実体を取得するためのドライバロケータソフトウェアと、ドライバロケータソフトウェアに不可分にパッケージ化されるプレフィックス識別子と、プレフィックス識別子とドライバロケータソフトウェアに体系付けられたドライバ識別子との組み合わせからなるソフトウェア識別子と、ホームゲートウェイ上で稼働するドライバソフトウェア実体に付与される実行権限となるパーミッション情報と、をドライバソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、ソフトウェア識別子およびそれに対応するパーミッション情報をホームゲートウェイへ伝達するための識別情報伝達手段と、を有するセンタ装置と、センタ装置からソフトウェア識別子およびそれに対応するパーミッション情報を取得するための識別情報取得手段と、センタ装置から取得したパーミッション情報のみに従ってソフトウェア実体の実行権限を設定するための実行権限設定手段と、デバイス管理ソフトウェアにより登録されるデバイスオブジェクトからデバイスカテゴリ情報を取得するためのデバイスカテゴリ情報取得手段と、ドライバロケータソフトウェアにデバイスカテゴリ情報を与えてドライバ識別子を応答させるためのドライバ識別子応答手段と、ドライバロケータソフトウェアにドライバ識別子を与えてデバイスオブジェクトと連携動作するドライバソフトウェア実体を取得させるためのドライバソフトウェア実体取得手段と、ドライバロケータソフトウェアからドライバロケータソフトウェアに不可分にパッケージ化されたプレフィックス識別子を取得するためのプレフィックス識別子取得手段と、プレフィックス識別子とドライバ識別子からソフトウェア識別子を生成するためのソフトウェア識別子生成手段と、ドライバソフトウェア実体を生成したソフトウェア識別子に対応するものとしてインストールおよび起動する起動手段と、を有するホームゲートウェイと、が示されている。
【0104】
このような構成の第6の実施の形態は、以下の動作をするソフトウェア実体の実行環境10に対して適用される。
【0105】
ホームゲートウェイ1上で稼働するデバイス管理ソフトウェアが、ホームネットワーク上に接続されたデバイス装置に対応するデバイスオブジェクト34を、デバイス35の属性情報をあらわすデバイスカテゴリ情報と共に、ホームゲートウェイ1のソフトウェア実体の実行環境10に登録すると、ソフトウェア実体の実行環境10が、登録されたデバイスオブジェクト34のデバイスカテゴリ情報を、ドライバロケータ31に通知する。
【0106】
ドライバロケータ31は、デバイスカテゴリ情報をもって問合せを受けると、そのデバイスカテゴリのデバイスオブジェクト34に連携動作することが可能なドライバソフトウェアを選定し、ドライバソフトウェアに対応するドライバロケータ31内の体系で管理されるドライバ識別子を特定する。
【0107】
また、ドライバロケータ31は、ドライバ識別子を伴うドライバソフトウェア要求を受けると、そのドライバ識別子に対応するドライバソフトウェア実体を取得して要求元に引き渡す機能を持ち、従って、ドライバロケータ31は、自分の管理するドライバソフトウェア32の対応するドライバソフトウェア実体の取得手段も備えていることを前提とする。
【0108】
インストールされるドライバソフトウェア32は、自分に付与されているドライバ識別子についての情報をもたなくてもよい。
【0109】
ドライバソフトウェア実体とドライバ識別子との対応を情報として保持しているのは、ドライバロケータ31側である。
【0110】
このソフトウェア実体の実行環境10の実例として、典型的なOSGiの実装があげられる。
【0111】
「ベースドライバ」と呼ばれるデバイス管理ソフトウェアが、デバイスオブジェクトを登録すると、OSGi実装の一部である「デバイスマネージャ」が、ドライバロケータに、デバイスカテゴリを示して、適合の候補となるドライバソフトウェアを取得させ、取得したドライバソフトウェア32をインストールする。
【0112】
そして、インストールされたドライバソフトウェア32の中から、最も登録されたデバイスオブジェクト34と適合するドライバソフトウェア32を、そのデバイスオブジェクト34と結びつけ連携動作させる、「デバイスアクセス」という機構を備えている。
【0113】
この「デバイスアクセス」機能において、ドライバロケータソフトウェア31内の体系で管理される、「ドライバID」なるドライバ識別子によって、ドライバソフトウェア32が管理される。OSGiの枠組みにおいては、ドライバソフトウェア32自身は、自身にどのようなドライバIDが付与されているかについての情報は保持する必要はなく、その情報は、ドライバロケータ31側が持つ。
【0114】
また、本第6の実施の形態においてドライバロケータソフトウェア31は、ドライバロケータソフトウェア31毎に異なるプレフィックス識別子が不可分にパッケージ化されて流通することを前提とする。
【0115】
プレフィックス識別子としては、センタ装置2でソフトウェア実体に対応するものとして管理される、ドライバロケータソフトウェア31自身のソフトウェア識別子そのものを利用してもよいが、これに制限されるものではない。
【0116】
異なるドライバロケータソフトウェア31に対して、異なるプレフィックス識別子が付与されていさえすればよく、ドライバの提供ベンダ名を組み入れるなど管理上都合のよい体系のプレフィックス識別子をつけてよい。
【0117】
複数のドライバロケータソフトウェア31は、めいめい独自に体系づけたドライバ識別子を管理するため、異なる体系内で、同一のドライバ識別子が付与されることもありえるが、それぞれのドライバロケータに付与されるプレフィックス識別子が異なっていさえすれば、これは構わない。これは、以下に説明するドライバソフトウェア32に付与するソフトウェア識別子の一意性を保つ上で問題ないからである。
【0118】
ドライバソフトウェア32の側に付与するソフトウェア識別子は、そのドライバソフトウェア32を扱うドライバロケータのプレフィックス識別子及びドライバソフトウェア32のドライバ識別子の組によって生成された識別子が付与されセンタ装置2側で登録運用される。
【0119】
同一のドライバソフトウェア実体を、異なるドライバロケータが扱ってもさしつかえないが、その場合は、同一のドライバソフトウェア32に対して異なる複数のソフトウェア識別子が割り当てられることになる。ソフトウェア識別子は、同一のソフトウェア実体に対して、同一の値となることが望ましいが特にこれに限る必要はない。
【0120】
ソフトウェア識別子に対してソフトウェア実体が一意に特定されればよく、ソフトウェア実体に対してソフトウェア識別子が一意に定まることは必須ではない。
【0121】
ドライバロケータは、ドライバソフトウェア32のソフトウェア識別子を直接取り扱う手段をもたず、ドライバ識別子のみを扱う。これは、ソフトウェア識別子は、本実施の形態のホームゲートウェイソフトウェアパーミッション管理システムの管理主体によって運用されるものであり、ドライバロケータソフトウェア31の開発ベンダとは、管理主体が異なることを想定しているためである。
【0122】
ドライバ識別子は、ドライバソフトウェア32を一意に特定する役目を担う意味で、ソフトウェア識別子と役割が重なるが、決定的に異なるのは、ドライバ識別子は、ドライバロケータソフトウェア内で体系付けられた識別子であることである。
【0123】
パーミッションを管理するために、センタ装置2で体系づけられるソフトウェア識別子とは異なる。
【0124】
本第6の実施の形態は、異なる体系で管理されたドライバ識別子を、本実施の形態のパーミッション管理の枠組みに組み入れソフトウェアのソフトウェア識別子の体系と結びつけることを目的として構成される。
【0125】
センタ装置2側の動作、およびホームゲートウェイ1側で、ソフトウェア識別子とパーミッション情報をセンタ装置2から受信してアクセスコントロールリストに登録する動作は、第1の実施の形態と同じである。ただし、前述したようにドライバソフトウェア32のソフトウェア識別子は、ドライバロケータ不可分に付与するプレフィックス識別子と、ドライバ識別子から生成されたものを付与して運用するものとする。ドライバソフトウェア実体がホームゲートウェイ1上で稼働する際に設定されるべきパーミッション情報は、あらかじめホームゲートウェイ1へ送り込まれ、ホームゲートウェイ1側で、パーミッション設定が行われる。
【0126】
ドライバロケータソフトウェア31および、デバイス管理ソフトウェアは、それぞれ適切なパーミッション設定がなされ、ホームゲートウェイ1上にそのソフトウェア実体がインストールされ、既に稼働しているものとする。
【0127】
本第6の実施の形態のシステムにおいて、デバイス管理ソフトウェアおよび、ドライバロケータソフトウェア31は、システムの構成要素であると共に、システムの処理対象でもあり、その処理対象であるソフトウェア実体は、本第6の実施の形態のシステムと連携動作する。
【0128】
つまり、デバイス管理ソフトウェアは、デバイスカテゴリ情報を伴ってデバイスオブジェクト34を登録可能である。ドライバロケータソフトウェア31は、デバイスカテゴリを伴う問合せに対して、デバイスオブジェクト34と適合して連携動作することが可能なドライバソフトウェア32のドライバ識別子を返答すること、および、ドライバ識別子を伴うドライバソフトウェア要求を受けるとドライバソフトウェア実体を取得して要求元に引き渡し可能である。
【0129】
他方、本第6の実施の形態の構成要素であるホームゲートウェイ1側は、デバイスオブジェクト34からデバイスカテゴリ情報を取得する手段と、デバイスロケータソフトウェアにデバイスカテゴリ情報を与えてドライバ識別子を答えさせる手段と、ドライバロケータソフトウェア31ソフトウェアにドライバ識別子をあたえて、ドライバソフトウェア実体を取得させる手段を備える。
【0130】
さらに、ホームゲートウェイ1は、デバイスロケータソフトウェアに不可分にパッケージ化されたプレフィックス識別子をデバイスロケータソフトウェアから取得する手段、および、プレフィックス識別子とドライバ識別子から、ドライバソフトウェア32のソフトウェア識別子を生成する手段と、生成したソフトウェア識別子に対するものとして、取得したドライバソフトウェア32をインストール、起動する手段を備える。
【0131】
ホームゲートウェイ1において、デバイス管理ソフトウェアが、ホームゲートウェイ1側のホームネットワーク上に接続されたデバイスを検出し、デバイスオブジェクト34をデバイスカテゴリ情報と共にソフトウェア実体の実行環境10に登録すると、ホームゲートウェイ1は、登録されたデバイスオブジェクト34からデバイスカテゴリ情報を取り出し、そのデバイスカテゴリ情報を伴ってデバイスロケータへ問合せを行いドライバ識別子を応答させる。
【0132】
また、デバイスロケータソフトウェアから不可分にパッケージ化されたプレフィックス識別子を取り出す。
【0133】
そして、ドライバ識別子と、プレフィックス識別子の組からドライバソフトウェア32のソフトウェア識別子を生成する。典型的には、プレフィックス識別子とドライバ識別子の文字列連結によりソフトウェア識別子を生成する方法を用いると実装が簡単である。
【0134】
ホームゲートウェイ1は、ドライバ識別子を伴って、ドライバソフトウェア要求をドライバロケータソフトウェア31にかけ、ドライバロケータソフトウェア31に、ドライバソフトウェア実体を取得させ、それを、プレフィックス識別子とドライバ識別子から生成したソフトウェア識別子に対応するドライバソフトウェア実体としてインストールおよび起動する。
【0135】
起動されたドライバソフトウェア実体は、生成されたソフトウェア識別子に対応づけられたパーミッション設定内容に束縛された権限で稼働する。センタ装置2側からは、ドライバソフトウェア32のソフトウェア識別子は、プレフィックス識別子と、ドライバ識別子から生成されたものを付与し、そのソフトウェア識別子に対応するパーミッション情報が送り込まれ、ホームゲートウェイ1側でパーミッション設定されているはずなので、この構成により、センタ装置2の意図するパーミッション設定の権限内容で、ドライバソフトウェア32は稼働する。
【0136】
このような本第6の実施の形態の構成により、ドライバロケータソフトウェア31内でのみ通用するように体系付けられたドライバ識別子を、パーミッション設定のために体系付けているソフトウェア識別子の枠組みに組み込みつつ、ドライバソフトウェア32のパーミッションをセンタ装置2主導で制御することができる効果をもたらす。
【0137】
ドライバロケータソフトウェア31の開発者は、扱う対象のドライバソフトウェア32が、随時増えるようなことがあっても、各ドライバソフトウェア実体に対するドライバ識別子をドライバロケータソフトウェア31内で、自由にドライバ識別子を体系付けて、管理することができる。つまり、ドライバロケータソフトウェア31の開発者が各ドライバソフトウェア32を識別管理する上で都合のよい名称を自由に付与することができ、効果がある。
【0138】
ドライバソフトウェア実体のパーミッション設定は、センタ装置2主導で行うが、インストール、起動のタイミングは、ホームゲートウェイ1に接続されたデバイスを、デバイス管理ソフトウェアが検知してデバイスオブジェクト34を登録したときに発生し、それはセンタ装置2側の管理範疇外である。
【0139】
これは、本実施の形態の第4の実施の形態の説明で述べたのと同様の、ホームゲートウェイ1上で稼働する別のソフトウェア実体からの指示により、ドライバソフトウェア実体がインストールされ、起動される形態である。
【0140】
<第7の実施の形態>
図7は、第7の実施の形態を説明する構成図である。
【0141】
この図7には、デバイスオブジェクトと、その属性情報をあらわすデバイスカテゴリ情報と共に登録するためのデバイス管理ソフトウェアと、デバイスオブジェクトに適合するドライバソフトウェア実体のドライバ識別子をデバイスカテゴリ情報に基づいて特定し、ドライバ識別子を伴うドライバソフトウェア要求に対応してドライバソフトウェア実体を取得するためのドライバロケータソフトウェアと、ドライバソフトウェア実体を定めるドライバ識別子をキーにして一意にソフトウェア識別子を検索可能なように体系付けられたドライバソフトウェアのソフトウェア識別子と、ホームゲートウェイ上で稼働しドライバロケータソフトウェアが取得するドライバソフトウェア実体に付与される実行権限となるパーミッション情報をドライバソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、ソフトウェア識別子およびそれに対応するパーミッション情報をホームゲートウェイへ伝達するための識別情報伝達手段と、を有するセンタ装置と、センタ装置からソフトウェア識別子およびそれに対応するパーミッション情報を取得するための識別情報取得手段と、センタ装置から取得したパーミッション情報のみに従ってソフトウェア実体の実行権限を設定するための実行権限設定手段と、デバイス管理ソフトウェアにより登録されるデバイスオブジェクトからデバイスカテゴリ情報を取得するためのデバイスカテゴリ情報取得手段と、ドライバロケータソフトウェアにデバイスカテゴリ情報を与えてドライバ識別子を応答させるためのドライバ識別子取得手段と、ドライバロケータソフトウェアにドライバ識別子を与えてデバイスオブジェクトと連携動作するドライバソフトウェア実体を取得させるためのドライバソフトウェア実体取得手段と、ドライバ識別子をキーにセンタ装置より取得したパーミッション情報のソフトウェア識別子を検索してソフトウェア識別子を一意に特定する手段と、ドライバソフトウェア実体を検索により特定したソフトウェア識別子に対応するものとしてインストールおよび起動する起動手段と、を有するホームゲートウェイと、が示されている。
【0142】
このような構成の第7の実施の形態においては、デバイス管理ソフトウェア、ドライバロケータソフトウェア、ドライバソフトウェアの位置づけは、第6の実施の形態における位置づけと同じである。以下、第6の実施の形態と異なる部分を説明する。
【0143】
ドライバロケータソフトウェアが管理するドライバ識別子は、各ドライバロケータ内だけでなく、インストールされているもの、いないものも含めて全ドライバロケータに横断的に、一意のものが、ドライバソフトウェア実体に対して割り振られて運用されていることを前提とする。
【0144】
例えば、OSGiにおけるドライバIDは、OSGiの規定により、あるドライバソフトウェアに割り当てられるドライバIDは、全世界を通じて唯一無二であることを必要条件としている。
【0145】
また、ドライバソフトウェア実体に付与されるソフトウェア識別子は、センタ装置2側で管理しやすいようなセンタ装置2側で自由に定めた文字列と、ドライバロケータ開発側が決めたドライバ識別子の組から生成されたものが付与されて運用される。
【0146】
このとき、ソフトウェア識別子は、ソフトウェア識別子の集合の中にそのソフトウェア識別子が存在するのならば、ドライバ識別子をキーにした検索により、一意に特定できるように生成される。
【0147】
典型的には、センタ装置2で自由に定める文字列とドライバ識別子を区切り文字を挟んで文字列連結したものである。この場合、区切り文字には、センタ装置2で自由に定める文字列とドライバ識別子中に出現しないものを使うことにする。
【0148】
区切り文字以降の文字列が、ドライバ識別子と一致するソフトウェア識別子を検索することにより、そのドライバ識別子のドライバソフトウェア実体に対応するソフトウェア識別子を見出すことができる。
【0149】
センタ装置2側の動作、およびホームゲートウェイ1側で、ソフトウェア識別子とパーミッション情報をセンタ装置2から受信してアクセスコントロールリストに登録する動作は、第1の実施の形態と同じである。ただし、前述したようにドライバソフトウェアのソフトウェア識別子は、ドライバ識別子から検索可能なように体系付けられたソフトウェア識別子を付与して運用されるものとする。
【0150】
対して、ホームゲートウェイ1側では、第6の実施の形態と同様、ドライバロケータソフトウェアにデバイスカテゴリ情報を与えてドライバ識別子を答えさせる手段と、ドライバロケータソフトウェアにドライバ識別子を与えてデバイスオブジェクトと連携動作するドライバソフトウェア実体を取得させる手段と、を備える一方、第6の実施の形態と異なる部分として、ドライバ識別子をキーにセンタ装置2より取得したパーミッション情報のソフトウェア識別子を検索することによりソフトウェア識別子を一意に特定する手段と、取得させたドライバソフトウェア実体を、検索により特定したソフトウェア識別子に対応するものとして、インストールおよび起動する手段と、を備える。
【0151】
ホームゲートウェイ1において、デバイス管理ソフトウェアが、ホームゲートウェイ1側のホームネットワーク上に接続されたデバイスを検出し、デバイスオブジェクトをデバイスカテゴリ情報と共にソフトウェア実体の実行環境10に登録すると、ホームゲートウェイ1は、登録されたデバイスオブジェクトからデバイスカテゴリ情報を取り出し、そのデバイスカテゴリ情報を伴ってデバイスロケータへ問合せを行いドライバ識別子を応答させる。
【0152】
次にホームゲートウェイ1は、取得したドライバ識別子をキーとして、センタ装置2から送り込まれたパーミッション情報に対応づけられたソフトウェア識別子の集合の中にあるはずの、ドライバ識別子に対応するソフトウェア識別子を検索し、ソフトウェア識別子を特定する。
【0153】
さらに、ホームゲートウェイ1は、ドライバ識別子を伴って、ドライバソフトウェア要求をドライバロケータにかけ、ドライバロケータに、ドライバソフトウェア実体を取得させ、検索により特定したソフトウェア識別子に対応するドライバソフトウェア実体としてインストールおよび起動する。第6の実施の形態と同様、起動されたドライバソフトウェア実体は、生成されたソフトウェア識別子に対応づけられたパーミッション設定内容に束縛された権限で稼働する。
【0154】
特定された、ソフトウェア識別子は、センタ装置2から送り込まれたパーミッション情報が存在するソフトウェア識別子であるはずなので、この構成により、センタ装置2の意図するパーミッション設定の権限内容で、ドライバソフトウェアは稼働する。
【0155】
このような構成にすることにより、センタ装置2側は、ドライバ識別子の表現内容に束縛されることなく、センタ装置2側で自由な文字列を、ソフトウェア識別子に、部分的に付与することができる。
【0156】
このため、センタ装置2側で管理する上で都合のよい文字列をつけることにより、管理を簡素化することができる効果を生み出す。
【0157】
ドライバ識別子は、ドライバロケータの開発主体が寄り合う、一元的な組織によって管理運営されることが想定されるため、センタ装置2側の管理の都合にあわせた体系で、ドライバ識別子を決めることができないが、本第7の実施の形態の構成により、センタ装置2に都合のよい体系を組み込んで、ソフトウェア識別子を運用しつつそのソフトウェア識別子に対応するソフトウェア実体のパーミッション設定を制御することができる。
【0158】
<第8の実施の形態>
図8は、第8の実施の形態を説明する構成図である。
【0159】
図8には、ソフトウェア実体を特定するためのソフトウェア識別子と、それぞれのホームゲートウェイで差異のある情報を具体的な値に置き換える対象としてマクロ表現してパーミッションを記載したマクロ表現入りパーミッション情報と、を対応づけて登録するための識別子登録手段と、ソフトウェア識別子とそれに対応するマクロ表現入りパーミッション情報をホームゲートウェイに伝達するためのパーミッション情報伝達手段と、を有するセンタ装置と、ソフトウェア識別子とマクロ表現入りパーミッション情報をセンタ装置より取得するためのマクロ表現入りパーミッション情報取得手段と、取得したマクロ表現入りパーミッション情報を保持格納するためのパーミッション情報格納手段と、マクロ表現を具体的な値に展開するマクロ表現展開情報をローカルに維持管理するためのマクロ情報管理手段と、マクロ表現入りパーミッション情報とマクロ表現展開情報からパーミッション情報を生成するためのパーミッション情報生成手段と、マクロ表現入りパーミッション情報またはマクロ表現展開情報が変化した際にパーミッション情報を生成しなおすためのパーミッション情報再生成手段と、パーミッション情報再生成手段で生成したパーミッション情報のみに従ってソフトウェア実体の実行権限を設定するための実行権限設定手段と、を有するホームゲートウェイと、が示されている。
【0160】
このような構成のホームゲートウェイ1が設置されるホームネットワークの環境は、ホームゲートウェイ毎に一般に異なる。例えば、同じベンダのデバイス装置をホームネットワーク上に設置し、同じベンダが提供するソフトウェア実体をホームゲートウェイ1上にインストールしても、デバイスに付与されるIPアドレスは、各ホームネットワーク上で異なる。
【0161】
もしもパーミッション設定を、所定のIPアドレスを持つデバイスに対するアクセスの制限として表現する場合、同じデバイス装置を設置し、同じソフトウェア実体をインストールしていたとしても、そのソフトウェア実体に付与すべきパーミッション設定は異なることになる。
【0162】
本第8の実施の形態は、設定するパーミッションの内容にマクロ表現を組み込み、最終的なパーミッション設定を、各ホームゲートウェイ1で管理されるローカル情報をもちいて、マクロ表現を置き換えることにより、センタ装置2から、各ホームゲートウェイ1へ送り込む、デバイス装置を制御するためのソフトウェア実体のソフトウェア識別子に対するパーミッション情報を同一にすることで、センタ装置2側で行うパーミッション管理を簡素化することを目的とする。
【0163】
そのために、それぞれのホームゲートウェイ1で差異のある情報を、のちのち具体的な値に置き換える対象としてマクロ表現してパーミッションを記載したマクロ表現入りパーミッション情報51をセンタ装置2側で管理する。
【0164】
ホームゲートウェイ1側では、マクロ表現部分が具体的にどのような値になるかをローカル情報とローカル情報管理53にて管理する。
【0165】
例えば、デバイス装置にDHCPがIPアドレスを払い出した時に、その「デバイス装置を表すIPアドレス」を表すマクロ表現に対する具体的IPアドレスをマクロ情報展開情報52として管理維持する。
【0166】
また、例えば、同じA社製の同機種カメラデバイス60の2台に対して、一方には、玄関の監視用と、一方にはペットのモニタリング用途を割り振ったり、複数のB社製デバイス61である電力センサデバイスに対して、総使用電力量測定のためという共通の用途を割り振るために、エンドユーザに、それぞれの用途のデバイスにどのIPアドレスが対応するかを明示的に設定をしてもらうことにより管理維持するようにしてもよい。
【0167】
本第8の実施の形態において、センタ装置2側は、ソフトウェア実体を特定するソフトウェア識別子と、マクロ表現入りパーミッション情報とを対応づけて登録する手段と、ソフトウェア識別子とそれに対応するマクロ表現入りパーミッション情報をホームゲートウェイ1に伝達する手段を備える。
【0168】
他方、ホームゲートウェイ1側は、ソフトウェア識別子とマクロ表現入りパーミッション情報をセンタ装置2より取得する手段と、取得したマクロ表現入りパーミッション情報を保持格納する手段と、マクロ表現を具体的な値に展開するマクロ表現展開情報52をローカルに維持管理する手段と、センタ装置2から取得保持しているマクロ表現入りパーミッション情報51とローカルに管理されるマクロ表現展開情報52からパーミッション情報を生成する手段と、マクロ表現入りパーミッション情報51またはマクロ表現展開情報52が変化した際にパーミッション情報を生成しなおす手段と、生成したパーミッション情報のみに従ってソフトウェア実体の実行権限を設定する手段と、を備える。
【0169】
まず、センタ装置2側において、ソフトウェア識別子とマクロ表現入りパーミッション情報51の組が、対応づけられてセンタ装置2に登録される。
【0170】
登録されたソフトウェア識別子とマクロ表現入りパーミッション情報51は、センタ装置2からホームゲートウェイ1へ向けて送信される。
【0171】
ホームゲートウェイ1側は、ソフトウェア識別子とマクロ表現入りパーミッション情報51を取得したら、マクロ表現入りパーミッション情報を保持格納する。
【0172】
また、ホームゲートウェイ1は、マクロ表現と具体的値の対応情報を、マクロ展開情報52としてローカルに維持管理する。
【0173】
センタ装置2から取得して保持格納しているマクロ表現入りパーミッション情報51か、ローカルに維持管理されているマクロ展開情報52のどちらかが更新されると、ホームゲートウェイ1は、速やかに、マクロ表現部分を、マクロ展開情報52を使って展開して、完成されたパーミッション情報を生成し、アクセスコントロールを、生成したパーミッション情報に従ってパーミッション設定する。
【0174】
例えば、監視用ソフトウェアに対応するソフトウェア識別子1には、A社製のカメラ60を玄関の監視用に使う意味づけをしたマクロとして「マクロA−用途a」と表現し、またペット管理用ソフトウェアに対応するソフトウェア識別子2には、A社製のカメラ60をペットのモニタリング用に使う意味づけをしたマクロとして「マクロA−用途b」と表現し、出力管理ソフトウェアに対応するソフトウェア識別子3には、電力センサ61を、総電力量測定用に使う意味づけをしたマクロとして、「マクロB」と表現したマクロ表現入りパーミッション情報を、センタ装置61からホームゲートウェイ1に送り込むと、マクロ表現部分が、それぞれの用途に対応したデバイスのIPアドレスに置き換わり、各ソフトウェア実体は、許可されたデバイスのみにアクセスするようパーミッション設定される。
【0175】
このように、本第8の実施の形態の構成にすることにより、各ホームゲートウェイ1が設置されているそれぞれのホームネットワークにおいて、同じ位置づけながらそれぞれのホームゲートウェイ1で差異のある情報を、マクロ展開情報52として、ゲートウェイ側で解決させることができ、センタ装置2側が複数のホームゲートウェイ毎に個別に異なるパーミッション情報を送り込むことなく、統一された表現のマクロ表現入りパーミッション情報51を送り込むのみでよい。
【0176】
また、ホームゲートウェイ1側も、各デバイス装置に付与されている具体的IPアドレスをセンタ装置2側に明かす必要はない。
【0177】
特に、IP電話等のアドレスなどは、プライベートな情報とみなせる場合もあり、このようなプライベート情報を、センタ装置2に明かすことなく、センタ装置2からの指示にもとづいてパーミッション設定を行うことができる。また、センタ装置2側も、各ホームゲートウェイ1が設置されているホームネットワークにおける、情報を収集把握する必要がなくなる。
【0178】
<第9の実施の形態>
図9は、第9の実施の形態を説明する構成図である。
【0179】
図9には、ソフトウェア実体を特定するためのソフトウェア識別子と、ホームゲートウェイ上で稼働するソフトウェア実体に付与される実行権限を表すためのパーミッション情報、または、ソフトウェア実体が提供する機能の実行権限をあらわすために該ソフトウェア実体が自身で定義する独自定義パーミッション情報と、を対応づけて登録するためのパーミッション情報登録手段と、ソフトウェア識別子とそれに対応するパーミッション情報と独自定義パーミッション情報をホームゲートウェイへ伝達するためのパーミッション情報達手段と、を有するセンタ装置と、ソフトウェア識別子とパーミッション情報と独自定義パーミッション情報をセンタ装置より取得するためのパーミッション情報取得手段と、センタ装置から取得したパーミッション情報および独自定義パーミッション情報のみに従ってソフトウェア実体の実行権限を設定するための実行権限設定手段と、ソフトウェア実体が他のソフトウェア実体を利用する際において、該ソフトウェア実体が独自定義パーミッションを持っているか否かの確認の問合せに応答するためのパーミッション確認応答手段と、を有するホームゲートウェイと、が示されている。
【0180】
このような構成のサービスを提供するソフトウェア実体は、提供するサービス機能を、他のソフトウェア実体に利用させるために、独自定義されたパーミッションを利用する場合がある。これは、以下の理由による。
【0181】
機能を提供するソフトウェア実体は、自分自身が機能を提供するために必要なパーミッション、たとえば、ファイルシステムにアクセスしたり、ネットワーク経由で外へアクセスするパーミッションを取得する。そのソフトウェア実体が、取得したパーミッションを乱用して、機能を提供するために必要ではないファイルにアクセスしたり、ネットワークアクセスをしていないことを、あらかじめ、ソフトウェア実体の中身を入念にチェック確認した上で、問題がないソフトウェア実体に対してのみパーミッションを付与する運用が行われる。
【0182】
しかし、機能を提供するソフトウェア実体が提供する機能を、他のソフトウェア実体が利用する際、利用する側のソフトウェア実体側も、その機能を実行するために、機能を提供する側と同じパーミッションを獲得していなければならない場合、利用側のソフトウェア実体の方に対しても、そのソフトウェア実体がそのパーミッション乱用した動作をしていないかを、機能を提供するソフトウェア実体と同程度の入念さでチェックすることが必要になる。
【0183】
これでは、ソフトウェア実体の内容が適正であるか否かの吟味を、機能提供するソフトウェア実体を、直接的にしろ、間接的にせよ、活用する全ての利用側のソフトウェア実体に対して、パーミッションを乱用していないかを、入念にチェックしなければならなくなる。
【0184】
これでは、運用の手間が非常にかかることになる。
【0185】
これを避けるため、機能を提供するソフトウェア実体のみがその機能を実行するパーミッションをもっていればよく、その機能を利用する側の、別のソフトウェア実体に、特にパーミッションを必要としないように、機能提供側ソフトウェア実体を実装することが望ましい。Java(登録商標)では、PrivilegedActionオブジェクトを活用することにより、機能利用側がパーミッションを持っている必要がなくなる。
【0186】
しかし、それでは、無条件に提供機能を利用されてしまうことになるため、独自定義されたパーミッションを持っているソフトウェア実体のみが、提供機能を利用できるように、実装することが多い。例えばJava(登録商標)においては、Permissionクラスを継承することによって、独自のPermissionクラスを定義することができ、その独自パーミッションを機能利用ソフトウェア実体が持っているかを、機能提供ソフトウェア実体側で調べることができる。
【0187】
このパーミッション定義は、そのパーミッションにより利用制限をかけるあるプログラム実体と、その独自パーミッション権限を獲得して、そのプログラムにより提供されている機能を利用する別のプログラム実体の間で、共有する。
【0188】
ある機能提供ソフトウェア実体が、複数の機能を提供する場合、その機能ごとに、独自定義パーミッションを用意することもできる。
【0189】
また、機能を提供するソフトウェア実体に与えるパーミッションが多岐にわたり複雑な場合も、機能を利用する側は、まとめあげられ単純化された独自的パーミッションだけを取得していれば機能を利用できる。
【0190】
このように、独自定義されたパーミッションは、ハードデバイスをハンドリングし、ハードデバイスを利用した機能を他のソフトウェア実体が利用できるように機能提供するソフトウェア実体においても活用することができる。つまり、そのハードデバイスを操作するために必要な、特殊な権限に相当するパーミッションは、そのハードデバイスを操作するその機能提供側ソフトウェア実体のみに与えればよく、提供される機能を通じてしかハードデバイスを操作しない、利用側のソフトウェア実体は、その機能を利用するための権限を表す、独自定義されたパーミッションを取得していればよく、パーミッション管理をカプセル化することができる。
【0191】
さらに、図9に示すように、同種のハードデバイスごとに、それぞれのデバイスをハンドリングする資源インスタンスオブジェクト73、74を別々の独自定義パーミッションと対応づけて生成し、各資源インスタンスオブジェクト73、74の具備するメソッド内で自インスタンスオブジェクトに関連付けられた独自定義パーミッションを、メソッドを呼び出した側のソフトウェア実体が所有しているかをチェックすることにより、同種のデバイスの利用権限を、特定のソフトウェア実体のみに限定する「インスタンスパーミッション」を実装することもできる。
【0192】
例えば、全く同機種のモニタカメラ2台(デバイス75、76)を扱うソフトウェア実体は、通常、そのモニタカメラを市販しているベンダから提供されることが想定される。各モニタカメラに対応する資源インスタンスオブジェクトは、この製作ベンダから提供されるソフトウェア実体により、生成され、他のソフトウェア実体向けに機能を提供する。
【0193】
しかし同機種のモニタカメラでもその用途によって、そのモニタカメラの操作機能を許可するソフトウェア実体を別々にしたいケースがある。
【0194】
例えば、玄関監視用の資源インスタンスオブジェクトのメソッド呼出は、警備サービス用ソフトウェア実体のみがハンドリングし、ペット見守り用のカメラは見守りサービス用ソフトウェア実体のみがハンドリングするようにする運用が考えられる。このような運用は、独自定義パーミッションとして、「インスタンスパーミッション」を活用することにより、簡単に運用できる。
【0195】
以上の利用形態を想定し、本第9の実施の形態は、センタ装置2においては、本第1の実施の形態であつかっていたパーミッション情報に、ソフトウェア実体に付与すべき実行権限として独自定義パーミッション情報も加えて、ソフトウェア識別子と対応づけて登録する手段を備える。
【0196】
また、ホームゲートウェイ1においては、独自定義パーミッション情報を含めたパーミッション情報をセンタ装置2から取得する手段、および、独自定義パーミッション情報も含めて、ソフトウェア実体の実行権限を設定する手段、および、ソフトウェア実体側から、独自定義パーミッションを呼出側ソフトウェア実体が所有しているか否かの問合せを受けて、所有しているか否かを応答する手段を備える。
【0197】
以下、業務フローの一例を想定して、本第9の実施の形態の動作を説明する。
【0198】
機能提供側ソフトウェア実体の提供ベンダ(デバイスベンダ)は、機能を利用するための独自パーミッションの定義(独自の権限(1)、独自の権限(2))を、2つの資源インスタンスオブジェクト73、74にそれぞれ対応付けて、そのソフトウェア実体72に組み込む。
【0199】
機能利用側のソフトウェア実体サービス(1)、サービス(2)を提供するプロバイダ77、78は、ソフトウェア実体を製作するにあたって、デバイスベンダと利用契約を取り交わし使用許諾を得る。
【0200】
デバイスベンダは、独自の権限(1)をサービス(1)のソフトウェア識別子に、独自の権限(2)をサービス(2)のソフトウェア識別子に与えてよい旨をホームゲートウェイソフトウェアパーミッション管理システムの運営主体に報告する。
【0201】
一方、サービス(1)、サービス(2)を提供する各プロバイダは、デバイスベンダより権限(1)、権限(2)の利用許諾を受けた旨を、各サービスのソフトウェア識別子と共に報告する。
【0202】
ホームゲートウェイソフトウェアパーミッション管理システムの運営主体は、提供側、利用側の報告がでそろうと、センタ装置2のACL4に、サービス(1)のソフトウェア実体には、権限(1)の独自パーミッションを付与し、サービス(2)のソフトウェア実体には、権限(2)の独自パーミッションを付与するよう、独自パーミッション情報を登録する。
【0203】
独自パーミッション情報を含むパーミッション情報は、ホームゲートウェイ1に伝達される。
【0204】
ホームゲートウェイ1側は、独自パーミッションを、伝達されたパーミッション情報にて指示されたサービス識別子に対してパーミッション設定を行う。
【0205】
機能利用側ソフトウェア実体(1)、(2)が稼働している時点で、パーミッション設定は既に完了するようにする。
【0206】
機能提供側ソフトウェア実体72は、機能利用側ソフトウェア実体70、71から機能実行の依頼を受けると、その機能に対応づけられた独自定義パーミッションを、その機能を利用しようとしているソフトウェア実体が所持しているか否かを、ゲートウェイ(ソフトウェア実体)に問い合わせる。ゲートウェイは、その問合せに応じて、機能利用側ソフトウェア実体に対応するソフトウェア識別子に対して、独自定義パーミッションが設定されているか否かを応答する。
【0207】
もしも、独自パーミッションが設定されていなければ機能提供側ソフトウェア実体は、要求された機能の実行を拒否する。独自パーミッションが設定されていれば、要求された機能を実行する。
【0208】
本第9の実施の形態の構成により、独自パーミッションをあらかじめ用意されているパーミッションと同等の扱いで、ホームゲートウェイソフトウェアパーミッション管理システムで管理することができる効果を得られる。
【0209】
これにより、特に、複数の同種のデバイスに対応づけて生成された資源インスタンスオブジェクトを、異なるソフトウェア実体に割り当て、割り当てられた資源インスタンスオブジェクトが、他方のソフトウェア実体によってアクセスできないようにする、セパレーションを、インスタンス単位で実現することができる。
【0210】
なお、デバイスベンダ79が、サービス(1)やサービス(2)のプロバイダへ、デバイスベンダ79が定義した権限(1)、権限(2)のパーミッションの取得を許可したことを受け付け、各サービスのプロバイダが、各サービスのソフトウェア識別子に付与するパーミッションとして独自パーミッションを含めて申請したときに、確かにデバイスベンダ79が、その独自パーミッションを、そのサービスプロバイダの申請しているサービスのソフトウェア識別子に与えることを許可していることを確認する業務は、システム化することも可能である。
【0211】
<第10の実施の形態>
図10は、第10の実施の形態を説明する構成図である。
【0212】
図10には、独自定義パーミッション情報と、該独自定義パーミッション情報の設定制御を許可するソフトウェア実体を特定するパーミッション設定ソフトウェア識別子の対応情報と、を共に登録するための対応情報登録手段と、独自定義パーミッション情報と対応情報をホームゲートウェイに伝達するための対応情報伝達手段と、を有するセンタ装置と、対応情報をセンタ装置より取得するための対応情報取得手段と、独自定義パーミッションの付与および没収の設定を他のソフトウェア実体に対して行う依頼としてパーミッションを設定する対象のソフトウェア実体を特定するソフトウェア識別子と、および独自定義パーミッションの情報を伴う独自定義パーミッション設定依頼と、をソフトウェア実体から受け付けるための設定依頼受け取り手段と、独自定義パーミッションの設定依頼をしたソフトウェア実体のソフトウェア識別子と、および独自定義パーミッションの設定依頼で指示されたパーミッション情報と、の組に対し、センタ装置から取得した独自定義パーミッション情報と、およびパーミッション設定ソフトウェア識別子と、の対応情報に該当するものがあるか否かを判断するための対応判断手段と、対応判断手段において該当するものがあると判断された場合にのみ独自定義パーミッション設定依頼にて設定対象としてソフトウェア識別子で指定されたソフトウェア実体に対し、設定依頼された独自定義パーミッションの付与もしくは没収の設定を行うための付与没収手段と、を有するホームゲートウェイと、が示されている。
【0213】
このような構成の第10の実施の形態に比べて、第9の実施の形態においては、独自定義パーミッション情報を含めたパーミッション情報がホームゲートウェイ1に伝達され、ホームゲートウェイ1側でのパーミッション設定が完了した時点で、その独自パーミッションが、どのソフトウェア識別子に割り当てられているかは決定する。センタ装置2は新たな、パーミッション情報が送り込まれない限り、そのパーミッションの設定内容は変化しない。
【0214】
しかしながら、ホームネットワーク上に存在するデバイスは、一時的には、あるソフトウェア実体が占有するが、一通りの機能の利用が完了したら、占有を解き、他のソフトウェア実体が利用できるようにしたい場合がある。
【0215】
例えば、デバイスとしてテレビモニタは、テレビ電話サービスを実装するソフトウェア実体が電話通話をしている間だけ占有すればよいし、また別の、録画ビデオ再生サービスを実装するソフトウェア実体による、同じテレビモニタの占有は、ビデオ視聴をしている間だけ占有すればよい。
【0216】
本第9の実施の形態の構成で、これを行おうとすると、あらたにそのデバイスを占有して利用するソフトウェア実体のソフトウェア識別子に、その独自パーミッションを与えるために、センタ装置2は、独自パーミッションのパーミッション情報を送り込みなおす必要がある。デバイスの占有の移り変わりが頻繁な場合、センタ装置2のパーミッション設定処理負荷が大きなものとなる。
【0217】
そこで第10の実施の形態においては、独自パーミッションを、他のソフトウェア実体に付与したり、奪い取ったりしたりする行為を、独自パーミッションに限って、その独自パーミッションの設定定義している機能提供側のソフトウェア実体が行えるようすることを目的とする。
【0218】
第10の実施の形態は、第9の実施の形態の構成に加え、センタ装置2側においては、独自定義パーミッションと、自ソフトウェア実体が定義管理している独自定義パーミッションに限って、その独自定義パーミッションを他のソフトウェア実体に対して着脱することを許可するソフトウェア実体のソフトウェア識別子を表す独自定義パーミッション設定ソフトウェア識別子との対応情報を登録する手段と、独自定義パーミッション情報を含めたパーミッション情報に加えて、独自定義パーミッションとパーミッション設定ソフトウェア識別子の対応情報も、ホームゲートウェイ1に伝達する手段を備え、ホームゲートウェイ1側においては、センタ装置2より、独自定義パーミッション情報を含めたパーミッション情報に加えて、独自定義パーミッションとパーミッション設定ソフトウェア識別子の対応情報もセンタ装置2より取得する手段と、独自定義パーミッションの付与、没収の設定を他のソフトウェア実体に対して行う依頼として、パーミッションを設定する対象のソフトウェア実体を特定するソフトウェア識別子および独自定義パーミッションの情報を伴う独自定義パーミッション設定依頼を、ソフトウェア実体から受け付ける手段と、独自定義パーミッションの設定依頼をしたソフトウェア実体のソフトウェア識別子と独自定義パーミッションの設定依頼で依頼された独自定義パーミッション情報の組に対して、センタ装置2から取得した独自定義パーミッション情報とパーミッション設定ソフトウェア識別子の対応情報に該当するものがあるか否かを判断する手段と、該当するものがある場合のみ独自定義パーミッション設定依頼にて設定対象としてソフトウェア識別子で指定された、ソフトウェア実体に設定依頼された独自定義パーミッションの付与、もしくは没収の設定を行う手段を備える。
【0219】
センタ装置2が、独自パーミッションを含むパーミッション情報をホームゲートウェイ1に伝達して、ホームゲートウェイ1上で、独自パーミッション情報を含むパーミッション設定を行う動作は、本第9の実施の形態と同じである。この場合は、独自パーミッションの特定のソフトウェア識別子への設定は、センタ装置2の指示により直接的に行われることになる。
【0220】
本第10の実施の形態においては、これに加え、センタ装置2から、特定の独自定義パーミッションに関わる設定を、ホームゲートウェイ1上で、稼働するその独自定義パーミッションを定義しているソフトウェア実体に権限委譲することができる。
【0221】
ある機能提供側のソフトウェア実体が、提供する機能を利用するために必要な独自パーミッションの他の機能利用側ソフトウェア実体に対して設定作業を行うようにするために、まず、センタ装置2において、機能提供側のソフトウェア実体のソフトウェア識別子を、独自定義パーミッション設定ソフトウェア識別子として、独自定義パーミッションと独自定義パーミッション設定ソフトウェア識別子の対応情報を独自定義パーミッション管理DB81に登録する。
【0222】
この対応情報は、独自定義パーミッションに関わる設定作業を、どのソフトウェア実体が行ってよいかを表す情報となる。
【0223】
独自定義パーミッションと、独自定義パーミッション設定ソフトウェア識別子の対応情報は、センタ装置2よりホームゲートウェイ1に伝達され、ホームゲートウェイ1は、この対応情報をセンタ装置2より取得する。
【0224】
機能提供側のソフトウェア実体は、提供する機能を利用するために必要な独自パーミッションを他の機能利用側ソフトウェア実体に対して付与する必要があると判断すると、ホームゲートウェイ1に対して、そのソフトウェア実体を特定するソフトウェア識別子と、設定を行うパーミッション情報を伴う独自定義パーミッション設定依頼をだす。
【0225】
ホームゲートウェイ1は、この独自定義パーミッション設定依頼を受けると、この独自定義パーミッション設定依頼を出したソフトウェア実体、すなわち機能提供側ソフトウェア実体が、その独自定義パーミッションの設定依頼をだせるソフトウェア実体であるかを、センタ装置2より取得した、独自定義パーミッションと独自定義パーミッション設定ソフトウェア識別子の対応情報を参照して、チェックする。
【0226】
独自定義パーミッションと独自定義パーミッション設定ソフトウェア識別子の対応情報に機能利用側ソフトウェア実体の識別子と、設定依頼された独自定義パーミッションの対応情報が存在しないなら、独自定義パーミッションの設定依頼を拒絶する。
【0227】
存在するならば、独自定義パーミッションの設定依頼に伴って伝達された、独自定義パーミッションを設定対象とする機能利用側ソフトウェア実体のソフトウェア識別子に対して、指定された独自定義パーミッションの設定を行う。以降、機能利用側ソフトウェア実体は、設定された独自定義パーミッションに従った権限で、動作する。
【0228】
以上の第10の実施の形態の構成により、機能提供側ソフトウェア実体は、独自定義パーミッションに限っては、機能利用側ソフトウェア実体に対して、独自の裁量で動的に柔軟に、パーミッションの設定を行うことができる。
【0229】
また、それにより、独自パーミッションに関わる設定指示をセンタ装置2が全て行う必要がなくなるため、センタ装置2側の処理負荷を軽減できる。
【0230】
以上説明した第1〜10の実施の形態は、ソフトウェア実体を特定するソフトウェア識別子と、ホームゲートウェイ上のソフトウェア実行環境上で、そのソフトウェア実体が動作する際に、動作上の実行権限に制限を課すためにそのソフトウェア実体に付与する「パーミッション情報」を、センタ装置からホームゲートウェイに伝達し、ホームゲートウェイ側で、センタから送り込まれたパーミッション情報のみにもとづいて、パーミッションを設定させる手段を設けることを特徴としている。
【0231】
また、本実施の形態によれば、ホームゲートウェイ上で稼働するソフトウェア実体に付与するパーミッションをセンタから遠隔設定可能にし、同一のホームゲートウェイに相乗りした複数のソフトウェア実体のそれぞれが管理する情報がソフトウェア実体同士で互いに引き出されることを防止することができる。
【図面の簡単な説明】
【0232】
【図1】第1の実施の形態の構成を説明するための説明図である。
【図2】第2の実施の形態の構成を説明するための説明図である。
【図3】第3の実施の形態の構成を説明するための説明図である。
【図4】第4の実施の形態の構成を説明するための説明図である。
【図5】第5の実施の形態の構成を説明するための説明図である。
【図6】第6の実施の形態の構成を説明するための説明図である。
【図7】第7の実施の形態の構成を説明するための説明図である。
【図8】第8の実施の形態の構成を説明するための説明図である。
【図9】第9の実施の形態の構成を説明するための説明図である。
【図10】第10の実施の形態の構成を説明するための説明図である。
【図11】従来のシステムの構成を説明するための説明図である。
【符号の説明】
【0233】
1…ホームゲートウェイ
2…センタ装置
3、4…ACL
10…実行環境
20…ソフトウェア配布サーバ
34…デバイスオブジェクト
【技術分野】
【0001】
本発明は同一のホームゲートウェイに、サービスプロバイダが提供するソフトウェアを相乗りさせて同時運用するホームゲートウェイ管理システムに関し、相乗りして動作するソフトウェア実体の実行権限を、センタ装置から、一元的に制御することにより、各ソフトウェア実体の実装上のミスあるいは悪意をもった実装により、他のソフトウェア実体に割り当てられているシステムリソースや、他のソフトウェア実体へのアクセスを遮断し、適正にセパレートして運用することのできるホームゲートウェイソフトウェアパーミッション管理システムに関する。
【背景技術】
【0002】
従来のホームゲートウェイ管理システムの一例が、特開2003−271480に記載されている。図11に示すように、この従来のホームゲートウェイ管理システムは、多数のホームゲートウェイ100とゲートウェイ管理サーバ101との間で前記伝送情報を仲介する仲介サーバ102を設け、ホームネットワーク上の家電デバイス105、106に必要な情報の伝送をゲートウェイ管理サーバ101と仲介サーバ102とで分担する構成となっている。
【0003】
この構成を有する従来のホームゲートウェイ管理システムでは、ホームネットワーク上の家電に必要な情報の所在位置を、典型的にはURLの形式で、ホームゲートウェイ100に伝え、ホームゲートウェイ100は、URLで指定された仲介サーバ102から、ホームネットワーク上の家電デバイス105、106に必要な情報を取得する動作(S1〜4)をする(特許文献1参照)。
【特許文献1】特開2003−271480
【発明の開示】
【発明が解決しようとする課題】
【0004】
ソフトウェアの実行環境を提供するホームゲートウェイにおいて、従来のホームゲートウェイ管理システムが扱う、「家電に必要な情報」としては、様々なものが考えられるが、高度なものとして、家電に必要な情報を内包したソフトウェア実体があげられる。
【0005】
このソフトウェア実体がダウンロード、インストール、起動される時、このソフトウェア実体は、ホームゲートウェイ上のソフトウェア実行環境から、ストレージ領域などのリソースが配布され、それらのリソースを活用して家電デバイスの制御を行う。
【0006】
しかし、複数の家電ベンダが作成したそれぞれのソフトウェア実体が同一のホームゲートウェイ上で相乗りしてサービスを提供する環境において、各ソフトウェア実体に割り当てられたリソースは、それぞれのソフトウェアが管理する他のベンダには、参照されたくない情報が存在する。
【0007】
また異なるベンダのソフトウェア実体が提供する機能が、許可なく他のベンダのソフトウェア実体から利用されることによって、参照されたくない情報が、別ベンダへ流出するおそれもある。
【0008】
またホームゲートウェイの持ち主である、エンドユーザ側も、そのサービス実体が実行されることによって、そのサービスの提供を受けるために必要な情報以外の個人情報を、不正にソフトウェア実体に読み出されるおそれもある。特に各ベンダのサービスが相乗りする環境においては、各ベンダに対してそのベンダのサービスを受けるために提示する必要のある個人情報は異なるため、結果として、それらの情報を全てあわせた和集合が、情報漏えいの危険にさらされることになる。
【0009】
また、不正な情報引き出しに限らず、リソースを制限なく浪費することにより、ソフトウェアの実行環境そのものに、ダメージをあたえるおそれもあった。
【0010】
複数の家電ベンダが作成したそれぞれのソフトウェア実体が同一のホームゲートウェイ上で相乗りしてサービスを提供する環境において、ある不正なソフトウェアのソフトウェア実行環境にダメージを与える動作は、他の正規のソフトウェアの動作を妨害することになる。
【0011】
従来のホームゲートウェイ管理システムは、各ソフトウェア実体がホームゲートウェイのソフトウェア実行環境上で動作する際に、動作上の実行権限に制限を課す「パーミッション情報」をセンタ装置からの指示で設定する手段がない。
【0012】
したがって、前述した問題を回避するために、ホームゲートウェイに適切なパーミッションは、エンドユーザが自ら手動で行わなければならなかった。
【0013】
また、どのようなパーミッション設定にすればよいかは、高度な専門情報が必要な場合が多く、パーミッションの設定ミスが多く、発生していた。
【0014】
なお、個々のベンダから専門の作業者を派遣してエンドユーザ宅のホームゲートウェイ上で、そのベンダが製作したソフトウェアパーミッション設定させる運用形態は、そもそも、ネットワーク経由でソフトウェア実体をダウンロードしていることに意味がなくなり、各ユーザの宅を訪問する手間もかかるという問題がある。
【0015】
そして、特には、同一のホームゲートウェイ上に異なるベンダのソフトウェアを相乗りさせる形態の場合、自己、他者問わずにソフトウェアのパーミッションを不正に設定したり、他のベンダの管理情報をホームゲートウェイから直接閲覧される可能性があるため、望ましいことではない。
【0016】
同一のホームゲートウェイ上に異なるベンダのソフトウェアを相乗りさせる形態においては、パーミッションの設定は、各ベンダから信頼を得ている共通の運営体により行われることが望ましい。
【0017】
更に、ホームゲートウェイ上のソフトウェア実行環境で実行される、ソフトウェア実体のダウンロードおよびインストールおよび起動は、必ずしも、センタの指示で行われるとはかぎらず、エンドユーザが、そのサービスを受ける必要が出たときに、一時的にそのソフトウェア実体を、入手インストールして実行する場合もあった。あるいは、コアとなるソフトウェアが、必要となった時に、オプショナルなソフトウェアを一時的にインストールして稼働させる場合もあった。
【0018】
これらの場合においては、センタの指示に基づいて、仲介サーバ経由でソフトウェア実体のダウンロード、インストールが行われることを前提においている従来のシステム構成では、対応できなかった。
【0019】
本発明は、上述の課題を鑑みてなされたものであり、その目的は、ホームゲートウェイ上で稼働するソフトウェア実体に付与するパーミッションをセンタから遠隔設定可能にし、同一のホームゲートウェイに相乗りした複数のソフトウェア実体のそれぞれが管理する情報がソフトウェア実体同士で互いに引き出されることを防止することにある。
【課題を解決するための手段】
【0020】
上記課題を解決するため、請求項1に記載の本発明は、サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、前記ソフトウェア実体を特定するためのソフトウェア識別子と、前記ホームゲートウェイ上で稼働する前記ソフトウェア実体に付与される実行権限となるパーミッション情報を前記ソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を前記ホームゲートウェイへ伝達するための識別情報伝達手段と、を有するセンタ装置と、前記センタ装置から前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を取得するための識別情報取得手段と、前記センタ装置から取得した前記パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、を有する前記ホームゲートウェイと、を備える。
【0021】
また、請求項2に記載の本発明は、サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、前記ソフトウェア実体を特定するためのソフトウェア識別子と、前記ホームゲートウェイを特定するためのホームゲートウェイ識別子と、前記ホームゲートウェイ識別子に対応する前記ホームゲートウェイ上で稼働する前記ソフトウェア実体に付与される実行権限となるパーミッション情報と、を前記ソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を前記ホームゲートウェイ識別子に対応する前記ホームゲートウェイへ伝達するための識別情報伝達手段と、を有するセンタ装置と、前記センタ装置から前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を取得するための識別情報取得手段と、前記センタ装置から取得した前記パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、を有する前記ホームゲートウェイと、を備える。
【0022】
また、請求項3に記載の本発明は、サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、前記ソフトウェア実体を格納し要求に応じて配布するためのソフトウェア配布サーバと、前記ソフトウェア配布サーバに格納されている前記ソフトウェア実体を特定するためのソフトウェア識別子と、ホームゲートウェイ上で稼働する前記ソフトウェア実体に付与される実行権限となるパーミッション情報と、を前記ソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を前記ホームゲートウェイへ伝達するための識別情報伝達手段と、を有するセンタ装置と、前記ソフトウェア実体と前記ソフトウェア識別子を対応付けて格納するためのソフトウェア情報格納手段と、前記ソフトウェア識別子が指定された前記ソフトウェア実体が前記ホームゲートウェイから要求されることを受け付けるためのソフトウェア要求受付手段と、前記ソフトウェア識別子で指定された前記ソフトウェア実体を前記ホームゲートウェイからの前記要求に応答するための要求応答手段を備えた前記ソフトウェア配布サーバと、前記センタ装置から前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を取得するための識別情報取得手段と、前記センタ装置から取得した前記パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、前記ソフトウェア識別子で特定される前記ソフトウェア実体を前記ソフトウェア配布サーバへ要求して取得するためのソフトウェア取得手段と、取得した前記ソフトウェア実体を前記ホームゲートウェイにインストールするためのインストール手段と、インストールした前記ソフトウェア実体を前記ホームゲートウェイ上で起動するためのソフトウェア起動手段と、を有する前記ホームゲートウェイと、を備える。
【0023】
また、請求項4に記載の本発明は、サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、前記ソフトウェア実体を特定するためのソフトウェア識別子と、前記ホームゲートウェイ上で稼働する前記ソフトウェア実体に付与される実行権限となるパーミッション情報を前記ソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を前記ホームゲートウェイへ伝達するための識別情報伝達手段と、を有するセンタ装置と、前記センタ装置から前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を取得するための識別情報取得手段と、前記センタ装置から取得した前記パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、を有する前記ホームゲートウェイと、前記ソフトウェア実体と前記ソフトウェア識別子を組にして非可分にパッケージ化されたパッケージ化ソフトウェアが前記ホームゲートウェイにインストールされたことを検出するためのインストール検出手段と、インストールされた前記パッケージ化ソフトウェアから前記ソフトウェア識別子を取得するための識別子取得手段と、前記ソフトウェア識別子に対応する前記パーミッション情報の設定が存在するか否かを確認するためのパーミッション情報確認手段と、前記パーミッション情報確認手段による前記設定の存在確認が完了するまでの間において前記インストールされた前記パッケージ化ソフトウェアの起動を抑制するための起動抑制手段と、前記パーミッション設定が存在しない場合に前記パッケージ化ソフトウェアのアンインストールの実行または前記実行権限を奪うためのソフトウェア処分手段と、を有するホームゲートウェイと、を備える。
【0024】
また、請求項5に記載の本発明は、請求項4において、前記ホームゲートウェイは、前記ソフトウェア実体と、前記ソフトウェア識別子と、前記センタ装置の運営主体が許可しているパーミッション情報と、を組み合わせて非可分にパッケージ化されたパッケージ化ソフトウェアがインストールされたことを検出するためのインストール検出手段と、前記パッケージ化ソフトウェアから前記センタ装置の運営主体が許可した前記パーミッション情報を取り出すためのパーミッション情報取り出し手段と、前記センタ装置から取得した前記パーミッション情報によるパーミッション設定が存在しない場合において、前記パッケージ化ソフトウェアから取り出した前記パーミッション情報にもとづいて設定を行うための設定手段と、前記センタ装置からの前記パーミッション情報による前記パーミッション設定の存在の確認と、および前記パッケージ化ソフトウェアから取り出した前記パーミッション設定が完了するまでの間においてインストールされた前記パッケージ化ソフトウェアの起動を抑制するための起動抑制手段と、を備える。
【0025】
また、請求項6に記載の本発明は、サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、デバイスオブジェクトと、その属性情報をあらわすデバイスカテゴリ情報と共に登録するためのデバイス管理ソフトウェアと、前記デバイスオブジェクトに適合するドライバソフトウェア実体のドライバ識別子を前記デバイスカテゴリ情報に基づいて特定し、前記ドライバ識別子を伴うドライバソフトウェア要求に対応して前記ドライバソフトウェア実体を取得するためのドライバロケータソフトウェアと、前記ドライバロケータソフトウェアに不可分にパッケージ化されるプレフィックス識別子と、前記プレフィックス識別子と前記ドライバロケータソフトウェアに体系付けられたドライバ識別子との組み合わせからなるソフトウェア識別子と、前記ホームゲートウェイ上で稼働する前記ドライバソフトウェア実体に付与される実行権限となるパーミッション情報と、を前記ドライバソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を前記ホームゲートウェイへ伝達するための識別情報伝達手段と、を有するセンタ装置と、前記センタ装置から前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を取得するための識別情報取得手段と、前記センタ装置から取得した前記パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、前記デバイス管理ソフトウェアにより登録される前記デバイスオブジェクトから前記デバイスカテゴリ情報を取得するためのデバイスカテゴリ情報取得手段と、前記ドライバロケータソフトウェアに前記デバイスカテゴリ情報を与えて前記ドライバ識別子を応答させるためのドライバ識別子応答手段と、前記ドライバロケータソフトウェアに前記ドライバ識別子を与えて前記デバイスオブジェクトと連携動作する前記ドライバソフトウェア実体を取得させるためのドライバソフトウェア実体取得手段と、前記ドライバロケータソフトウェアから前記ドライバロケータソフトウェアに不可分にパッケージ化された前記プレフィックス識別子を取得するためのプレフィックス識別子取得手段と、前記プレフィックス識別子と前記ドライバ識別子から前記ソフトウェア識別子を生成するためのソフトウェア識別子生成手段と、前記ドライバソフトウェア実体を生成した前記ソフトウェア識別子に対応するものとしてインストールおよび起動する起動手段と、を有する前記ホームゲートウェイと、を備える。
【0026】
また、請求項7に記載の本発明は、サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、デバイスオブジェクトと、その属性情報をあらわすデバイスカテゴリ情報と共に登録するためのデバイス管理ソフトウェアと、前記デバイスオブジェクトに適合するドライバソフトウェア実体のドライバ識別子を前記デバイスカテゴリ情報に基づいて特定し、前記ドライバ識別子を伴うドライバソフトウェア要求に対応して前記ドライバソフトウェア実体を取得するためのドライバロケータソフトウェアと、ドライバソフトウェア実体を定めるドライバ識別子をキーにして一意にソフトウェア識別子を検索可能なように体系付けられたドライバソフトウェアのソフトウェア識別子と、前記ホームゲートウェイ上で稼働しドライバロケータソフトウェアが取得する前記ドライバソフトウェア実体に付与される実行権限となるパーミッション情報を前記ドライバソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を前記ホームゲートウェイへ伝達するための識別情報伝達手段と、を有するセンタ装置と、前記センタ装置から前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を取得するための識別情報取得手段と、前記センタ装置から取得した前記パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、デバイス管理ソフトウェアにより登録されるデバイスオブジェクトからデバイスカテゴリ情報を取得するためのデバイスカテゴリ情報取得手段と、前記ドライバロケータソフトウェアに前記デバイスカテゴリ情報を与えて前記ドライバ識別子を応答させるためのドライバ識別子取得手段と、前記ドライバロケータソフトウェアに前記ドライバ識別子を与えて前記デバイスオブジェクトと連携動作する前記ドライバソフトウェア実体を取得させるためのドライバソフトウェア実体取得手段と、前記ドライバ識別子をキーに前記センタ装置より取得した前記パーミッション情報の前記ソフトウェア識別子を検索してソフトウェア識別子を一意に特定する手段と、前記ドライバソフトウェア実体を検索により特定した前記ソフトウェア識別子に対応するものとしてインストールおよび起動する起動手段と、を有する前記ホームゲートウェイと、を備える。
【0027】
また、請求項8に記載の本発明は、サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、前記ソフトウェア実体を特定するためのソフトウェア識別子と、それぞれの前記ホームゲートウェイで差異のある情報を具体的な値に置き換える対象としてマクロ表現してパーミッションを記載したマクロ表現入りパーミッション情報と、を対応づけて登録するための識別子登録手段と、前記ソフトウェア識別子とそれに対応する前記マクロ表現入りパーミッション情報を前記ホームゲートウェイに伝達するためのパーミッション情報伝達手段と、を有するセンタ装置と、前記ソフトウェア識別子と前記マクロ表現入りパーミッション情報を前記センタ装置より取得するためのマクロ表現入りパーミッション情報取得手段と、取得した前記マクロ表現入りパーミッション情報を保持格納するためのパーミッション情報格納手段と、前記マクロ表現を具体的な値に展開するマクロ表現展開情報をローカルに維持管理するためのマクロ情報管理手段と、前記マクロ表現入りパーミッション情報と前記マクロ表現展開情報からパーミッション情報を生成するためのパーミッション情報生成手段と、前記マクロ表現入りパーミッション情報または前記マクロ表現展開情報が変化した際に前記パーミッション情報を生成しなおすためのパーミッション情報再生成手段と、前記パーミッション情報再生成手段で生成した前記パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、を有する前記ホームゲートウェイと、を備える。
【0028】
また、請求項9に記載の本発明は、サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、前記ソフトウェア実体を特定するためのソフトウェア識別子と、前記ホームゲートウェイ上で稼働する前記ソフトウェア実体に付与される実行権限を表すためのパーミッション情報、または、前記ソフトウェア実体が提供する機能の実行権限をあらわすために該ソフトウェア実体が自身で定義する独自定義パーミッション情報と、を対応づけて登録するためのパーミッション情報登録手段と、ソフトウェア識別子とそれに対応する前記パーミッション情報と前記独自定義パーミッション情報を前記ホームゲートウェイへ伝達するためのパーミッション情報達手段と、を有するセンタ装置と、前記ソフトウェア識別子と前記パーミッション情報と前記独自定義パーミッション情報を前記センタ装置より取得するためのパーミッション情報取得手段と、前記センタ装置から取得した前記パーミッション情報および前記独自定義パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、前記ソフトウェア実体が他のソフトウェア実体を利用する際において、該ソフトウェア実体が前記独自定義パーミッションを持っているか否かの確認の問合せに応答するためのパーミッション確認応答手段と、を有する前記ホームゲートウェイと、を備える。
【0029】
また、請求項10に記載の本発明は、請求項9において、前記独自定義パーミッション情報と、該独自定義パーミッション情報の設定制御を許可する前記ソフトウェア実体を特定するパーミッション設定ソフトウェア識別子の対応情報と、を共に登録するための対応情報登録手段と、前記独自定義パーミッション情報と前記対応情報を前記ホームゲートウェイに伝達するための対応情報伝達手段と、を有するセンタ装置と、前記対応情報を前記センタ装置より取得するための対応情報取得手段と、前記独自定義パーミッションの付与および没収の設定を他のソフトウェア実体に対して行う依頼としてパーミッションを設定する対象の前記ソフトウェア実体を特定するソフトウェア識別子と、および独自定義パーミッションの情報を伴う独自定義パーミッション設定依頼と、を前記ソフトウェア実体から受け付けるための設定依頼受け取り手段と、前記独自定義パーミッションの設定依頼をした前記ソフトウェア実体の前記ソフトウェア識別子と、および前記独自定義パーミッションの設定依頼で指示されたパーミッション情報と、の組に対し、前記センタ装置から取得した前記独自定義パーミッション情報と、および前記パーミッション設定ソフトウェア識別子と、の対応情報に該当するものがあるか否かを判断するための対応判断手段と、前記対応判断手段において該当するものがあると判断された場合にのみ前記独自定義パーミッション設定依頼にて設定対象として前記ソフトウェア識別子で指定されたソフトウェア実体に対し、前記設定依頼された前記独自定義パーミッションの付与もしくは没収の設定を行うための付与没収手段と、を有する前記ホームゲートウェイと、を備える。
【発明の効果】
【0030】
本発明によれば、ホームゲートウェイ上で稼働するソフトウェア実体に付与するパーミッションをセンタから遠隔設定可能にし、同一のホームゲートウェイに相乗りした複数のソフトウェア実体のそれぞれが管理する情報がソフトウェア実体同士で互いに引き出されることを防止することができる。
【発明を実施するための最良の形態】
【0031】
<第1の実施の形態>
図1は、第1の実施の形態を説明する構成図である。
【0032】
第1の実施の形態によるホームゲートウェイソフトウェアパーミッション管理システムは、ソフトウェア実体6、6’を特定するための図示しないソフトウェア識別子が設定され、ホームゲートウェイ1上で稼働する際にそのソフトウェア実体6、6’に付与すべき実行権限を表すパーミッション情報を対応づけて登録するためのパーミッション情報登録手段と、ソフトウェア識別子とそれに対応するパーミッション情報をホームゲートウェイ1に伝達する手段を持つセンタ装置2と、ソフトウェア識別子とパーミッション情報をセンタ装置2より取得するための識別情報取得手段と、センタ装置2から取得した該パーミッション情報のみに従ってソフトウェア実体6、6’の実行権限を設定するための実行権限設定手段と、を持つホームゲートウェイ1を備える。
【0033】
まず、ソフトウェア識別子と、そのソフトウェア識別子に対応するソフトウェア実体6、6’が、ホームゲートウェイ1上で動作する際に与えられるべきパーミッションの組が、対応づけられてセンタ装置2内のACL(アクセスコントロールリスト)4に登録される。
【0034】
登録されたソフトウェア識別子とパーミッション情報は、センタ装置2からホームゲートウェイ1へ向けて送信される。
【0035】
ホームゲートウェイ1側は、ソフトウェア識別子とパーミッション情報を取得したら、そのソフトウェア識別子に対するソフトウェア実体6、6’が動作する際に、そのソフトウェア実体6、6’がそのパーミッション権限で動作するようにACL3の設定を行う。OSGi(Open Service Gateway Initiative)の環境下では、指定されたURLに対してパーミッション情報を付与することができ、そのURLからダウンロードされたソフトウェア実体6、6’は、以後、設定されたパーミッションで動作させることができる。
【0036】
従って、OSGiの活用を前提とするならば、センタ装置2からパーミッション情報を送り込み、OSGiが提供するパーミッション設定機能を活用することにより、第1の実施の形態を実施することができる。なお、図1中にはOSGiに則った権限設定管理手段として、権限設定管理5、9が説明のために示されている。
【0037】
ここで、センタ装置2から送り込まれたパーミッション情報を設定する時点で、ソフトウェア識別子に対応するソフトウェア実体6、6’は、まだ、ホームゲートウェイ1上にインストールされていなくてもよい。
【0038】
あるソフトウェア識別子に対応づけてパーミッション情報を設定したあと、そのソフトウェア識別子に対応するソフトウェア実体6、6’が、ダウンロード、インストール、起動されると、事前に設定されたパーミッション設定に従って、そのソフトウェア実体6、6’は実行される。
【0039】
ソフトウェア実体6、6’の動作はホームゲートウェイ1内の実行環境10において行われ、ここでリソース7、7’をそれぞれ確保している。ソフトウェア実体6、6’を実行することにより制御されるのはホームゲートウェイ1に接続された家電デバイス8、8’である。
【0040】
また、ソフトウェア実体6、6’の動作に、後々、不具合があり、付与するパーミッションを変更する必要が生じた場合、センタ装置2は、直ちに、ソフトウェア識別子と新たなパーミッションを、ホームゲートウェイ1に送り込み、ホームゲートウェイ1側で、アクセスコントロールリストへ新たなパーミッションが書き込まれるとそれ以降、新たなパーミッション設定に従って、そのソフトウェア実体6、6’を稼働させることができる。
【0041】
これは、パーミッション情報がソフトウェア識別子と対応づけて管理し、いつでもセンタ装置2側から、ソフトウェア識別子を指定して、ホームゲートウェイ1上のソフトウェア実体6、6’の、パーミッション設定を変更できる構成としていることにより生じる効果である。
【0042】
のちのちの状況変化により、パーミッションをセンタ装置2側の制御により、随時変更することが可能なため、例えばセキュリティ上の不具合が発見された、ソフトウエア実体に対して、ホームゲートウェイ1上のリソース7、7’にアクセスする権限を奪うことにより、情報漏洩リスクを最小限に抑えることができる効果がある。新たなパーミッション設定には、以前には与えていたパーミッション設定を取り消し、抹消することも含まれる。
【0043】
ソフトウェア識別子に対応づけられてセンタ装置2に登録されるパーミッション情報は、インストールされている、あるいはインストールされる予定である、あるいはインストールされる可能性があるソフトウェア実体6、6’に対し、そのソフトウェア実体6、6’の動作内容を吟味して、そのソフトウェア実体6、6’が、ホームゲートウェイ1上でサービス機能を提供するにあたって、どのような権限が必要があるかを見極め、必要最小限のパーミッション設定内容が、ホームゲートウェイソフトウェアパーミッション管理システムの利用者によって決定され、センタ装置2に登録されることを想定している。
【0044】
「センタ装置2からホームゲートウェイ1に伝達する手段」は、通信途中で改竄されないよう、またセンタ装置2からの送信であると成りすましされることのないよう配慮されることが必要である。
【0045】
改竄や、成りすましをされると、本物のセンタ装置2が指示したパーミッション設定とはことなる、パーミッション情報に基づいて、ホームゲートウェイ1側で、ソフトウェア実体6、6’の実行権限を設定させられるおそれがあり、そのような不正が起こりうる環境においては、「センタ装置2から取得したパーミッション情報のみに従ってソフトウェア実体6、6’の実行権限を設定する手段」を実装することができないので注意が必要である。センタ装置2とホームゲートウェイ1間の通信において、改竄や、成りすましを防止することは、暗号通信を行うなど広く一般的な手法を用いることで実現できる。
【0046】
ソフトウェア実体6、6’を特定するソフトウェア識別子として、例えばOSGiにおいては、そのソフトウェア実体6、6’の入手先URL文字列が利用される。
【0047】
同じ内容のソフトウェア実体6、6’ならば、その入手先が異なっても、同一のソフトウェア識別子が付与されることが、「識別子」の役割としてはふさわしいが、この制約に縛られる必要はなく、全く同じ内容のソフトウェア実体6、6’でも、その入手先URLが異なる場合に、異なるソフトウェア識別子としてそれぞれの入手先URLを付与してもかまわない。
【0048】
URLをソフトウェア識別子として用いると、ソフトウェア実体6、6’の格納場所を決めた時点で、ソフトウェア識別子が即定まることになり、ソフトウェア実体6、6’と、ソフトウェア識別子の対応の管理を簡素化することができるメリットもある。
【0049】
センタ装置2からパーミッション情報を、ホームゲートウェイ1に伝達する手段は、センタ装置2側からホームゲートウェイ1にアクセスしてパーミッション情報を送り込む、プッシュ形態が典型的であるが、これに限る必要はない。
【0050】
例えば、ホームゲートウェイ1側から、定期的にセンタ装置2へ繰り返しアクセスし、更新されたパーミッション情報の有無を調べ、更新されていたらパーミッション情報を取得する形態でもよい。プッシュ型にせよプル型にせよ、センタ装置2がゲートウェイへパーミッション情報を伝達する手段が確保されていればよい。
【0051】
<第2の実施の形態>
図2は、第2の実施の形態を説明する構成図である。
【0052】
この図2には、ソフトウェア実体を特定するためのソフトウェア識別子と、ホームゲートウェイを特定するためのホームゲートウェイ識別子と、ホームゲートウェイ識別子に対応するホームゲートウェイ上で稼働するソフトウェア実体に付与される実行権限となるパーミッション情報と、をソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、ソフトウェア識別子およびそれに対応するパーミッション情報をホームゲートウェイ識別子に対応するホームゲートウェイへ伝達するための識別情報伝達手段と、を有するセンタ装置と、センタ装置からソフトウェア識別子およびそれに対応するパーミッション情報を取得するための識別情報取得手段と、センタ装置から取得したパーミッション情報のみに従ってソフトウェア実体の実行権限を設定するための実行権限設定手段と、を有するホームゲートウェイと、が示されている。
【0053】
このような構成のセンタ装置2は、複数のホームゲートウェイ(1)1、ホームゲートウェイ(2)1’、ホームゲートウェイ(3)1’’を一括管理するが、一般に、各ホームゲートウェイ(1)〜(3)1、1’、1’’上にインストールされるソフトウェア実体13〜15の集合は各ホームゲートウェイ(1)〜(3)1、1’、1’’毎に異なり、よって各ホームゲートウェイ(1)〜(3)1、1’、1’’に送り込むソフトウェア識別子とパーミッション情報の内容は、各ホームゲートウェイ(1)〜(3)1、1’、1’’毎に異なる。
【0054】
本第2の実施の形態のセンタ装置2は、第1の実施の形態に加えて、各ホームゲートウェイ(1)〜(3)1、1’、1’’に対応するホームゲートウェイ(1)〜(3)1、1’、1’’識別子と対応づけて、個々のホームゲートウェイ(1)〜(3)1、1’、1’’毎に、ソフトウェア識別子と設定すべきパーミッション情報を登録し、各ホームゲートウェイ(1)〜(3)1、1’、1’’に対しては、そのホームゲートウェイ(1)〜(3)1、1’、1’’識別子に対応づけて、登録されたソフトウェア識別子とパーミッション情報を伝達する。
【0055】
各ホームゲートウェイ(1)〜(3)1、1’、1’’識別子およびソフトウェア識別子に対応付けられて登録されるパーミッション情報は、各ホームゲートウェイ(1)〜(3)1、1’、1’’ごとに、インストールされている、あるいはインストールされる予定である、あるいはインストールされる可能性があるソフトウェア実体13〜15に対し、必要最小限のパーミッションが、ホームゲートウェイソフトウェアパーミッション管理システムの利用者によって内容が決定され、センタ装置2に登録されることを想定している。ソフトウェア識別子と、そのソフトウェア識別子に対応するそれぞれのソフトウェア実体13〜15が、ホームゲートウェイ(1)〜(3)1、1’、1’’上で動作する際に与えられるべきパーミッションの組が、対応づけられてセンタ装置2内のACL(アクセスコントロールリスト)4内のホームゲートウェイ(1)〜(3)に対するACL11〜11’’それぞれに登録される。
【0056】
このような構成にすることにより、各ホームゲートウェイ(1)〜(3)1、1’、1’’毎に、インストールされているソフトウェアの内容が異なる運用形態においても、それぞれの実行環境10〜10’’において個別のパーミッション管理を行うことができる効果が得られる。
【0057】
例えば、各ゲートウェイの所有者であるエンドユーザと、サービスプロバイダの間でサービス提供に関わる契約が結ばれた時点で、ホームゲートウェイ(1)〜(3)1、1’、1’’にサービスソフトウェアの実体がいつインストールされ、起動されてもよいように、センタ装置2は、速やかに、契約を結んだ、エンドユーザのホームゲートウェイ(1)〜(3)1、1’、1’’に、パーミッション情報を送り込みパーミッション設定を行う運用をすることができる。
【0058】
<第3の実施の形態>
図3は、第3の実施の形態を説明する構成図である。
【0059】
第1の実施の形態に加えて、ソフトウェア実体を格納し要求に応じて配布するためのソフトウェア配布サーバと、ソフトウェア配布サーバに格納されているソフトウェア実体を特定するためのソフトウェア識別子と、ホームゲートウェイ上で稼働するソフトウェア実体に付与される実行権限となるパーミッション情報と、をソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、ソフトウェア識別子およびそれに対応するパーミッション情報をホームゲートウェイへ伝達するための識別情報伝達手段と、を有するセンタ装置と、ソフトウェア実体とソフトウェア識別子を対応付けて格納するためのソフトウェア情報格納手段と、ソフトウェア識別子が指定されたソフトウェア実体がホームゲートウェイから要求されることを受け付けるためのソフトウェア要求受付手段と、ソフトウェア識別子で指定されたソフトウェア実体をホームゲートウェイからの要求に応答するための要求応答手段を備えたソフトウェア配布サーバと、センタ装置からソフトウェア識別子およびそれに対応するパーミッション情報を取得するための識別情報取得手段と、センタ装置から取得したパーミッション情報のみに従ってソフトウェア実体の実行権限を設定するための実行権限設定手段と、ソフトウェア識別子で特定されるソフトウェア実体をソフトウェア配布サーバへ要求して取得するためのソフトウェア取得手段と、取得したソフトウェア実体をホームゲートウェイにインストールするためのインストール手段と、インストールしたソフトウェア実体をホームゲートウェイ上で起動するためのソフトウェア起動手段と、を有するホームゲートウェイと、を備える。
【0060】
まず、ソフトウェア実体21とソフトウェア識別子をソフトウェア配布サーバにあらかじめ格納する。
【0061】
次に、ソフトウェア識別子と、そのソフトウェア識別子に対応するソフトウェア実体21が、ホームゲートウェイ1上で動作する際に与えられるべきパーミッションの組が、対応づけられてセンタ装置2に登録される。
【0062】
登録されたソフトウェア識別子とパーミッション情報は、センタ装置2からホームゲートウェイ1へ向けて送信される。ホームゲートウェイ1側は、ソフトウェア識別子とパーミッション情報を取得したら、そのソフトウェア識別子に対するソフトウェア実体21が動作する際に、そのソフトウェア実体21がそのパーミッション権限で動作するようにACL3の設定を行う。更に、ホームゲートウェイ1は、パーミッション設定の完了したソフトウェア識別子を指定して、ソフトウェア配布サーバ20に対して、ソフトウェア実体21を要求をする。
【0063】
ソフトウェア配布サーバは、ソフトウェア実体21要求を受け付けると、指定されたソフトウェア識別子に対応するソフトウェア実体21をホームゲートウェイ1へ応答送信する。ホームゲートウェイ1は、ソフトウェア実体21をソフトウェア配布サーバから取得すると、そのソフトウェアをインストールしたのち実行環境10にて起動する。
【0064】
この構成により、センタ装置2からソフトウェア識別子とパーミッション情報を送り込み、そのパーミッションの設定が確実に完了したあとに、ソフトウェア実体21が稼働することになり、パーミッション設定を行わないままに、ソフトウェア実体21が稼働することにより、本来、パーミッションを制限するはずだった、ソフトウェア実体21が、制限を受けないままに稼働することにより、他のベンダが提供するソフトウェア実体21が管理するリソースにアクセスすることにより、情報が流出するおそれはなくなる。
【0065】
この構成は、ソフトウェアを、センタ装置2の指示に基づいてダウンロードすることよりも、パーミッションの設定が完了したあとに、ソフトウェアが稼働することを確実ならしめることを主目的としている。
【0066】
ソフトウェア実体21に何らのパーミッションの設定をすることなく、ソフトウェア実体21を起動した際に、そのソフトウェア実体21が、どのようなデフォルト権限を取得するかは、ソフトウェア実体21の実行環境10による。特に、OSGiにおいては、パーミッションの設定を全く行わないままに、ソフトウェア実体21(バンドル)を起動すると、全権限を与えた状態で、ソフトウェア実体21が稼働する場合もあるため、そのような環境において、本第3の実施の形態の構成は、特に効果がある。
【0067】
パーミッション設定を全く設定せずソフトウェア実体21を起動しても全権限とならないソフトウェア実行環境10においても、必要最小限の権限を越えた強い権限を与えたまま、ソフトウェア実体21が稼働する事態の発生を避けることができという効果がある。
【0068】
また、本来パーミッションを与えるべきでなかったものにパーミッションが与えられるケースとは逆に、本来、パーミッションを与えるべきであったのに、パーミッションを与えられないで、ソフトウェア実体21が稼働すると、そのソフトウェア実体21は、正常にサービス機能を提供できなくなる。本第3の実施の形態は、意図したパーミッションの設定が完了してから、ソフトウェア実体21が稼働することを保障する構成であり、この面でも効果がある。
【0069】
なお、本第3の実施の形態において、センタ装置2自体は、特にソフトウェア実体21そのものを取り扱うことは必須ではない。例えば、Webサーバをソフトウェア配布サーバとして設置し、そのソフトウェア配布サーバに直接CD−ROMを持ち込みソフトウェア実体21を登録する運営形態でもよい。多くの場合、そのソフトウェア実体21がホームゲートウェイ1上で稼働する際に、どのようなパーミッションを付与すべきかは、そのソフトウェア実体21の内容をよく把握して、その上で、センタ装置2の管理主体へ、パーミッションの設定を依頼する運用形態が典型的である。
【0070】
もちろん、センタ装置2がソフトウェア実体21も扱い、ソフトウェア配布サーバを仲介者として、ホームゲートウェイ1へソフトウェア実体21を送り込む構成をとっても構わないが、それは本第3の実施の形態の必須事項ではない。
【0071】
ソフトウェア配布サーバへソフトウェア実体21を登録する際に、ソフトウェア識別子を付与し、ソフトウェア実体21とソフトウェア識別子を対応づけて登録するが、Webサーバをソフトウェア配布サーバとして設置し、そのWebサーバにソフトウェア実体21を格納した位置に対応するURLをソフトウェア識別子として代用する場合は、ソフトウェア実体21をどの位置に格納するかによりURLが即定まるため、ソフトウェア識別子がすぐに定まる。その場合、ソフトウェア実体21の格納位置を定めることがソフトウェア識別子を定めてソフトウェア実体21を対応づけることに相当し、この形態も、本第3の実施の形態が、必須事項としてあげている、「ソフトウェア実体21とソフトウェア識別子を対応づけて登録する」ことに相当するものとみなせる。
【0072】
<第4の実施の形態>
図4は、第4の実施の形態を説明する構成図である。
【0073】
この図4には、ソフトウェア実体を特定するためのソフトウェア識別子と、ホームゲートウェイ上で稼働するソフトウェア実体に付与される実行権限となるパーミッション情報をソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、ソフトウェア識別子およびそれに対応するパーミッション情報をホームゲートウェイへ伝達するための識別情報伝達手段と、を有するセンタ装置と、センタ装置からソフトウェア識別子およびそれに対応するパーミッション情報を取得するための識別情報取得手段と、センタ装置から取得したパーミッション情報のみに従ってソフトウェア実体の実行権限を設定するための実行権限設定手段と、を有するホームゲートウェイと、ソフトウェア実体とソフトウェア識別子を組にして非可分にパッケージ化されたパッケージ化ソフトウェアがホームゲートウェイにインストールされたことを検出するためのインストール検出手段と、インストールされたパッケージ化ソフトウェアからソフトウェア識別子を取得するための識別子取得手段と、ソフトウェア識別子に対応するパーミッション情報の設定が存在するか否かを確認するためのパーミッション情報確認手段と、パーミッション情報確認手段による設定の存在確認が完了するまでの間においてインストールされたパッケージ化ソフトウェアの起動を抑制するための起動抑制手段と、パーミッション設定が存在しない場合にパッケージ化ソフトウェアのアンインストールの実行または実行権限を奪うためのソフトウェア処分手段と、を有するホームゲートウェイと、が示されている。
【0074】
このような構成のゲートウェイ装置上にインストールするソフトウェア実体は、かならずしもソフトウェア配布サーバに登録する形態がとれるとは限らない。ただし、パーミッション情報は、各サービスプロバイダから供給されるソフトウェア実体の相互作用を横断的に把握するホームゲートウェイソフトウェアパーミッション管理システムの運用者によって、一元的に制御するものとする。
【0075】
本第4の実施の形態では、ソフトウェア実体とソフトウェア識別子を不可分にパッケージ化されて、流通することを前提とする。ここで、「不可分」とは、パッケージ内のソフトウェア識別子のみを変更したり、ソフトウェア実体のみを変更することを防止するという意味である。
【0076】
ソフトウェア実体とソフトウェア識別子が不可分にパッケージ化する方法は、例えば、それらのデータ全体のダイジェストを、信頼できる認証局の秘密鍵で暗号化した署名データをパッケージと共に合わせて提示し、改竄の有無をチェックする側で、署名データを、その信頼できる認証局の公開鍵で復号化したダイジェストが、あらためてチェック側で計算したダイジェストと一致するか否かで、改竄を検出する、広く一般に知られた電子署名の方法により実施できる。
【0077】
センタ装置2側の動作、およびホームゲートウェイ1側で、ソフトウェア識別子とパーミッション情報をセンタ装置2から受信してアクセスコントロールリスト3に登録する動作は、第1の実施の形態と同じである。
【0078】
本第4の実施の形態の、ホームゲートウェイ1の構成は、第1の実施の形態のホームゲートウェイ1の構成に加えて、ソフトウェア実体とソフトウェア識別子の組を非可分にパッケージ化されてリリースされたパッケージ化ソフトウェア24、24’が、インストールされたことを検出する手段と、インストールされたパッケージ化ソフトウェアからソフトウェア識別子を取得する手段と、ソフトウェア識別子に対応するパーミッションの設定が存在するか否かを確認する手段と、パーミッション設定の存在確認が済むまでインストールされたパッケージのソフトウェア実体の起動を抑制する手段と、パーミッション設定が存在しない時に該ソフトウェアのアンインストールまたは全ての権限を奪う手段とを備える。
【0079】
ホームゲートウェイ1は、パッケージ化されたパッケージ化ソフトウェア24がインストールされたことを検出すると、まず、そのパッケージからソフトウェア識別子を取得し、そのソフトウェア識別子とパーミッション情報の対応情報がアクセスコントロールリストに登録されているか否かをチェックする。該当するパーミッション情報が存在しなければ、ホームゲートウェイ1は、そのソフトウェア識別子に対応するパッケージ化ソフトウェア24に対して、全てのパーミッション権限を奪い取る。何のパーミッション権限も持たないパッケージ化ソフトウェア24は、ディスク領域を消費するだけの存在であるため、典型的には消去される。
【0080】
あるいは、後々パーミッション情報がセンタ装置2から送り込まれそのソフトウェア識別子にパーミッション情報が確認されれば、そのパーミッション設定で、パッケージ化ソフトウェア24が起動してもよいので、ディスク上に存続させる形態をとってもよい。ホームゲートウェイ1は、そのソフトウェア識別子のパーミッション情報の存在が確認されないかぎり、対応するパッケージ化ソフトウェア24の起動を抑制する。
【0081】
そのソフトウェア識別子に対応するパーミッション情報が確認されれば、ホームゲートウェイ1は、パッケージ化ソフトウェア24の起動を妨げない。ホームゲートウェイ1の所有者であるエンドユーザの操作により起動されてもよいし、ホームゲートウェイ1上で稼働する別のパッケージ化ソフトウェア24からの指示により、起動されてもよい。
【0082】
本第4の実施の形態は、ソフトウェア識別子のパーミッション設定が確実に完了したあとに、そのソフトウェア識別子に対応するパッケージ化ソフトウェア24が起動することを確実ならしめることを主目的とするものであり、そのパッケージ化ソフトウェア24が、どのようなタイミングで起動するかについては自由である。
【0083】
ソフトウェア識別子とパッケージ化ソフトウェア24を非可分にパッケージ化したものを対象として、本第4の実施の形態の構成をとることにより、センタ装置2は、ソフトウェア識別子とパーミッション情報の設定処理のみに注力し、そのソフトウェア識別子に対応するパッケージ化ソフトウェア24のインストールや起動の管理をホームゲートウェイ1上の、他のパッケージ化ソフトウェア24や、そのパッケージ化ソフトウェア24に対して、外部から通信路を介して指示を出す運営体、ホームゲートウェイ1の所有者であるエンドユーザなど、別の運営体に一任することができ、センタ装置2の側の管理負荷を軽減する効果をもたらす。
【0084】
特にOSGiにおいては、ゲートウェイが存在するエンドユーザ宅のホームネットワーク上に、特定のデバイスが接続されたことを検出すると、そのデバイスを扱うための、パッケージ化ソフトウェア24(デバイスドライバ)が、自動的にダウンロードされ、インストール、起動される仕組みをそなえている。デバイスは、エンドユーザが、めいめい別途購入して、ホームネットワーク上に設置するかもしれず、いつそのデバイスドライバのパッケージ化ソフトウェア24が、ホームゲートウェイ1にインストールされるかはわからない。
【0085】
センタ装置2側は、そのデバイスドライバのソフトウェア識別子と、そのデバイスドライバに付与すべきパーミッション情報をあらかじめホームゲートウェイ1に伝達し、ホームゲートウェイ1は、そのパーミッション情報にもとづいて、あらかじめそのソフトウェア識別子に対するパーミッション設定を済ませておくが、パッケージ化ソフトウェア24が、いつインストールされ、実行されても、センタ装置2側は関知する必要はない。パッケージ化ソフトウェア24は、ソフトウェア識別子に対するパーミッション情報と比して、メモリ、ディスク領域を多く占有するため、あらかじめ必要になる可能性のある全てのデバイスドライバをインストールして準備しておくことは現実的ではない。
【0086】
しかし、本実施の形態の構成のように、ソフトウェア識別子とパーミッション情報のみならば、後々インストールされる可能性のあるパッケージ化ソフトウェア24に対応するものを、あらかじめ全てホームゲートウェイ1へ送り込み設定をすませておくことは十分に現実的である。
【0087】
<第5の実施の形態>
図5は、第5の実施の形態を説明する構成図である。
【0088】
本第5の実施の形態は、ソフトウェア実体とソフトウェア識別子とパーミッション情報の3つ組が不可分にパッケージ化されて、流通することを前提とする。パーミッションについては、ソフトウェア識別子に対して、センタ装置2が、パッケージの作成に先立ち、そのソフトウェア実体のパーミッション設定として一度は認めた内容が格納されていることを前提とする。
【0089】
図5には、ホームゲートウェイが、ソフトウェア実体と、ソフトウェア識別子と、センタ装置の運営主体が許可しているパーミッション情報と、を組み合わせて非可分にパッケージ化されたパッケージ化ソフトウェアがインストールされたことを検出するためのインストール検出手段と、パッケージ化ソフトウェアからセンタ装置の運営主体が許可したパーミッション情報を取り出すためのパーミッション情報取り出し手段と、センタ装置から取得したパーミッション情報によるパーミッション設定が存在しない場合において、パッケージ化ソフトウェアから取り出したパーミッション情報にもとづいて設定を行うための設定手段と、センタ装置からのパーミッション情報によるパーミッション設定の存在の確認と、およびパッケージ化ソフトウェアから取り出したパーミッション設定が完了するまでの間においてインストールされたパッケージ化ソフトウェアの起動を抑制するための起動抑制手段と、が示されている。
【0090】
このような構成の第5の実施の形態において、センタ装置2側の動作、およびホームゲートウェイ1側で、ソフトウェア識別子とパーミッション情報をセンタ装置2のACL4から受信してACL3に登録する動作は、第4の実施の形態と同じである。
【0091】
本第5の実施の形態のホームゲートウェイ1は、第4の実施の形態のホームゲートウェイ1の構成に加えて、3つ組が不可分にパッケージ化されたソフトウェアのインストールを検出する手段と、ソフトウェア識別子に対応するセンタ装置2から取得したパーミッション情報によるパーミッションの設定が存在するか否かを確認する手段と、3つ組のパッケージから、ソフトウェア識別子だけでなくパーミッション情報を取り出す手段と、センタ装置2から取得したパーミッション情報によるパーミッション設定がない場合は、パッケージ化ソフトウェアから取り出したパーミッション情報にもとづいて設定を行う手段と、センタ装置2から取得したパーミッション情報の存在の確認および、存在が確認できない場合のパッケージ化ソフトウェアから取り出したパーミッション情報にもとづくパーミッションの設定が完了するまで、インストールされたソフトウェア実体の起動を抑制する手段を備える。
【0092】
本第5の実施の形態におけるホームゲートウェイ1は、ソフトウェア実体とソフトウェア識別子とパーミッション情報の3つ組が不可分にパッケージ化されたパッケージ化ソフトウェア26のインストールを検出すると、そのパッケージ化ソフトウェア26から、ソフトウェア識別子を取り出す。そして、取り出したソフトウェア識別子に対して、そのソフトウェア識別子に対応するセンタ装置2から送り込まれ取得したパーミッション情報にもとづくパーミッション設定が、ACL3に既に登録されているか否かを調べる。
【0093】
そのソフトウェア識別子に対応するパーミッション設定が既に存在するならば、既にパーミッション設定が有効になっているということなので、ソフトウェア実体を起動する。
【0094】
一方、そのソフトウェア識別子に対応するセンタ装置2から取得したパーミッション情報が存在しなければ、パッケージ化ソフトウェア26’から取り出したパーミッション情報を使って、パーミッションを設定する。
【0095】
センタ装置2からすでにパーミッション情報がおくりこまれて、そのソフトウェア識別子に対するパーミッション設定が既に済んでいるか、あるいは、済んでいない場合に、パッケージから取り出したパーミッション情報にもとづくパーミッション設定が完了するまで、ホームゲートウェイ1は、そのソフトウェア識別子に対応するソフトウェア実体の起動を抑制する。
【0096】
第4の実施の形態では、センタ装置2から送り込まれ取得したパーミッション情報にもとづくパーミッション設定が存在しない場合は、ソフトウェア実体には、なにもパーミッションを与えず、起動も許さないが、本第5の実施の形態においては、センタ装置2から送り込まれ取得したパーミッション情報にもとづくパーミッション設定が存在しない場合は、パッケージ内のパーミッション情報にもとづいてパーミッション設定を行う。
【0097】
このような構成にすると、センタ装置2は、3つ組のパッケージ化時に、ソフトウェア実体を吟味して、適切なパーミッション設定であると認めたパーミッション情報に、その後変化がない場合は、そのあと、そのパッケージ化ソフトウェア26をダウンロードして、インストール、起動するホームゲートウェイ1に、パーミッション情報を送り込む必要はなくなる。
【0098】
対し、もしもソフトウェア実体の内容に、後々、セキュリティ上の不具合が発覚し、付与するパーミッションを変更する必要が生じた場合、センタ装置2は、ソフトウェア識別子と新たなパーミッションを、ホームゲートウェイ1に送り込み、変更されたパーミッション情報にもとづいてパーミッションの設定を行い、新たなパーミッション設定に従って、ソフトウェア識別子に対応するソフトウェア実体を稼働させることができる。
【0099】
センタ装置2は、設定すべきパーミッション設定内容に変更の生じたソフトウェア実体に関わるパーミッション情報のみを管理し、ホームゲートウェイ1へ送り込むだけで済み、管理の手間を軽減させる効果をえられる。
【0100】
なお、ソフトウェア実体の実行環境10によっては、パーミッション設定内容を変更したあと、そのソフトウェア実体を再起動する必要がある場合がある。ソフトウェア実体が稼働する環境に即して、新たに設定したパーミッション情報が有効になるように必要な手段をこうじる必要がある。
【0101】
本第5の実施の形態は、本第4の実施の形態と、混合して運用してもよい。つまり、ソフトウェア実体とソフトウェア識別子の2つ組が不可分にパッケージ化されたものと、ソフトウェア実体とソフトウェア識別子とパーミッション情報の3つ組が不可分にパッケージ化されたものとが、混在して流通してもよい。センタ装置2から送り込まれ取得したパーミッション情報にもとづくパーミッション設定が存在しない場合、前者の2つ組パッケージのソフトウェア実体は、起動が禁止され、後者の3つ組パッケージのソフトウェア実体は、パッケージ内から取り出したパーミッション情報の設定が完了すればその後の起動が許可される。
【0102】
<第6の実施の形態>
図6は、第6の実施の形態を説明する構成図である。
【0103】
図6には、デバイスオブジェクトと、その属性情報をあらわすデバイスカテゴリ情報と共に登録するためのデバイス管理ソフトウェアと、デバイスオブジェクトに適合するドライバソフトウェア実体のドライバ識別子をデバイスカテゴリ情報に基づいて特定し、ドライバ識別子を伴うドライバソフトウェア要求に対応してドライバソフトウェア実体を取得するためのドライバロケータソフトウェアと、ドライバロケータソフトウェアに不可分にパッケージ化されるプレフィックス識別子と、プレフィックス識別子とドライバロケータソフトウェアに体系付けられたドライバ識別子との組み合わせからなるソフトウェア識別子と、ホームゲートウェイ上で稼働するドライバソフトウェア実体に付与される実行権限となるパーミッション情報と、をドライバソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、ソフトウェア識別子およびそれに対応するパーミッション情報をホームゲートウェイへ伝達するための識別情報伝達手段と、を有するセンタ装置と、センタ装置からソフトウェア識別子およびそれに対応するパーミッション情報を取得するための識別情報取得手段と、センタ装置から取得したパーミッション情報のみに従ってソフトウェア実体の実行権限を設定するための実行権限設定手段と、デバイス管理ソフトウェアにより登録されるデバイスオブジェクトからデバイスカテゴリ情報を取得するためのデバイスカテゴリ情報取得手段と、ドライバロケータソフトウェアにデバイスカテゴリ情報を与えてドライバ識別子を応答させるためのドライバ識別子応答手段と、ドライバロケータソフトウェアにドライバ識別子を与えてデバイスオブジェクトと連携動作するドライバソフトウェア実体を取得させるためのドライバソフトウェア実体取得手段と、ドライバロケータソフトウェアからドライバロケータソフトウェアに不可分にパッケージ化されたプレフィックス識別子を取得するためのプレフィックス識別子取得手段と、プレフィックス識別子とドライバ識別子からソフトウェア識別子を生成するためのソフトウェア識別子生成手段と、ドライバソフトウェア実体を生成したソフトウェア識別子に対応するものとしてインストールおよび起動する起動手段と、を有するホームゲートウェイと、が示されている。
【0104】
このような構成の第6の実施の形態は、以下の動作をするソフトウェア実体の実行環境10に対して適用される。
【0105】
ホームゲートウェイ1上で稼働するデバイス管理ソフトウェアが、ホームネットワーク上に接続されたデバイス装置に対応するデバイスオブジェクト34を、デバイス35の属性情報をあらわすデバイスカテゴリ情報と共に、ホームゲートウェイ1のソフトウェア実体の実行環境10に登録すると、ソフトウェア実体の実行環境10が、登録されたデバイスオブジェクト34のデバイスカテゴリ情報を、ドライバロケータ31に通知する。
【0106】
ドライバロケータ31は、デバイスカテゴリ情報をもって問合せを受けると、そのデバイスカテゴリのデバイスオブジェクト34に連携動作することが可能なドライバソフトウェアを選定し、ドライバソフトウェアに対応するドライバロケータ31内の体系で管理されるドライバ識別子を特定する。
【0107】
また、ドライバロケータ31は、ドライバ識別子を伴うドライバソフトウェア要求を受けると、そのドライバ識別子に対応するドライバソフトウェア実体を取得して要求元に引き渡す機能を持ち、従って、ドライバロケータ31は、自分の管理するドライバソフトウェア32の対応するドライバソフトウェア実体の取得手段も備えていることを前提とする。
【0108】
インストールされるドライバソフトウェア32は、自分に付与されているドライバ識別子についての情報をもたなくてもよい。
【0109】
ドライバソフトウェア実体とドライバ識別子との対応を情報として保持しているのは、ドライバロケータ31側である。
【0110】
このソフトウェア実体の実行環境10の実例として、典型的なOSGiの実装があげられる。
【0111】
「ベースドライバ」と呼ばれるデバイス管理ソフトウェアが、デバイスオブジェクトを登録すると、OSGi実装の一部である「デバイスマネージャ」が、ドライバロケータに、デバイスカテゴリを示して、適合の候補となるドライバソフトウェアを取得させ、取得したドライバソフトウェア32をインストールする。
【0112】
そして、インストールされたドライバソフトウェア32の中から、最も登録されたデバイスオブジェクト34と適合するドライバソフトウェア32を、そのデバイスオブジェクト34と結びつけ連携動作させる、「デバイスアクセス」という機構を備えている。
【0113】
この「デバイスアクセス」機能において、ドライバロケータソフトウェア31内の体系で管理される、「ドライバID」なるドライバ識別子によって、ドライバソフトウェア32が管理される。OSGiの枠組みにおいては、ドライバソフトウェア32自身は、自身にどのようなドライバIDが付与されているかについての情報は保持する必要はなく、その情報は、ドライバロケータ31側が持つ。
【0114】
また、本第6の実施の形態においてドライバロケータソフトウェア31は、ドライバロケータソフトウェア31毎に異なるプレフィックス識別子が不可分にパッケージ化されて流通することを前提とする。
【0115】
プレフィックス識別子としては、センタ装置2でソフトウェア実体に対応するものとして管理される、ドライバロケータソフトウェア31自身のソフトウェア識別子そのものを利用してもよいが、これに制限されるものではない。
【0116】
異なるドライバロケータソフトウェア31に対して、異なるプレフィックス識別子が付与されていさえすればよく、ドライバの提供ベンダ名を組み入れるなど管理上都合のよい体系のプレフィックス識別子をつけてよい。
【0117】
複数のドライバロケータソフトウェア31は、めいめい独自に体系づけたドライバ識別子を管理するため、異なる体系内で、同一のドライバ識別子が付与されることもありえるが、それぞれのドライバロケータに付与されるプレフィックス識別子が異なっていさえすれば、これは構わない。これは、以下に説明するドライバソフトウェア32に付与するソフトウェア識別子の一意性を保つ上で問題ないからである。
【0118】
ドライバソフトウェア32の側に付与するソフトウェア識別子は、そのドライバソフトウェア32を扱うドライバロケータのプレフィックス識別子及びドライバソフトウェア32のドライバ識別子の組によって生成された識別子が付与されセンタ装置2側で登録運用される。
【0119】
同一のドライバソフトウェア実体を、異なるドライバロケータが扱ってもさしつかえないが、その場合は、同一のドライバソフトウェア32に対して異なる複数のソフトウェア識別子が割り当てられることになる。ソフトウェア識別子は、同一のソフトウェア実体に対して、同一の値となることが望ましいが特にこれに限る必要はない。
【0120】
ソフトウェア識別子に対してソフトウェア実体が一意に特定されればよく、ソフトウェア実体に対してソフトウェア識別子が一意に定まることは必須ではない。
【0121】
ドライバロケータは、ドライバソフトウェア32のソフトウェア識別子を直接取り扱う手段をもたず、ドライバ識別子のみを扱う。これは、ソフトウェア識別子は、本実施の形態のホームゲートウェイソフトウェアパーミッション管理システムの管理主体によって運用されるものであり、ドライバロケータソフトウェア31の開発ベンダとは、管理主体が異なることを想定しているためである。
【0122】
ドライバ識別子は、ドライバソフトウェア32を一意に特定する役目を担う意味で、ソフトウェア識別子と役割が重なるが、決定的に異なるのは、ドライバ識別子は、ドライバロケータソフトウェア内で体系付けられた識別子であることである。
【0123】
パーミッションを管理するために、センタ装置2で体系づけられるソフトウェア識別子とは異なる。
【0124】
本第6の実施の形態は、異なる体系で管理されたドライバ識別子を、本実施の形態のパーミッション管理の枠組みに組み入れソフトウェアのソフトウェア識別子の体系と結びつけることを目的として構成される。
【0125】
センタ装置2側の動作、およびホームゲートウェイ1側で、ソフトウェア識別子とパーミッション情報をセンタ装置2から受信してアクセスコントロールリストに登録する動作は、第1の実施の形態と同じである。ただし、前述したようにドライバソフトウェア32のソフトウェア識別子は、ドライバロケータ不可分に付与するプレフィックス識別子と、ドライバ識別子から生成されたものを付与して運用するものとする。ドライバソフトウェア実体がホームゲートウェイ1上で稼働する際に設定されるべきパーミッション情報は、あらかじめホームゲートウェイ1へ送り込まれ、ホームゲートウェイ1側で、パーミッション設定が行われる。
【0126】
ドライバロケータソフトウェア31および、デバイス管理ソフトウェアは、それぞれ適切なパーミッション設定がなされ、ホームゲートウェイ1上にそのソフトウェア実体がインストールされ、既に稼働しているものとする。
【0127】
本第6の実施の形態のシステムにおいて、デバイス管理ソフトウェアおよび、ドライバロケータソフトウェア31は、システムの構成要素であると共に、システムの処理対象でもあり、その処理対象であるソフトウェア実体は、本第6の実施の形態のシステムと連携動作する。
【0128】
つまり、デバイス管理ソフトウェアは、デバイスカテゴリ情報を伴ってデバイスオブジェクト34を登録可能である。ドライバロケータソフトウェア31は、デバイスカテゴリを伴う問合せに対して、デバイスオブジェクト34と適合して連携動作することが可能なドライバソフトウェア32のドライバ識別子を返答すること、および、ドライバ識別子を伴うドライバソフトウェア要求を受けるとドライバソフトウェア実体を取得して要求元に引き渡し可能である。
【0129】
他方、本第6の実施の形態の構成要素であるホームゲートウェイ1側は、デバイスオブジェクト34からデバイスカテゴリ情報を取得する手段と、デバイスロケータソフトウェアにデバイスカテゴリ情報を与えてドライバ識別子を答えさせる手段と、ドライバロケータソフトウェア31ソフトウェアにドライバ識別子をあたえて、ドライバソフトウェア実体を取得させる手段を備える。
【0130】
さらに、ホームゲートウェイ1は、デバイスロケータソフトウェアに不可分にパッケージ化されたプレフィックス識別子をデバイスロケータソフトウェアから取得する手段、および、プレフィックス識別子とドライバ識別子から、ドライバソフトウェア32のソフトウェア識別子を生成する手段と、生成したソフトウェア識別子に対するものとして、取得したドライバソフトウェア32をインストール、起動する手段を備える。
【0131】
ホームゲートウェイ1において、デバイス管理ソフトウェアが、ホームゲートウェイ1側のホームネットワーク上に接続されたデバイスを検出し、デバイスオブジェクト34をデバイスカテゴリ情報と共にソフトウェア実体の実行環境10に登録すると、ホームゲートウェイ1は、登録されたデバイスオブジェクト34からデバイスカテゴリ情報を取り出し、そのデバイスカテゴリ情報を伴ってデバイスロケータへ問合せを行いドライバ識別子を応答させる。
【0132】
また、デバイスロケータソフトウェアから不可分にパッケージ化されたプレフィックス識別子を取り出す。
【0133】
そして、ドライバ識別子と、プレフィックス識別子の組からドライバソフトウェア32のソフトウェア識別子を生成する。典型的には、プレフィックス識別子とドライバ識別子の文字列連結によりソフトウェア識別子を生成する方法を用いると実装が簡単である。
【0134】
ホームゲートウェイ1は、ドライバ識別子を伴って、ドライバソフトウェア要求をドライバロケータソフトウェア31にかけ、ドライバロケータソフトウェア31に、ドライバソフトウェア実体を取得させ、それを、プレフィックス識別子とドライバ識別子から生成したソフトウェア識別子に対応するドライバソフトウェア実体としてインストールおよび起動する。
【0135】
起動されたドライバソフトウェア実体は、生成されたソフトウェア識別子に対応づけられたパーミッション設定内容に束縛された権限で稼働する。センタ装置2側からは、ドライバソフトウェア32のソフトウェア識別子は、プレフィックス識別子と、ドライバ識別子から生成されたものを付与し、そのソフトウェア識別子に対応するパーミッション情報が送り込まれ、ホームゲートウェイ1側でパーミッション設定されているはずなので、この構成により、センタ装置2の意図するパーミッション設定の権限内容で、ドライバソフトウェア32は稼働する。
【0136】
このような本第6の実施の形態の構成により、ドライバロケータソフトウェア31内でのみ通用するように体系付けられたドライバ識別子を、パーミッション設定のために体系付けているソフトウェア識別子の枠組みに組み込みつつ、ドライバソフトウェア32のパーミッションをセンタ装置2主導で制御することができる効果をもたらす。
【0137】
ドライバロケータソフトウェア31の開発者は、扱う対象のドライバソフトウェア32が、随時増えるようなことがあっても、各ドライバソフトウェア実体に対するドライバ識別子をドライバロケータソフトウェア31内で、自由にドライバ識別子を体系付けて、管理することができる。つまり、ドライバロケータソフトウェア31の開発者が各ドライバソフトウェア32を識別管理する上で都合のよい名称を自由に付与することができ、効果がある。
【0138】
ドライバソフトウェア実体のパーミッション設定は、センタ装置2主導で行うが、インストール、起動のタイミングは、ホームゲートウェイ1に接続されたデバイスを、デバイス管理ソフトウェアが検知してデバイスオブジェクト34を登録したときに発生し、それはセンタ装置2側の管理範疇外である。
【0139】
これは、本実施の形態の第4の実施の形態の説明で述べたのと同様の、ホームゲートウェイ1上で稼働する別のソフトウェア実体からの指示により、ドライバソフトウェア実体がインストールされ、起動される形態である。
【0140】
<第7の実施の形態>
図7は、第7の実施の形態を説明する構成図である。
【0141】
この図7には、デバイスオブジェクトと、その属性情報をあらわすデバイスカテゴリ情報と共に登録するためのデバイス管理ソフトウェアと、デバイスオブジェクトに適合するドライバソフトウェア実体のドライバ識別子をデバイスカテゴリ情報に基づいて特定し、ドライバ識別子を伴うドライバソフトウェア要求に対応してドライバソフトウェア実体を取得するためのドライバロケータソフトウェアと、ドライバソフトウェア実体を定めるドライバ識別子をキーにして一意にソフトウェア識別子を検索可能なように体系付けられたドライバソフトウェアのソフトウェア識別子と、ホームゲートウェイ上で稼働しドライバロケータソフトウェアが取得するドライバソフトウェア実体に付与される実行権限となるパーミッション情報をドライバソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、ソフトウェア識別子およびそれに対応するパーミッション情報をホームゲートウェイへ伝達するための識別情報伝達手段と、を有するセンタ装置と、センタ装置からソフトウェア識別子およびそれに対応するパーミッション情報を取得するための識別情報取得手段と、センタ装置から取得したパーミッション情報のみに従ってソフトウェア実体の実行権限を設定するための実行権限設定手段と、デバイス管理ソフトウェアにより登録されるデバイスオブジェクトからデバイスカテゴリ情報を取得するためのデバイスカテゴリ情報取得手段と、ドライバロケータソフトウェアにデバイスカテゴリ情報を与えてドライバ識別子を応答させるためのドライバ識別子取得手段と、ドライバロケータソフトウェアにドライバ識別子を与えてデバイスオブジェクトと連携動作するドライバソフトウェア実体を取得させるためのドライバソフトウェア実体取得手段と、ドライバ識別子をキーにセンタ装置より取得したパーミッション情報のソフトウェア識別子を検索してソフトウェア識別子を一意に特定する手段と、ドライバソフトウェア実体を検索により特定したソフトウェア識別子に対応するものとしてインストールおよび起動する起動手段と、を有するホームゲートウェイと、が示されている。
【0142】
このような構成の第7の実施の形態においては、デバイス管理ソフトウェア、ドライバロケータソフトウェア、ドライバソフトウェアの位置づけは、第6の実施の形態における位置づけと同じである。以下、第6の実施の形態と異なる部分を説明する。
【0143】
ドライバロケータソフトウェアが管理するドライバ識別子は、各ドライバロケータ内だけでなく、インストールされているもの、いないものも含めて全ドライバロケータに横断的に、一意のものが、ドライバソフトウェア実体に対して割り振られて運用されていることを前提とする。
【0144】
例えば、OSGiにおけるドライバIDは、OSGiの規定により、あるドライバソフトウェアに割り当てられるドライバIDは、全世界を通じて唯一無二であることを必要条件としている。
【0145】
また、ドライバソフトウェア実体に付与されるソフトウェア識別子は、センタ装置2側で管理しやすいようなセンタ装置2側で自由に定めた文字列と、ドライバロケータ開発側が決めたドライバ識別子の組から生成されたものが付与されて運用される。
【0146】
このとき、ソフトウェア識別子は、ソフトウェア識別子の集合の中にそのソフトウェア識別子が存在するのならば、ドライバ識別子をキーにした検索により、一意に特定できるように生成される。
【0147】
典型的には、センタ装置2で自由に定める文字列とドライバ識別子を区切り文字を挟んで文字列連結したものである。この場合、区切り文字には、センタ装置2で自由に定める文字列とドライバ識別子中に出現しないものを使うことにする。
【0148】
区切り文字以降の文字列が、ドライバ識別子と一致するソフトウェア識別子を検索することにより、そのドライバ識別子のドライバソフトウェア実体に対応するソフトウェア識別子を見出すことができる。
【0149】
センタ装置2側の動作、およびホームゲートウェイ1側で、ソフトウェア識別子とパーミッション情報をセンタ装置2から受信してアクセスコントロールリストに登録する動作は、第1の実施の形態と同じである。ただし、前述したようにドライバソフトウェアのソフトウェア識別子は、ドライバ識別子から検索可能なように体系付けられたソフトウェア識別子を付与して運用されるものとする。
【0150】
対して、ホームゲートウェイ1側では、第6の実施の形態と同様、ドライバロケータソフトウェアにデバイスカテゴリ情報を与えてドライバ識別子を答えさせる手段と、ドライバロケータソフトウェアにドライバ識別子を与えてデバイスオブジェクトと連携動作するドライバソフトウェア実体を取得させる手段と、を備える一方、第6の実施の形態と異なる部分として、ドライバ識別子をキーにセンタ装置2より取得したパーミッション情報のソフトウェア識別子を検索することによりソフトウェア識別子を一意に特定する手段と、取得させたドライバソフトウェア実体を、検索により特定したソフトウェア識別子に対応するものとして、インストールおよび起動する手段と、を備える。
【0151】
ホームゲートウェイ1において、デバイス管理ソフトウェアが、ホームゲートウェイ1側のホームネットワーク上に接続されたデバイスを検出し、デバイスオブジェクトをデバイスカテゴリ情報と共にソフトウェア実体の実行環境10に登録すると、ホームゲートウェイ1は、登録されたデバイスオブジェクトからデバイスカテゴリ情報を取り出し、そのデバイスカテゴリ情報を伴ってデバイスロケータへ問合せを行いドライバ識別子を応答させる。
【0152】
次にホームゲートウェイ1は、取得したドライバ識別子をキーとして、センタ装置2から送り込まれたパーミッション情報に対応づけられたソフトウェア識別子の集合の中にあるはずの、ドライバ識別子に対応するソフトウェア識別子を検索し、ソフトウェア識別子を特定する。
【0153】
さらに、ホームゲートウェイ1は、ドライバ識別子を伴って、ドライバソフトウェア要求をドライバロケータにかけ、ドライバロケータに、ドライバソフトウェア実体を取得させ、検索により特定したソフトウェア識別子に対応するドライバソフトウェア実体としてインストールおよび起動する。第6の実施の形態と同様、起動されたドライバソフトウェア実体は、生成されたソフトウェア識別子に対応づけられたパーミッション設定内容に束縛された権限で稼働する。
【0154】
特定された、ソフトウェア識別子は、センタ装置2から送り込まれたパーミッション情報が存在するソフトウェア識別子であるはずなので、この構成により、センタ装置2の意図するパーミッション設定の権限内容で、ドライバソフトウェアは稼働する。
【0155】
このような構成にすることにより、センタ装置2側は、ドライバ識別子の表現内容に束縛されることなく、センタ装置2側で自由な文字列を、ソフトウェア識別子に、部分的に付与することができる。
【0156】
このため、センタ装置2側で管理する上で都合のよい文字列をつけることにより、管理を簡素化することができる効果を生み出す。
【0157】
ドライバ識別子は、ドライバロケータの開発主体が寄り合う、一元的な組織によって管理運営されることが想定されるため、センタ装置2側の管理の都合にあわせた体系で、ドライバ識別子を決めることができないが、本第7の実施の形態の構成により、センタ装置2に都合のよい体系を組み込んで、ソフトウェア識別子を運用しつつそのソフトウェア識別子に対応するソフトウェア実体のパーミッション設定を制御することができる。
【0158】
<第8の実施の形態>
図8は、第8の実施の形態を説明する構成図である。
【0159】
図8には、ソフトウェア実体を特定するためのソフトウェア識別子と、それぞれのホームゲートウェイで差異のある情報を具体的な値に置き換える対象としてマクロ表現してパーミッションを記載したマクロ表現入りパーミッション情報と、を対応づけて登録するための識別子登録手段と、ソフトウェア識別子とそれに対応するマクロ表現入りパーミッション情報をホームゲートウェイに伝達するためのパーミッション情報伝達手段と、を有するセンタ装置と、ソフトウェア識別子とマクロ表現入りパーミッション情報をセンタ装置より取得するためのマクロ表現入りパーミッション情報取得手段と、取得したマクロ表現入りパーミッション情報を保持格納するためのパーミッション情報格納手段と、マクロ表現を具体的な値に展開するマクロ表現展開情報をローカルに維持管理するためのマクロ情報管理手段と、マクロ表現入りパーミッション情報とマクロ表現展開情報からパーミッション情報を生成するためのパーミッション情報生成手段と、マクロ表現入りパーミッション情報またはマクロ表現展開情報が変化した際にパーミッション情報を生成しなおすためのパーミッション情報再生成手段と、パーミッション情報再生成手段で生成したパーミッション情報のみに従ってソフトウェア実体の実行権限を設定するための実行権限設定手段と、を有するホームゲートウェイと、が示されている。
【0160】
このような構成のホームゲートウェイ1が設置されるホームネットワークの環境は、ホームゲートウェイ毎に一般に異なる。例えば、同じベンダのデバイス装置をホームネットワーク上に設置し、同じベンダが提供するソフトウェア実体をホームゲートウェイ1上にインストールしても、デバイスに付与されるIPアドレスは、各ホームネットワーク上で異なる。
【0161】
もしもパーミッション設定を、所定のIPアドレスを持つデバイスに対するアクセスの制限として表現する場合、同じデバイス装置を設置し、同じソフトウェア実体をインストールしていたとしても、そのソフトウェア実体に付与すべきパーミッション設定は異なることになる。
【0162】
本第8の実施の形態は、設定するパーミッションの内容にマクロ表現を組み込み、最終的なパーミッション設定を、各ホームゲートウェイ1で管理されるローカル情報をもちいて、マクロ表現を置き換えることにより、センタ装置2から、各ホームゲートウェイ1へ送り込む、デバイス装置を制御するためのソフトウェア実体のソフトウェア識別子に対するパーミッション情報を同一にすることで、センタ装置2側で行うパーミッション管理を簡素化することを目的とする。
【0163】
そのために、それぞれのホームゲートウェイ1で差異のある情報を、のちのち具体的な値に置き換える対象としてマクロ表現してパーミッションを記載したマクロ表現入りパーミッション情報51をセンタ装置2側で管理する。
【0164】
ホームゲートウェイ1側では、マクロ表現部分が具体的にどのような値になるかをローカル情報とローカル情報管理53にて管理する。
【0165】
例えば、デバイス装置にDHCPがIPアドレスを払い出した時に、その「デバイス装置を表すIPアドレス」を表すマクロ表現に対する具体的IPアドレスをマクロ情報展開情報52として管理維持する。
【0166】
また、例えば、同じA社製の同機種カメラデバイス60の2台に対して、一方には、玄関の監視用と、一方にはペットのモニタリング用途を割り振ったり、複数のB社製デバイス61である電力センサデバイスに対して、総使用電力量測定のためという共通の用途を割り振るために、エンドユーザに、それぞれの用途のデバイスにどのIPアドレスが対応するかを明示的に設定をしてもらうことにより管理維持するようにしてもよい。
【0167】
本第8の実施の形態において、センタ装置2側は、ソフトウェア実体を特定するソフトウェア識別子と、マクロ表現入りパーミッション情報とを対応づけて登録する手段と、ソフトウェア識別子とそれに対応するマクロ表現入りパーミッション情報をホームゲートウェイ1に伝達する手段を備える。
【0168】
他方、ホームゲートウェイ1側は、ソフトウェア識別子とマクロ表現入りパーミッション情報をセンタ装置2より取得する手段と、取得したマクロ表現入りパーミッション情報を保持格納する手段と、マクロ表現を具体的な値に展開するマクロ表現展開情報52をローカルに維持管理する手段と、センタ装置2から取得保持しているマクロ表現入りパーミッション情報51とローカルに管理されるマクロ表現展開情報52からパーミッション情報を生成する手段と、マクロ表現入りパーミッション情報51またはマクロ表現展開情報52が変化した際にパーミッション情報を生成しなおす手段と、生成したパーミッション情報のみに従ってソフトウェア実体の実行権限を設定する手段と、を備える。
【0169】
まず、センタ装置2側において、ソフトウェア識別子とマクロ表現入りパーミッション情報51の組が、対応づけられてセンタ装置2に登録される。
【0170】
登録されたソフトウェア識別子とマクロ表現入りパーミッション情報51は、センタ装置2からホームゲートウェイ1へ向けて送信される。
【0171】
ホームゲートウェイ1側は、ソフトウェア識別子とマクロ表現入りパーミッション情報51を取得したら、マクロ表現入りパーミッション情報を保持格納する。
【0172】
また、ホームゲートウェイ1は、マクロ表現と具体的値の対応情報を、マクロ展開情報52としてローカルに維持管理する。
【0173】
センタ装置2から取得して保持格納しているマクロ表現入りパーミッション情報51か、ローカルに維持管理されているマクロ展開情報52のどちらかが更新されると、ホームゲートウェイ1は、速やかに、マクロ表現部分を、マクロ展開情報52を使って展開して、完成されたパーミッション情報を生成し、アクセスコントロールを、生成したパーミッション情報に従ってパーミッション設定する。
【0174】
例えば、監視用ソフトウェアに対応するソフトウェア識別子1には、A社製のカメラ60を玄関の監視用に使う意味づけをしたマクロとして「マクロA−用途a」と表現し、またペット管理用ソフトウェアに対応するソフトウェア識別子2には、A社製のカメラ60をペットのモニタリング用に使う意味づけをしたマクロとして「マクロA−用途b」と表現し、出力管理ソフトウェアに対応するソフトウェア識別子3には、電力センサ61を、総電力量測定用に使う意味づけをしたマクロとして、「マクロB」と表現したマクロ表現入りパーミッション情報を、センタ装置61からホームゲートウェイ1に送り込むと、マクロ表現部分が、それぞれの用途に対応したデバイスのIPアドレスに置き換わり、各ソフトウェア実体は、許可されたデバイスのみにアクセスするようパーミッション設定される。
【0175】
このように、本第8の実施の形態の構成にすることにより、各ホームゲートウェイ1が設置されているそれぞれのホームネットワークにおいて、同じ位置づけながらそれぞれのホームゲートウェイ1で差異のある情報を、マクロ展開情報52として、ゲートウェイ側で解決させることができ、センタ装置2側が複数のホームゲートウェイ毎に個別に異なるパーミッション情報を送り込むことなく、統一された表現のマクロ表現入りパーミッション情報51を送り込むのみでよい。
【0176】
また、ホームゲートウェイ1側も、各デバイス装置に付与されている具体的IPアドレスをセンタ装置2側に明かす必要はない。
【0177】
特に、IP電話等のアドレスなどは、プライベートな情報とみなせる場合もあり、このようなプライベート情報を、センタ装置2に明かすことなく、センタ装置2からの指示にもとづいてパーミッション設定を行うことができる。また、センタ装置2側も、各ホームゲートウェイ1が設置されているホームネットワークにおける、情報を収集把握する必要がなくなる。
【0178】
<第9の実施の形態>
図9は、第9の実施の形態を説明する構成図である。
【0179】
図9には、ソフトウェア実体を特定するためのソフトウェア識別子と、ホームゲートウェイ上で稼働するソフトウェア実体に付与される実行権限を表すためのパーミッション情報、または、ソフトウェア実体が提供する機能の実行権限をあらわすために該ソフトウェア実体が自身で定義する独自定義パーミッション情報と、を対応づけて登録するためのパーミッション情報登録手段と、ソフトウェア識別子とそれに対応するパーミッション情報と独自定義パーミッション情報をホームゲートウェイへ伝達するためのパーミッション情報達手段と、を有するセンタ装置と、ソフトウェア識別子とパーミッション情報と独自定義パーミッション情報をセンタ装置より取得するためのパーミッション情報取得手段と、センタ装置から取得したパーミッション情報および独自定義パーミッション情報のみに従ってソフトウェア実体の実行権限を設定するための実行権限設定手段と、ソフトウェア実体が他のソフトウェア実体を利用する際において、該ソフトウェア実体が独自定義パーミッションを持っているか否かの確認の問合せに応答するためのパーミッション確認応答手段と、を有するホームゲートウェイと、が示されている。
【0180】
このような構成のサービスを提供するソフトウェア実体は、提供するサービス機能を、他のソフトウェア実体に利用させるために、独自定義されたパーミッションを利用する場合がある。これは、以下の理由による。
【0181】
機能を提供するソフトウェア実体は、自分自身が機能を提供するために必要なパーミッション、たとえば、ファイルシステムにアクセスしたり、ネットワーク経由で外へアクセスするパーミッションを取得する。そのソフトウェア実体が、取得したパーミッションを乱用して、機能を提供するために必要ではないファイルにアクセスしたり、ネットワークアクセスをしていないことを、あらかじめ、ソフトウェア実体の中身を入念にチェック確認した上で、問題がないソフトウェア実体に対してのみパーミッションを付与する運用が行われる。
【0182】
しかし、機能を提供するソフトウェア実体が提供する機能を、他のソフトウェア実体が利用する際、利用する側のソフトウェア実体側も、その機能を実行するために、機能を提供する側と同じパーミッションを獲得していなければならない場合、利用側のソフトウェア実体の方に対しても、そのソフトウェア実体がそのパーミッション乱用した動作をしていないかを、機能を提供するソフトウェア実体と同程度の入念さでチェックすることが必要になる。
【0183】
これでは、ソフトウェア実体の内容が適正であるか否かの吟味を、機能提供するソフトウェア実体を、直接的にしろ、間接的にせよ、活用する全ての利用側のソフトウェア実体に対して、パーミッションを乱用していないかを、入念にチェックしなければならなくなる。
【0184】
これでは、運用の手間が非常にかかることになる。
【0185】
これを避けるため、機能を提供するソフトウェア実体のみがその機能を実行するパーミッションをもっていればよく、その機能を利用する側の、別のソフトウェア実体に、特にパーミッションを必要としないように、機能提供側ソフトウェア実体を実装することが望ましい。Java(登録商標)では、PrivilegedActionオブジェクトを活用することにより、機能利用側がパーミッションを持っている必要がなくなる。
【0186】
しかし、それでは、無条件に提供機能を利用されてしまうことになるため、独自定義されたパーミッションを持っているソフトウェア実体のみが、提供機能を利用できるように、実装することが多い。例えばJava(登録商標)においては、Permissionクラスを継承することによって、独自のPermissionクラスを定義することができ、その独自パーミッションを機能利用ソフトウェア実体が持っているかを、機能提供ソフトウェア実体側で調べることができる。
【0187】
このパーミッション定義は、そのパーミッションにより利用制限をかけるあるプログラム実体と、その独自パーミッション権限を獲得して、そのプログラムにより提供されている機能を利用する別のプログラム実体の間で、共有する。
【0188】
ある機能提供ソフトウェア実体が、複数の機能を提供する場合、その機能ごとに、独自定義パーミッションを用意することもできる。
【0189】
また、機能を提供するソフトウェア実体に与えるパーミッションが多岐にわたり複雑な場合も、機能を利用する側は、まとめあげられ単純化された独自的パーミッションだけを取得していれば機能を利用できる。
【0190】
このように、独自定義されたパーミッションは、ハードデバイスをハンドリングし、ハードデバイスを利用した機能を他のソフトウェア実体が利用できるように機能提供するソフトウェア実体においても活用することができる。つまり、そのハードデバイスを操作するために必要な、特殊な権限に相当するパーミッションは、そのハードデバイスを操作するその機能提供側ソフトウェア実体のみに与えればよく、提供される機能を通じてしかハードデバイスを操作しない、利用側のソフトウェア実体は、その機能を利用するための権限を表す、独自定義されたパーミッションを取得していればよく、パーミッション管理をカプセル化することができる。
【0191】
さらに、図9に示すように、同種のハードデバイスごとに、それぞれのデバイスをハンドリングする資源インスタンスオブジェクト73、74を別々の独自定義パーミッションと対応づけて生成し、各資源インスタンスオブジェクト73、74の具備するメソッド内で自インスタンスオブジェクトに関連付けられた独自定義パーミッションを、メソッドを呼び出した側のソフトウェア実体が所有しているかをチェックすることにより、同種のデバイスの利用権限を、特定のソフトウェア実体のみに限定する「インスタンスパーミッション」を実装することもできる。
【0192】
例えば、全く同機種のモニタカメラ2台(デバイス75、76)を扱うソフトウェア実体は、通常、そのモニタカメラを市販しているベンダから提供されることが想定される。各モニタカメラに対応する資源インスタンスオブジェクトは、この製作ベンダから提供されるソフトウェア実体により、生成され、他のソフトウェア実体向けに機能を提供する。
【0193】
しかし同機種のモニタカメラでもその用途によって、そのモニタカメラの操作機能を許可するソフトウェア実体を別々にしたいケースがある。
【0194】
例えば、玄関監視用の資源インスタンスオブジェクトのメソッド呼出は、警備サービス用ソフトウェア実体のみがハンドリングし、ペット見守り用のカメラは見守りサービス用ソフトウェア実体のみがハンドリングするようにする運用が考えられる。このような運用は、独自定義パーミッションとして、「インスタンスパーミッション」を活用することにより、簡単に運用できる。
【0195】
以上の利用形態を想定し、本第9の実施の形態は、センタ装置2においては、本第1の実施の形態であつかっていたパーミッション情報に、ソフトウェア実体に付与すべき実行権限として独自定義パーミッション情報も加えて、ソフトウェア識別子と対応づけて登録する手段を備える。
【0196】
また、ホームゲートウェイ1においては、独自定義パーミッション情報を含めたパーミッション情報をセンタ装置2から取得する手段、および、独自定義パーミッション情報も含めて、ソフトウェア実体の実行権限を設定する手段、および、ソフトウェア実体側から、独自定義パーミッションを呼出側ソフトウェア実体が所有しているか否かの問合せを受けて、所有しているか否かを応答する手段を備える。
【0197】
以下、業務フローの一例を想定して、本第9の実施の形態の動作を説明する。
【0198】
機能提供側ソフトウェア実体の提供ベンダ(デバイスベンダ)は、機能を利用するための独自パーミッションの定義(独自の権限(1)、独自の権限(2))を、2つの資源インスタンスオブジェクト73、74にそれぞれ対応付けて、そのソフトウェア実体72に組み込む。
【0199】
機能利用側のソフトウェア実体サービス(1)、サービス(2)を提供するプロバイダ77、78は、ソフトウェア実体を製作するにあたって、デバイスベンダと利用契約を取り交わし使用許諾を得る。
【0200】
デバイスベンダは、独自の権限(1)をサービス(1)のソフトウェア識別子に、独自の権限(2)をサービス(2)のソフトウェア識別子に与えてよい旨をホームゲートウェイソフトウェアパーミッション管理システムの運営主体に報告する。
【0201】
一方、サービス(1)、サービス(2)を提供する各プロバイダは、デバイスベンダより権限(1)、権限(2)の利用許諾を受けた旨を、各サービスのソフトウェア識別子と共に報告する。
【0202】
ホームゲートウェイソフトウェアパーミッション管理システムの運営主体は、提供側、利用側の報告がでそろうと、センタ装置2のACL4に、サービス(1)のソフトウェア実体には、権限(1)の独自パーミッションを付与し、サービス(2)のソフトウェア実体には、権限(2)の独自パーミッションを付与するよう、独自パーミッション情報を登録する。
【0203】
独自パーミッション情報を含むパーミッション情報は、ホームゲートウェイ1に伝達される。
【0204】
ホームゲートウェイ1側は、独自パーミッションを、伝達されたパーミッション情報にて指示されたサービス識別子に対してパーミッション設定を行う。
【0205】
機能利用側ソフトウェア実体(1)、(2)が稼働している時点で、パーミッション設定は既に完了するようにする。
【0206】
機能提供側ソフトウェア実体72は、機能利用側ソフトウェア実体70、71から機能実行の依頼を受けると、その機能に対応づけられた独自定義パーミッションを、その機能を利用しようとしているソフトウェア実体が所持しているか否かを、ゲートウェイ(ソフトウェア実体)に問い合わせる。ゲートウェイは、その問合せに応じて、機能利用側ソフトウェア実体に対応するソフトウェア識別子に対して、独自定義パーミッションが設定されているか否かを応答する。
【0207】
もしも、独自パーミッションが設定されていなければ機能提供側ソフトウェア実体は、要求された機能の実行を拒否する。独自パーミッションが設定されていれば、要求された機能を実行する。
【0208】
本第9の実施の形態の構成により、独自パーミッションをあらかじめ用意されているパーミッションと同等の扱いで、ホームゲートウェイソフトウェアパーミッション管理システムで管理することができる効果を得られる。
【0209】
これにより、特に、複数の同種のデバイスに対応づけて生成された資源インスタンスオブジェクトを、異なるソフトウェア実体に割り当て、割り当てられた資源インスタンスオブジェクトが、他方のソフトウェア実体によってアクセスできないようにする、セパレーションを、インスタンス単位で実現することができる。
【0210】
なお、デバイスベンダ79が、サービス(1)やサービス(2)のプロバイダへ、デバイスベンダ79が定義した権限(1)、権限(2)のパーミッションの取得を許可したことを受け付け、各サービスのプロバイダが、各サービスのソフトウェア識別子に付与するパーミッションとして独自パーミッションを含めて申請したときに、確かにデバイスベンダ79が、その独自パーミッションを、そのサービスプロバイダの申請しているサービスのソフトウェア識別子に与えることを許可していることを確認する業務は、システム化することも可能である。
【0211】
<第10の実施の形態>
図10は、第10の実施の形態を説明する構成図である。
【0212】
図10には、独自定義パーミッション情報と、該独自定義パーミッション情報の設定制御を許可するソフトウェア実体を特定するパーミッション設定ソフトウェア識別子の対応情報と、を共に登録するための対応情報登録手段と、独自定義パーミッション情報と対応情報をホームゲートウェイに伝達するための対応情報伝達手段と、を有するセンタ装置と、対応情報をセンタ装置より取得するための対応情報取得手段と、独自定義パーミッションの付与および没収の設定を他のソフトウェア実体に対して行う依頼としてパーミッションを設定する対象のソフトウェア実体を特定するソフトウェア識別子と、および独自定義パーミッションの情報を伴う独自定義パーミッション設定依頼と、をソフトウェア実体から受け付けるための設定依頼受け取り手段と、独自定義パーミッションの設定依頼をしたソフトウェア実体のソフトウェア識別子と、および独自定義パーミッションの設定依頼で指示されたパーミッション情報と、の組に対し、センタ装置から取得した独自定義パーミッション情報と、およびパーミッション設定ソフトウェア識別子と、の対応情報に該当するものがあるか否かを判断するための対応判断手段と、対応判断手段において該当するものがあると判断された場合にのみ独自定義パーミッション設定依頼にて設定対象としてソフトウェア識別子で指定されたソフトウェア実体に対し、設定依頼された独自定義パーミッションの付与もしくは没収の設定を行うための付与没収手段と、を有するホームゲートウェイと、が示されている。
【0213】
このような構成の第10の実施の形態に比べて、第9の実施の形態においては、独自定義パーミッション情報を含めたパーミッション情報がホームゲートウェイ1に伝達され、ホームゲートウェイ1側でのパーミッション設定が完了した時点で、その独自パーミッションが、どのソフトウェア識別子に割り当てられているかは決定する。センタ装置2は新たな、パーミッション情報が送り込まれない限り、そのパーミッションの設定内容は変化しない。
【0214】
しかしながら、ホームネットワーク上に存在するデバイスは、一時的には、あるソフトウェア実体が占有するが、一通りの機能の利用が完了したら、占有を解き、他のソフトウェア実体が利用できるようにしたい場合がある。
【0215】
例えば、デバイスとしてテレビモニタは、テレビ電話サービスを実装するソフトウェア実体が電話通話をしている間だけ占有すればよいし、また別の、録画ビデオ再生サービスを実装するソフトウェア実体による、同じテレビモニタの占有は、ビデオ視聴をしている間だけ占有すればよい。
【0216】
本第9の実施の形態の構成で、これを行おうとすると、あらたにそのデバイスを占有して利用するソフトウェア実体のソフトウェア識別子に、その独自パーミッションを与えるために、センタ装置2は、独自パーミッションのパーミッション情報を送り込みなおす必要がある。デバイスの占有の移り変わりが頻繁な場合、センタ装置2のパーミッション設定処理負荷が大きなものとなる。
【0217】
そこで第10の実施の形態においては、独自パーミッションを、他のソフトウェア実体に付与したり、奪い取ったりしたりする行為を、独自パーミッションに限って、その独自パーミッションの設定定義している機能提供側のソフトウェア実体が行えるようすることを目的とする。
【0218】
第10の実施の形態は、第9の実施の形態の構成に加え、センタ装置2側においては、独自定義パーミッションと、自ソフトウェア実体が定義管理している独自定義パーミッションに限って、その独自定義パーミッションを他のソフトウェア実体に対して着脱することを許可するソフトウェア実体のソフトウェア識別子を表す独自定義パーミッション設定ソフトウェア識別子との対応情報を登録する手段と、独自定義パーミッション情報を含めたパーミッション情報に加えて、独自定義パーミッションとパーミッション設定ソフトウェア識別子の対応情報も、ホームゲートウェイ1に伝達する手段を備え、ホームゲートウェイ1側においては、センタ装置2より、独自定義パーミッション情報を含めたパーミッション情報に加えて、独自定義パーミッションとパーミッション設定ソフトウェア識別子の対応情報もセンタ装置2より取得する手段と、独自定義パーミッションの付与、没収の設定を他のソフトウェア実体に対して行う依頼として、パーミッションを設定する対象のソフトウェア実体を特定するソフトウェア識別子および独自定義パーミッションの情報を伴う独自定義パーミッション設定依頼を、ソフトウェア実体から受け付ける手段と、独自定義パーミッションの設定依頼をしたソフトウェア実体のソフトウェア識別子と独自定義パーミッションの設定依頼で依頼された独自定義パーミッション情報の組に対して、センタ装置2から取得した独自定義パーミッション情報とパーミッション設定ソフトウェア識別子の対応情報に該当するものがあるか否かを判断する手段と、該当するものがある場合のみ独自定義パーミッション設定依頼にて設定対象としてソフトウェア識別子で指定された、ソフトウェア実体に設定依頼された独自定義パーミッションの付与、もしくは没収の設定を行う手段を備える。
【0219】
センタ装置2が、独自パーミッションを含むパーミッション情報をホームゲートウェイ1に伝達して、ホームゲートウェイ1上で、独自パーミッション情報を含むパーミッション設定を行う動作は、本第9の実施の形態と同じである。この場合は、独自パーミッションの特定のソフトウェア識別子への設定は、センタ装置2の指示により直接的に行われることになる。
【0220】
本第10の実施の形態においては、これに加え、センタ装置2から、特定の独自定義パーミッションに関わる設定を、ホームゲートウェイ1上で、稼働するその独自定義パーミッションを定義しているソフトウェア実体に権限委譲することができる。
【0221】
ある機能提供側のソフトウェア実体が、提供する機能を利用するために必要な独自パーミッションの他の機能利用側ソフトウェア実体に対して設定作業を行うようにするために、まず、センタ装置2において、機能提供側のソフトウェア実体のソフトウェア識別子を、独自定義パーミッション設定ソフトウェア識別子として、独自定義パーミッションと独自定義パーミッション設定ソフトウェア識別子の対応情報を独自定義パーミッション管理DB81に登録する。
【0222】
この対応情報は、独自定義パーミッションに関わる設定作業を、どのソフトウェア実体が行ってよいかを表す情報となる。
【0223】
独自定義パーミッションと、独自定義パーミッション設定ソフトウェア識別子の対応情報は、センタ装置2よりホームゲートウェイ1に伝達され、ホームゲートウェイ1は、この対応情報をセンタ装置2より取得する。
【0224】
機能提供側のソフトウェア実体は、提供する機能を利用するために必要な独自パーミッションを他の機能利用側ソフトウェア実体に対して付与する必要があると判断すると、ホームゲートウェイ1に対して、そのソフトウェア実体を特定するソフトウェア識別子と、設定を行うパーミッション情報を伴う独自定義パーミッション設定依頼をだす。
【0225】
ホームゲートウェイ1は、この独自定義パーミッション設定依頼を受けると、この独自定義パーミッション設定依頼を出したソフトウェア実体、すなわち機能提供側ソフトウェア実体が、その独自定義パーミッションの設定依頼をだせるソフトウェア実体であるかを、センタ装置2より取得した、独自定義パーミッションと独自定義パーミッション設定ソフトウェア識別子の対応情報を参照して、チェックする。
【0226】
独自定義パーミッションと独自定義パーミッション設定ソフトウェア識別子の対応情報に機能利用側ソフトウェア実体の識別子と、設定依頼された独自定義パーミッションの対応情報が存在しないなら、独自定義パーミッションの設定依頼を拒絶する。
【0227】
存在するならば、独自定義パーミッションの設定依頼に伴って伝達された、独自定義パーミッションを設定対象とする機能利用側ソフトウェア実体のソフトウェア識別子に対して、指定された独自定義パーミッションの設定を行う。以降、機能利用側ソフトウェア実体は、設定された独自定義パーミッションに従った権限で、動作する。
【0228】
以上の第10の実施の形態の構成により、機能提供側ソフトウェア実体は、独自定義パーミッションに限っては、機能利用側ソフトウェア実体に対して、独自の裁量で動的に柔軟に、パーミッションの設定を行うことができる。
【0229】
また、それにより、独自パーミッションに関わる設定指示をセンタ装置2が全て行う必要がなくなるため、センタ装置2側の処理負荷を軽減できる。
【0230】
以上説明した第1〜10の実施の形態は、ソフトウェア実体を特定するソフトウェア識別子と、ホームゲートウェイ上のソフトウェア実行環境上で、そのソフトウェア実体が動作する際に、動作上の実行権限に制限を課すためにそのソフトウェア実体に付与する「パーミッション情報」を、センタ装置からホームゲートウェイに伝達し、ホームゲートウェイ側で、センタから送り込まれたパーミッション情報のみにもとづいて、パーミッションを設定させる手段を設けることを特徴としている。
【0231】
また、本実施の形態によれば、ホームゲートウェイ上で稼働するソフトウェア実体に付与するパーミッションをセンタから遠隔設定可能にし、同一のホームゲートウェイに相乗りした複数のソフトウェア実体のそれぞれが管理する情報がソフトウェア実体同士で互いに引き出されることを防止することができる。
【図面の簡単な説明】
【0232】
【図1】第1の実施の形態の構成を説明するための説明図である。
【図2】第2の実施の形態の構成を説明するための説明図である。
【図3】第3の実施の形態の構成を説明するための説明図である。
【図4】第4の実施の形態の構成を説明するための説明図である。
【図5】第5の実施の形態の構成を説明するための説明図である。
【図6】第6の実施の形態の構成を説明するための説明図である。
【図7】第7の実施の形態の構成を説明するための説明図である。
【図8】第8の実施の形態の構成を説明するための説明図である。
【図9】第9の実施の形態の構成を説明するための説明図である。
【図10】第10の実施の形態の構成を説明するための説明図である。
【図11】従来のシステムの構成を説明するための説明図である。
【符号の説明】
【0233】
1…ホームゲートウェイ
2…センタ装置
3、4…ACL
10…実行環境
20…ソフトウェア配布サーバ
34…デバイスオブジェクト
【特許請求の範囲】
【請求項1】
サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、
前記ソフトウェア実体を特定するためのソフトウェア識別子と、
前記ホームゲートウェイ上で稼働する前記ソフトウェア実体に付与される実行権限となるパーミッション情報を前記ソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、
前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を前記ホームゲートウェイへ伝達するための識別情報伝達手段と、
を有するセンタ装置と、
前記センタ装置から前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を取得するための識別情報取得手段と、
前記センタ装置から取得した前記パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、
を有する前記ホームゲートウェイと、
を備えることを特徴とするホームゲートウェイソフトウェアパーミッション管理システム。
【請求項2】
サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、
前記ソフトウェア実体を特定するためのソフトウェア識別子と、前記ホームゲートウェイを特定するためのホームゲートウェイ識別子と、前記ホームゲートウェイ識別子に対応する前記ホームゲートウェイ上で稼働する前記ソフトウェア実体に付与される実行権限となるパーミッション情報と、を前記ソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、
前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を前記ホームゲートウェイ識別子に対応する前記ホームゲートウェイへ伝達するための識別情報伝達手段と、
を有するセンタ装置と、
前記センタ装置から前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を取得するための識別情報取得手段と、
前記センタ装置から取得した前記パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、
を有する前記ホームゲートウェイと、
を備えることを特徴とするホームゲートウェイソフトウェアパーミッション管理システム。
【請求項3】
サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、
前記ソフトウェア実体を格納し要求に応じて配布するためのソフトウェア配布サーバと、
前記ソフトウェア配布サーバに格納されている前記ソフトウェア実体を特定するためのソフトウェア識別子と、ホームゲートウェイ上で稼働する前記ソフトウェア実体に付与される実行権限となるパーミッション情報と、を前記ソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、
前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を前記ホームゲートウェイへ伝達するための識別情報伝達手段と、
を有するセンタ装置と、
前記ソフトウェア実体と前記ソフトウェア識別子を対応付けて格納するためのソフトウェア情報格納手段と、
前記ソフトウェア識別子が指定された前記ソフトウェア実体が前記ホームゲートウェイから要求されることを受け付けるためのソフトウェア要求受付手段と、
前記ソフトウェア識別子で指定された前記ソフトウェア実体を前記ホームゲートウェイからの前記要求に応答するための要求応答手段を備えた前記ソフトウェア配布サーバと、
前記センタ装置から前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を取得するための識別情報取得手段と、
前記センタ装置から取得した前記パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、
前記ソフトウェア識別子で特定される前記ソフトウェア実体を前記ソフトウェア配布サーバへ要求して取得するためのソフトウェア取得手段と、
取得した前記ソフトウェア実体を前記ホームゲートウェイにインストールするためのインストール手段と、
インストールした前記ソフトウェア実体を前記ホームゲートウェイ上で起動するためのソフトウェア起動手段と、
を有する前記ホームゲートウェイと、
を備えることを特徴とするホームゲートウェイソフトウェアパーミッション管理システム。
【請求項4】
サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、
前記ソフトウェア実体を特定するためのソフトウェア識別子と、
前記ホームゲートウェイ上で稼働する前記ソフトウェア実体に付与される実行権限となるパーミッション情報を前記ソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、
前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を前記ホームゲートウェイへ伝達するための識別情報伝達手段と、
を有するセンタ装置と、
前記センタ装置から前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を取得するための識別情報取得手段と、
前記センタ装置から取得した前記パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、を有する前記ホームゲートウェイと、
前記ソフトウェア実体と前記ソフトウェア識別子を組にして非可分にパッケージ化されたパッケージ化ソフトウェアが前記ホームゲートウェイにインストールされたことを検出するためのインストール検出手段と、
インストールされた前記パッケージ化ソフトウェアから前記ソフトウェア識別子を取得するための識別子取得手段と、
前記ソフトウェア識別子に対応する前記パーミッション情報の設定が存在するか否かを確認するためのパーミッション情報確認手段と、
前記パーミッション情報確認手段による前記設定の存在確認が完了するまでの間において前記インストールされた前記パッケージ化ソフトウェアの起動を抑制するための起動抑制手段と、
前記パーミッション設定が存在しない場合に前記パッケージ化ソフトウェアのアンインストールの実行または前記実行権限を奪うためのソフトウェア処分手段と、
を有するホームゲートウェイと、
を備えることを特徴とするホームゲートウェイソフトウェアパーミッション管理システム。
【請求項5】
前記ホームゲートウェイは、
前記ソフトウェア実体と、前記ソフトウェア識別子と、前記センタ装置の運営主体が許可しているパーミッション情報と、を組み合わせて非可分にパッケージ化されたパッケージ化ソフトウェアがインストールされたことを検出するためのインストール検出手段と、
前記パッケージ化ソフトウェアから前記センタ装置の運営主体が許可した前記パーミッション情報を取り出すためのパーミッション情報取り出し手段と、
前記センタ装置から取得した前記パーミッション情報によるパーミッション設定が存在しない場合において、
前記パッケージ化ソフトウェアから取り出した前記パーミッション情報にもとづいて設定を行うための設定手段と、
前記センタ装置からの前記パーミッション情報による前記パーミッション設定の存在の確認と、および前記パッケージ化ソフトウェアから取り出した前記パーミッション設定が完了するまでの間においてインストールされた前記パッケージ化ソフトウェアの起動を抑制するための起動抑制手段と、
を備えることを特徴とする請求項4に記載のホームゲートウェイソフトウェアパーミッション管理システム。
【請求項6】
サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、
デバイスオブジェクトと、その属性情報をあらわすデバイスカテゴリ情報と共に登録するためのデバイス管理ソフトウェアと、
前記デバイスオブジェクトに適合するドライバソフトウェア実体のドライバ識別子を前記デバイスカテゴリ情報に基づいて特定し、前記ドライバ識別子を伴うドライバソフトウェア要求に対応して前記ドライバソフトウェア実体を取得するためのドライバロケータソフトウェアと、
前記ドライバロケータソフトウェアに不可分にパッケージ化されるプレフィックス識別子と、前記プレフィックス識別子と前記ドライバロケータソフトウェアに体系付けられたドライバ識別子との組み合わせからなるソフトウェア識別子と、前記ホームゲートウェイ上で稼働する前記ドライバソフトウェア実体に付与される実行権限となるパーミッション情報と、を前記ドライバソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、
前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を前記ホームゲートウェイへ伝達するための識別情報伝達手段と、
を有するセンタ装置と、
前記センタ装置から前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を取得するための識別情報取得手段と、
前記センタ装置から取得した前記パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、
前記デバイス管理ソフトウェアにより登録される前記デバイスオブジェクトから前記デバイスカテゴリ情報を取得するためのデバイスカテゴリ情報取得手段と、
前記ドライバロケータソフトウェアに前記デバイスカテゴリ情報を与えて前記ドライバ識別子を応答させるためのドライバ識別子応答手段と、
前記ドライバロケータソフトウェアに前記ドライバ識別子を与えて前記デバイスオブジェクトと連携動作する前記ドライバソフトウェア実体を取得させるためのドライバソフトウェア実体取得手段と、
前記ドライバロケータソフトウェアから前記ドライバロケータソフトウェアに不可分にパッケージ化された前記プレフィックス識別子を取得するためのプレフィックス識別子取得手段と、
前記プレフィックス識別子と前記ドライバ識別子から前記ソフトウェア識別子を生成するためのソフトウェア識別子生成手段と、
前記ドライバソフトウェア実体を生成した前記ソフトウェア識別子に対応するものとしてインストールおよび起動する起動手段と、
を有する前記ホームゲートウェイと、
を備えることを特徴とするホームゲートウェイソフトウェアパーミッション管理システム。
【請求項7】
サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、
デバイスオブジェクトと、その属性情報をあらわすデバイスカテゴリ情報と共に登録するためのデバイス管理ソフトウェアと、
前記デバイスオブジェクトに適合するドライバソフトウェア実体のドライバ識別子を前記デバイスカテゴリ情報に基づいて特定し、前記ドライバ識別子を伴うドライバソフトウェア要求に対応して前記ドライバソフトウェア実体を取得するためのドライバロケータソフトウェアと、
ドライバソフトウェア実体を定めるドライバ識別子をキーにして一意にソフトウェア識別子を検索可能なように体系付けられたドライバソフトウェアのソフトウェア識別子と、
前記ホームゲートウェイ上で稼働しドライバロケータソフトウェアが取得する前記ドライバソフトウェア実体に付与される実行権限となるパーミッション情報を前記ドライバソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、
前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を前記ホームゲートウェイへ伝達するための識別情報伝達手段と、
を有するセンタ装置と、
前記センタ装置から前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を取得するための識別情報取得手段と、
前記センタ装置から取得した前記パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、
デバイス管理ソフトウェアにより登録されるデバイスオブジェクトからデバイスカテゴリ情報を取得するためのデバイスカテゴリ情報取得手段と、
前記ドライバロケータソフトウェアに前記デバイスカテゴリ情報を与えて前記ドライバ識別子を応答させるためのドライバ識別子取得手段と、
前記ドライバロケータソフトウェアに前記ドライバ識別子を与えて前記デバイスオブジェクトと連携動作する前記ドライバソフトウェア実体を取得させるためのドライバソフトウェア実体取得手段と、
前記ドライバ識別子をキーに前記センタ装置より取得した前記パーミッション情報の前記ソフトウェア識別子を検索してソフトウェア識別子を一意に特定する手段と、
前記ドライバソフトウェア実体を検索により特定した前記ソフトウェア識別子に対応するものとしてインストールおよび起動する起動手段と、
を有する前記ホームゲートウェイと、
を備えることを特徴とするホームゲートウェイソフトウェアパーミッション管理システム。
【請求項8】
サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、
前記ソフトウェア実体を特定するためのソフトウェア識別子と、それぞれの前記ホームゲートウェイで差異のある情報を具体的な値に置き換える対象としてマクロ表現してパーミッションを記載したマクロ表現入りパーミッション情報と、を対応づけて登録するための識別子登録手段と、
前記ソフトウェア識別子とそれに対応する前記マクロ表現入りパーミッション情報を前記ホームゲートウェイに伝達するためのパーミッション情報伝達手段と、
を有するセンタ装置と、
前記ソフトウェア識別子と前記マクロ表現入りパーミッション情報を前記センタ装置より取得するためのマクロ表現入りパーミッション情報取得手段と、
取得した前記マクロ表現入りパーミッション情報を保持格納するためのパーミッション情報格納手段と、
前記マクロ表現を具体的な値に展開するマクロ表現展開情報をローカルに維持管理するためのマクロ情報管理手段と、
前記マクロ表現入りパーミッション情報と前記マクロ表現展開情報からパーミッション情報を生成するためのパーミッション情報生成手段と、
前記マクロ表現入りパーミッション情報または前記マクロ表現展開情報が変化した際に前記パーミッション情報を生成しなおすためのパーミッション情報再生成手段と、
前記パーミッション情報再生成手段で生成した前記パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、
を有する前記ホームゲートウェイと、
を備えることを特徴とするホームゲートウェイソフトウェアパーミッション管理システム。
【請求項9】
サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、
前記ソフトウェア実体を特定するためのソフトウェア識別子と、前記ホームゲートウェイ上で稼働する前記ソフトウェア実体に付与される実行権限を表すためのパーミッション情報、または、前記ソフトウェア実体が提供する機能の実行権限をあらわすために該ソフトウェア実体が自身で定義する独自定義パーミッション情報と、を対応づけて登録するためのパーミッション情報登録手段と、
ソフトウェア識別子とそれに対応する前記パーミッション情報と前記独自定義パーミッション情報を前記ホームゲートウェイへ伝達するためのパーミッション情報達手段と、
を有するセンタ装置と、
前記ソフトウェア識別子と前記パーミッション情報と前記独自定義パーミッション情報を前記センタ装置より取得するためのパーミッション情報取得手段と、
前記センタ装置から取得した前記パーミッション情報および前記独自定義パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、
前記ソフトウェア実体が他のソフトウェア実体を利用する際において、該ソフトウェア実体が前記独自定義パーミッションを持っているか否かの確認の問合せに応答するためのパーミッション確認応答手段と、
を有する前記ホームゲートウェイと、
を備えることを特徴とするホームゲートウェイソフトウェアパーミッション管理システム。
【請求項10】
前記独自定義パーミッション情報と、該独自定義パーミッション情報の設定制御を許可する前記ソフトウェア実体を特定するパーミッション設定ソフトウェア識別子の対応情報と、を共に登録するための対応情報登録手段と、
前記独自定義パーミッション情報と前記対応情報を前記ホームゲートウェイに伝達するための対応情報伝達手段と、
を有するセンタ装置と、
前記対応情報を前記センタ装置より取得するための対応情報取得手段と、
前記独自定義パーミッションの付与および没収の設定を他のソフトウェア実体に対して行う依頼としてパーミッションを設定する対象の前記ソフトウェア実体を特定するソフトウェア識別子と、および独自定義パーミッションの情報を伴う独自定義パーミッション設定依頼と、を前記ソフトウェア実体から受け付けるための設定依頼受け取り手段と、
前記独自定義パーミッションの設定依頼をした前記ソフトウェア実体の前記ソフトウェア識別子と、および前記独自定義パーミッションの設定依頼で指示されたパーミッション情報と、の組に対し、前記センタ装置から取得した前記独自定義パーミッション情報と、および前記パーミッション設定ソフトウェア識別子と、の対応情報に該当するものがあるか否かを判断するための対応判断手段と、
前記対応判断手段において該当するものがあると判断された場合にのみ前記独自定義パーミッション設定依頼にて設定対象として前記ソフトウェア識別子で指定されたソフトウェア実体に対し、前記設定依頼された前記独自定義パーミッションの付与もしくは没収の設定を行うための付与没収手段と、
を有する前記ホームゲートウェイと、
を備えることを特徴とする請求項9に記載のホームゲートウェイソフトウェアパーミッション管理システム。
【請求項1】
サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、
前記ソフトウェア実体を特定するためのソフトウェア識別子と、
前記ホームゲートウェイ上で稼働する前記ソフトウェア実体に付与される実行権限となるパーミッション情報を前記ソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、
前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を前記ホームゲートウェイへ伝達するための識別情報伝達手段と、
を有するセンタ装置と、
前記センタ装置から前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を取得するための識別情報取得手段と、
前記センタ装置から取得した前記パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、
を有する前記ホームゲートウェイと、
を備えることを特徴とするホームゲートウェイソフトウェアパーミッション管理システム。
【請求項2】
サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、
前記ソフトウェア実体を特定するためのソフトウェア識別子と、前記ホームゲートウェイを特定するためのホームゲートウェイ識別子と、前記ホームゲートウェイ識別子に対応する前記ホームゲートウェイ上で稼働する前記ソフトウェア実体に付与される実行権限となるパーミッション情報と、を前記ソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、
前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を前記ホームゲートウェイ識別子に対応する前記ホームゲートウェイへ伝達するための識別情報伝達手段と、
を有するセンタ装置と、
前記センタ装置から前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を取得するための識別情報取得手段と、
前記センタ装置から取得した前記パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、
を有する前記ホームゲートウェイと、
を備えることを特徴とするホームゲートウェイソフトウェアパーミッション管理システム。
【請求項3】
サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、
前記ソフトウェア実体を格納し要求に応じて配布するためのソフトウェア配布サーバと、
前記ソフトウェア配布サーバに格納されている前記ソフトウェア実体を特定するためのソフトウェア識別子と、ホームゲートウェイ上で稼働する前記ソフトウェア実体に付与される実行権限となるパーミッション情報と、を前記ソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、
前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を前記ホームゲートウェイへ伝達するための識別情報伝達手段と、
を有するセンタ装置と、
前記ソフトウェア実体と前記ソフトウェア識別子を対応付けて格納するためのソフトウェア情報格納手段と、
前記ソフトウェア識別子が指定された前記ソフトウェア実体が前記ホームゲートウェイから要求されることを受け付けるためのソフトウェア要求受付手段と、
前記ソフトウェア識別子で指定された前記ソフトウェア実体を前記ホームゲートウェイからの前記要求に応答するための要求応答手段を備えた前記ソフトウェア配布サーバと、
前記センタ装置から前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を取得するための識別情報取得手段と、
前記センタ装置から取得した前記パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、
前記ソフトウェア識別子で特定される前記ソフトウェア実体を前記ソフトウェア配布サーバへ要求して取得するためのソフトウェア取得手段と、
取得した前記ソフトウェア実体を前記ホームゲートウェイにインストールするためのインストール手段と、
インストールした前記ソフトウェア実体を前記ホームゲートウェイ上で起動するためのソフトウェア起動手段と、
を有する前記ホームゲートウェイと、
を備えることを特徴とするホームゲートウェイソフトウェアパーミッション管理システム。
【請求項4】
サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、
前記ソフトウェア実体を特定するためのソフトウェア識別子と、
前記ホームゲートウェイ上で稼働する前記ソフトウェア実体に付与される実行権限となるパーミッション情報を前記ソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、
前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を前記ホームゲートウェイへ伝達するための識別情報伝達手段と、
を有するセンタ装置と、
前記センタ装置から前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を取得するための識別情報取得手段と、
前記センタ装置から取得した前記パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、を有する前記ホームゲートウェイと、
前記ソフトウェア実体と前記ソフトウェア識別子を組にして非可分にパッケージ化されたパッケージ化ソフトウェアが前記ホームゲートウェイにインストールされたことを検出するためのインストール検出手段と、
インストールされた前記パッケージ化ソフトウェアから前記ソフトウェア識別子を取得するための識別子取得手段と、
前記ソフトウェア識別子に対応する前記パーミッション情報の設定が存在するか否かを確認するためのパーミッション情報確認手段と、
前記パーミッション情報確認手段による前記設定の存在確認が完了するまでの間において前記インストールされた前記パッケージ化ソフトウェアの起動を抑制するための起動抑制手段と、
前記パーミッション設定が存在しない場合に前記パッケージ化ソフトウェアのアンインストールの実行または前記実行権限を奪うためのソフトウェア処分手段と、
を有するホームゲートウェイと、
を備えることを特徴とするホームゲートウェイソフトウェアパーミッション管理システム。
【請求項5】
前記ホームゲートウェイは、
前記ソフトウェア実体と、前記ソフトウェア識別子と、前記センタ装置の運営主体が許可しているパーミッション情報と、を組み合わせて非可分にパッケージ化されたパッケージ化ソフトウェアがインストールされたことを検出するためのインストール検出手段と、
前記パッケージ化ソフトウェアから前記センタ装置の運営主体が許可した前記パーミッション情報を取り出すためのパーミッション情報取り出し手段と、
前記センタ装置から取得した前記パーミッション情報によるパーミッション設定が存在しない場合において、
前記パッケージ化ソフトウェアから取り出した前記パーミッション情報にもとづいて設定を行うための設定手段と、
前記センタ装置からの前記パーミッション情報による前記パーミッション設定の存在の確認と、および前記パッケージ化ソフトウェアから取り出した前記パーミッション設定が完了するまでの間においてインストールされた前記パッケージ化ソフトウェアの起動を抑制するための起動抑制手段と、
を備えることを特徴とする請求項4に記載のホームゲートウェイソフトウェアパーミッション管理システム。
【請求項6】
サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、
デバイスオブジェクトと、その属性情報をあらわすデバイスカテゴリ情報と共に登録するためのデバイス管理ソフトウェアと、
前記デバイスオブジェクトに適合するドライバソフトウェア実体のドライバ識別子を前記デバイスカテゴリ情報に基づいて特定し、前記ドライバ識別子を伴うドライバソフトウェア要求に対応して前記ドライバソフトウェア実体を取得するためのドライバロケータソフトウェアと、
前記ドライバロケータソフトウェアに不可分にパッケージ化されるプレフィックス識別子と、前記プレフィックス識別子と前記ドライバロケータソフトウェアに体系付けられたドライバ識別子との組み合わせからなるソフトウェア識別子と、前記ホームゲートウェイ上で稼働する前記ドライバソフトウェア実体に付与される実行権限となるパーミッション情報と、を前記ドライバソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、
前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を前記ホームゲートウェイへ伝達するための識別情報伝達手段と、
を有するセンタ装置と、
前記センタ装置から前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を取得するための識別情報取得手段と、
前記センタ装置から取得した前記パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、
前記デバイス管理ソフトウェアにより登録される前記デバイスオブジェクトから前記デバイスカテゴリ情報を取得するためのデバイスカテゴリ情報取得手段と、
前記ドライバロケータソフトウェアに前記デバイスカテゴリ情報を与えて前記ドライバ識別子を応答させるためのドライバ識別子応答手段と、
前記ドライバロケータソフトウェアに前記ドライバ識別子を与えて前記デバイスオブジェクトと連携動作する前記ドライバソフトウェア実体を取得させるためのドライバソフトウェア実体取得手段と、
前記ドライバロケータソフトウェアから前記ドライバロケータソフトウェアに不可分にパッケージ化された前記プレフィックス識別子を取得するためのプレフィックス識別子取得手段と、
前記プレフィックス識別子と前記ドライバ識別子から前記ソフトウェア識別子を生成するためのソフトウェア識別子生成手段と、
前記ドライバソフトウェア実体を生成した前記ソフトウェア識別子に対応するものとしてインストールおよび起動する起動手段と、
を有する前記ホームゲートウェイと、
を備えることを特徴とするホームゲートウェイソフトウェアパーミッション管理システム。
【請求項7】
サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、
デバイスオブジェクトと、その属性情報をあらわすデバイスカテゴリ情報と共に登録するためのデバイス管理ソフトウェアと、
前記デバイスオブジェクトに適合するドライバソフトウェア実体のドライバ識別子を前記デバイスカテゴリ情報に基づいて特定し、前記ドライバ識別子を伴うドライバソフトウェア要求に対応して前記ドライバソフトウェア実体を取得するためのドライバロケータソフトウェアと、
ドライバソフトウェア実体を定めるドライバ識別子をキーにして一意にソフトウェア識別子を検索可能なように体系付けられたドライバソフトウェアのソフトウェア識別子と、
前記ホームゲートウェイ上で稼働しドライバロケータソフトウェアが取得する前記ドライバソフトウェア実体に付与される実行権限となるパーミッション情報を前記ドライバソフトウェア実体に対応づけて登録するためのパーミッション情報登録手段と、
前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を前記ホームゲートウェイへ伝達するための識別情報伝達手段と、
を有するセンタ装置と、
前記センタ装置から前記ソフトウェア識別子およびそれに対応する前記パーミッション情報を取得するための識別情報取得手段と、
前記センタ装置から取得した前記パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、
デバイス管理ソフトウェアにより登録されるデバイスオブジェクトからデバイスカテゴリ情報を取得するためのデバイスカテゴリ情報取得手段と、
前記ドライバロケータソフトウェアに前記デバイスカテゴリ情報を与えて前記ドライバ識別子を応答させるためのドライバ識別子取得手段と、
前記ドライバロケータソフトウェアに前記ドライバ識別子を与えて前記デバイスオブジェクトと連携動作する前記ドライバソフトウェア実体を取得させるためのドライバソフトウェア実体取得手段と、
前記ドライバ識別子をキーに前記センタ装置より取得した前記パーミッション情報の前記ソフトウェア識別子を検索してソフトウェア識別子を一意に特定する手段と、
前記ドライバソフトウェア実体を検索により特定した前記ソフトウェア識別子に対応するものとしてインストールおよび起動する起動手段と、
を有する前記ホームゲートウェイと、
を備えることを特徴とするホームゲートウェイソフトウェアパーミッション管理システム。
【請求項8】
サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、
前記ソフトウェア実体を特定するためのソフトウェア識別子と、それぞれの前記ホームゲートウェイで差異のある情報を具体的な値に置き換える対象としてマクロ表現してパーミッションを記載したマクロ表現入りパーミッション情報と、を対応づけて登録するための識別子登録手段と、
前記ソフトウェア識別子とそれに対応する前記マクロ表現入りパーミッション情報を前記ホームゲートウェイに伝達するためのパーミッション情報伝達手段と、
を有するセンタ装置と、
前記ソフトウェア識別子と前記マクロ表現入りパーミッション情報を前記センタ装置より取得するためのマクロ表現入りパーミッション情報取得手段と、
取得した前記マクロ表現入りパーミッション情報を保持格納するためのパーミッション情報格納手段と、
前記マクロ表現を具体的な値に展開するマクロ表現展開情報をローカルに維持管理するためのマクロ情報管理手段と、
前記マクロ表現入りパーミッション情報と前記マクロ表現展開情報からパーミッション情報を生成するためのパーミッション情報生成手段と、
前記マクロ表現入りパーミッション情報または前記マクロ表現展開情報が変化した際に前記パーミッション情報を生成しなおすためのパーミッション情報再生成手段と、
前記パーミッション情報再生成手段で生成した前記パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、
を有する前記ホームゲートウェイと、
を備えることを特徴とするホームゲートウェイソフトウェアパーミッション管理システム。
【請求項9】
サービスプロバイダが提供する複数のソフトウェア実体を同一のホームゲートウェイに相乗りさせて同時運用するためのホームゲートウェイソフトウェアパーミッション管理システムにおいて、
前記ソフトウェア実体を特定するためのソフトウェア識別子と、前記ホームゲートウェイ上で稼働する前記ソフトウェア実体に付与される実行権限を表すためのパーミッション情報、または、前記ソフトウェア実体が提供する機能の実行権限をあらわすために該ソフトウェア実体が自身で定義する独自定義パーミッション情報と、を対応づけて登録するためのパーミッション情報登録手段と、
ソフトウェア識別子とそれに対応する前記パーミッション情報と前記独自定義パーミッション情報を前記ホームゲートウェイへ伝達するためのパーミッション情報達手段と、
を有するセンタ装置と、
前記ソフトウェア識別子と前記パーミッション情報と前記独自定義パーミッション情報を前記センタ装置より取得するためのパーミッション情報取得手段と、
前記センタ装置から取得した前記パーミッション情報および前記独自定義パーミッション情報のみに従って前記ソフトウェア実体の実行権限を設定するための実行権限設定手段と、
前記ソフトウェア実体が他のソフトウェア実体を利用する際において、該ソフトウェア実体が前記独自定義パーミッションを持っているか否かの確認の問合せに応答するためのパーミッション確認応答手段と、
を有する前記ホームゲートウェイと、
を備えることを特徴とするホームゲートウェイソフトウェアパーミッション管理システム。
【請求項10】
前記独自定義パーミッション情報と、該独自定義パーミッション情報の設定制御を許可する前記ソフトウェア実体を特定するパーミッション設定ソフトウェア識別子の対応情報と、を共に登録するための対応情報登録手段と、
前記独自定義パーミッション情報と前記対応情報を前記ホームゲートウェイに伝達するための対応情報伝達手段と、
を有するセンタ装置と、
前記対応情報を前記センタ装置より取得するための対応情報取得手段と、
前記独自定義パーミッションの付与および没収の設定を他のソフトウェア実体に対して行う依頼としてパーミッションを設定する対象の前記ソフトウェア実体を特定するソフトウェア識別子と、および独自定義パーミッションの情報を伴う独自定義パーミッション設定依頼と、を前記ソフトウェア実体から受け付けるための設定依頼受け取り手段と、
前記独自定義パーミッションの設定依頼をした前記ソフトウェア実体の前記ソフトウェア識別子と、および前記独自定義パーミッションの設定依頼で指示されたパーミッション情報と、の組に対し、前記センタ装置から取得した前記独自定義パーミッション情報と、および前記パーミッション設定ソフトウェア識別子と、の対応情報に該当するものがあるか否かを判断するための対応判断手段と、
前記対応判断手段において該当するものがあると判断された場合にのみ前記独自定義パーミッション設定依頼にて設定対象として前記ソフトウェア識別子で指定されたソフトウェア実体に対し、前記設定依頼された前記独自定義パーミッションの付与もしくは没収の設定を行うための付与没収手段と、
を有する前記ホームゲートウェイと、
を備えることを特徴とする請求項9に記載のホームゲートウェイソフトウェアパーミッション管理システム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2007−241560(P2007−241560A)
【公開日】平成19年9月20日(2007.9.20)
【国際特許分類】
【出願番号】特願2006−61551(P2006−61551)
【出願日】平成18年3月7日(2006.3.7)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】
【公開日】平成19年9月20日(2007.9.20)
【国際特許分類】
【出願日】平成18年3月7日(2006.3.7)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】
[ Back to top ]