(57)【要約】  【課題】  ネットワークに接続された機器の間で通信を行う環境において、部分的なアクセス制御を可能とする。  【解決手段】  コントロール装置（ＤＭＰ）２１からの要求に対し、利用者が設定したルールに基づき、サーバー装置（ＤＭＳ）２２からの応答を書き換える処理を実行する。  【選択図】  図１
2009188726.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続されたコントロール装置(21)およびサーバー装置(22)の間で通信を行う環境において、前記通信に際しアクセス制御を行う中継方法であって、少なくとも、
前記コントロール装置から前記サーバー装置へのアクセスが許可されているか否かを判断するステップ(S1403)と、
前記アクセスが許可されている場合に前記コントロール装置からの要求を受け取り、当該要求の内容が前記サーバー装置において許可されているか否かを判断するステップ(S1404)と、
前記要求の内容が許可されている場合に当該要求を前記サーバー装置へ送信し、前記サーバー装置からの応答を受信するステップ(S1406)と、
前記応答を前記コントロール装置へ中継する際に当該応答内容の一部を書き換える必要があるか否かを判断するステップ(S1407)と、
前記応答内容の一部を削除または書き換える必要がある場合に、予め設定されたアクセス制限ルール(26)を参照し当該削除または書き換えを実行するステップ(S1408)と、を含むことを特徴とするアクセス制御を行なう中継方法。
【請求項２】
前記コントロール装置から前記サーバー装置へのアクセスが許可されているか否かを判断するステップ(S1403)と、前記アクセスが許可されている場合に前記コントロール装置からの要求を受け取り、当該要求の内容が前記サーバー装置において許可されているか否かを判断するステップ(S1404)とが、同時または順次に行われるものである、請求項１記載のアクセス制御を行なう中継方法。
【請求項３】
前記要求の内容が前記サーバー装置において許可されているか否かを判断するステップ(S1404)、および、前記応答内容の一部を書き換える必要があるか否かを判断するステップ(S1407)において、前記それぞれの判断が、前記予め設定されたアクセス制限ルール(26)を参照して行われることを特徴とする請求項１または２記載のアクセス制御を行なう中継方法。
【請求項４】
前記予め設定されたアクセス制限ルール(26)が、ツリー構造を有するデータファイルにおいて、特定のリーフへのアクセスが可能か否かを規定するルールを任意に設定可能であること、を特徴とする請求項１乃至３のいずれかに記載のアクセス制御を行なう中継方法。
【請求項５】
前記予め設定されたアクセス制限ルールを参照し削除または書き換えを実行するステップ(S1408)が、
前記サーバー装置に格納されている階層構造を持つコンテンツのデータファイル一覧表を含む応答を読み取るステップと、
前記予め設定されたアクセス制限ルールにより、前記応答の当該要求元のコントロール装置に対して開示することが許されている部分のみからなる応答を生成するステップと、を含むことを特徴とする請求項１乃至４のいずれかに記載のアクセス制御を行う中継方法。
【請求項６】
前記コントロール装置(21)がＵＰｎＰ（Universal Plug and Play）に準拠したＤＭＰ（Digital Media Player）であり、前記サーバー装置(22)がＵＰｎＰに準拠したＤＭＳ（Digital Media Server）であることを特徴とする、請求項１乃至５のいずれかに記載のアクセス制御を行なう中継方法。
【請求項７】
前記応答を前記コントロール装置へ中継する際に当該応答内容の一部を書き換える必要があるか否かを判断するステップ(S1407)が、
当該応答の種別がNotifyまたはActionであるかを判別するステップ(S1601)と、
当該応答の種別がActionである場合(S1601：下方向)、当該応答に、前記アクセス制限ルールに該当するArgument要素が含まれているならば、前記応答内容の一部を書き換える必要があるか否かを判断するステップ(S1602)と、
当該応答の種別がNotifyである場合(S1601：左方向)、当該応答に、前記アクセス制限ルールに該当するState Variableが含まれているならば、前記応答内容の一部を書き換える必要があるか否かを判断するステップ(S1603)と、
を含むことを特徴とする請求項６記載のアクセス制御を行なう中継方法。
【請求項８】
前記予め設定されたアクセス制限ルールを参照し当該削除または書き換えを実行するステップ(S1408)が、
当該応答の種別がNotifyまたはActionであるかを判別するステップ(S1701)と、
当該応答の種別がActionである場合(S1701:下方向)、当該応答に、前記アクセス制限ルールに該当するArgument要素に一致するものが含まれており(S1709:YES)、且つ、前記アクセス制限ルールの記述がdenyである場合に(S1710:deny)、Actionに対する応答から前記Argument要素に合致するidで示された要素を削除するステップ(S1711)と、
当該応答の種別がNotifyである場合(S1701：左方向)、当該応答に、前記アクセス制限ルールに該当するState Variable要素に一致するものが含まれており(S1704:YES)、且つ、前記アクセス制限ルールの記述がdenyである場合に(S1705:deny)、Notifyに対する応答から前記アクセス制限ルールに該当するState Variable要素に合致するidで示された要素を削除するステップ(S1706)と、を含むことを特徴とする請求項６記載のアクセス制御を行なう中継方法。
【請求項９】
請求項１乃至８のいずれかに記載のアクセス制御を行う中継方法において、前記コントロール装置(54)と前記サーバー装置(55)とが、異なるネットワークに属する環境にあり、且つそれら同士(54、55)の通信に際しアクセス制御を行なう中継方法であって、
少なくとも、ＳＩＰサーバー(51)を用いて認証情報を交換するステップ(S1901)を含み、
さらに、異なるドメイン上のＵＰｎＰに準拠した機器としての前記コントロール装置(54)と前記サーバー装置(55)にそれぞれ対応した中継プログラム(52、53)間において、
前記コントロール装置に対応した中継プログラム(52)へＵＰｎＰ通信が送信された際に、認証情報を付加し(S2003)、前記サーバー装置に対応した中継プログラム(53)へ送信するステップ(S2004)と、
前記サーバー装置に対応した中継プログラム(53)がＵＰｎＰ通信を受信した際に、当該ＵＰｎＰ通信から認証情報を除去するステップ(S1905)と、
前記応答を前記コントロール装置へ中継する際に当該応答内容の一部を書き換える必要があるか否かを判断するステップ(S1907)と、
前記応答内容の一部を削除または書き換える必要がある場合に、予め設定されたアクセス制限ルールを参照し当該削除または書き換えを実行するステップ(S1908)と、を含むことを特徴とする、異なるネットワークに属する機器同士間でのアクセス制御を行なう中継方法。
【請求項１０】
前記予め設定されたアクセス制限ルールが、ツリー構造を有するデータファイルにおいて、特定のリーフへのアクセスが可能か否かを規定するルールを任意に設定可能であることを特徴とする、請求項９記載のアクセス制御を行なう中継方法。
【請求項１１】
前記応答を前記コントロール装置へ中継する際に当該応答内容の一部を書き換える必要があるか否かを判断するステップ(S1907)が、少なくとも、
当該応答の種別がNotifyまたはActionであるかを判別するステップ(S1601)と、
当該応答の種別がActionである場合(S1601:下方向)、当該応答に、前記アクセス制限ルールに該当するArgument要素が含まれているならば、前記応答内容の一部を書き換える必要があるか否かを判断するステップ(S1602)と、
当該応答の種別がNotifyである場合(S1601：左方向)、当該応答に、前記アクセス制限ルールに該当するState Variableが含まれているならば、前記応答内容の一部を書き換える必要があるか否かを判断するステップ(S1603)と、
を含むことを特徴とする、請求項９または１０記載のアクセス制御を行なう中継方法。
【請求項１２】
請求項９乃至１１のいずれかに記載のアクセス制御を行う中継方法において、少なくとも、
単一のブロードキャストドメインに属するサーバー装置を予め設定された時間間隔ごとに検出し、機器一覧情報を更新するステップ(S1801〜S1803)と、
異なるブロードキャストドメインから機器一覧の要求があった場合に(S1804)、要求元の中継プログラムが有する識別子と、各識別子ごとに設定されたアクセス制限ルールに基づき、前記機器一覧情報を制限するステップ(S1806〜S1808)と、
前記制限された機器一覧情報を要求元の中継プログラムへの応答として送信するステップ(S1809)と、を含むことを特徴とするアクセス制御を行なう中継方法。
【請求項１３】
前記アクセス制御を行うための中継手段を有する請求項１乃至１２のいずれかに記載のアクセス制御を行なう中継方法。
【請求項１４】
ネットワークに接続されたコントロール装置(21)およびサーバー装置(22)の間で通信を行う環境において、前記通信に際しアクセス制御を行なう中継装置であって、少なくとも、
前記コントロール装置から前記サーバー装置へのアクセスが許可されているか否かを判断する手段と、
前記アクセスが許可されている場合に前記コントロール装置からの要求を受け取り、当該要求の内容が前記サーバー装置において許可されているか否かを判断する手段と、
前記要求の内容が許可されている場合に当該要求を前記サーバー装置へ送信し、前記サーバー装置からの応答を受信する手段と、
前記応答を前記コントロール装置へ中継する際に当該応答内容の一部を書き換える必要があるか否かを判断する手段と、
前記応答内容の一部を削除または書き換える必要がある場合に、予め設定されたアクセス制限ルールを参照し当該削除または書き換えを実行する手段と、
を有することを特徴とするアクセス制御を行なう中継装置。
【請求項１５】
請求項９記載のアクセス制御を行う中継方法において、前記サーバー装置(55)とは異なるネットワーク環境に属するコントロール装置(54)の中継制御を行う中継装置であって、少なくとも、
サーバー装置(55)側へ鍵情報を要求・受信する手段と、
ＵＰｎＰ通信が送信された際に認証子と認証情報を付与して、サーバー装置(55)側へ送信する手段と、
サーバー装置(55)側の応答を受信する手段と、
前記受信した応答を前記コントロール装置(54)へ送信する手段と、を有する、コントロール装置のアクセス制御用中継装置。
【請求項１６】
請求項９記載のアクセス制御を行う中継方法において、前記コントロール装置(54)とは異なるネットワーク環境に属するサーバー装置(55)の中継制御を行う中継装置であって、少なくとも、
コントロール装置(54)側へ鍵情報を送信し、コントロール装置からの要求を受信する手段と、
前記受信した要求の認証情報が妥当かを判断する手段と、
前記認証情報は妥当であると判断した場合に、前記要求に付加されている識別子に基づき要求元ドメインを識別し、併せて、認証情報を取り除く手段と、
当該要求の内容が前記サーバー装置(55)側において許可されているか否かを判断する手段と、
前記応答を前記コントロール装置(54)側へ中継する際に当該応答内容の一部を書き換える必要があるか否かを判断する手段と、
前記応答内容の一部を削除または書き換える必要がある場合に、予め設定されたアクセス制限ルールを参照し当該削除または書き換えを実行する手段と、
を有する、サーバー装置のアクセス制御用中継装置。
【請求項１７】
パーソナルコンピュータ若しくはルータで構成される、または、家電機器、携帯端末機器のいずれかに搭載される、請求項１４乃至１６のいずれかに記載の中継装置。
【請求項１８】
ネットワークに接続されたコントロール装置(21)およびサーバー装置(22)の間で通信を行う環境において、前記通信に際し、コンピュータにアクセス制御を行わせるプログラムであって、少なくとも、前記コンピュータに、
前記コントロール装置から前記サーバー装置へのアクセスが許可されているかを判断するステップと(S1403)、
前記アクセスが許可されている場合に前記コントロール装置からの要求を受け取り、当該要求の内容が前記サーバー装置において許可されているか否かを判断するステップと(S1404)、
前記要求の内容が許可されている場合に当該要求を前記サーバー装置へ送信し、前記サーバー装置からの応答を受信するステップと(S1406)、
前記応答を前記コントロール装置へ中継する際に当該応答内容の一部を書き換える必要があるか否かを判断するステップと(S1407)、
前記応答内容の一部を削除または書き換える必要がある場合に、予め設定されたアクセス制限ルール(26)を読み出し、当該アクセス制限ルールを参照して、当該削除または書き換えを行うステップと(S1408)、
を実行させるためのアクセス制御用プログラム。
【請求項１９】
請求項９記載のアクセス制御を行う中継方法において、前記サーバー装置(55)とは異なるネットワーク環境に属するコントロール装置(54)の中継制御をコンピュータに行わせる中継プログラム(52)であって、
少なくとも、前記コンピュータに、
サーバー装置(55)側へ鍵情報を要求・受信するステップと(S2001)、
ＵＰｎＰ通信が送信された際に認証子と認証情報を付与して(S2003)、サーバー装置(55)側へ送信するステップと(S2004)、
サーバー装置(55)側からの応答を受信するステップと(S2005)、
前記受信した応答を前記コントロール装置(54)へ送信するステップと(S2006)、
を実行させるための、コントロール装置のアクセス制御用プログラム。
【請求項２０】
請求項９記載のアクセス制御を行う中継方法において、前記コントロール装置(54)とは異なるネットワーク環境に属するサーバー装置(55)の中継制御をコンピュータに行わせる中継プログラム(53)であって、
少なくとも、前記コンピュータに、
コントロール装置(54)側へ鍵情報を送信し(S1901)、コントロール装置側からの要求を受信するステップと（S1902）、
前記受信した要求の認証情報が妥当か否かを判断するステップと(S1903)、
前記認証情報は妥当であると判断した場合に、前記要求に付加されている識別子に基づき要求元ドメインを識別し、併せて、認証情報を取り除くステップと(S1905)、
当該要求の内容が前記サーバー装置(55)において許可されているか否かを判断するステップと(S1906)、
前記応答を前記コントロール装置(54)へ中継する際に当該応答内容の一部を書き換える必要があるか否かを判断するステップと(S1907)、
前記応答内容の一部を削除または書き換える必要がある場合に、予め設定されたアクセス制限ルールを参照し当該削除または書き換えを実行するステップと(S1908)、
を実行させるための、サーバー装置のアクセス制御用プログラム。
【請求項２１】
前記コンピュータが、パーソナルコンピュータである、または、ルータ、家電機器、携帯端末機器のいずれかに搭載されたマイクロコンピュータである、請求項１８乃至２０のいずれかに記載のアクセス制御用プログラム。
【請求項２２】
請求項１８乃至２１のいずれかに記載のプログラムが書き込まれた、コンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アクセス制御を行う中継方法、その方法を実行する中継装置、その方法をコンピュータに実行させるためのプログラム、およびそのプログラムが書き込まれた記録媒体に関する。
【０００２】
例えば、ネットワークを介して相互に接続された機器同士で通信を行う際に、その通信内容に関するアクセス制御を行うための技術に関する。より具体的に例示すれば、ＵＰｎＰ規格に準拠した家電機器間の通信を中継するに際し、ユーザ（利用者）等が設定したルールに基づき、通信内容の書き換えを行ったり、通信内容を選択的に中継するなどのアクセス制御技術に関する。
【背景技術】
【０００３】
ネットワークに接続して利用する家電機器は、製造元や利用するOperating System(ＯＳ)などが多種多様であることから、相互接続してデータ通信等を行うことが困難である。
この問題を解決するため近年では、ＡＶ機器を中心とした家電機器において、ＤＬＮＡ(Digital Living Network Alliance)ガイドラインに準拠した製品が、相互接続(通信)性の良さから注目されている。
【０００４】
ＤＬＮＡガイドラインは、家電機器の相互接続に用いる通信プロトコルを指定しており、例えば機器発見や機器へのコマンド送信などに使う通信プロトコルにはＵＰｎＰ(Universal Plug and Play)が指定されている。
ＵＰｎＰでは、家電機器(ＵＰｎＰ機器)が自動的にＩＰアドレス(Internet Protocol アドレス)を取得し、コントロール装置(本明細書において「ＤＭＰ」、「Digital Media Player」、「UPnP Control Point」、「プレイヤー」などとも言う)が、コンテンツを持つサーバー装置(本明細書において「ＤＭＳ」、「Digital Media Server」、「UPnP Device」、「Media Server」、「サーバー」などとも言う)を自動的に発見し、さらに、ＤＭＰがＤＭＳからコンテンツ一覧表を取得し、コンテンツを再生するまでの一連の処理を円滑に実行してくれる。
現在、ＤＬＮＡを中心としたホームネットワーク環境は、その範囲を単一（同一）の家庭内に限定しており、これらを家庭内若しくは屋外・外出先からの利用を可能なものに拡大することは、アプリケーションや各種のコンテンツの応用可能性を大きく広げると考えられている。
【０００５】
そこで、ホームネットワーク内の家電機器をインターネット経由で他のネットワークからも利用可能とする試みもなされている。
しかし、２つのネットワーク間を、ＶＰＮ(Virtual Private Network)で接続し、一方のネットワークの家電機器が、他方のネットワークの家電機器を自動的に発見しその制御を可能としたり、コンテンツ（例えば、映像、音声などのデータ）を視聴可能とした場合、ユーザが望まなくても、ＶＰＮ接続している他のホームネットワークのユーザに、自身の家電機器を勝手に制御されたり、その家電機器内の全てのコンテンツを視聴されてしまうとの問題がある(例えば、非特許文献１参照)。
【０００６】
一方、接続先のＤＭＰをＭａｃアドレスなどで識別し、当該ＤＭＰごとにアクセスの許可・不許可を設定する方法では、コンテンツ全体へのアクセスが拒否され、コンテンツを全く視聴できなくなってしまうとの問題がある(例えば、非特許文献２参照)。
【０００７】
このような問題は、同一のホームネットワーク内においても発生し得る。すなわち、ＤＭＳが有するコンテンツの一部のみについて、ＤＭＰからの視聴を可能とし、他のコンテンツについては視聴できないように部分的なアクセス制御を行なうことが、現在の技術では困難である。
【０００８】
【非特許文献１】HyunRyong Lee and JongWon Kim, “A Proxy-based Distibuted Approach for Reliable Content Sharing among UPnP-enabled Home Networks”, IEEE Pacific-rim Conference on Multimedia, November, 2005
【非特許文献２】Dong-Oh Kang; Kyuchang Kang; Sunggi Choi and Juenwoo Lee, “UPnP AV architectural multimedia system with a home gateway powered by the OSGi platform”,  IEEE Transactions on Consumer Electronics, vol.51, Issue 1, pp.87-93, Feb. 2005
【発明の開示】
【発明が解決しようとする課題】
【０００９】
本発明は、上記したような問題点に鑑みてなされたもので、ネットワークに接続されたコントロール装置、サーバー装置の間で通信を行う環境において、部分的なアクセス制御を可能にすることを目的とする。
【００１０】
例えば、ネットワークに接続されたコントロール装置からサーバー装置を遠隔操作する家電機器遠隔操作環境において、サーバー装置による制御を部分的に可能としたり、サーバー装置に格納された階層構造のコンテンツの一部のみを見せる、見せないなどの、部分的アクセス制御を可能にする技術の提供を目的とする。
より具体的には、コントロール装置からのアクセスに対して、サーバー装置内の見せたくない（見たくない）コンテナ、アイテムについて、部分的なアクセス制限を実現し、見える（見たい）コンテナ、アイテムのみからなるツリー構造として表示することを可能とする。
【００１１】
さらに本発明は、部分的アクセス制御を、アクセス元の特定のＤＭＰ(UPnP Control Point)に応じて、任意に変更可能とする技術の提供を目的とする。
【００１２】
さらに本発明は、アクセス制御機能を有しない従来のＵＰｎＰ機器またはＤＬＮＡ機器を改変することなく、部分的アクセス制御を導入することが可能な技術の提供を目的とする。
【００１３】
さらに本発明は、単一（同一）のブロードキャストドメイン内に限らず、異なる家庭内ネットワーク間（異なるブロードキャストドメイン間）で、機器の相互接続を可能とし、遠隔操作可能な環境を構築して任意のＤＭＳ(UPnP Device)を共有する場合、各接続ごとに、そのアクセス権限を制限することが可能な技術の提供を目的とする。
【００１４】
さらに本発明は、一旦ＵＰｎＰ機器間の接続が確立したのち、ＵＰｎＰ機器間で行なわれる通信に対してアクセス制限などの制御を実現可能とすることに起因する問題点、すなわち、相互接続の開始、終了の制御用にのみしか認証を行なっていなかった従来技術に比べ、セキュリティが向上する技術の提供を目的とする。
【００１５】
さらに本発明は、当該アクセス制御が、要求元の装置の識別子(ＳＩＰ−ＵＩＤ)ごとに、部分的アクセス制御の内容を、ユーザ（利用者）などが任意に設定可能な技術の提供を目的とする。
【課題を解決するための手段】
【００１６】
以上の目的を達成するために、本発明者らは、鋭意検討の後、ツリー状の階層構造を有するコンテンツが格納されたサーバー装置に対し、コントロール装置から直接アクセスすることを許さず、アクセス制御を行なう中継プログラムまたは中継装置を必ず経由する設定とするネットワーク構成とすることが、前述の課題に対し極めて有用であることを見出した。
そして、サーバー装置に対するアクセス要求があった場合に、利用者などが予め設定したアクセス制限ルールに基づき、サーバー装置からの応答のうち、見せたくないコンテナ、アイテムに該当する部分を、応答内容から、削除または書き換えることにより、部分的なアクセス制限を実現することが可能になる。さらに、当該技術は、既存のコントロール装置やサーバー装置に、機能改造を行わず、中継用プログラムを介在させるのみで実現可能であるとの知見に基づき、本発明を完成した。
すなわち、本明細書では、以下の発明を開示する。
【００１７】
本発明は、基本的には、ネットワークに接続されたコントロール装置(21)およびサーバー装置(22)の間で通信を行う環境において、前記通信に際しアクセス制御を行う中継技術である。
【００１８】
具体的には、例えば、ネットワークに接続されたコントロール装置(21)からサーバー装置(22)を遠隔操作する家電機器遠隔操作環境において、前記コントロール装置(21)と前記サーバー装置(22)との接続に際してアクセス制御を行なう技術に適応することができるが、このようなケースに限定されるものではない。
【００１９】
そして、本発明に係るアクセス制御を行う第一の中継方法は、少なくとも、
前記コントロール装置から前記サーバー装置へのアクセスが許可されているか否かを判断するステップ(S1403)と、
前記アクセスが許可されている場合に前記コントロール装置からの要求を受け取り、当該要求の内容が前記サーバー装置において許可されているか否かを判断するステップ(S1404)と、
前記要求の内容が許可されている場合に当該要求を前記サーバー装置へ送信し、前記サーバー装置からの応答を受信するステップ(S1406)と、
前記応答を前記コントロール装置へ中継する際に当該応答内容の一部を書き換える必要があるか否かを判断するステップ(S1407)と、
前記応答内容の一部を削除または書き換える必要がある場合に、予め設定されたアクセス制限ルールを参照し当該削除または書き換えを実行するステップ(S1408)と、
を含むことを要旨とする。
【００２０】
コントロール装置は、データの要求元であって、例えば、ＵＰｎＰ機器としてのＤＭＰをあげることができる。サーバー装置は、前記要求に応じたデータの提供（応答）元であって、例えば、ＵＰｎＰ機器としてのＤＭＳをあげることができる。
また、コントロール装置とサーバー装置の間でやりとりされる情報は、制御情報、画像・映像情報、音声情報などの、各種の情報を含む。
【００２１】
前記コントロール装置から前記サーバー装置へのアクセスが許可されているか否かを判断するステップ(S1403)と、前記アクセスが許可されている場合に前記コントロール装置からの要求を受け取り、当該要求の内容が前記サーバー装置において許可されているか否かを判断するステップ(S1404)とは、同時に行うようにしても良いし、順次行うものであっても良い。
【００２２】
前記要求の内容が前記サーバー装置において許可されているか否かを判断するステップ(S1404)、および、前記応答内容の一部を書き換える必要があるか否かを判断するステップ(S1407)において、前記それぞれの判断は、通常、前記予め設定されたアクセス制限ルールを参照して行われる。
【００２３】
また、前記予め設定されたアクセス制限ルールは、ツリー構造を有するデータファイルにおいて、特定のリーフへアクセス可能か否かを規定するルールを、ユーザ（利用者）などが任意に設定可能であることが好ましい。
【００２４】
本発明をＵＰｎＰに適応した場合、コントロール装置(21)をＵＰｎＰ(Universal Plug and Play)に準拠したＤＭＳ(Digital Media Server)とし、サーバー装置(22)をＵＰｎＰに準拠したＤＭＰ(Digital Media Player)とすることができる。
【００２５】
さらに、本発明に係る中継方法において、
前記応答を前記コントロール装置へ中継する際に当該応答内容の一部を書き換える必要があるか否かを判断するステップ(S1407)が、
当該応答の種別がNotifyまたはActionであるかを判別するステップ(S1601)と、
当該応答の種別がActionである場合(S1601:下方向)、当該応答に、前記アクセス制限ルールに該当するArgument要素が含まれているならば、前記応答内容の一部を書き換える必要があるか否かを判断するステップ(S1602)と、
当該応答の種別がNotifyである場合(S1601：左方向)、当該応答に、前記アクセス制限ルールに該当するState Variableが含まれているならば、前記応答内容の一部を書き換える必要があるか否かを判断するステップ(S1603)と、
を含むことが好ましい。
【００２６】
さらに、本発明に係る中継方法において、
前記予め設定されたアクセス制限ルールを参照し当該削除または書き換えを実行するステップ(S1408)が、
当該応答の種別がNotifyまたはActionであるかを判別するステップ(S1601)と、
当該応答の種別がActionである場合(S1701:下方向)、当該応答に、前記アクセス制限ルールに該当するArgument要素に一致するものが含まれており(S1709:YES)、且つ、前記アクセス制限ルールの記述がdenyである場合に(S1710:deny)、Actionに対する応答から前記Argument要素に合致するidで示された要素を削除するステップ(S1711)と、
当該応答の種別がNotifyである場合(S1701：左方向)、当該応答に、前記アクセス制限ルールに該当するState Variable要素に一致するものが含まれており(S1704:YES)、且つ、前記アクセス制限ルールの記述がdenyである場合に(S1705:deny)、Notifyに対する応答から前記アクセス制限ルールに該当するState Variable要素に合致するidで示された要素を削除するステップ(S1706)と、を含むことが好ましい。
【００２７】
また、本発明に係る第二の中継方法として、前記した第一の中継方法におけるコントロール装置(54)とサーバー装置(55)とが異なるネットワークに属する環境にあり、且つ、それら同士の通信に際しアクセス制御を行う中継方法であって、
少なくとも、ＳＩＰサーバー(51)を用いて認証情報を交換するステップ(S1901)を含み、
さらに、異なるドメイン上のＵＰｎＰに準拠した機器としての前記コントロール装置(54)とサーバー装置(55)にそれぞれ対応した中継プログラム(52、53)間において、
前記コントロール装置に対応した中継プログラム(52)へＵＰｎＰ通信が送信された際に、認証情報を付加し(S2003)、前記サーバー装置に対応した中継プログラム(53)へ送信するステップ(S2004)と、
前記サーバー装置に対応した中継プログラム(53)がＵＰｎＰ通信を受信した際に、当該ＵＰｎＰ通信から認証情報を除去するステップ(S1905)と、
前記応答を前記コントロール装置へ中継する際に当該応答内容の一部を書き換える必要があるか否かを判断するステップ(S1907)と、
前記応答内容の一部を削除または書き換える必要がある場合に、予め設定されたアクセス制限ルールを参照し当該削除または書き換えを実行するステップ(S1908)と、を含むことを特徴とする、異なるネットワークに属する機器同士間でのアクセス制御を行う中継方法をあげることができる。
【００２８】
ここで、異なるネットワークとしては、ユニキャストネットワーク、マルチキャストネットワーク、ブロードキャストネットワークなどの、各種のネットワークをあげることができる。
【００２９】
前記第二の中継方法において、前記予め設定されたアクセス制限ルールは、前記第一の中継方法と同様に、ツリー構造を有するデータファイルにおいて、特定のリーフへアクセス可能か否かを規定するルールを、ユーザ（利用者）などが任意に設定可能であるとすると良い。
【００３０】
また、前記第二の中継方法において、
前記応答を前記コントロール装置へ中継する際に当該応答内容の一部を書き換える必要があるか否かを判断するステップ(S1907)が、少なくとも、
当該応答の種別がNotifyまたはActionであるかを判別するステップ(S1601)と、
当該応答の種別がActionである場合(S1601:下方向)、当該応答に、前記アクセス制限ルールに該当するArgument要素が含まれているならば、前記応答内容の一部を書き換える必要があるか否かを判断するステップ(S1602)と、
当該応答の種別がNotifyである場合(S1601：左方向)、当該応答に、前記アクセス制限ルールに該当するState Variableが含まれているならば、前記応答内容の一部を書き換える必要があるか否かを判断するステップ(S1603)と、
を含むことが好ましい。
【００３１】
また、本発明に係る第三の中継方法として、前記した第二の中継方法において、少なくとも、
単一（同一）のブロードキャストドメインに属するサーバー装置を予め設定された時間間隔ごとに検出し、機器一覧情報を更新するステップ(S1801〜S1803)と、
異なるブロードキャストドメインから機器一覧の要求があった場合に(S1804)、要求元の中継プログラムが有する識別子と、各識別子ごとに設定されたアクセス制限ルールに基づき、前記機器一覧情報を制限するステップ(S1806〜S1808)と、
前記制限された機器一覧情報を要求元の中継プログラムへの応答として送信するステップ(S1809)と、
を含むことを特徴とする方法をあげることができる。
【００３２】
前記したそれぞれの中継方法において、前記アクセス制御を行うための中継手段を有すると良い。
【００３３】
さらに本発明に係る前記した第一の中継方法を実施する装置として、
ネットワークに接続されたコントロール装置(21)およびサーバー装置(22)の間で通信を行う環境において、前記通信に際しアクセス制御を行う中継装置であって、少なくとも、
前記コントロール装置から前記サーバー装置へのアクセスが許可されているか否かを判断する手段と、
前記アクセスが許可されている場合に前記コントロール装置からの要求を受け取り、当該要求の内容が前記サーバー装置において許可されているか否かを判断する手段と、
前記要求の内容が許可されている場合に当該要求を前記サーバー装置へ送信し、前記サーバー装置よりの応答を受信する手段と、
前記応答を前記コントロール装置へ中継する際に当該応答内容の一部を書き換える必要があるか否かを判断する手段と、
前記応答内容の一部を削除または書き換える必要がある場合に、予め設定されたアクセス制限ルールを参照し当該削除または書き換えを実行する手段と、
を有することを特徴とするアクセス制御用中継装置をあげることができる。
【００３４】
また、本発明に係る前記した第二の中継方法を実施する装置として、
前記コントロール装置(54)と前記サーバー装置(55)とが、異なるブロードキャストネットワークに属する環境にあり、且つそれら同士(54、55)の通信に際しアクセス制御を行なう中継装置であって、
少なくとも、ＳＩＰサーバー(51)を用いて認証情報を交換する手段を含み、
さらに、異なるブロードキャストドメイン上のＵＰｎＰに準拠した機器としての前記コントロール装置(54)と前記サーバー装置(55)にそれぞれ対応した中継プログラム(52、53)間において、
前記コントロール装置に対応した中継プログラム(52)へＵＰｎＰ通信が送信された際に、認証子と認証情報を付与し、前記サーバー装置に対応した中継プログラム(53)へ送信する手段と、
前記サーバー装置に対応した中継プログラム(53)がＵＰｎＰ通信を受信した際に、当該ＵＰｎＰ通信から認証子と認証情報を取り除き、前記サーバー装置(55)へ送信する手段と、
前記応答を前記コントロール装置へ中継する際に当該応答内容の一部を書き換える必要があるか否かを判断する手段と、
前記応答内容の一部を削除または書き換える必要がある場合に、予め設定されたアクセス制限ルールを参照し当該削除または書き換えを実行する手段と、
を有することを特徴とするアクセス制御用中継装置をあげることができる。
【００３５】
前記第二の中継装置は、コントロール装置側として機能するものと、サーバー装置側として機能するものとに分割することができる。
【００３６】
すなわち、サーバー装置(55)とは異なるネットワーク環境に属するコントロール装置(54)の中継制御を行う中継装置は、少なくとも、
サーバー装置(55)側へ鍵情報を要求・受信する手段と、
ＵＰｎＰ通信が送信された際に認証子と認証情報を付与して、サーバー装置(55)側へ送信する手段と、
サーバー装置(55)側の応答を受信する手段と、
前記受信した応答を前記コントロール装置(54)へ送信する手段と、を有する構成とすると良い。
【００３７】
コントロール装置(54)とは異なるネットワーク環境に属するサーバー装置(55)の中継制御を行う中継装置は、少なくとも、
コントロール装置(54)側へ鍵情報を送信し、コントロール装置からの要求を受信する手段と、
前記受信した要求の認証情報が妥当かを判断する手段と、
前記認証情報は妥当であると判断した場合に、前記要求に付加されている識別子に基づき要求元ドメインを識別し、併せて、認証情報を取り除く手段と、
当該要求の内容が前記サーバー装置(55)側において許可されているか否かを判断する手段と、
前記応答を前記コントロール装置(54)側へ中継する際に当該応答内容の一部を書き換える必要があるか否かを判断する手段と、
前記応答内容の一部を削除または書き換える必要がある場合に、予め設定されたアクセス制限ルールを参照し当該削除または書き換えを実行する手段と、
を有する構成とすると良い。
【００３８】
さらに本発明に係る前記した第三の中継方法を実施する装置として、少なくとも、
同一のブロードキャストドメインに属するサーバー装置を予め設定された時間間隔ごとに検出し、機器一覧情報を更新する手段と、
異なるブロードキャストドメインから機器一覧の要求があった場合に、要求元の中継プログラムが有する識別子と、各識別子ごとに設定されたアクセス制限ルールに基づき、前記機器一覧情報を制限する手段と、
前記制限された機器一覧情報を要求元の中継プログラムへの応答として送信する手段と、
を有することを特徴とするアクセス制御用中継装置をあげることができる。
【００３９】
前述したそれぞれの中継装置のより具体的な態様として、例えば、パーソナルコンピュータやルータで構成される装置、若しくは、前記した中継装置としての機能を併せ持った各種の家電機器、端末携帯機器（携帯電話を含む）などをあげることができる。
【００４０】
本発明に係る前記した第一の中継方法を実現するプログラム（第一のプログラム）として、
ネットワークに接続されたコントロール装置(21)およびサーバー装置(22)の間で通信を行う環境において、前記通信に際し、コンピュータにアクセス制御を行わせるプログラムであって、少なくとも、前記コンピュータに、
前記コントロール装置から前記サーバー装置へのアクセスが許可されているかを判断するステップと(S1403)、
前記アクセスが許可されている場合に前記コントロール装置からの要求を受け取り、当該要求の内容が前記サーバー装置において許可されているか否かを判断するステップと(S1404)、
前記要求の内容が許可されている場合に当該要求を前記サーバー装置へ送信し、前記サーバー装置からの応答を受信するステップと(S1406)、
前記応答を前記コントロール装置へ中継する際に当該応答内容の一部を書き換える必要があるか否かを判断するステップと(S1407)、
前記応答内容の一部を削除または書き換える必要がある場合に、予め設定されたアクセス制限ルールを読み出し、当該アクセス制限ルールを参照して、当該削除または書き換えを行うステップと(S1408)
を実行させるためのアクセス制御用プログラムをあげることができる。
【００４１】
前記した第一のプログラムにおいて、前記応答を前記コントロール装置へ中継する際に当該応答内容の一部を書き換える必要があるか否かを判断するステップ(S1407)が、
より具体的には、
当該応答の種別がNotifyまたはActionであるかを判別するステップと(S1601)、
当該応答の種別がActionである場合(S1601:下方向)、当該応答に、前記アクセス制限ルールに該当するArgument要素が含まれているならば、前記応答内容の一部を書き換える必要があるか否かを判断するステップと(S1602)、
当該応答の種別がNotifyである場合(S1601：左方向)、当該応答に、前記アクセス制限ルールに該当するState Variableが含まれているならば、前記応答内容の一部を書き換える必要があるかを判断するステップと(S1603)、を含むことが好ましい。
【００４２】
また、前記した第一のプログラムにおいて、前記予め設定されたアクセス制限ルールを参照し当該削除または書き換えするステップ(S1408)が、より具体的には、
当該応答の種別がNotifyまたはActionであるかを判別するステップ(S1601)と、
当該応答の種別がActionである場合(S1701:下方向)、当該応答に、前記アクセス制限ルールに該当するArgument要素に一致するものが含まれており (S1709:YES)、且つ、前記アクセス制限ルールの記述がdenyである場合に(S1710:deny)、Actionに対する応答から前記Argument要素に合致するidで示された要素をＣＰＵが削除するステップと (S1711)、
当該応答の種別がNotifyである場合(S1701：左方向)、当該応答に、前記アクセス制限ルールに該当するState Variable要素に一致するものが含まれており(S1704:YES)、且つ、前記アクセス制限ルールの記述がdenyである場合に(S1705:deny)、Notifyに対する応答から前記アクセス制限ルールに該当するState Variable要素に合致するidで示された要素を削除するステップと(S1706)、を含むことが好ましい。
【００４３】
本発明に係る前記した第二の中継方法を実現するプログラム（第二のプログラム）として、コントロール装置用、サーバー装置用の、以下の二つのプログラムをあげることができる。
【００４４】
すなわち、前記サーバー装置(55)とは異なるネットワーク環境に属するコントロール装置(54)の中継制御をコンピュータに行わせる中継プログラム(52)として、
少なくとも、前記コンピュータに、
サーバー装置(55)側へ鍵情報を要求・受信するステップと(S2001)、
ＵＰｎＰ通信が送信された際に認証子と認証情報を付与して(S2003)、サーバー装置へ送信するステップと(S2004)、
サーバー装置(55)側からの応答を受信するステップと(S2005)、
前記受信した応答を前記コントロール装置(54)へ送信するステップと(S2006)、を実行させるための、コントロール装置のアクセス制御用プログラムをあげることができる。
【００４５】
また、前記コントロール装置(54)とは異なるネットワーク環境に属するサーバー装置(55)の中継制御をコンピュータに行わせる中継プログラム(53)として、
少なくとも、前記コンピュータに、
コントロール装置(54)側へ鍵情報を送信し(S1901)、コントロール装置側からの要求を受信するステップと(S1902)、
前記受信した要求の認証情報が妥当か否かを判断するステップと(S1903)、
前記認証情報は妥当であると判断した場合に、前記要求に付加されている識別子に基づき要求元ドメインを識別し、併せて、認証情報を取り除くステップと(S1905)、
当該要求の内容が前記サーバー装置(55)において許可されているか否かを判断するステップと(S1906)、
前記応答を前記コントロール装置(54)へ中継する際に当該応答内容の一部を書き換える必要があるか否かを判断するステップと(S1907)、
前記応答内容の一部を削除または書き換える必要がある場合に、予め設定されたアクセス制限ルールを参照し当該削除または書き換えを実行するステップと(S1908)、を実行させるための、アクセス制御用プログラムをあげることができる。
【００４６】
本発明に係る前記した第三の中継方法を実現するプログラム（第三のプログラム）として、少なくとも、コンピュータに、
同一のブロードキャストドメインに属するサーバー装置を予め設定された時間間隔ごとに検出し、機器一覧情報を更新するステップと(S1801〜S1803)、
異なるブロードキャストドメインから機器一覧の要求があった場合に(S1804)、要求元の中継プログラムが有する識別子と、各識別子ごとに設定されたアクセス制限ルールに基づき、前記機器一覧情報を制限するステップと(S1806〜S1808)、
前記制限された機器一覧情報を要求元の中継プログラムへの応答として送信するステップと(S1809)、
を実行させるための、ブロードキャストネットワーク上のアクセス制御用プログラムをあげることができる。
【００４７】
前記した各プログラムを実行するコンピュータとは、例えば、汎用のパーソナルコンピュータ、または、ルータ、家電機器、携帯端末機器（携帯電話を含む）などに搭載されたマイクロコンピュータなどをあげることができる。
【００４８】
また、本発明は、前述したそれぞれのプログラムが書き込まれた、コンピュータ読み取り可能な記録媒体を包含する。
【発明の効果】
【００４９】
本発明によれば、ホームネットワーク環境などにおいて、アクセス制御機能を有しない従来のＵＰｎＰ機器またはＤＬＮＡ機器などを改変することなく、部分的アクセス制御を導入することが可能になる。
【００５０】
また、本発明によれば、部分的アクセス制御を、アクセス元の特定の機器（例えばＤＭＰ（UPnP Control Point））に応じて、任意に変更可能とすることができる。
【００５１】
さらに、本発明によれば、ネットワークに接続されたコントロール装置からサーバー装置を遠隔操作するホームネットワーク環境において、サーバー装置に格納された階層構造のコンテンツの一部のみを見せる、見せないとの部分的アクセス制御を可能とすることができる。
【００５２】
特に、本発明によれば、アクセスに対して見せたくない（見たくない）コンテナ、アイテムなどについて、部分的なアクセス制限を実現し、見える（見たい）コンテナ、アイテムのみからなるツリー構造として表示することが可能である。
【００５３】
さらに、本発明によれば、単一（同一）のブロードキャストドメイン内に限らず、異なるホームネットワーク環境間（異なるブロードキャストドメイン間）で遠隔接続したＵＰｎＰ機器を共有する場合、各接続ごとにそのアクセス権限を制限することが可能となる。
【００５４】
さらに、本発明によれば、一旦ＵＰｎＰ機器間の接続が確立したのち、そのＵＰｎＰ機器間で行なわれる通信に対し、アクセス制限などの制御を実現可能である。よって、相互接続の開始、終了の制御用にのみ認証を行なっていなかった従来技術に比べ、セキュリティが大幅に向上する。
【００５５】
さらに、本発明によれば、要求元の装置の識別子（ＳＩＰ−ＵＩＤ）ごとに部分的アクセス制御の内容を、ユーザが任意に設定可能とすることができるなど、多くの効果を奏する。
【発明を実施するための最良の形態】
【００５６】
以下、本発明の実施形態の例を図１〜図３１に基づいて説明する。
【００５７】
（第１の実施形態例）
図１は、アクセス制御を行なう第一の中継方法の実施形態例を示す概念図である。この例では、ネットワークに接続されたコントロール装置(例えば、ＤＭＰ；UPnP Control Point)と、サーバー装置(例えば、ＤＭＳ；UPnP Device)とが、単一（同一）のブロードキャストドメイン下に存在するホームネットワーク環境において、そのＤＭＰとＤＭＳ間でのアクセス制御を、「アクセス制御行なう中継プログラム」により実現する。
【００５８】
「アクセス制御をおこなう中継プログラム」(以下、単に「中継プログラム」、「プログラム」と言う場合もある)は、例えば汎用のパーソナルコンピュータにより実行される中継手段であり、そのパーソナルコンピュータが中継装置となる。
【００５９】
パーソナルコンピュータは、プログラムされた主制御部(制御手段、以下「ＣＰＵ」と略称する)、記憶装置としてのＲＯＭ、ＲＡＭなどから構成されている。また、ＣＰＵには、ＵＰｎＰ準拠のネットワーク家電機器と通信が可能なネットワークインタフェース、通信制御装置が接続されている。これら各構成要素により、前記プログラムを実行するための各手段（段落００３３乃至００３８で規定した前述の各手段）が生成、形成される。
【００６０】
なお、中継プログラムを実行する機器は、パーソナルコンピュータに限定されず、ルータ、ハブなどの専用の中継装置や、ＤＭＳ、ＤＭＰなどの機器に搭載されたマイクロコンピュータで構成しても良い。
【００６１】
ＣＰＵは、ＯＳ(Operating system)等の制御プログラム、本例の中継プログラム、および所要データを格納するための内部メモリなどを有し、これらのプログラム等により、本発明に係るアクセス制御機能を実現している。記憶装置は、ハードディスクやフレキシブルディスク、光ディスクなどのストレージ手段、あるいは読み書き可能な大容量半導体記憶装置により実現され、その内部あるいは前記内部メモリには、後述する、利用者(ユーザ)が設定したルール２６が記憶されている。
【００６２】
図２に、本例のアクセス制御を行う中継プログラムの概要を示す。一般に、ＵＰｎＰに準拠したＤＭＳ；UPnP Device(より具体的にはMedia Serverなど)はMACアドレスフィルタなどの接続を制限する機能が実装されていることが多く、そういったUPnP Deviceでは、ＤＭＰ；UPnP Control Pointからの接続を許可・否認することが、ＵＰｎＰ規格における従来のＤＭＳのみで、既に実現可能である。
【００６３】
本例では、当該接続の許可・否認の機能を利用して、特定のUPnP Control Point(ＤＭＰ)２１からの接続を拒否する。さらに、アクセス制御をおこなう中継プログラム２０を導入して、UPnP Device(ＤＭＳ)２２、UPnP Control Point(ＤＭＰ)２１間の接続を中継することにより、UPnP Control Point２１は、利用者が設定したルール２６に基づき、UPnP Device２２が提供するサービスまたはコンテンツへのアクセス制限を実現する。
【００６４】
アクセス制御を行う中継プログラム２０は、UPnP Deviceプロセス２３と、UPnP Control Pointプロセス２４と、アクセス制御プロセス２５と、利用者が設定したルール２６とを備える。
【００６５】
UPnP Deviceプロセス２３は、UPnP Control Point２１からのＵＰｎＰ規格でのＳＯＡＰやＧＥＮＡの要求メッセージを受け取り、これらメッセージへの応答を返すことにより、UPnP Control Point２１が、あたかもUPnP Device２２と直接通信を行なっているかのごとく動作する。
【００６６】
UPnP Control Pointプロセス２４は、UPnP Device２２へＵＰｎＰ規格でのＳＯＡＰやＧＥＮＡの要求メッセージを送出し、UPnP Device２２から返答されるこれらメッセージへの応答を受信することにより、UPnP Device２２があたかも、UPnP Control Point２１と直接通信を行なっているかのごとく動作する。
【００６７】
アクセス制限プロセス２５は、UPnP Device２２とUPnP Control Point２１の間の、ＳＯＡＰやＧＥＮＡなどのＵＰｎＰ規格に準拠した通信における、要求と応答を中継する際、それらの要求と応答を中継することが許可されているかどうかを、利用者が設定したルール２６に基づいて判断する。
【００６８】
具体的には、アクセス制限プロセス２５は、中継が許可されている場合は要求・応答をそのまま中継し、中継が許可されていない場合は中継を行わずそのメッセージ（要求）を破棄しつつ、ＵＰｎＰ要求が失敗したことを、UPnP Control Point２１に応答する。
また、応答内容の一部を変更することで通信が許可される場合は、当該メッセージの内容を一部削除または変更し中継するとの処理を行う。
【００６９】
なお、アクセス制限プロセス２５は、必要に応じて、中継プログラム２０による前記した中継とは別に、UPnP Device２２と直接、ＵＰｎＰ通信を行う。
【００７０】
利用者が設定したルール２６は、UPnP Device２２が有する以下の要素について、中継するか否かを設定できる。なお、本例では利用者が設定したルールとしたが、必ずしも利用者には限らない。
以下の説明での各用語は、ＵＰｎＰＴＭ Device Architecture, UPnP Forum, July 20 2006に規定されたものと同一の意味で用いる。
【００７１】
１；UPnP Deviceのdevice descriptionファイル内serviceタグで定義され、Service TypeもしくはService Idで識別されるServiceを利用可能とするか否か
２；UPnP Device のservice descriptionファイル内actionタグで定義され、actionタグ内nameタグで識別されるActionを利用可能とするか否か
３；UPnP Deviceのservice description ファイル内state Variableタグで定義され、state Variableタグ内nameタグによって識別されるState Variableを利用可能とするか否か
４；UPnP Deviceのservice descriptionファイル内argumentタグで定義され、argumentタグ内nameタグによって識別されるArgumentが示す値をどのように中継するか
なお、Argumentが示す値の中継については後に詳説する。
【００７２】
利用者が設定したルール２６は、Service、Action、State Variable、Argumentという要素について記述される。これらは図１０に示すように、ＵＰｎＰの定義のなかで、親子関係があり、ルールの設定もこの親子関係に従っており、いずれの要素についてルールを設定するにも、一番親の要素である“Service”の記述から始める。
【００７３】
利用者が設定したルール２６には、UPnP Device(ＤＭＳ)のすべての要素について記述がなくても構わない。仮に、ある要素について記述がない場合、親要素に適用されているルールがそのまま継承されることになる。また、“Service”要素の親には便宜的に“resources”要素が設定される。
【００７４】
図１１に示す例は、ServiceにContent Directory service と Connection Manager Serviceを持つＤＭＳについて記載されている。
ＤＭＰが直接接続している場合、ＤＭＳの持つこれらのすべてのサービスと、その中で提供されているAction、State Variablesを提供することが可能である。
【００７５】
図１２は、図１１に示したＤＭＳについて作成した利用者が設定したルール２６の一例である。
図１２のルールに明示的な記載がされていないServiceやAction 、State Variablesについては、すべてresources要素にあるacceptルールが適用されることになる。
当該例での利用者が設定したルールでは、図１３に示すように、単一ドメイン上のＤＭＰ１には、Browse ActionというＤＭＰからの要求に対し、中継プログラム２０を通して得られるファイル一覧に、映画コンテナが含まれないことになる。
【００７６】
次に、本例の動作について、図２および図１４を用いて説明する。
アクセス制御を行なう中継プログラム２０の動作が開始されると、当該プログラムの実行制御を行なうアクセス制御プロセス２５と、プログラム外部のUPnP Control Point ２１との通信を行うUPnP Deviceプロセス２３と、プログラム外部のUPnP Device２２との通信を行うUPnP Control Pointプロセス２４と、が生成される(S1401)。
【００７７】
UPnP Deviceプロセス２３は、UPnP Control Point（Control Point）２１から送信される要求を受信待ちし(S1402)、要求を受信した際は当該要求を送信したControl Pointを識別する(S1403）。当該識別は、送信された要求に付与された発信元を示すＭＡＣアドレス(Media Access Control Address)またはＩＰアドレス(Internet Protocol Address)を参照することで行なわれる。
【００７８】
UPnP Deviceプロセス２３は、前記要求を送信したControl Point２１がUPnP Device２２に対して要求することが許可されているかを判断する(S1404)。具体的には、要求先のUPnP Device２２のService、Action、State Variableについてアクセスすることが、要求元のControl Point２１に許可されているのかが判断される。
【００７９】
当該要求が許可されたものであれば(S1404：YES)、アクセス制御プロセス２５は、受信した要求を、UPnP Control Pointプロセス２４を介して、プログラム外部のUPnP Device２２へ送信する。そして、応答を待ち、UPnP Device２２からの送信を受信する(S1406)。
要求が許可されたものでなければ(S1404：NO)、アクセス制限プロセス２５は、要求元のControl Point２１へ、UPnP Deviceプロセス２３を介して要求失敗との応答を送信する(S1405)。
【００８０】
UPnP Deviceプロセス２３は、受信した応答の内容を書き換える必要があるか否かを、利用者が設定したルール２６を参照し判断する(S1407)。なお、ここでの処理の詳細は後述する。
【００８１】
応答内容を書き換えるまたはその一部を削除する必要がある場合には(S1407：YES)、応答の書き換えを行なう(S1408)。なお、ここでの処理の詳細も後述する。
【００８２】
次に、要求元のControl Point２１へ、UPnP Deviceプロセス２３を介して応答を送信する(S1409)。
中継プログラム２０は、ＣＰＵにより、以上の処理を繰り返し実行する。
【００８３】
図１５を用いて、図１４中の「要求先のserviceまたはactionまたはstateは要求元のControl Pointへ許可されているか」(S1404)に関する処理の詳細を説明する。
ここでのＵＰｎＰ要求は、具体的なAction、State Variable Query、Subscribe Requestのいずれかに該当する。要求を受けた中継プログラム２０、は要求の種別を判別する(S1501)。
【００８４】
要求の種別に対応して、それぞれの要求先は、Action、State Variable、Serviceのいずれかであるので、中継プログラム２０の中のアクセス制限プロセス２５は、利用者が設定したルール２６を参照して、これらの設定を読み出す(S1502、S1503、S1504)。
【００８５】
記述がない場合は、図１０で述べた親子関係に従って、順に親の記述を探す(S1503:ない、S1502:ない)。
いずれの場合であっても、一番親となる“resources”要素は必ず設定されているので、最終的に記述を見つけることができる(S1505)。
【００８６】
上記の探索により見つけられた記述が、acceptであるとき（S1501:Action）は、「要求先のserviceまたはactionまたはstateは要求元のControl Pointへ許可されているか」がＹＥＳと判断される(S1506：下方向)。一方、denyであるときは、「要求先のserviceまたはactionまたはstateは要求元のControl Pointへ許可されているか」はＮＯと判断される(S1506：左方向)。
【００８７】
なお、図１１乃至図１３に示した例において、ＤＭＳは、Search ActionをすべてのＤＭＰに対して禁止する記述が存在する。また、Browse Actionは、ルールの記述がないが、親要素Service要素のさらに親要素resourcesにacceptの記述があるので、Browse Actionはこれに従って、すべてのＤＭＰに対し許可されるとの動作となる。
【００８８】
図１６を用いて、図１４中の「応答を書き換える必要があるか」(S1407)の処理の詳細を説明する。
ＵＰｎＰ応答は、Actionへの応答、State Variable Queryへの応答、Subscribe Requestへの応答、Subscribeを受けて発行されたNotifyメッセージ、のいずれかの種類に該当する。
そのため、要求を受けた中継プログラム２０の中のアクセス制御プロセス２５は、当該要求の種類を判別する(S1601)。
【００８９】
Actionへの応答である場合(S1601：Actionに対応する応答)は、図１０に示したように、「利用者が設定したルール」にArgument要素への書き換えルールがあり、Actionへの応答のなかにルールに該当するArgument要素が含まれている場合、書き換えが必要と判断される(S1602：ある)。
【００９０】
State Variable Queryへの応答の場合(S1601：右側)、書き換えの必要はないと判断される（NO）。
【００９１】
Subscribe Requestへの応答の場合(S1601：右側)、書き換えの必要はないと判断される（NO）。
【００９２】
Subscribeを受けて発行されたNotifyメッセージの場合(S1601：Notifyメッセージ)、Notifyメッセージ中に、「利用者（ユーザ）が設定したルール」に記述されたState Variableが含まれているかどうかを判断し、含まれている場合、書き換えが必要と判断される（YES）。
【００９３】
以下、これらの応答の書き換え処理が、本例の特徴的な効果である、部分的なアクセス制御を実現していることについて説明する。
Actionは、ＤＭＰから送信されるコンテンツに対する操作（例えば、一覧表の表示、コンテンツの探索）の要求に対応する。
そして、当該Actionに対するＤＭＳから返答されるコンテンツの一覧表や検索結果一覧表は、Argumentとして含まれている。
また、コンテンツ一覧表は、Argumentの中でさらにitemとcontainerとして記述されている。
Argumentに対するルールでは、itemとcontainerのidと、acceptかdenyを記述すると、Argumentの内容からそれらのitemやcontainerを取り去る操作に相当する。
当該取り去る操作によって、図３、図４に示すような「映画フォルダは表示されないため当該フォルダ配下の具体的な映画にはアクセスできない」などの、階層（ツリー）管理されるコンテンツの部分的なアクセス制御を実現することが可能となる。
【００９４】
次に、図１７を用いて、図１４の「応答の書き換え」(S1408)の処理の詳細を説明する。
上述したように、利用者が設定したルール２６は、Service、Action、State Variable、Argumentという要素について記述されている。
これらのうち、書き換えに関係するのは、Argumentルールと、State Variableルールである。すなわち、書き換えが必要になり得るＵＰｎＰ応答は、「Notifyメッセージ」と「Actionに対する応答」である。
【００９５】
これらが入力されると、まず、「Notifyメッセージ」と「Actionに対する応答」のどちらであるかが判断される(S1701)。
この２つは、ユーザ（利用者）が設定したルールの中で、「State Variable」と「Argument」から、それぞれルールの適用を受ける。
【００９６】
Actionに対する応答である場合(S1701：Action)、ルールの中からArgument要素が一つ取り出され(S1708)、それが応答の中に含まれるか検索される(S1709)。
検索の結果、合致するArgument要素が応答の中に含まれていた場合(S1709：YES)で、且つ、ルールの記述がAcceptである場合は、応答メッセージは書き換えられない(S1710：accept)。一方、denyメッセージであった場合は、応答のなかから該当するArgument要素が削除される(S1711)。
【００９７】
これらの処理を処理すべきArgument要素がなくなるまで繰り返し、すべてについて処理が終わった時、メッセージの書き換えが完了する。
【００９８】
同様に、Notifyメッセージの場合（S1701：Notify）も、ルールの中からState Variable要素が一つとりだされ(S1703)、それが応答の中に含まれるか検索される(S1704)。
検索の結果、合致するState Variable要素が応答の中に含まれていた場合で、且つルールの記述がAcceptである場合、応答メッセージは書き換えられない(S1705：accept)。一方、denyメッセージであった場合は、応答のなかから該当するState Variable要素を消去する(S1706)。
【００９９】
これらの処理を、処理すべきState Variable要素がなくなるまで繰り返し、すべてについて処理が終わった時、メッセージの書き換えを完了する。
【０１００】
UPnP Device Control Protocolの一つであるUPnP AV Architectureが規定するMedia Server Device(ＤＭＳ)では、ツリー（階層）構造をとるメディアファイル一覧を、Browse Actionによってプレーヤ(ＤＭＰ)に送信する（図２１参照）。
【０１０１】
メディアファイル一覧には、個々のメディアファイルに対して、タイトル、出演者、フォーマット、メディアファイルの転送が可能なプロトコルの情報、などの情報が掲載されている（図２７参照）。
【０１０２】
プレーヤ(ＤＭＰ)は、Media Server(ＤＭＳ)からメディアファイルの再生を行うためには、上記メディアファイル一覧から情報を取得する必要がある（図２８参照）。
【０１０３】
これに対して、中継プログラム２０内で利用者の設定したルール２６に従い、プレーヤ(ＤＭＰ)に中継されるメディアファイル一覧から、特定のメディアファイルに関する情報の削除を行うことで，プレーヤ(ＤＭＰ)が特定のメディアファイルの再生を行うことができないようにする。
【０１０４】
特定のメディアファイルに関する情報の削除する機能の利用シーンを、図２１に示す。ユーザ（利用者）の設定したルール２６により、ＤＭＰ Ａに対して有料番組containerが提供されないとの機能を実現できる。
【０１０５】
また、中継プログラムによって、メディアファイル一覧のツリーの構造を変更して、特定の「葉」に到達できなくすることで、プレーヤ(ＤＭＰ)が特定のメディアファイルの再生を行うことができないようにする、との機能を実現できる。
【０１０６】
メディアファイル一覧のツリー構造を変更する機能の利用シーンを、図２２に示す。 ユーザの設定したルール２６により、ＤＭＰ Ａに対して、ルート（根）containerの直下にアニメContainerが配置される。これにより、他のContainerとitemに到達することができない、との機能を実現できる。
【０１０７】
なお、図１２で示したように、ユーザが設定したルール２６は，ＸＭＬファイルで記述されており，これらはＧＵＩを備えるプログラムによって出力されることを想定している。
【０１０８】
メディアファイル一覧のツリー構造を変更する機能の動作について、図２３のフローチャート、及び、図２４〜図３１を参照しながら、より具体的に説明する。
【０１０９】
中継プログラム２０はまず、図２５に示す「ユーザが設定したルール」を読み込む(S2301)。
ルールには、idにBrowseを持つ<Action>タグ があるので(S2302：YES)、プログラム２０は次に、ルールからidに０をもつcontainerタグを探し、<container id=“0”>を参照する(S2303)。
【０１１０】
<container id=“0”>タグのルールは、ＤＭＰＡに対してdenyであるから(S2304：NO)、プログラムは、図２９の要求を確認し、ObjectID 0に対するBrowse Direct Children要求であるかどうか判断し、そうであった場合(S2305：YES)、図２７にあるContainer要素をいったんすべて削除する(S2306)。
【０１１１】
次に、<container id=“0000007”>を読み込む(S2307)。
<container id=“0000007”>はＤＭＰ Ａに対してacceptとなっているので(S2308：YES)、中継プログラムはMedia PlayerにBrowse Actionを発行し、id=“0000007”の<container>の情報を得て(S2309)、応答に加え(S2310)、図２８のような出力を得る。
【０１１２】
中継プログラムは、これ以上処理するルールがないので、メッセージを送信し終了する(S2311)。
【０１１３】
図２１における、特定のメディアファイルに関する情報の削除する機能の利用シーンで使用される「ユーザが設定したルール」を、図２４に示す。
またこの例で示すtitleとcontainer idとの対応は表１の通りである。
【０１１４】
【表１】
2009188726.tif 000003
【０１１５】
図２４中の(２)で、ＤＭＰ ＡからＤＭＳに対して、Browseがあった場合、その応答から、idが有料番組であるcontainer要素を削除するルールが設定されている。
図２４中の(１)で、ＤＭＰ ＡからＤＭＳに対して、Search Action を禁止し、コンテンツ一覧からの検索を行わせないルールが設定されている。これによって、Browseアクション以外からの、有料番組containerへのアクセスを阻止している。
【０１１６】
図２２における、メディアファイル一覧のツリーの構造を変更する機能の利用シーンで使用される「ユーザが設定したルール」を、図２５に示す。
【０１１７】
図２５中の(2)で、ＤＭＰ ＡからＤＭＳに対して、ルート（根）containerへのBrowseがあった場合、その応答に、本来のroot containerの要素を中継しないルールが設定されている。
UPnP Media Serverでは、ルートコンテナのidは“0”であることが定められている。
【０１１８】
図２５中の(3)で、ＤＭＰ ＡからＤＭＳに対して、ルート（根）containerへのBrowseがあった場合、その応答にid＝“アニメ”のcontainerを追加するルールが設定されている。
【０１１９】
図２５中の(1)で、ＤＭＰ Ａに対して、Search Action を禁止し、コンテンツ一覧からの検索を行わせないルールの設定が設定されている。
これによって、Browseアクション以外からのアニメcontainer以外へのアクセスを阻止している。
【０１２０】
これらの処理を行うプログラムの処理手順を示したフローチャート図２３に基づき、以下に説明を加える。
【０１２１】
メディアファイルに関する情報の削除する機能の利用シーンにおける、ＤＭＰからのActionを図２６に示す。
メディアファイルに関する情報の削除する機能の利用シーンにおける書き換え前のAction応答を、図２７に示す。
メディアファイルに関する情報の削除する機能の利用シーンにおける書き換え後のAction応答を、図２８に示す。
【０１２２】
メディアファイルに関する情報の削除する機能の利用シーンにおいて、中継プログラムは、図２６に示すルールを読み込む。
ルールには、idにBrowseを持つ<Action>タグがあるので、中継プログラムは次にルールから、IDに０をもつContainerタグを探す。が、見つからないので，親要素<resources>タグのルールを参照する。
<resources>タグのルールは、すべてのユーザに向けてacceptであるから，次の<container id=“0000009”>を読み込む。
<container id=“0000009”>はＤＭＰ Ａに対してdenyとなっているので、プログラムは図２７にあるid=“0000009”のcontainerに該当する部分を削除して、図２８のように書き換える。
【０１２３】
プログラムはこれ以上処理するルールがないので、メッセージを送信し終了する。
【０１２４】
メディアファイル一覧のツリーの構造を変更する機能の利用シーンにおける、ＤＭＰからのActionを図２９に示す。
メディアファイル一覧のツリーの構造を変更する機能の利用シーンにおける、書き換え前のAction応答を、図３０に示す。
メディアファイル一覧のツリーの構造を変更する機能の利用シーンにおける、書き換え後のAction応答を、図３１に示す。
【０１２５】
（第２の実施形態例）
図５は、アクセス制御を行なう第二の中継方法の実施形態例を示す概略図である。
この例では、前述した第１の実施形態例の機能に加えて、アクセス制御を行う中継プログラムを通じて、異なるブロードキャストドメイン（以下、「異なるドメイン」ともいう）にあるＵＰｎＰ機器（５４、５５）の通信を中継する。
【０１２６】
すなわち、この例では従来、同一のホームドメイン上のみで行なわれるＤＭＳ(Digital Media Server)、ＤＭＰ(Digital Media Player)間の通信を、ＳＩＰ網に接続された他のホームネットワーク上に存在するアクセス制御を行なう中継プログラム同士（５２、５３）が協調して、コンテンツを共有する機能を提供し、異なるホームネットワークを相互に接続することを実現する。
【０１２７】
ＳＩＰ Server５１は、ＳＩＰのREGISTERリクエストによって、当該サーバーにＵＡ(User Agent)として登録された中継プログラム（５２、５３）の間で交わされるＳＩＰリクエストを中継する。
ここでＵＡとして登録される中継プログラムは、digest認証方式を用いて認証することで、中継されるＳＩＰリクエストの発信者の身元について一定の信頼性が確保できる。
【０１２８】
このとき、それぞれの中継プログラム（５２、５３）はＳＩＰ−ＵＩＤを識別子として持ち、ＳＩＰ Server５１の中継を経て、異なるドメインの中継プログラムと通信することができる。このＳＩＰ通信を使い、中継プログラムの間で共有鍵を作成する（図５中の「認証情報の交換 SIP通信」）。
【０１２９】
なお、複数の中継プログラム（５２，５３）を介してＵＰｎＰに準拠する装置（５４、５５）がコンテンツの共有を行なう際は、参加する中継プログラム（５２，５３）をグループとして管理するときに、識別子(ＳＩＰ−ＵＩＤ)とグループを対応づけるためにControl Panel（図示せず）というＳＩＰ Agentが使われることもある。
【０１３０】
共通鍵の作成方法は、一般的な規格として普及している「Diffie-Hellman鍵共有」(RFC 2539)を用いることで実現することもできる。
認証の方法は、一般的な規格として普及している「Digest認証」(RFC 2069)を用いることで実現することもできる。
またそれらの書式に、非営利国際コンソーシアムOASISのWeb Services Security (WSS) TCが定めるフォーマットに従って、本例の形態を実現することができる。
【０１３１】
ＳＩＰ Server５１の中継を経て認証情報の交換が完了した後、中継プログラム（５２、５３）相互間で、ＵＰｎＰ通信に、識別子のＳＩＰ‐ＵＩＤと共有鍵から生成した情報を、ＵＰｎＰ通信のヘッダに付与し（図５中の識別子(SIP‐UID)・認証を付与したＵＰｎＰ通信 SOAP GENA）、異なるドメインから発信されたＵＰｎＰ通信について識別と認証を行い、認証情報が正しくない場合は接続を拒否する。
【０１３２】
図６を用いて、異なるドメイン間の接続を行なう中継プログラムの処理の概要を説明する。
中継プログラムは、ＳＩＰの通信を行うプロセス（ＳＩＰ ＵＡ）（図６中の破線で囲まれたＳＩＰの部分）と、ＵＰｎＰ通信のアクセス制御をおこなう中継プロセスの部分（図６中の破線で囲まれたＳＯＡＰの部分およびＧＥＮＡの部分）に分けられる。
【０１３３】
中継プログラムは、まずＳＩＰ経路で、Diffie-Hellman鍵共有の方法で、共通鍵を生成する（図６中の破線で囲まれたＳＩＰの部分）。
その後、ＵＰｎＰ通信のアクセス制御を行う中継プロセスが異なるドメインとのＵＰｎＰ通信を行うとき（図６中の破線で囲まれたＳＯＡＰの部分およびＧＥＮＡの部分）は、ＳＯＡＰ、ＧＥＮＡそれぞれのヘッダに、
（１）ＳＩＰ‐ＵＲＩ(username)
（２）ｎｏｎｃｅ値（nonce）
（３）メッセージが作成された時点のタイムスタンプ（Created）
（４）username、nonce 、Created 、共有鍵を連節した文字列のハッシュ値（ハッシュ値は、SHA-1やMD4など一般的に使用されているハッシュ関数を用いて生成することができる）
の４つの値を付与する。
これら４つの値は、ＤＭＰ(UPnP Control Point)５４から発せられたＳＯＡＰリクエスト、あるいは、ＧＥＮＡ Subscribeリクエストに対して、ＤＭＰ側の中継プログラム５２が付与して、ＤＭＳ(UPnP Device)５５の側にある中継プログラム５３へ、ＵＰｎＰ通信される。
【０１３４】
中継プログラム５３は、受信したＵＰｎＰ通信から前記４つの値を削除した後、ＤＭＳ(UPnP Device)５５へ、ＳＯＡＰ、ＧＥＮＡ等のリクエスト本体を中継する。
ＳＩＰセッションの接続開始時のみならず、ＵＰｎＰ通信にも前記４つの値が付与されているので、セッション途中での不正な第三者の機器による「なりすまし」の危険性が減少する効果がある。
【０１３５】
中継プログラム（５２，５３）を介した相互接続を行なうことにより、ＤＭＰ(UPnP Control Point)５４とＤＭＳ(UPnP Device)５５との間の通信手順は、これら２つの装置が単一（同一）のホームネットワークに存在する場合と変わるところがないため、既存のＵＰｎＰ準拠のＤＭＳ、ＤＭＰに実装変更を加えることなく、安全な相互接続が実現される。
さらに、第１の実現形態例でも奏された、利用者が設定したルールに基づく応答内容の書き換えによる、柔軟なアクセス制御が実現可能である。
この例のフローチャートを図１９、図２０に示す。ステップの概要は、段落００４３乃至００４６の説明と重複するので省略する。
【０１３６】
（第３の実施形態例）
図７は、アクセス制御を行なう第三の中継方法の実施形態例を示す概略図である。
この例は、前述した第１および第２の実施形態例の機能に加えて、さらに、UPnP Deviceと同じブロードキャストドメインにある中継プログラムが、識別子ごとに利用者が設定したルールに基づき通信内容の書き換え、その通信を選択的に中継する。
【０１３７】
中継プログラムは、図１８に示す手順で、単一（同一）ブロードキャストドメイン（以下、「同一ドメイン」ともいう）のUPnP Deviceをすべて検出し、機器一覧情報としてまとめる。
異なるドメインにある中継プログラムから機器一覧情報を要求された場合、要求側の中継プログラムの持つ識別子と、識別子ごとにユーザによって設定されたルールに基づき、機器一覧情報を制限する。
【０１３８】
また、第１の実施形態で説明した方法によって、UPnP Deviceの中のサービスへのアクセスに制限されるが、その動作は、第２の実施形態例で説明した方法によって、異なるドメインからのＵＰｎＰ通信に付与された識別子および認証情報と、中継プログラムが持つ識別子ごとに、ユーザによって設定されたルールに基づいて判別される。
【０１３９】
第３の実施の形態の処理の概要を、図８、図９、図１８を参照して、以下に説明する。
UPnP Deviceの検出は、ＳＩＰ経路を通じて行われる。中継プログラムは、同じドメインにあるUPnP Device機器を検出し、一覧を作成する。
異なるドメインの中継プログラムから一覧の要求を受けた時に、要求側のＳＩＰ‐ＵＩＤを識別子として、ユーザによって識別子ごとに設定されたルールに基づいて、一覧の内容を制限する。
【０１４０】
中継プログラムは、UPnP Deviceと異なるドメインから、識別子と認証情報が付与されたＵＰｎＰ通信を受けた時、まず識別子と認証情報について正当性を審査する。
具体的には、メッセージに付与されたusername、nonce、Createdなどのヘッダとあらかじめ共有された鍵共有からダイジェストを作り、メッセージに付与されたダイジェストと同じとなること、そしてCreatedに示されたタイムスタンプが予め定められた許容時間内の最近のものであることを調査する。
機器の接続変更を容易に検出し、且つ、システムの効率的な運用を考慮し、当該許容時間は、３分乃至５分程度とすることが好適である。
【０１４１】
これらの情報内容が正当だと判断されたアクセスは、UPnP Deviceと、UPnP Control Pointの間の、ＳＯＡＰ、ＧＥＮＡ、ＵＰｎＰ通信の要求と応答を中継する際、それらの要求と応答を中継することが許可されているかどうかを、利用者が識別子ごとに設定したルールに基づいて判断し、
（１）許可されている場合はそのまま中継
（２）許可されていない場合は、中継プログラムは中継を行わず、そのメッセージを破棄し、ＵＰｎＰ要求が失敗したことをUPnP Control Pointに応答
（３）変更することで許可される場合は、メッセージを変更し、中継
という処理を行う。
必要に応じて、アクセスの中継を行うプログラムは、中継するＵＰｎＰ通信とは別に、UPnP Deviceと直接通信を行う。
【０１４２】
以上、本発明の実施形態の例を図面に基づいて説明したが、本発明は図示例や上述した各例に限定されるものではなく、特許請求範囲に記載された技術的思想の範疇において、種々の変更が可能であることは言うまでもない。
【産業上の利用可能性】
【０１４３】
本発明に係る、アクセス制御を行なう中継技術は、ホームネットワークやブロードキャストネットワーク、例えば、ＤＬＮＡ対応規格が導入された家庭、オフィス、事業所、教育機関などで用いられる、独立した製品として、または、他の規格に組み込むソフトウエアなどとして、好適に利用され得る。
【図面の簡単な説明】
【０１４４】
【図１】単一（同一）ブロードキャストドメイン下でのアクセス制御の構成例を示す概念図。
【図２】単一ブロードキャストドメイン下での中継プログラムの構成例を示す概念図。
【図３】コンテナ、アイテムへのアクセス許可、不許可の設定の一例を示す概念図。
【図４】コンテナ、アイテムへのアクセス許可、不許可の設定の一例を示す概念図。
【図５】異なるブロードキャストドメイン下でのアクセス制御の構成例を示す概念図。
【図６】異なるブロードキャストドメイン下での中継プログラム間の通信シーケンスの一例を示す図。
【図７】単一ブロードキャストドメイン下での機器一覧要求に対するアクセス制御の一例を示す概念図。
【図８】単一ブロードキャストドメイン下でのＵＰｎＰ通信の中継とアクセス制御の一例を示す概念図。
【図９】単一ブロードキャストドメイン下での、ＵＰｎＰ通信の中継とアクセス制御を行なう中継プログラムの構成例を示す概念図。
【図１０】利用者が設定したルールの親子関係を示す概念図。
【図１１】サーバー装置における、コンテンツディレクトリーサービスに格納されたファイル構造の概念図。
【図１２】利用者が設定したルールの記載例を示す図。
【図１３】ＤＭＰ１からのアクセス例を示す概念図。
【図１４】単一（同一）ドメインにある機器へのアクセス制御の動作の一例を示すフローチャート。
【図１５】図14の「要求元のControl Pointへ許可されているか」(S1404)の処理を詳細化した例のフローチャート。
【図１６】図14の「応答を書き換える必要があるか」(S1407)の処理を詳細化した例のフローチャート。
【図１７】図14の「応答の書き換え」(S1408)の処理を詳細化した例のフローチャート。
【図１８】機器一覧要求に対して制限する例のフローチャート。
【図１９】異なるドメインにある機器へのアクセス制御を行う例のＤＭＳ側のフローチャート。
【図２０】異なるドメインにある機器へのアクセス制御を行う例のＤＭＰ側のフローチャート。
【図２１】中継プログラムによる応答の書き替え前と書き換え後の例を示す概念図。
【図２２】中継プログラムによる実行結果の概念図。
【図２３】メディアファイル一覧のツリー構造を変更する例のフローチャート。
【図２４】メディアファイルに関する情報を削除する機能の「ユーザが設定したルール」の一例を示す概念図。
【図２５】メディアファイル一覧のツリーの構造を変更する機能の「ユーザが設定したルール」の一例を示す概念図。
【図２６】メディアファイルに関する情報の削除する機能の利用シーン（ＤＭＰからのAction）を示す概念図。
【図２７】メディアファイルに関する情報の削除する機能の利用シーン（書き換え前Action応答）を示す概念図。
【図２８】メディアファイルに関する情報の削除する機能の利用シーン（書き換え後Action応答）を示す概念図。
【図２９】メディアファイル一覧のツリー構造を変更する機能の利用シーン（ＤＭＰからのAction）を示す概念図。
【図３０】メディアファイル一覧のツリー構造を変更する機能の利用シーン（書き換え前Action応答）を示す概念図。
【図３１】メディアファイル一覧のツリー構造を変更する機能の利用シーン（書き換え後Action応答）を示す概念図。
【符号の説明】
【０１４５】
２０、９０：アクセス制御を行なう中継プログラム
２１、５４、６３：UPnP Control Point（ＤＭＰ）
２２、５５、６４、９２：UPnP Device（ＤＭＳ）
２３、９３：UPnP Deviceプロセス
２４、９４：UPnP Control Pointプロセス
２５、９５：アクセス制限プロセス
２６、９６：利用者が設定したルール
５１：SIP Server
５２、６１：アクセス制御を行なう中継プログラム（ＤＭＰ側）
５３、６２：アクセス制御を行なう中継プログラム（ＤＭＳ側）
【図１】
2009188726.tif 000004
【図２】
2009188726.tif 000005
【図３】
2009188726.tif 000006
【図４】
2009188726.tif 000007
【図５】
2009188726.tif 000008
【図６】
2009188726.tif 000009
【図７】
2009188726.tif 000010
【図８】
2009188726.tif 000011
【図９】
2009188726.tif 000012
【図１０】
2009188726.tif 000013
【図１１】
2009188726.tif 000014
【図１２】
2009188726.tif 000015
【図１３】
2009188726.tif 000016
【図１４】
2009188726.tif 000017
【図１５】
2009188726.tif 000018
【図１６】
2009188726.tif 000019
【図１７】
2009188726.tif 000020
【図１８】
2009188726.tif 000021
【図１９】
2009188726.tif 000022
【図２０】
2009188726.tif 000023
【図２１】
2009188726.tif 000024
【図２２】
2009188726.tif 000025
【図２３】
2009188726.tif 000026
【図２４】
2009188726.tif 000027
【図２５】
2009188726.tif 000028
【図２６】
2009188726.tif 000029
【図２７】
2009188726.tif 000030
【図２８】
2009188726.tif 000031
【図２９】
2009188726.tif 000032
【図３０】
2009188726.tif 000033
【図３１】
2009188726.tif 000034