(57)【要約】【課題】  ネットワークゾーンに応じてネットワーク接続へのアクセスを制御するシステムおよび方法。【解決手段】  コンピュータは、ネットワークゾーンごとに事前定義されたプロパティおよび／またはネットワークのプロパティに基づいてネットワークをゾーンに割り当てる。コンピュータにインストールされたアプリケーションプログラムは、ネットワークゾーンのネットワークポリシーまたはプロパティがそのアプリケーションプログラムに最も適したネットワークゾーンを示すプリファレンス情報をそのコンピュータに提供する。アプリケーションプログラムを実行すると、コンピュータはアプリケーションプログラムのネットワーク上の接触を、優先ネットワークゾーンとして識別されるか、またはアプリケーションプログラムからのプリファレンス情報による優先ネットワークプロパティによって識別されるネットワークゾーンに割り当てられたネットワークに限定する。【選択図】  図３
2004310774.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションプログラムから優先ネットワークゾーンを識別するプリファレンス情報を受け取ることと、
前記アプリケーションプログラムと前記優先ネットワークゾーンと関連付けられたネットワークとの間の接続を許可することと、
前記アプリケーションプログラムと前記優先ネットワークゾーンと関連付けられていないネットワークとの間の接続を防ぐことと
を行うように構成されたプロセッサ実行可能命令を備えたことを特徴とするプロセッサ可読媒体。
【請求項２】
複数のネットワークゾーンを定義することと、
前記ネットワークを前記優先ネットワークゾーンと関連付けることと
を行うように構成されたプロセッサ実行可能命令をさらに備えたことを特徴とする請求項１に記載のプロセッサ可読媒体。
【請求項３】
前記定義することは、ネットワークプロパティを各ネットワークゾーンと関連付けることをさらに備えたことを特徴とする請求項２に記載のプロセッサ可読媒体。
【請求項４】
前記関連付けることは、
前記ネットワークに接続することと、
前記ネットワークのネットワークプロパティを判定することと、
前記ネットワークプロパティに基づいて前記ネットワークを前記ネットワークゾーンに割り当てることと
をさらに備えたことを特徴とする請求項２に記載のプロセッサ可読媒体。
【請求項５】
前記アプリケーションプログラムを前記優先ネットワークゾーンと関連付けるように構成されたプロセッサ実行可能命令をさらに備えたことを特徴とする請求項１に記載のプロセッサ可読媒体。
【請求項６】
前記受け取ることは、前記アプリケーションプログラムのインストールを開始することをさらに備えたことを特徴とする請求項１に記載のプロセッサ可読媒体。
【請求項７】
前記接続を許可することは、
前記アプリケーションプログラムが前記優先ネットワークゾーンと関連付けられた前記ネットワークからの通信を受け付けることができるようにすることと、
前記アプリケーションプログラムが前記優先ネットワークゾーンと関連付けられた前記ネットワークへの通信を開始できるようにすることと、
をさらに備えたことを特徴とする請求項１に記載のプロセッサ可読媒体。
【請求項８】
前記接続を防ぐことは、
前記アプリケーションプログラムが前記優先ネットワークゾーンと関連付けられていない前記ネットワークからの通信を受け付けるのを防ぐことと、
前記アプリケーションプログラムが前記優先ネットワークゾーンと関連付けられていない前記ネットワークへの通信を開始するのを防ぐことと
をさらに備えたことを特徴とする請求項１に記載のプロセッサ可読媒体。
【請求項９】
各ネットワークゾーンは、異なるネットワークを表すことを特徴とする請求項２に記載のプロセッサ可読媒体。
【請求項１０】
各ネットワークゾーンは、
ホームネットワークと、
会社のネットワークと、
インターネットと
を備えるグループから選択されたネットワークを表すことを特徴とする請求項２に記載のプロセッサ可読媒体。
【請求項１１】
前記プリファレンス情報は、優先ネットワークプロパティを所有するネットワークに基づいて前記優先ネットワークゾーンを識別するために使用される前記優先ネットワークプロパティを備えたことを特徴とする請求項１に記載のプロセッサ可読媒体。
【請求項１２】
前記プリファレンス情報は、前記優先ネットワークゾーンをカスタムゾーンとして定義するプロパティおよび接続ポリシーを備えたことを特徴とする請求項１に記載のプロセッサ可読媒体。
【請求項１３】
第１のネットワークへの接続を認識することと、
前記第１のネットワークを第１のネットワークゾーンと関連付けることと、
優先ネットワークゾーンとして前記第１のネットワークゾーンを指定するアプリケーションプログラムについては前記第１のネットワークへのアクセスを許可することと、
優先ネットワークゾーンとして第２のネットワークゾーンを指定するアプリケーションプログラムについては前記第１のネットワークへのアクセスを防ぐことと
を行うように構成されたプロセッサ実行可能命令を含むことを特徴とするプロセッサ可読媒体。
【請求項１４】
前記関連付けることは、
前記第１のネットワークのネットワークプロパティを判定することと、
前記ネットワークプロパティに基づいて前記第１のネットワークを前記第１のネットワークゾーンに割り当てることと
をさらに備えたことを特徴とする請求項１３に記載のプロセッサ可読媒体。
【請求項１５】
第２のネットワークへの接続を認識することと、
前記第２のネットワークを前記第２のネットワークゾーンと関連付けることと、
優先ネットワークゾーンとして前記第２のネットワークゾーンを指定するアプリケーションプログラムについては前記第２のネットワークへのアクセスを許可することと、
優先ネットワークゾーンとして前記第１のネットワークゾーンを指定するアプリケーションプログラムについては前記第２のネットワークへのアクセスを防ぐことと
を行うように構成されたプロセッサ実行可能命令をさらに備えたことを特徴とする請求項１３に記載のプロセッサ可読媒体。
【請求項１６】
優先ネットワークゾーンとして前記第１のネットワークゾーンおよび前記第２のネットワークゾーンを指定するアプリケーションプログラムについては前記第１のネットワークおよび前記第２のネットワークへのアクセスを許可するように構成されたプロセッサ実行可能命令をさらに備えたことを特徴とする請求項１５に記載のプロセッサ可読媒体。
【請求項１７】
前記第１のネットワーク接続は、
ホームネットワーク接続と、
会社のネットワーク接続と、
インターネット接続と
を備えるグループから選択されることを特徴とする請求項１３に記載のプロセッサ可読媒体。
【請求項１８】
各ネットワークゾーンが異なるネットワーク接続ポリシーに対応するように複数のネットワークゾーンを定義することと、
あるアプリケーションプログラムの優先ネットワーク接続ポリシーを示すネットワークゾーンプリファレンスを前記アプリケーションプログラムから受け取ることと、
前記アプリケーションプログラムの実行中に前記ネットワークゾーンプリファレンスに従って前記優先ネットワーク接続ポリシーを施行することと
を行うように構成されたプロセッサ実行可能命令を備えたことを特徴とするプロセッサ可読媒体。
【請求項１９】
前記優先ネットワーク接続ポリシーはカスタムネットワーク接続ポリシーであり、前記プロセッサ可読媒体は、
前記アプリケーションプログラムから前記カスタムネットワーク接続ポリシーを定義する命令を受け取ることと、
前記アプリケーションプログラムの実行中に前記命令に従って前記カスタムネットワーク接続ポリシーを施行することと
を行うように構成されたプロセッサ実行可能命令をさらに備えたことを特徴とする請求項１８に記載のプロセッサ可読媒体。
【請求項２０】
アプリケーションプログラムから優先ネットワークゾーンを指定するプリファレンスを受け取ることと、
前記アプリケーションプログラムと前記優先ネットワークゾーンと関連付けられたネットワークとの間の接続を許可することと、
前記アプリケーションプログラムと前記優先ネットワークゾーンと関連付けられていないネットワークとの間の接続を防ぐことと
を備えることを特徴とする方法。
【請求項２１】
複数のネットワークゾーンを定義することと、
前記ネットワークを前記優先ネットワークゾーンと関連付けることと
をさらに備えたことを特徴とする請求項２０に記載の方法。
【請求項２２】
前記定義することは、ネットワークプロパティを各ネットワークゾーンと関連付けることをさらに備えたことを特徴とする請求項２１に記載の方法。
【請求項２３】
前記関連付けることは、
前記ネットワークに接続することと、
前記ネットワークのネットワークプロパティを判定することと、
前記ネットワークプロパティに基づいて前記ネットワークを前記ネットワークゾーンに割り当てることと
をさらに備えることを特徴とする請求項２１に記載の方法。
【請求項２４】
前記アプリケーションプログラムを前記優先ネットワークゾーンと関連付けることをさらに備えることを特徴とする請求項２０に記載の方法。
【請求項２５】
前記受け取ることは、前記アプリケーションプログラムのインストールを開始することをさらに備えることを特徴とする請求項２０に記載の方法。
【請求項２６】
前記接続を許可することは、
前記アプリケーションプログラムが前記優先ネットワークゾーンと関連付けられた前記ネットワークからの通信を受け付けることができるようにすることと、
前記アプリケーションプログラムが前記優先ネットワークゾーンと関連付けられた前記ネットワークへの通信を開始できるようにすることと、
をさらに備える含むことを特徴とする請求項２０に記載の方法。
【請求項２７】
前記接続を防ぐことは、
前記アプリケーションプログラムが前記優先ネットワークゾーンと関連付けられていない前記ネットワークからの通信を受け付けるのを防ぐことと、
前記アプリケーションプログラムが前記優先ネットワークゾーンと関連付けられていない前記ネットワークへの通信を開始するのを防ぐことと
をさらに備えることを特徴とする請求項２０に記載の方法。
【請求項２８】
各ネットワークゾーンは、異なるネットワークを表すことを特徴とする請求項２１に記載の方法。
【請求項２９】
各ネットワークゾーンは、
ホームネットワークと、
会社のネットワークと、
インターネットと
を備えるグループから選択されたネットワークを表すことを特徴とする請求項２１に記載の方法。
【請求項３０】
第１のネットワークへの接続を認識することと、
前記第１のネットワークを第１のネットワークゾーンと関連付けることと、
優先ネットワークゾーンとして前記第１のネットワークゾーンを指定するアプリケーションプログラムについては前記第１のネットワークへのアクセスを許可することと、
優先ネットワークゾーンとして第２のネットワークゾーンを指定するアプリケーションプログラムについては前記第１のネットワークへのアクセスを防ぐことと
を備えることを特徴とする方法。
【請求項３１】
前記関連付けることは、
前記第１のネットワークのネットワークプロパティを判定することと、
前記ネットワークプロパティに基づいて前記第１のネットワークを前記第１のネットワークゾーンに割り当てることと
をさらに備えることを特徴とする請求項３０に記載の方法。
【請求項３２】
第２のネットワークへの接続を認識することと、
前記第２のネットワークを前記第２のネットワークゾーンと関連付けることと、
優先ネットワークゾーンとして前記第２のネットワークゾーンを指定するアプリケーションプログラムについては前記第２のネットワークへのアクセスを許可することと、
優先ネットワークゾーンとして前記第１のネットワークゾーンを指定するアプリケーションプログラムについては前記第２のネットワークへのアクセスを防ぐことと
をさらに備えることを特徴とする請求項３０に記載の方法。
【請求項３３】
優先ネットワークゾーンとして前記第１のネットワークゾーンおよび前記第２のネットワークゾーンを指定するアプリケーションプログラムについては前記第１のネットワークおよび前記第２のネットワークへのアクセスを許可すること
をさらに備えることを特徴とする請求項３２に記載の方法。
【請求項３４】
前記第１のネットワーク接続は、
ホームネットワーク接続と、
会社のネットワーク接続と、
インターネット接続と
を備えるグループから選択されることを特徴とする請求項３０に記載の方法。
【請求項３５】
各ネットワークゾーンが異なるネットワーク接続ポリシーに対応するように複数のネットワークゾーンを定義することと、
あるアプリケーションプログラムの優先ネットワーク接続ポリシーを示すネットワークゾーンプリファレンスを前記アプリケーションプログラムから受け取ることと、
前記アプリケーションプログラムの実行中に前記ネットワークゾーンプリファレンスに従って前記優先ネットワーク接続を施行することと
を備えることを特徴とする方法。
【請求項３６】
前記優先ネットワーク接続ポリシーはカスタムネットワーク接続ポリシーであり、前記方法は、
前記アプリケーションプログラムから前記カスタムネットワーク接続ポリシーを定義する命令を受け取ることと、
前記アプリケーションプログラムの実行中に前記命令に従って前記カスタムネットワーク接続ポリシーを施行することと
をさらに備えることを特徴とする請求項３５に記載の方法。
【請求項３７】
プロセッサと、
メモリと、
前記メモリに格納され、前記プロセッサ上で実行可能なゾーンモジュールと、
前記ゾーンモジュールによってサポートされるネットワークゾーンと
を備えたコンピュータであって、
前記ゾーンモジュールは、アプリケーションからゾーンプリファレンスを受け取り、前記ゾーンプリファレンスに従って前記アプリケーションに前記ネットワークゾーンを施行するように構成されたことを特徴とするコンピュータ。
【請求項３８】
前記ネットワークゾーンはカスタムゾーンであり、前記ゾーンプリファレンスは前記カスタムゾーンのプロパティを定義する命令を含むことを特徴とする請求項３７に記載のコンピュータ。
【請求項３９】
ゾーンモジュールと、
前記ゾーンモジュールによって受け取られたゾーンプリファレンスと、
前記ゾーンプリファレンスによって指定された優先ネットワークゾーンと
を備えたコンピュータであって、
前記ゾーンモジュールは、アプリケーションプログラムと前記優先ネットワークゾーンに割り当てられていない任意のネットワークとの間の通信を防ぐように構成されたことを特徴とするコンピュータ。
【請求項４０】
前記ゾーンモジュールによって定義される複数のネットワークゾーンと、
前記ゾーンモジュールによって別個のネットワークゾーンにそれぞれ割り当てられる複数のネットワーク接続と
をさらに備えたことを特徴とする請求項３９に記載のコンピュータ。
【請求項４１】
前記優先ネットワークゾーンはカスタムゾーンであり、前記ゾーンプリファレンスは前記アプリケーションプログラムの通信ポリシーを定義する命令を備えたことを特徴とする請求項４０に記載のコンピュータ。
【請求項４２】
アプリケーションプログラムから優先ネットワークゾーンを指定するプリファレンスを受け取るための手段と、
前記アプリケーションプログラムと前記優先ネットワークゾーンと関連付けられたネットワークとの間の接続を許可するための手段と、
前記アプリケーションプログラムと前記優先ネットワークゾーンと関連付けられていないネットワークとの間の接続を防ぐための手段と
を備えたことを特徴とするコンピュータ。
【請求項４３】
複数のネットワークゾーンを定義するための手段と、
前記ネットワークを前記優先ネットワークゾーンと関連付けるための手段と
をさらに備えたことを特徴とする請求項４２に記載のコンピュータ。
【請求項４４】
前記定義するための手段はネットワークプロパティを各ネットワークゾーンと関連付けるための手段をさらに備えたことを特徴とする請求項４３に記載のコンピュータ。
【請求項４５】
前記関連付けるための手段は、
前記ネットワークに接続するための手段と、
前記ネットワークのネットワークプロパティを判定するための手段と、
前記ネットワークプロパティに基づいて前記ネットワークを前記ネットワークゾーンに割り当てるための手段と
をさらに備えたことを特徴とする請求項４３に記載のコンピュータ。
【請求項４６】
前記アプリケーションプログラムを前記優先ネットワークゾーンと関連付けるための手段をさらに備えたことを特徴とする請求項４２に記載のコンピュータ。
【請求項４７】
前記受け取るための手段は、前記アプリケーションプログラムのインストールを開始するための手段をさらに備えたことを特徴とする請求項４２に記載のコンピュータ。
【請求項４８】
前記接続を許可するための手段は、
前記アプリケーションプログラムが前記優先ネットワークゾーンと関連付けられた前記ネットワークからの通信を受け付けることができるようにするための手段と、
前記アプリケーションプログラムが前記優先ネットワークゾーンと関連付けられた前記ネットワークへの通信を開始することができるようにするための手段と
をさらに備えたことを特徴とする請求項４２に記載のコンピュータ。
【請求項４９】
前記接続を防ぐための手段は、
前記アプリケーションプログラムが前記優先ネットワークゾーンと関連付けられていない前記ネットワークからの通信を受け付けるのを防ぐための手段と、
前記アプリケーションプログラムが前記優先ネットワークゾーンと関連付けられていない前記ネットワークへの通信を開始するのを防ぐための手段と
をさらに備えたことを特徴とする請求項４２に記載のコンピュータ。
【請求項５０】
第１のネットワークへの接続を認識するための手段と、
前記第１のネットワークを第１のネットワークゾーンと関連付けるための手段と、
優先ネットワークゾーンとして前記第１のネットワークゾーンを指定するアプリケーションプログラムについては前記第１のネットワークへのアクセスを許可するための手段と、
優先ネットワークゾーンとして第２のネットワークゾーンを指定するアプリケーションプログラムについては前記第１のネットワークへのアクセスを防ぐための手段と
を備えたことを特徴とするコンピュータ。
【請求項５１】
前記関連付けるための手段は、
前記第１のネットワークのネットワークプロパティを判定するための手段と、
前記ネットワークプロパティに基づいて前記第１のネットワークを前記第１のネットワークゾーンに割り当てるための手段と
をさらに備えたことを特徴とする請求項５０に記載のコンピュータ。
【請求項５２】
第２のネットワークへの接続を認識するための手段と、
前記第２のネットワークを前記第２のネットワークゾーンと関連付けるための手段と、
優先ネットワークゾーンとして前記第２のネットワークゾーンを指定するアプリケーションプログラムについては前記第２のネットワークへのアクセスを許可するための手段と、
優先ネットワークゾーンとして前記第１のネットワークゾーンを指定するアプリケーションプログラムについては前記第２のネットワークへのアクセスを防ぐための手段と
をさらに備えたことを特徴とする請求項５０に記載のコンピュータ。
【請求項５３】
優先ネットワークゾーンとして前記第１のネットワークゾーンおよび前記第２のネットワークゾーンを指定するアプリケーションプログラムについては前記第１のネットワークおよび前記第２のネットワークへのアクセスを許可するための手段
をさらに備えたことを特徴とする請求項５２に記載のコンピュータ。
【請求項５４】
各ネットワークゾーンが異なるネットワーク接続ポリシーに対応するように複数のネットワークゾーンを定義するための手段と、
あるアプリケーションプログラムの優先ネットワーク接続ポリシーを示すネットワークゾーンプリファレンスを前記アプリケーションプログラムから受け取るための手段と、
前記アプリケーションプログラムの実行中に前記ネットワークゾーンプリファレンスに従って前記優先ネットワーク接続を施行するための手段と
をさらに備えたことを特徴とするコンピュータ。
【請求項５５】
前記優先ネットワーク接続ポリシーはカスタムネットワーク接続ポリシーであり、前記コンピュータは、
前記アプリケーションプログラムから前記カスタムネットワーク接続ポリシーを定義する命令を受け取るための手段と、
前記アプリケーションプログラムの実行中に前記命令に従って前記カスタムネットワーク接続ポリシーを施行するための手段と
をさらに備えたことを特徴とする請求項５４に記載のコンピュータ。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一般にコンピュータセキュリティに関し、より詳細には、事前定義されたネットワークゾーンを使用することによってコンピュータアプリケーションおよびデータが様々なプロパティのネットワークにさらされるのを制御することに関する。
【背景技術】
【０００２】
モバイルコンピューティング装置（ラップトップコンピュータ、携帯電話、ＰＤＡなど）、および接続方法（Ｅｔｈｅｒｎｅｔ（登録商標）、Ｗｉ−Ｆｉ、セルラー方式など）の普及によって、コンピューティング装置が１日のうちに様々なプロパティの複数のネットワークに接続され得るシナリオがもたらされている。例えば、ビジネスマンは、朝、出社前にホームネットワークでラップトップコンピュータを使用し、その後、午前中に職場で会社のネットワークに接続しながら同じラップトップコンピュータを使用する。次いでその日の午後に、同じラップトップコンピュータを出張に持って行き、例えば空港で、公共のＷｉ−Ｆｉ（「ｗｉｒｅｌｅｓｓ  ｆｉｄｅｌｉｔｙ」の略）ネットワークを介してインターネットに接続することができる。１日のうちの異なる時間に異なるプロパティを有するいくつかのネットワークに接続される可能性に加えて、こうしたモバイルコンピューティング装置はますます、同時に異なるいくつかのネットワークに接続されるようになりつつある。
【０００３】
いくつかのネットワーク環境（インターネットなど）にさらされることによって、モバイルコンピューティング装置が安全であると考えられている特定の静的なネットワーク環境（インターネットファイアウォールによって保護されているホームネットワーク環境など）で動作するように最初に構成されている場合、こうした装置に特定のリスクがもたらされる可能性がある。モバイルコンピュータ装置を異なるプロパティを有する様々なネットワークに接続するのは容易であり、それによってこうした装置が悪意のあるネットワーク環境において望ましくない接触に遭遇するリスクが増大している。
【０００４】
こうしたコンピュータのネットワークセキュリティを管理するための現在の方法は、一般に、コンピュータが接続される特定の静的なネットワークに適用されている。静的なネットワーク（ホームネットワークなど）上のコンピュータを保護するネットワークセキュリティの構成は、一般に、静的なネットワークのみと関連付けられているファイアウォールなどの「インターフェース」上に実装される。図１は代表的なネットワーク環境を示しており、安全なネットワーク環境（ホームネットワークなど）が安全ではないネットワーク環境（インターネットなど）からセキュリティ境界によって分離されている。セキュリティ境界は、ゲートウェイコンピュータ上で動作しているファイアウォールを表す。ファイアウォールは、ホームネットワーク（すなわち安全なネットワーク環境）上のコンピュータをインターネット上の装置との望ましくない接触から保護するように設計された特定のポリシーを施行するように構成することができる。このように、ホームネットワーク上のコンピュータがファイルを自由に共有できるよう構成しつつ、ファイアウォールがファイルの共有を求める外部から（すなわちインターネットから）の任意の要求を拒否するよう構成することができる。この構成は、ファイアウォールが適切に構成されている静的なネットワーク環境ではコンピュータを保護するよううまく働くことができる。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、安全な環境においてホームネットワーク上のファイアウォールによって施行されるセキュリティポリシーは、モバイルコンピュータがホームネットワーク環境から取り外され、例えば公共のＷｉ−Ｆｉネットワークを通じて、インターネットに接続されるときに、モバイルコンピュータとともには移動しない。そのため、モバイルコンピュータがホームネットワーク環境から持ち出されるたびに、コンピュータの特有のファイル共有ポリシーを手動で調整しない限り、モバイルコンピュータはインターネット上の他の装置による外部からのファイル要求または攻撃（ファイル消去など）の対象となる。こうしたモバイルコンピュータ上のアプリケーションおよびファイルが同様のリスクにさらされる可能性がある他の様々なシナリオおよび例が存在する。こうしたモバイルコンピュータのネットワークセキュリティを管理するための現在の方法の有効性は、コンピュータが安全な環境を提供するよう構成された静的なネットワークに接続されたままであるときにのみ最適化されている。
【０００６】
したがって、様々なプロパティを有する様々なネットワークに接続可能なモバイルコンピューティング装置を保護する方法が必要である。
【課題を解決するための手段】
【０００７】
ネットワークゾーンに応じてネットワーク接続へのアクセスを制御するシステムおよび方法を開示する。
【０００８】
一実施形態では、アプリケーションプログラムは、優先ネットワークゾーンを示すプリファレンス（ｐｒｅｆｅｒｅｎｃｅ）を提供する。そのアプリケーションプログラムと、優先ネットワークゾーンと関連付けられたネットワークとの間の接続が許可される。そのアプリケーションプログラムと、優先ネットワークゾーンと関連付けられていないネットワークとの間の接続は防止される。
【０００９】
同様の構成要素および特徴には、図面を通して同じ参照番号を付している。
【発明を実施するための最良の形態】
【００１０】
（概要）
以下の説明は、モバイルコンピュータ上の様々なアプリケーション、サービス、およびデータが様々なネットワークプロパティを有する様々なネットワークにさらされることを制御するためのシステムおよび方法を対象としている。コンピュータは、事前定義されたゾーンに対するプロパティおよびネットワークのプロパティに基づいてネットワークをネットワークゾーンに割り当てる。コンピュータは、事前定義された各ゾーンに対するプロパティおよびネットワークのプロパティに基づいて複数のネットワークを複数のネットワークゾーンに割り当てる。コンピュータにインストールされたアプリケーションプログラムは、ネットワークゾーンのネットワークポリシーまたはプロパティがそのアプリケーションプログラムに最適であるネットワークゾーンを示すプリファレンス情報をコンピュータに提供する。その後、アプリケーションプログラムの実行時に、コンピュータは、そのアプリケーションプログラムへのネットワーク上の接触を、アプリケーションプログラムからのプリファレンス情報によって、優先ネットワークゾーンとして識別されるか、または優先ネットワークプロパティによって識別されたネットワークゾーンに割り当てられたネットワークに限定する。
【００１１】
開示されたシステムおよび方法の利点は、ある期間にわたってまたは同時に様々なプロパティの異なるいくつかのネットワークに接続するモバイルコンピューティング装置に害を及ぼす可能性のあるネットワーク通信からの保護の向上を含む。さらに、コンピュータが接続されるネットワークに関係なく、コンピュータは様々なアプリケーションおよびサービスがサブスクライブ（ｓｕｂｓｃｒｉｂｅ）しているネットワークゾーンを絶えず施行ので、こうしたモバイルコンピュータ上にセキュリティ設定を構成する必要性が低減される。
【００１２】
（環境例）
図２は、ネットワークゾーンの使用および施行によってネットワーク通信を制御することができるモバイルコンピューティング装置の１つまたは複数の実装形態の実施に適したシステム環境２００の例を示している。環境２００は、一般にモバイルコンピューティング装置２０２（モバイルコンピュータ）、およびインターネット２０４、会社／企業のネットワーク２０６、およびホーム／住宅用ネットワーク２０８など様々なプロパティを有する１つまたは複数のネットワークを含む。
【００１３】
モバイルコンピュータ２０２は、インターネット２０４、会社のネットワーク２０６、およびホームネットワーク２０８など、様々なネットワークに接続することができる様々なコンピューティング装置として実装することができる。したがってモバイルコンピュータ２０２は一般に、例えばラップトップコンピュータ、ＰＤＡ（ｐｅｒｓｏｎａｌ  ｄｉｇｉｔａｌ  ａｓｓｉｓｔａｎｔ）、携帯電話など、物理的に移動可能なコンピューティング装置である。しかし、モバイルコンピュータ２０２を物理的に移動可能な装置に限定する意図はなく、したがってモバイルコンピュータ２０２には、他の様々な形態のパーソナルコンピュータ（ＰＣ）を含めてもよい。モバイルコンピュータ２０２のいくつかの実装では、一般に電子メール、予定表、タスク編成（ｔａｓｋ  ｏｒｇａｎｉｚａｔｉｏｎ）、ワードプロセッシング、Ｗｅｂのブラウジングなど一般のコンピューティング機能が行われる。記載した実施形態では、モバイルコンピュータ２０２は、Ｍｉｃｒｏｓｏｆｔ（登録商標）社のＷｉｎｄｏｗｓ（登録商標）ブランドのオペレーティングシステムなど、オープンプラットフォームのオペレーティングシステムを実行する。モバイルコンピュータ２０２の実装の一例については、図７を参照して以下で詳しく説明する。
【００１４】
モバイルコンピュータ２０２は、異なるときに、または同時に１つまたは複数のネットワークに接続するための種々のモードを使用することができる。図２のシステム環境２００の例は、モバイルコンピュータ２０２が１つまたは複数のネットワークに接続し得るいくつかの方法の例を示すものである。しかし、図２の環境２００は、例示したネットワーク接続がすべて必要であることを示すものではなく、また図２の環境２００は、モバイルコンピュータ２０２が例示したネットワーク接続に限定されることを示すものでもない。
【００１５】
したがって、モバイルコンピュータ２０２は、図２のシステム環境２００の例では、ＧＰＲＳ（Ｇｅｎｅｒａｌ  Ｐａｃｋｅｔ  Ｒａｄｉｏ  Ｓｅｒｖｉｃｅ）、ＵＭＴＳ（Ｕｎｉｖｅｒｓａｌ  Ｍｏｂｉｌｅ  Ｔｅｌｅｃｏｍｍｕｎｉｃａｔｉｏｎｓ  Ｓｙｓｔｅｍ）、ＷＡＰ（Ｗｉｒｅｌｅｓｓ  Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）、ＰＣＳ（ｐｅｒｓｏｎａｌ  ｃｏｍｍｕｎｉｃａｔｉｏｎｓ  ｓｅｒｖｉｃｅｓ）などの無線接続２１０を介してインターネット２０４に直接的に接続されるものとして示されている。また、モバイルコンピュータ２０２は、ホームネットワーク２０８を介してインターネットに間接的に接続されるものとして示されており、このホームネットワークは、ＮＡＴ（Ｎｅｔｗｏｒｋ  Ａｄｄｒｅｓｓ  Ｔｒａｎｓｌａｔｏｒ）または専用の住宅用ゲートウェイ装置を実装するホームコンピュータ２１２を含んでもよい。ＮＡＴは、ローカルエリアネットワーク（ＬＡＮ）が内部トラフィック用に１組のＩＰアドレスを使用し、外部トラフィック用に第２の組のアドレスを使用できるようにするインターネット標準である。ＬＡＮ（ホームネットワーク２０８など）がインターネットと出会うところに配置されたＮＡＴボックスは、必要なすべてのＩＰアドレスの変換を行う。ケーブルモデム２１４は、ホームコンピュータ２１２およびモバイルコンピュータ２０２など他のクライアントに対するＮＡＴホストまたはゲートウェイとして働く。
【００１６】
図２の環境２００では、モバイルコンピュータ２０２をホームネットワーク２０８に直接的に接続されるものとして示している。しかし、ホームネットワーク２０８は、無線ローカルエリアネットワーク（ＷＬＡＮ）、Ｗｉ−Ｆｉ（「ｗｉｒｅｌｅｓｓ  ｆｉｄｅｌｉｔｙ」の略）ネットワークでもよく、モバイルコンピュータ２０２は無線接続を介してホームネットワークに接続される。この点で、モバイルコンピュータ２０２は、ホームネットワーク２０８などのホームＷｉ−Ｆｉネットワークだけではなく、例えば喫茶店、国際空港などを含む様々な共通および公共の場所で遭遇した任意のＷｉ−Ｆｉを介して間接的にインターネットに接続することができる。Ｗｉ−Ｆｉは、電気電子技術者協会（ＩＥＥＥ）の８０２．１１ｂ仕様で指定されており、一連の無線仕様の一部である。上述したように、ホームネットワーク２０８は一般に、ＩＣＳおよびケーブルモデム２１４などのインターネット接続技術を備えるホームコンピュータ２１２を含む。
【００１７】
また、モバイルコンピュータ２０２は、図２に、ＶＰＮ（ｖｉｒｔｕａｌ  ｐｒｉｖａｔｅ  ｎｅｔｗｏｒｋ）サーバ２１６を介して会社のネットワーク２０６に間接的に接続されるものとして示されている。ＶＰＮは一般に、データをトランスポートするための媒体としてインターネット２０４を使用して作成される。したがって、上述したものなど、インターネットに接続する様々な方法は、ＶＰＮにも適用される。ＶＰＮシステムは、暗号化および他のセキュリティ機構を使用して、認可されたユーザが確実にネットワークにアクセスできるようにし、データを傍受できないようにする。
【００１８】
図２に示したホームネットワーク２０８、会社のネットワーク２０６、インターネット２０４は、例示のシステム環境２００におけるネットワークの例として含まれており、一般に当分野の技術者にはよく知られている。また、これらのネットワークは、本明細書で後述する実施形態のネットワークの例としても使用される。しかし、環境２００および後述する実施形態の例に適用することもできる他のネットワークの数または構成を限定する意図はない。
【００１９】
ホームネットワーク２０８は一般に、住宅内のローカルエリアネットワーク（ＬＡＮ）を形成するために相互接続された２つ以上のコンピュータ（ホームコンピュータ２１２、モバイルコンピュータ２０２など）を含む。ホームネットワーク２０８によって、コンピュータの所有者は、複数のコンピュータを相互接続することができ、その結果それぞれがファイル、プログラム、プリンタ、他の周辺装置、およびインターネットアクセスを（例えば住宅用ゲートウェイを介して）他のコンピュータと共有することができ、冗長な装置の必要性を低減する。例えば、ＣＤ−ＲＯＭドライブの付いてない以前のコンピュータは、最近のコンピュータのＣＤ−ＲＯＭにアクセスすることができ、これによって以前のコンピュータ用にＣＤ−ＲＯＭを購入する必要がなくなる。また、ホームネットワーク２０８を介したファイルの共有は、フロッピー（登録商標）ディスクなどのポータブルな記憶媒体を使用してファイルを様々なホームコンピュータに転送するよりも簡単である。有線接続および無線接続を使用する様々なタイプのホームネットワークがある。こうした接続には、例えば、直接ケーブル接続、従来のＥｔｈｅｒｎｅｔ（登録商標）、電話線ネットワーク、およびＲＦ（無線周波数）ネットワークなどがある。
【００２０】
しばしばイントラネットと呼ばれる会社または企業のネットワーク２０６は、一般に、より一般的な目的、相互接続される装置のタイプ、通信プロトコルの使用などによって、ホームネットワーク２０８とは区別される。例えば、ホームネットワークは、パーソナルコンピュータおよび周辺装置（プリンタ、スキャナなど）を相互接続してＬＡＮを形成し、ピアツーピア接続プロトコルを使用することができる一方、会社のネットワーク２０６は、通信にクライアント／サーバアーキテクチャを使用し、パーソナルコンピュータ、ワークステーション、サーバ、および周辺装置の相互接続を介してＬＡＮを形成することができる。会社のネットワーク２０６は、一般に、１つまたは複数のゲートウェイコンピュータを介した外部のインターネット２０４への接続を含む。ホームネットワーク同様、会社のネットワーク２０６は、例えば、直接ケーブル接続、従来のＥｔｈｅｒｎｅｔ（登録商標）、電話線ネットワーク、およびＲＦ（無線周波数）ネットワークなど、有線接続および無線接続を使用することができる。
【００２１】
一般に、インターネット２０４は、コンピュータネットワークの世界規模のシステムであり、任意の第１のコンピュータが適切な許可を有している場合、または任意の第２のコンピュータが適切にセキュリティ保護されていない場合、第１のコンピュータのユーザは、第２のコンピュータから情報を取得することができる。インターネット２０４は一般に、その基本通信言語またはプロトコルとしてＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）を使用することで区別することができる。ＴＣＰ／ＩＰによって、例えば、ＨＴＴＰ（Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）、ＳＭＴＰ（Ｓｉｍｐｌｅ  Ｍａｉｌ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）に依拠する電子メール、Ｕｓｅｎｅｔニュースグループ、インスタントメッセージング、およびＦＴＰ（Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）を使用するＷＷＷの使用を介した情報の共有が容易になる。これらおよび他のプロトコルは、ＴＣＰ／ＩＰと合わせて１つの「スウィート（ｓｕｉｔｅ）」としてまとめられることが多い。
【００２２】
以下でより詳しく説明するように、図２の環境２００の実施形態の例は、ネットワークゾーンの使用および施行を通して、モバイルコンピュータ２０２上のアプリケーションおよびサービスと、様々なネットワーク（ホームネットワーク２０８、会社のネットワーク２０６、インターネット２０４など）との間の通信および／または接触を制御するように構成されたモバイルコンピュータ２０２を実装する。一般に、このようにネットワーク通信を制御することによって、モバイルコンピュータ２０２およびその様々なアプリケーションおよびデータを、インターネット２０４など、未知および／または安全ではないネットワーク環境から開始される害を及ぼす可能性のある接触から保護する。
【００２３】
（実施形態の例）
図３は、様々なプロパティを有する様々なネットワーク（インターネット２０４、会社のネットワーク２０６、ホームネットワーク２０８など）とモバイルコンピュータ２０２上の様々なアプリケーションおよびデータとの間の通信を制御するように構成されたモバイルコンピュータ２０２の実施形態の例を表すブロック図である。一般に、ネットワーク接触／通信の制御は、ネットワークゾーンの使用および施行を通じて達成される。モバイルコンピュータ２０２は、図３の実施形態の例で、ラップトップＰＣ（パーソナルコンピュータ）２０２として実装される。
【００２４】
ラップトップＰＣ２０２は、プロセッサ３００、揮発性メモリ３０２（すなわちＲＡＭ）、および不揮発性メモリ３０４（ＲＯＭ、ハードディスク、フロッピー（登録商標）ディスク、ＣＤ−ＲＯＭなど）を含む。不揮発性メモリ３０４は一般に、コンピュータ／プロセッサ可読命令、データ構造、プログラムモジュール、およびＰＣ２０２の他のデータの記憶を提供する。ラップトップＰＣ２０２の実装の一例については、図７を参照して以下でより詳しく説明する。
【００２５】
ラップトップＰＣ２０２は、プロセッサ３００上で揮発性メモリ３０２からのオペレーティングシステム（ＯＳ）３０６を実装する。ＯＳ３０６は、メモリ３０４に格納されており、最初にブートプログラム（図示せず）によってメモリ３０４から揮発性メモリ３０２にロードされる。同様にメモリ３０４に格納されており、プロセッサ３００上で揮発性メモリ３０２から実行可能な他のアプリケーションプログラム３０８を管理するようＯＳ３０６は一般に構成される。ＯＳ３０６は、事前定義されたアプリケーションプログラムインターフェース（ＡＰＩ）を通じて、アプリケーションプログラム３０８によるサービス要求に応じる。より具体的には、ＯＳ３０６は一般に、複数のアプリケーション３０８がプロセッサ３００上で実行される順序、およびアプリケーション３０８ごとに割り当てられた実行時間を判定したり、複数のアプリケーション３０８間でのメモリ３０２の共有を管理したり、接続されたハードウェア装置（ハードディスク、プリンタ、ダイヤルアップポートなど）との入出力の処理を行ったりする。さらにユーザは、一般に、コマンド言語やグラフィカルユーザインターフェースなどのユーザインターフェースを通じてＯＳ３０６と直接的に対話することができる。
【００２６】
ラップトップＰＣ２０２は一般に、メモリ３０４に格納され、プロセッサ３００上で実行可能な様々なアプリケーション３０８を実装する。こうしたアプリケーション３０８は、例えば、ワードプロセッサ、表計算（ｓｐｒｅａｄ  ｓｈｅｅｔｓ）、ブラウザ、ファイル共有プログラム、データベース管理システム（ＤＢＭＳ）、ピアツーピアアプリケーション、マルチメディアプレーヤー、コンピュータ支援設計ツールなどを実施するソフトウェアプログラムを含む可能性がある。
【００２７】
図３の実施形態では、ラップトップＰＣ２０２上のＯＳ３０６は、ゾーンモジュール３１０を含むものとして示されており、アプリケーション３０８は、ゾーンプリファレンスモジュール３１２を含むものとして示されている。ゾーンモジュール３１０は、いくつかのネットワークゾーンをサポートおよび／または定義するよう構成されており、ネットワークゾーンのそれぞれは、モバイルラップトップＰＣ２０２が接続される可能性のある特定のネットワークと一致する１組のネットワークプロパティおよびポリシーを組み込んでいる。図３の上記の実施形態では、特定のネットワークは、インターネット２０４、会社のネットワーク２０６、およびホームネットワーク２０８を含む。しかし、上記で示したように、例示したネットワークは、本実施形態および他の実施形態に適用可能な任意のネットワークの範囲を限定するものではない。
【００２８】
ゾーンモジュール３１０は、各ゾーンが組み込んでいるいくつかのネットワークプロパティおよび施行ポリシーに従って互いに区別される複数のネットワークゾーンを備える。ラップトップＰＣ２０２がネットワーク接続を確立すると、ゾーンモジュール３１０は、ネットワークのプロパティを判定し、ネットワークゾーン自体に組み込まれたプロパティがそのネットワークプロパティに対応する特定のネットワークゾーンにネットワークを割り当てる。例えば、ラップトップＰＣ２０２がホームネットワーク２０８に接続されると、ホームネットワーク２０８は、ホームネットワーク２０８のプロパティを組み込んでいるか、または具体化しているネットワークゾーンに割り当てられることになる。ホームネットワーク２０８の場合、一般に、ネットワークプロパティを、例えばパスワードの必要なくファイル共有を許可するポリシーなど、より自由なセキュリティポリシーを有するネットワークゾーンと関連付けることができる。図４および５に関して後述するように、一般に、ゾーンモジュール３１０によってサポートされる各ネットワークゾーンは、それと関連付けられるか、またはそれに割り当てられる単一のネットワークを有する。
【００２９】
また、ラップトップＰＣ２０２に接続されたネットワークのネットワークプロパティを判定し、そのネットワークプロパティに従ってネットワークを適切なネットワークゾーンに割り当てることに加えて、ゾーンモジュール３１０は、アプリケーション３０８によって示されるゾーンプリファレンスに従って、アプリケーション３０８を特定のネットワークゾーンに割り当てる。したがって、図４に示すように、アプリケーション３０８は、アプリケーション３０８によってゾーンモジュール３１０に提供されるネットワークゾーンプリファレンスに基づいて特定のネットワークゾーン４００に割り当てられる。
【００３０】
より詳細には、図４では、ＰＣ２０２上の異なる４つのアプリケーション３０８（１〜４）が、ゾーンモジュール３１０によってサポートされている異なる３つのネットワークゾーン４００（すなわちゾーン１、４００（１）、ゾーン２、４００（２）、ゾーン３、４００（３））にどのように割り当てられるかを示すことによって、アプリケーション３０８のネットワークゾーン４００への割当の概念を説明している。図４は、部分的に、アプリケーション３０８をどのように単一のネットワークゾーン４００または同時に多数のネットワークゾーン４００に割り当てることができるかを示すためのものである。すなわち、アプリケーション１（３０８（１））、アプリケーション２（３０８（２））、およびアプリケーション３（３０８（３））はそれぞれゾーン１（４００（１））、ゾーン２（４００（２））、およびゾーン３（４００（３））に割り当てられており、アプリケーション４（３０８（４））は同時に３つのゾーン４００（１、２、３）すべてに割り当てられている。図４および図５（後述）およびそれに付随する説明は、３つのゾーン４００（すなわちゾーン１、４００（１）、ゾーン２、４００（２）、ゾーン３、４００（３））をサポートするゾーンモジュール３１０を示すが、ゾーン４００の数を３つのゾーンに限定する意図はないことに注意されたい。したがって、ゾーンモジュール３１０は、追加のゾーン４００をサポートすることができ、それぞれがラップトップＰＣ２０２に接続されるか、または接続可能な特定のネットワークと関連付けられる。
【００３１】
アプリケーション３０８は、ネットワークゾーン４００に対するプリファレンスをゾーンプリファレンスモジュール３１２を介して伝達する。ゾーンプリファレンスモジュール３１２は一般に、アプリケーション３０８の設計時にゾーンプリファレンス情報とともに埋め込まれるか、またはプログラムされる。したがって、アプリケーション３０８をラップトップＰＣ２０２にインストールすると、ゾーンプリファレンスモジュール３１２は、ゾーンプリファレンス情報をＯＳ３０６のゾーンモジュール３１０に伝達することができる。しかし、ゾーンプリファレンスモジュール３１２によって、ユーザがゾーンプリファレンスを指示するようにすることもできる。こうしたシナリオでは、アプリケーション３０８のラップトップＰＣ２０２へのインストール中に、ゾーンプリファレンスモジュール３１２は、ユーザがアプリケーション３０８に対する１つまたは複数のネットワークゾーンプリファレンスを指定することができるユーザインターフェース（グラフィカルユーザインターフェースまたはコマンドラインインターフェースなど）をＰＣ２０２上に生成することができる。次いでゾーンプリファレンスは、ＯＳ３０６のゾーンモジュール３１０に伝達される。
【００３２】
ゾーンモジュール３１０がアプリケーション３０８から受信したネットワークゾーンプリファレンスに従ってアプリケーション３０８をネットワークゾーン４００に割り当てると、ゾーンモジュール３１０は、その後、アプリケーション３０８に対してゾーン４００のポリシーを施行する。したがって、ゾーンモジュール３１０は、アプリケーション３０８へのネットワーク上の接触を、アプリケーション３０８が優先ネットワークゾーンとして指定したネットワークゾーンと関連付けられたネットワークのみに限定する。ラップトップＰＣ２０２は、同時に様々なネットワークに接続することができ、しかもＰＣ２０２上で動作しているアプリケーション３０８が「見る」ことができる、つまり通信することができるのは、アプリケーション３０８の優先ネットワークゾーン４００と関連付けられたこうしたネットワークのみである。
【００３３】
別の実施形態では、アプリケーション３０８は、ゾーンプリファレンスモジュール３１２を介してカスタムネットワーク接続ポリシーを伝達することができる。この実施形態では、ゾーンプリファレンスモジュール３１２は、アプリケーション３０８のネットワーク接続を定義する特定の通信命令とともに埋め込まれる／プログラムされる。命令には、例えばアプリケーション３０８が通信できるインターネット上の特定のロケーションなどが含まれる。したがって、アプリケーション３０８をラップトップＰＣ２０２にインストールすると、ゾーンプリファレンスモジュール３１２は、命令をＯＳ３０６のゾーンモジュール３１０に伝達する。ゾーンモジュール３１０は、この命令を使用して、カスタムゾーンを事実上定義し、アプリケーション３０８をそのゾーンに割り当てる。その後、ゾーンモジュール３１０は、アプリケーション３０８から受信した特定の命令に従ってカスタムゾーンのポリシーを施行する。施行は一般に、アプリケーション３０８へのネットワーク上の接触を、アプリケーション３０８から受け取った命令に示されているネットワークロケーションに限定することを含む。したがって、ラップトップＰＣ２０２は、同時に様々なネットワークに接続され、様々なネットワークロケーションにアクセスすることはできるが、アプリケーション３０８が「見る」ことができる、つまり通信することができるのは、アプリケーション３０８から受け取った命令に示されているこうしたネットワークロケーションのみである。
【００３４】
図５は、モバイルラップトップＰＣ２０２上で動作するアプリケーション３０８とＰＣ２０２に接続される様々なネットワークとの間の通信を制御するために、上記のものなど一実施形態で実施されるネットワークゾーン４００がどのように使用することができるかを示すより具体的な例を示している。図５の例は、ラップトップＰＣ２０２が同時に様々なプロパティの３つのネットワークに接続されていることを示すものである。ＰＣ２０２が接続されているネットワークは、ホームネットワーク２０８、会社のネットワーク２０６、およびインターネット２０４である。各ネットワークは、（すなわちゾーンモジュール３１０を介して）ネットワークのプロパティに基づいて特定のネットワークゾーン４００に割り当てられ、または関連付けられている。したがって、ホームネットワーク２０８はゾーン１（４００（１））に割り当てられ、会社のネットワーク２０６はゾーン２（４００（２））に割り当てられ、インターネット２０４はゾーン３（４００（３））に割り当てられている。特定のゾーン４００を優先ゾーンとして指定するアプリケーション３０８は、その特定のゾーン４００のポリシーに従うことになる。
【００３５】
図５のラップトップＰＣ２０２上に示すアプリケーション３０８は、ファイル共有アプリケーション３０８（１）、ＳＱＬサーバアプリケーション３０８（２）、ピアツーピア（Ｐ２Ｐ）アプリケーション３０８（３）、ブラウザ（Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒなど）アプリケーション３０８（４）を含む。各アプリケーション３０８は、（ＰＣ２０２へのインストール中などに）ゾーンモジュール３１０（図３および図４）に、アプリケーション３０８がどのゾーン４００に割り当てられるべきかを示すプリファレンス情報を提供している。このように、ファイル共有アプリケーション３０８（１）はゾーン１（４００（１））に割り当てられ、ＳＱＬサーバアプリケーション３０８（２）はゾーン２（４００（２））に割り当てられ、Ｐ２Ｐアプリケーション３０８（３）はゾーン３（４００（３））に割り当てられ、ブラウザアプリケーション３０８（４）はゾーン１、２、および３に割り当てられている。
【００３６】
アプリケーション３０８は、アプリケーション３０８の特定の機能に基づいて、特定のネットワークゾーン４００を優先ゾーンとして指定する。例えばファイル共有アプリケーション３０８（１）によって、一般に、ネットワーク上の何人かの人が、ファイルの読取りまたは表示可能、ファイルへの書込みまたは修正可能、ファイルのコピー可能、またはファイルの印刷可能の何らかの組合せを通して、同じファイルを使用することができるようにする。したがって、第１のコンピュータのユーザがファイルの共有を選択すると、第２のコンピュータのユーザは、その共有ファイルにアクセスすることができる。こうしたファイル共有アプリケーション３０８（１）の動作は一般に、ファイルを共有したい様々なコンピュータによってもたらされる悪意はないと仮定している。したがって、こうしたファイル共有アプリケーション３０８（１）は一般に、この仮定と一致するネットワークゾーン４００を指定する。
【００３７】
図５の例では、ゾーン１（４００（１））は、ネットワーク環境のプロパティがファイル共有アプリケーション３０８（１）の意図された機能と一致するネットワーク環境（すなわちホームネットワーク２０８）を提供する。ラップトップＰＣ２０２への他のネットワーク接続に関係なく、ラップトップＰＣ２０２上のゾーンモジュール３１０は、ファイル共有アプリケーション３０８（１）にはホームネットワーク２０８への接続のみが「見える」ようにネットワークゾーン１（４００（１））を施行する。ゾーンモジュール３１０によるゾーン１（４００（１））の施行によって、ファイル共有アプリケーション３０８（１）とＰＣ２０２に接続されたホームネットワーク２０８ではないいかなるネットワークとの間のいかなる通信も基本的に阻止される。
【００３８】
同様に、アプリケーション３０８（２）、３０８（３）、３０８（４）などの他のアプリケーションは、アプリケーション３０８の特定の機能に基づいて、特定のネットワークゾーン４００を優先ゾーンとして指定する。ＳＱＬサーバアプリケーション３０８（２）は、会社／企業環境で機能するように設計されたアプリケーションであり、したがって一般に、その機能目的と一致するネットワークゾーン４００を指定する。したがって、図５に示したＳＱＬサーバアプリケーション３０８（２）は、その優先ゾーンとしてゾーン２（４００（２））を示しており、ラップトップＰＣ２０２上のゾーンモジュール３１０は、他のネットワーク接続がラップトップＰＣ２０２上に存在していても関係なく、ＳＱＬアプリケーション３０８（２）には会社のネットワーク２０６への接続のみが「見える」ようにゾーン２（４００（２））を施行する。Ｐ２Ｐアプリケーション３０８（３）は、インターネットのみの環境で機能するように設計されており、したがって一般に、この機能目的と一致するネットワークゾーン４００を指定する。したがって、図５のＰ２Ｐアプリケーション３０８（３）は、ゾーン３がインターネットをそれ自体の唯一のネットワーク接続としてサポートし、施行するため、ゾーン３（４００（３））をその優先ゾーンとして示している。このように、ラップトップＰＣ２０２上のゾーンモジュール３１０によって、他のネットワーク接続がラップトップＰＣ２０２上に存在していても関係なく、Ｐ２Ｐアプリケーション３０８（３）にはインターネット２０４への接続のみが「見える」ようになることが確実となる。
【００３９】
ブラウザアプリケーション３０８（４）は、同様に、ブラウザアプリケーション３０８（４）の特定の機能に基づいて、特定のネットワークゾーン４００を優先ゾーンとして指定している。ブラウザは、一般にすべてのネットワーク環境で機能するように設計されているアプリケーションであり、それ自体のセキュリティ設定のセットを提供する。したがって、図５のブラウザアプリケーション３０８（４）は、３つのネットワークゾーン（１〜３）をすべて優先ゾーンとして指定している。このように、ラップトップＰＣ２０２上のゾーンモジュール３１０によって、ブラウザアプリケーション３０８（４）にはラップトップＰＣ２０２へのすべてのネットワーク接続が「見える」ことができることが確実なる。
【００４０】
（方法例）
様々なプロパティを有する異なるネットワークとコンピュータ２０２上の様々なアプリケーションプログラムおよびデータとの間の通信を制御するように構成されたモバイルコンピュータ２０２の１つまたは複数の実施形態を実施する方法の例について、主に図６のフロー図を参照して説明する。この方法は一般に、図３〜５に関連して上述した実施形態の例に適用される。記載した方法の要素は、例えば、プロセッサ可読媒体上で定義されたプロセッサ可読命令の実行を含む適切な任意の手段によって実施することができる。
【００４１】
本明細書で使用する「プロセッサ可読媒体」は、プロセッサによって使用または実行する命令を含むか、格納するか、通信するか、伝達するか、またはトランスポートすることができる任意の手段とすることができる。プロセッサ可読媒体は、限定ではなく、電子、磁気、光学、電磁気、赤外線、もしくは半導体のシステム、装置、デバイス、または伝達媒体とすることができる。プロセッサ可読媒体のより具体的な例には、とりわけ、１つまたは複数の配線を有する電気接続、ポータブルコンピュータディスク、ランダムアクセスメモリ（ＲＡＭ）、読取り専用メモリ（ＲＯＭ）、消去可能でプログラム可能な読取り専用メモリ（ＥＰＲＯＭまたはフラッシュメモリ）、光ファイバ、およびポータブルなコンパクトディスク読取り専用メモリ（ＣＤＲＯＭ）などがある。
【００４２】
図６は、様々なプロパティを有するネットワークとモバイルコンピュータ２０２上のアプリケーションプログラムおよびデータとの間の通信を制御するように構成されたモバイルコンピュータ２０２の一実施形態を実施するための方法６００の例を示している。ブロック６０２で、ネットワークゾーンが定義される。モバイルコンピュータ２０２は、ネットワークプロパティおよびネットワーク通信／接続ポリシーに基づいて複数のネットワークゾーンを定義する。カスタムゾーンのプロパティおよび／またはポリシーがアプリケーションプログラム３０８からの命令に基づいて判定されるそのカスタムゾーンをネットワークゾーンとして含めることもできる。
【００４３】
ブロック６０４で、コンピュータ２０２は、ネットワークに接続する。ネットワークは、例えば、ホームネットワーク２０８、会社のネットワーク２０６、およびインターネット２０４を含む任意の種類のネットワークとすることができる。ブロック６０６で、コンピュータ２０２は、ネットワークのプロパティを判定し、ブロック６０８で、ネットワークプロパティに従ってネットワークをネットワークゾーンに割り当てる。ネットワークは、ネットワークゾーンのプロパティがネットワークに対して判定されたプロパティと一致するネットワークゾーンに割り当てられる。
【００４４】
ブロック６１０で、コンピュータ２０２は、アプリケーションプログラム３０８のインストールを開始する。ブロック６１２で、コンピュータ２０２は、インストール中のアプリケーション３０８から、そのアプリケーションの優先ネットワークゾーンを示すプリファレンス情報を受け取る。一実施形態で、プリファレンス情報は、カスタムゾーンに対するプロパティおよび接続ポリシーを定義する通信命令を含むことができる。別の実施形態では、プリファレンス情報は、アプリケーション３０８によって優先される１つまたは複数のプロパティを単に含むこともある。ブロック６１４で、コンピュータ２０２は、アプリケーション３０８からのプリファレンス情報に基づいてアプリケーション３０８をあるネットワークゾーンに関連付ける／割り当てる。プリファレンス情報に応じて、ネットワークゾーンは、アプリケーションの優先ネットワークゾーンとして指定されたネットワークゾーンとすることができ、これは、プリファレンス情報によって定義されたカスタムゾーン、またはアプリケーション３０８からのプリファレンス情報に含まれる１つまたは複数のプロパティを所有する１つまたは複数のネットワークを含むネットワークゾーンとすることができる。
【００４５】
その後、コンピュータ２０２は、アプリケーションがいくつかの方法で関連付けられるネットワークゾーンを施行する。ブロック６１６では、コンピュータ２０２は、アプリケーションプログラム３０８が優先ネットワークゾーンと関連付けられていないネットワークからの通信を見る、および／または受け付けるのを防ぐ。カスタムゾーンの場合、これは、アプリケーションプログラム３０８がカスタムゾーンにおいて指定されていないネットワークロケーションからの通信を受け付けるのを防ぐことを含むことができる。ブロック６１８で、コンピュータ２０２は、アプリケーションプログラム３０８が優先ネットワークゾーンと関連付けられていないネットワークとの通信を見る、および／または開始するのを防ぐ。カスタムゾーンの場合、これは、アプリケーションプログラム３０８がカスタムゾーンにおいて指定されていないいかなるネットワークロケーションとの通信を開始するのを防ぐことを含むことができる。
【００４６】
ブロック６２０で、コンピュータ２０２は、アプリケーションプログラムが、優先ネットワークゾーンと関連付けられたネットワークからの通信を受け付けることを許可する。カスタムゾーンの場合、これは、アプリケーションプログラム３０８がカスタムゾーンにおいて指定されているネットワークロケーション位置からの通信を受け付けることを許可することを含むことができる。ブロック６２２で、コンピュータ２０２は、アプリケーションプログラムが優先ネットワークゾーンと関連付けられているネットワークとの通信を開始することを許可する。カスタムゾーンの場合、これは、アプリケーションプログラムがカスタムゾーンにおいて指定されているネットワークロケーションとの通信を開始することを許可することを含むことができる。
【００４７】
１つまたは複数の方法を、フロー図およびフロー図のブロックと関連したテキストによって開示してきたが、ブロックは必ずしも示した順序で実行する必要はなく、代替の順序で同様の利点をもたらすことができることを理解されたい。さらに、これらの方法は、排他的ではなく、単独で、または互いに組み合わせて実行することができる。
【００４８】
（コンピュータの例）
図７は、モバイルコンピュータ２０２を実施するために使用できる適切なコンピューティング環境７００の例を示している。１つの特定の構成を示しているが、コンピュータ２０２は、他のコンピューティング構成でも実施することができる。
【００４９】
コンピューティング環境７００は、コンピュータ７０２の形態の汎用コンピューティングシステムを含んでいる。コンピュータ７０２の構成要素は、これらに限定されないが、１つまたは複数のプロセッサまたは処理ユニット７０４、システムメモリ７０６、およびプロセッサ７０４を含む様々なシステム構成要素をシステムメモリ７０６に結合するシステムバス７０８を含む。
【００５０】
システムバス７０８は、様々なバスアーキテクチャのいずれかのものを使用するメモリバスまたはメモリコントローラ、周辺バス、アクセラレーテッドグラフィクポート（ａｃｃｅｌｅｒａｔｅｄ  ｇｒａｐｈｉｃｓ  ｐｏｒｔ）、およびプロセッサまたはローカルバスを含むいくつかのタイプのバス構造の任意の１つまたは複数を表す。システムバス７０８の例には、メザニンバスとしても知られているＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔｓ）バスがある。
【００５１】
コンピュータ７０２は、一般に様々なコンピュータ可読媒体を含む。こうした媒体は、コンピュータ７０２によってアクセスすることのできる任意の使用可能な媒体とすることができ、揮発性および不揮発性媒体、リムーバブルおよび非リムーバブル媒体を含む。システムメモリ７０６は、ランダムアクセスメモリ（ＲＡＭ）７１０など揮発性メモリの形態、および／または読取り専用メモリ（ＲＯＭ）７１２など不揮発性メモリの形態のコンピュータ可読媒体を含む。例えば起動中など、コンピュータ７０２内の要素間での情報の転送を助ける基本ルーチンが入っている基本入出力システム（ＢＩＯＳ）７１４は、ＲＯＭ７１２に格納されている。ＲＡＭ７１０は一般に、処理ユニット７０４に直接アクセス可能な、および／または処理ユニット７０４が現在処理しているデータおよび／またはプログラムモジュールを収容する。
【００５２】
コンピュータ７０２は、他のリムーバブル／非リムーバブル、揮発性／不揮発性コンピュータ記憶媒体を含むこともできる。例として、図７は、非リムーバブルの不揮発性磁気媒体（図示せず）との読み取りおよび書き込みを行うハードディスクドライブ７１６、リムーバブルの不揮発性磁気ディスク７２０（「フロッピー（登録商標）ディスク」など）との読み取りおよび書き込みを行う磁気ディスクドライブ７１８、ならびにＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、他の光媒体など、リムーバブルの不揮発性光ディスク７２４との読み取りおよび／または書き込みを行う光ディスクドライブ７２２を示している。ハードディスクドライブ７１６、磁気ディスクドライブ７１８、および光ディスクドライブ７２２はそれぞれ、１つまたは複数のデータ媒体インターフェース７２５によってシステムバス７０８に接続される。あるいは、ハードディスクドライブ７１６、磁気ディスクドライブ７１８、および光ディスクドライブ７２２は、ＳＣＳＩインターフェース（図示せず）によってシステムバス７０８に接続することができる。
【００５３】
ディスクドライブおよびその関連のコンピュータ可読媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、およびコンピュータ７０２の他のデータの不揮発性記憶機能を提供する。この例では、ハードディスク７１６、リムーバブルの磁気ディスク７２０、およびリムーバブルの光ディスク７２４を示しているが、磁気カセットもしくは他の磁気記憶装置、フラッシュメモリカード、ＣＤ−ＲＯＭ、デジタル多用途ディスク（ＤＶＤ）もしくは他の光記憶装置、ランダムアクセスメモリ（ＲＡＭ）、読取り専用メモリ（ＲＯＭ）、電気的消去可能でプログラム可能な読取り専用メモリ（ＥＥＰＲＯＭ）など、コンピュータによってアクセス可能なデータを格納することができる他のタイプのコンピュータ可読媒体を使用してコンピューティングシステムおよび環境の例を実施することもできることを理解されたい。
【００５４】
任意の数のプログラムモジュールをハードディスク７１６、磁気ディスク７２０、光ディスク７２４、ＲＯＭ７１２、および／またはＲＡＭ７１０に格納することができ、例として、オペレーティングシステム７２６、１つまたは複数のアプリケーションプログラム７２８、他のプログラムモジュール７３０、およびプログラムデータ７３２などが含まれる。こうしたオペレーティングシステム７２６、１つまたは複数のアプリケーションプログラム７２８、他のプログラムモジュール７３０、およびプログラムデータ７３２のそれぞれ（またはそれらの何らかの組合せ）は、ユーザネットワークアクセス情報のキャッシュ方式（ｃａｓｈｉｎｇ  ｓｃｈｅｍｅ）の一実施形態を含むことができる。
【００５５】
コンピュータ７０２は、通信媒体として識別された様々なコンピュータ／プロセッサ可読媒体を含むことができる。通信媒体は一般に、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータを搬送波または他のトランスポート機構などの変調されたデータ信号に具体化する。これには任意の情報配送媒体が含まれる。「変調されたデータ信号」という用語は、信号内の情報を符号化するようにその特徴の１つまたは複数を設定または変更した信号を意味する。通信媒体には、限定ではなく例として、有線ネットワーク、直接配線された接続などの有線媒体、および音響、ＲＦ、赤外線、その他の無線媒体などの無線媒体がある。また、上記の任意の組合せもコンピュータ可読媒体の範囲に含まれる。
【００５６】
ユーザは、キーボード７３４、およびポインティング装置７３６（例えば「マウス」）などの入力装置を介してコマンドおよび情報をコンピュータ７０２に入力することができる。他の入力装置７３８（具体的には図示せず）には、マイクロフォン、ジョイスティック、ゲームパッド、衛星アンテナ、シリアルポート、スキャナなどを挙げることができる。これらおよび他の入力装置は、システムバス７０８に結合されている入出力インターフェース７４０を介して処理ユニット７０４に接続されるが、パラレルポート、ゲームポート、ユニバーサルシリアルバス（ＵＳＢ）など他のインターフェースおよびバス構造で接続してもよい。
【００５７】
モニタ７４２または他のタイプの表示装置もまた、ビデオアダプタ７４４などのインターフェースを介してシステムバス７０８に接続することができる。モニタ７４２に加えて、他の出力周辺装置には、入出力インターフェース７４０を介してコンピュータ７０２に接続できるスピーカー（図示せず）およびプリンタ７４６などの構成要素を挙げることができる。
【００５８】
コンピュータ７０２は、リモートコンピューティング装置７４８など１つまたは複数のリモートコンピュータへの論理接続を使用してネットワーク化された環境で動作することができる。一例として、リモートコンピューティング装置７４８は、パーソナルコンピュータ、ポータブルコンピュータ、サーバ、ルーター、ネットワークコンピュータ、ピア装置、または他の一般のネットワークノードなどとすることができる。リモートコンピューティング装置７４８は、コンピュータシステム７０２に関連して本明細書に記載した多くまたはすべての要素および特徴を含むことができるポータブルコンピュータとして示されている。
【００５９】
コンピュータ７０２とリモートコンピュータ７４８との間の論理接続は、ローカルエリアネットワーク（ＬＡＮ）７５０および一般の広域エリアネットワーク（ＷＡＮ）７５２として示している。こうしたネットワーキング環境は、オフィス、企業全体のコンピュータネットワーク、イントラネット、およびインターネットではごく一般的である。ＬＡＮネットワーキング環境で実施する場合、コンピュータ７０２は、ネットワークインターフェースまたはアダプタ７５４を介してローカルネットワーク７５０に接続される。ＷＡＮネットワーキング環境で実施する場合、コンピュータ７０２は一般に、モデム７５６、または広域ネットワーク７５２にわたって通信を確立するための他の手段を含む。モデム７５６は、コンピュータ７０２に内蔵のものでも外付けのものでもよく、入出力インターフェース７４０または他の適切な機構を介してシステムバス７０８に接続することができる。図示したネットワーク接続は例であり、コンピュータ７０２と７４８との間の通信リンクを確立する他の手段を使用することができることを理解されたい。
【００６０】
コンピューティング環境７００で示したように、ネットワーク化された環境では、コンピュータ７０２に関連して示したプログラムモジュール、またはその一部をリモートメモリ記憶装置に格納することができる。一例として、リモートアプリケーションプログラム７５８は、リモートコンピュータ７４８のメモリ装置上に存在している。説明上、アプリケーションプログラムおよび他の実行可能プログラム構成要素、例えばオペレーティングシステムなどは、本明細書には別個のブロックとして示しているが、こうしたプログラムおよび構成要素は、様々な時点でコンピュータシステム７０２の様々な記憶構成要素に存在し、コンピュータのデータプロセッサによって実行されることを理解されたい。
【００６１】
（まとめ）
本発明は、構造上の特徴および／または方法論上の動作に固有の言葉で説明してきたが、添付の特許請求の範囲で定義された本発明は、必ずしも説明した特定の機能または動作に限定されるものではないことを理解されたい。そうではなく、特定の機能および動作は、特許請求の範囲に記載した本発明を実施する例示的な形態として開示されている。
【図面の簡単な説明】
【００６２】
【図１】従来技術による従来のネットワーク環境を示す図である。
【図２】ネットワークゾーンの使用および施行によってネットワーク通信を制御できるようになされたモバイルコンピューティング装置を実施するのに適したシステム環境例を示す図である。
【図３】ネットワークゾーンの使用および施行によってネットワーク通信を制御するように構成されたモバイルコンピュータ例を示すブロック図である。
【図４】図３のモバイルコンピュータ例の特徴を詳しく示した部分ブロック図である。
【図５】図３に示したものなどモバイルコンピュータ例の特定の機能例を示す図である。
【図６】図３に示したものなどモバイルコンピュータの実装形態を実施するための方法例を示すフロー図である。
【図７】図３に示したものなどモバイルコンピュータを実施するのに適したコンピューティング環境例を示す図である。
【符号の説明】
【００６３】
２００  システム環境
２０２  モバイルコンピューティング装置
２０４  インターネット
２０６  会社／企業のネットワーク
２０８  ホーム／住宅用ネットワーク
２１０  無線接続
２１２  ホームコンピュータ
２１４  ケーブルモデム
２１６  ＶＰＮサーバ
３００  プロセッサ
３０２  揮発性メモリ
３０４  不揮発性メモリ
３０６  オペレーティングシステム
３０８  アプリケーションプログラム
３０８（１）  ファイル共有アプリケーション
３０８（２）  ＳＱＬサーバアプリケーション
３０８（３）  ピアツーピア（Ｐ２Ｐ）アプリケーション
３０８（４）  ブラウザアプリケーション
３１０  ゾーンモジュール
３１２  ゾーンプリファレンスモジュール
４００  ネットワークゾーン
７００  コンピューティング環境
７０２  コンピュータ
７０４  処理ユニット
７０６  システムメモリ
７０８  システムバス
７１０  ランダムアクセスメモリ（ＲＡＭ）
７１２  読取り専用メモリ（ＲＯＭ）
７１４  基本入出力システム（ＢＩＯＳ）
７１６  ハードディスクドライブ
７１８  磁気ディスクドライブ
７２０  リムーバブル不揮発性磁気ディスク
７２２  光ディスクドライブ
７２４  リムーバブル不揮発性光ディスク
７２５  データ媒体インターフェース
７２６  オペレーティングシステム
７２８  アプリケーションプログラム
７３０  他のプログラムモジュール
７３２  プログラムデータ
７３４  キーボード
７３６  ポインティング装置
７３８  入力装置
７４０  入出力インターフェース
７４２  モニタ
７４４  ビデオアダプタ
７４６  プリンタ
７４８  リモートコンピューティング装置
７５０  ローカルエリアネットワーク（ＬＡＮ）
７５２  広域エリアネットワーク（ＷＡＮ）
７５４  ネットワークインターフェースまたはアダプタ
７５６  モデム
７５８  リモートアプリケーションプログラム
【図１】
2004310774.tif 000003
【図２】
2004310774.tif 000004
【図３】
2004310774.tif 000005
【図４】
2004310774.tif 000006
【図５】
2004310774.tif 000007
【図６】
2004310774.tif 000008
【図７】
2004310774.tif 000009