(57)【特許請求の範囲】
【請求項１】
少なくとも１つのプロセッサと通信するオペレーティングシステムと、前記少なくとも１つのプロセッサに通信可能に接続され、コンピュータ実行可能命令が格納された少なくとも１つのメモリを提供すること、
前記コンピュータ実行可能命令を実行することにより、認証データ部分とプログラムデータ部分とを含むコンピュータオブジェクトを生成することであって、前記認証データ部分は、前記コンピュータオブジェクトの前記プログラムデータ部分へのアクセスとは独立してアプリケーションによってアクセス可能である、前記コンピュータオブジェクトを生成すること、
前記コンピュータオブジェクトに固有のオブジェクトＩＤを生成し、前記固有のオブジェクトＩＤを前記認証データ部分および前記プログラムデータ部分に書き込むこと、
全地球測位システムインターフェースを介して全地球測位システムと通信することにより、時刻、緯度、経度、および送信衛星疑似ランダム雑音を含む地理的位置情報を取得すること、
前記地理的位置情報を用いて、前記オペレーティングシステムが現在動作している地理的位置を特定すること、
前記コンピュータオブジェクトを操作することが認証されている地理的位置に一致する前記コンピュータオブジェクトの地理的オブジェクト・リソース要求を取得すること、
ａ）前記コンピュータオブジェクトの前記オブジェクトＩＤ、ｂ）前記オペレーティングシステムを実行しているコンピュータのデバイスＩＤ、ｃ）前記オペレーティングシステムに関連付けられたシステムＩＤ、およびｄ）前記地理的位置情報から取得された前記地理的位置を認証エンティティに送信すること、
前記認証エンティティへの送信に応答して前記認証エンティティからジオロケーション認証の成立又は不成立を受信すること、を備え、前記ジオロケーション認証の成立を受信したとき、前記オペレーティングシステムは、前記コンピュータオブジェクトの前記プログラムデータ部分へのアクセスが認証され、前記ジオロケーション認証の不成立を受信したとき、前記オペレーティングシステムは、前記プログラムデータ部分へのアクセスが認証されず、
前記コンピュータオブジェクトは、物理サーバにインストールされた仮想マシンの仮想ハードディスクイメージであり、
前記オペレーティングシステムは、前記物理サーバと通信可能な前記仮想マシンにインストールされて動作する、方法。
【請求項２】
前記コンピュータ実行可能命令が前記オペレーティングシステムによってさらに実行されることにより、
前記コンピュータオブジェクトを取得すること、
前記プログラムデータ部分にアクセスすることなく前記認証データ部分のみを読み込むこと、を含む請求項１に記載の方法。
【請求項３】
前記コンピュータオブジェクトは、コンピュータファイル、コンピュータファイルを含むストレージデバイス、ストレージデバイスからコンピュータファイルを受信し送出するインターフェース、およびデータベースのうちの少なくとも一つである、請求項１に記載の方法。
【請求項４】
プロセッサとコンピュータ実行可能命令が格納されたメモリとを含むコンピューティングデバイスにインストールされたオペレーティングシステムのジオロケーションを認証するためのジオロケーション認証方法であって、
全地球測位システムインターフェースを介して全地球測位システムと通信することにより、時刻、緯度、経度、および送信衛星疑似ランダム雑音を含む地理的位置情報を取得して、前記オペレーティングシステムのジオロケーションを特定すること、
前記オペレーティングシステムの固有のシステムＩＤを生成すること、
前記オペレーティングシステムと通信可能なドメインコントローラのデータリポジトリに前記オペレーティングシステムの前記ジオロケーションおよび前記システムＩＤを送信すること、
前記オペレーティングシステムに関連付けられたコンピュータオブジェクトへのアクセスの許可に対するリクエストを前記コンピューティングデバイスで受信することであって、前記コンピュータオブジェクトは、認証データ部分とプログラムデータ部分とを含み、前記認証データ部分は、前記プログラムデータ部分へのアクセスとは独立してアプリケーションによってアクセス可能である、前記コンピュータオブジェクトへのアクセスの許可に対するリクエストを受信すること、
前記コンピュータオブジェクトがジオロケーション認証を必要とするか否かを確認し、認証が必要な場合は、前記コンピュータオブジェクトに関連付けられたオブジェクトＩＤを特定して、前記オブジェクトＩＤ、前記オペレーティングシステムの前記ジオロケーション、前記システムＩＤの各々を、評価のために前記ドメインコントローラに送信すること、
ジオロケーション認証分析を行うことであって、前記ジオロケーション認証分析は、前記オブジェクトＩＤを使用して前記データリポジトリを検索することにより、前記オブジェクトＩＤに関連付けられた１つ以上の地理的オブジェクト・リソース要求を特定することを含み、前記地理的オブジェクト・リソース要求は、前記コンピュータオブジェクトを操作することが認証されている１つ以上の地理的位置を含む、前記ジオロケーション認証分析を行うこと、
前記地理的オブジェクト・リソース要求を前記オペレーティングシステムの前記送信されたジオロケーションと比較することにより、前記コンピュータオブジェクトへのアクセスを許可すべきか否かについての認証結果を提示すること、
を備え、
前記コンピュータオブジェクトがジオロケーション認証を必要とするか否かを確認することは、前記プログラムデータ部分にアクセスすることを含まず、
前記ジオロケーション認証が成立する場合にのみ、前記オペレーティングシステムが前記プログラムデータ部分にアクセスすることが認証され、
前記コンピュータオブジェクトのオブジェクトＩＤを特定することは、前記プログラムデータ部分にアクセスすることを含まず、
前記ジオロケーション認証が成立する場合に、前記オペレーティングシステムが前記プログラムデータ部分にアクセスすることが認証され、
前記コンピュータオブジェクトの前記ジオロケーション認証が不成立である場合、前記オペレーティングシステムが前記コンピュータオブジェクトの前記プログラムデータ部分にアクセスすることが防止される、ジオロケーション認証方法。
【請求項５】
前記地理的オブジェクト・リソース要求を前記オペレーティングシステムの前記送信されたジオロケーションと比較することは、前記コンピューティングデバイスの前記ジオロケーションが前記地理的オブジェクト・リソース要求により規定される地理的境界の範囲内に位置していると特定されるか否かを判定することを含む、請求項４に記載のジオロケーション認証方法。
【請求項６】
前記コンピュータオブジェクトは、コンピュータファイル、コンピュータファイルを含むストレージデバイス、ストレージデバイスからコンピュータファイルを受信し送出するプログラミングインターフェース、およびデータベースクエリインターフェースのうちの少なくとも一つである、請求項４に記載のジオロケーション認証方法。
【請求項７】
ジオロケーション認証システムであって、
プロセッサとコンピュータ実行可能命令が格納されたメモリとを含み、固有のデバイスＩＤが割り当てられたコンピューティングデバイスと、
前記コンピューティングデバイスにインストールされ、固有のシステムＩＤが割り当てられたオペレーティングシステムと、
前記コンピューティングデバイスおよび前記オペレーティングシステムのうちの少なくとも一方と通信可能であるとともに、全地球測位システムと通信可能であり、時刻、緯度、経度、および送信衛星疑似ランダム雑音を含む地理的位置情報を取得して、前記コンピューティングデバイスおよび前記オペレーティングシステムのうちの少なくとも一方のジオロケーションを提供可能な全地球測位システムインターフェースと、
前記コンピューティングデバイスおよび前記オペレーティングシステムのうちの少なくとも一方の前記ジオロケーションと、前記システムＩＤおよび前記デバイスＩＤのうちの少なくとも一方とを、データリポジトリと通信するドメインコントローラに送信するためのネットワークインターフェースと、
前記オペレーティングシステムに関連付けられるとともに、固有のオブジェクトＩＤと１つ以上の地理的オブジェクト・リソース要求とを含むコンピュータオブジェクトであって、前記地理的オブジェクト・リソース要求は、前記コンピュータオブジェクトを操作することが認証されている範囲を示す１つ以上の地理的境界を含む、前記コンピュータオブジェクトと、
を備え、
前記コンピュータオブジェクトはさらに、認証データ部分とプログラムデータ部分とを含み、前記認証データ部分は、前記プログラムデータ部分へのアクセスとは独立してアクセス可能であり、前記プログラムデータ部分は、前記オペレーティングシステムと通信可能な認証エンティティによってジオロケーション認証が成立するまでアクセス不可であり、
前記オペレーティングシステムは、前記コンピューティングデバイスと通信する仮想マシン上で動作するゲストオペレーティングシステムである、ジオロケーション認証システム。
【請求項８】
前記オペレーティングシステムと通信するドメインコントローラからジオロケーション認証を受信可能であり、前記コンピューティングデバイスおよび前記オペレーティングシステムのうちの少なくとも一方によって供給される前記ジオロケーションが、前記地理的オブジェクト・リソース要求によって規定される前記地理的境界の範囲内に定められているジオロケーションであるとき、前記オペレーティングシステムは前記ジオロケーション認証の成立を受信可能である、請求項７に記載のジオロケーション認証システム。
【請求項９】
前記コンピュータオブジェクトは、コンピュータファイル、コンピュータファイルを含むストレージデバイス、ストレージデバイスからコンピュータファイルを受信し送出するインターフェース、およびデータベースのうちの少なくとも一つである、請求項８に記載のジオロケーション認証システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本方法およびシステムは、概して、種々のタイプのリソースのためのジオロケーション認証の分野に関する。
【背景技術】
【０００２】
データセンタは、ソフトウェア上で動作するアプリケーションソフトウェアおよび顧客データが位置する場所である。クラウドベースのＩＴサービスのベンダーは、障害や地方の災害から保護するために、いつでも顧客データを複製する場所の透明性を維持する必要がある。データセンタが何らかの理由で機能を停止した場合、そのアプリケーションソフトウェア上で実行されているアプリケーションソフトウェアと顧客データが２番目または３番目のデータセンタからも利用可能な場合、顧客データは失われない。そして、それが十分に円滑に機能すると仮定すれば、そのようなフェールオーバーが発生したときには、顧客に通知されることさえない。また、特定のサービスに依存して、フェールオーバーによってサービスが中断されることはない。
【０００３】
グローバル企業は、インターネットおよびクラウドベースのコンピューティングサービスをデータセンタとともに活用することで、プライベートな通信ネットワークを確立し、グローバル技術からの効率性を獲得している。このようなグローバリゼーションの結果、近年、多くの国では地理的位置に関する規則を発行し、この規則により、企業がどのようにこれらのプライベートネットワークを通じて国境を越えて顧客データを処理し送信することができるかを制限している。特定の事業体では、制限された地理的境界内に、政府データ、従業員データ、電気通信トラフィックデータなどの、特定の種類のデータを格納する必要があり、場合によっては、それらのデータに地理的境界の外からはアクセスさえできないことがある。
【０００４】
地理的位置は、地理座標系の主要な要素である緯度、経度、高度を表す座標セットによって特定される。地表上の点の緯度（φ、またはファイ）は、赤道面と、その点および地球の中心（またはその近く）を通る直線との間の角度である。赤道は、地球を北半球と南半球に分ける。地表上の点の経度（λ、またはラムダ）は、基準子午線からその点を通る別の子午線までの東または西の角度である。国際的に認められている基準本初子午線は、イングランドのグリニッジの点を通り、適切な東半球と西半球を決定する。地表上の点の標高は、一般には海面に対する高さである。飛行中の航空機や軌道上の宇宙船など、海面上の点に対しては高度が用いられる一方、海面下の点に対しては深度が使用される。
【０００５】
地球上の位置に関する地理的位置は、Ｗｉ−Ｆｉ（登録商標）アクセスポイントやセルタワーのようなビーコン、デバイスのＩＰアドレス、または全地球航法衛星システム（ＧＮＳＳ）や全地球測位システム（ＧＰＳ）デバイスなどのソースから得ることができる。地理的位置情報の正確さは、これらのソースに依存し、以下の例示的な範囲内で、デバイス、コンピュータ、またはリソースの実際の位置から変化し得る。
・ＧＰＳ：約１０メートル内
・Ｗｉ−Ｆｉ：約３０〜５００メートル
・セルタワー：約３００〜３０００メートル
・ＩＰアドレス：約１０００〜５０００メートル
情報技術業務を扱う場合には、１つまたは複数の種類の要求（claim）の属性を利用することが一般的である。要求は、ユーザ、デバイス、コンピュータ、またはリソースに関する固有の情報である。これらは、多くの場合、ユーザの機能名称、組織部門、オフィスの場所などのドメインネームサービスディレクトリ内におけるコンピュータオブジェクトのプロパティとして検出可能な属性であり、定義可能な要求である。ビジネスに影響を与えるデータファイルの分類や、コンピュータが正常かどうかの状態についても同様である。コンピュータオブジェクトやエンティティは複数の要求を含むことができ、要求の任意の組み合わせを使用してリソースへのアクセスを認証することができる。以下に示す例示的な要求の種類は一般に、市販のドメインネームサービスディレクトリで利用可能である。
・ユーザ要求：特定のユーザに関連付けられた属性。
・デバイス要求：特定のコンピュータオブジェクトに関連付けられた属性。
・リソース属性：認証の決定に使用するためにマーキングされたグローバルリソースプロパティ。
【０００６】
要求は一般に、ドメインコントローラおよびそのサロゲートによって操作され公開されるドメインネームサービスディレクトリにおいて保護される。これは、認証されていない人物により要求が改ざんされることを防止し、正当に認証されたユーザ、デバイス、コンピュータのみにアクセスを許可するためである。要求によって、管理者は、ＩＴ運用における表現、ルール、ポリシーに組み込み可能な、ユーザ、デバイス、コンピュータ、リソースに関する正確な組織または企業全体の声明を作成することが可能となる。
【発明の概要】
【０００７】
少なくともいくつかの実施形態において、リソースのジオロケーション認証方法およびシステムは、地理的位置データ（例えば、ＧＰＳ信号）を用いて、コンピュータオブジェクト（仮想ハードディスクなど）が展開可能であるか否かおよびその仮想マシンが特定の地理的位置に配置された物理サーバによって操作可能であるか否かを判定することに関する。また、少なくともいくつかの実施形態において、ドメインコントローラは、動作中の物理サーバの現在の地理的位置が、仮想マシンが動作可能な地理的領域内にあるか否かを決定することによって調停する。
【０００８】
例示的な実施形態は、汎用コンピュータと、ＧＰＳシステムインターフェースと、接続ケーブルと、ＧＰＳアンテナとを含む物理サーバの現在の地理的位置を決定する方法およびシステムを含む。物理サーバの現在の地理的位置に基づいて仮想ハードディスクを展開するための認証を得るために、物理サーバは、その現在の地理的位置と、展開される仮想ハードディスクの識別情報とを取得して、それらの情報をドメインコントローラに送る。ドメインコントローラは、認証プロセスを実行し、認証の成否の評価結果を物理サーバに送信することにより、仮想ハードディスク内に含まれる仮想マシンの展開を進めることができるか否かを示す。少なくともいくつかの実施形態において、オペレーティングシステム（物理サーバおよび仮想マシンの双方のオペレーティングシステム）は、同じ方法およびシステムを使用して自己認証可能である。オペレーティングシステムは、現在の地理的位置と自身の識別情報とをドメインコントローラに転送する。続行するのに十分な結果を受け取ると、最初のブートフェーズを超えて動作を継続することが可能となる。
【０００９】
少なくともいくつかの実施形態において、リソースのジオロケーション認証方法およびシステムは、少なくとも１つのプロセッサと通信するオペレーティングシステムと、前記少なくとも１つのプロセッサに通信可能に接続され、コンピュータ実行可能命令が格納された少なくとも１つのメモリを提供することを含む。また、方法は、コンピューティングデバイスによって前記コンピュータ実行可能命令を実行することにより、認証データ部分とプログラムデータ部分とを含むコンピュータオブジェクトを生成することを含む。前記認証データ部分は、前記コンピュータオブジェクトの前記プログラムデータ部分へのアクセスとは独立してアプリケーションによってアクセス可能である。また、方法は、前記コンピュータオブジェクトに固有のオブジェクトＩＤを生成し、前記固有のオブジェクトＩＤを前記認証データ部分および前記プログラムデータ部分に書き込むことを含む。また、方法は、前記コンピュータオブジェクトの１つ以上の地理的オブジェクト・リソース要求を取得することを含む。前記地理的オブジェクト・リソース要求は、前記コンピュータオブジェクトを操作することが認証されている１つ以上の地理的位置を含む。また、方法は、前記固有のオブジェクトＩＤおよび前記１つ以上の地理的オブジェクト・リソース要求を認証エンティティに送信することを含む。
【００１０】
少なくともいくつかの追加の実施形態において、リソースのジオロケーション認証方法およびシステムは、プロセッサとコンピュータ実行可能命令が格納されたメモリとを含むコンピューティングデバイスにインストールされたオペレーティングシステムのジオロケーションを取得すること、前記インストールされたオペレーティングシステムの固有のシステムＩＤを生成すること、前記オペレーティングシステムと通信可能なドメインコントローラのデータリポジトリに前記オペレーティングシステムの前記ジオロケーションおよび前記システムＩＤを送信すること、前記オペレーティングシステムに関連付けられたコンピュータオブジェクトの展開の開始、および当該コンピュータオブジェクトへのアクセスの許可のうちの少なくとも一方に対するリクエストを前記コンピューティングデバイスで受信すること、前記コンピュータオブジェクトがジオロケーション認証を必要とするか否かを確認し、認証が必要な場合は、前記コンピュータオブジェクトに関連付けられたオブジェクトＩＤを特定して、前記オブジェクトＩＤ、前記オペレーティングシステムの前記ジオロケーション、前記システムＩＤの各々を、評価のために前記ドメインコントローラに送信すること、および、ジオロケーション認証分析を行うことを含む。前記ジオロケーション認証分析は、前記オブジェクトＩＤを用いて前記データリポジトリを検索することにより、前記オブジェクトＩＤに関連付けられた１つ以上の地理的オブジェクト・リソース要求を特定することを含む。前記地理的オブジェクト・リソース要求は、前記コンピュータオブジェクトを操作することが認証されている１つ以上の地理的位置を含む。また、方法は、前記地理的オブジェクト・リソース要求を前記オペレーティングシステムの前記送信されたジオロケーションと比較することにより、前記コンピュータオブジェクトについてのジオロケーション認証の成立又は不成立を提示することを含む。
【００１１】
少なくともいくつかの更なる実施形態において、リソースのジオロケーション認証方法およびシステムは、コンピューティングデバイスにインストールされたオペレーティングシステムを含むシステムに関する。前記コンピューティングシステムは、プロセッサとコンピュータ実行可能命令が格納されたメモリとを含む。前記オペレーティングシステムが固有のシステムＩＤを含むか、または、前記コンピューティングデバイスが固有のデバイスＩＤを含むか、または、前記オペレーティングシステムが固有のシステムＩＤを含むとともに前記コンピューティングデバイスが固有のデバイスＩＤを含む。全地球測位システム（ＧＰＳ）インターフェースは、前記コンピューティングデバイスおよび前記オペレーティングシステムのうちの少なくとも一方と通信可能であり、前記コンピューティングデバイスおよび前記オペレーティングシステムのうちの少なくとも一方のジオロケーションを提供可能である。ネットワークインターフェースは、前記コンピューティングデバイスおよび前記オペレーティングシステムのうちの少なくとも一方の前記ジオロケーションと、前記システムＩＤおよび前記デバイスＩＤのうちの少なくとも一方とを、データリポジトリと通信するドメインコントローラに送信する。前記オペレーティングシステムに関連付けられたコンピュータオブジェクトは、固有のオブジェクトＩＤと１つ以上の地理的オブジェクト・リソース要求とを含む。前記地理的オブジェクト・リソース要求は、前記コンピュータオブジェクトを操作することが認証されている範囲を示す１つ以上の地理的境界を含む。
【００１２】
本方法およびシステムの他の実施形態、態様、特徴、目的、および利点は、以下の詳細な説明および添付の特許請求の範囲から理解され得る。
【図面の簡単な説明】
【００１３】
【図１】例示的なコンピューティング環境およびシステムを示すブロック図。
【図２】ソフトウェアおよびハードウェアの例示的なアーキテクチャを示すブロック図。
【図３Ａ】建物内の場所の地理的領域における円形状に定義された境界を示す図。
【図３Ｂ】建物内の場所の地理的領域における矩形状に定義された境界を示す図。
【図３Ｃ】建物内の場所の地理的領域における他の矩形状に定義された境界を示す図。
【図３Ｄ】１つ以上の建物を含む場所の地理的領域における多角形状に定義された境界を示す図。
【図３Ｅ】管轄区域の地理的領域、具体的にはワイオミング州（米国）の境界を示す図。
【図４】１つ以上の特定の地理的領域で動作する仮想ハードディスクをマーキングするための例示的な方法を示すフローチャート。
【図５】１つ以上の特定の地理的領域で動作するようにマーキングされた仮想マシンの展開を制御する例示的な方法を示すフローチャート。
【図６】１つ以上の特定の地理的領域で動作するようにマーキングされたアプリケーションコンテナの展開を制御する例示的な方法を示すフローチャート。
【図７】１つ以上の特定の地理的領域内からアクセス可能となるようにマーキングされたデータリポジトリへのアクセスを制御する例示的な方法を示すフローチャート。
【発明を実施するための形態】
【００１４】
本方法およびシステムの実施形態は、添付の図面に関して開示されているが、これらの実施形態は、例示的な目的のみのものである。本方法およびシステムは、その適用において、図面に示される構成要素に関する詳細な構成または配置に限定されない。本方法およびシステムは他の実施形態も可能であり、他の様々な方法で実施または実現され得る。
【００１５】
以下、本発明の例示的な実施形態を、添付の図面を参照して詳細に説明するが、本発明の範囲はこれらの実施形態に限定されない。したがって、例示された実施形態の変形形態など、添付の図面に示された実施形態以外の実施形態も、本発明のジオロケーション認証方法およびシステムに包まれ得る。
【００１６】
本明細書において「一実施形態」、「実施形態」、「例示的実施形態」などの言及は、説明された実施形態が特定の特徴、構造、または特性を含むことを示しているが、全ての実施形態がそれら特定の特徴、構造、または特性を必ずしも含むわけではない。また、そのような用語は必ずしも同じ実施形態を指すわけではない。さらに、特定の特徴、構造、または特性が一つの実施形態に関して記載されている場合、当業者であれば、それが明示されているか否かにかかわらず、そのような特定の特徴、構造、または特性を他の実施形態に関して実施することもできる。
【００１７】
図１は、例示的なコンピューティング環境およびシステム１００のブロック図を示し、図２は、ソフトウェアおよびハードウェアの例示的なアーキテクチャのブロック図を示す。少なくともいくつかの実施形態では、システム１００はコンピュータ１０１を含む。コンピュータ１０１は、例えば、それぞれのデータセンタで動作する企業向けのサーバまたは企業のサーバであるか、あるいは商業的なホスティングデータセンタで動作するサーバを表し得る。しかしながら、この例は限定することを意図したものではなく、コンピュータ１０１は他の環境でも動作可能であり、当業者は、本明細書に記載の方法およびシステムがコンピュータ１０１以外の種々のコンピュータによっても実行可能であることを理解し得る。コンピュータ１０１は、コンピュータ１０１を一意に識別するデバイスＩＤを含み得る。デバイスＩＤは、シリアル番号などの多数のタイプの識別子を含むことができる。また、オペレーティングシステム１３０はコンピュータ１０１にインストールすることが可能であり、このオペレーティングシステムがコンピュータ１０１にインストールされたときに生成されるシステムＩＤを含み得る。なお、オペレーティングシステムがインストールされる毎に、新たな固有のシステムＩＤを作成することができる。
【００１８】
図１に示すように、少なくともいくつかの実施形態において、コンピュータ１０１は、複数の相互接続されたハードウェア構成要素を含む。これらのハードウェア構成要素は、これに限定されないが、処理ユニット１０２、システムメモリ１０４、データストレージインターフェース１２４、ネットワークインターフェース１５０、ヒューマンインターフェース１４２、およびＧＰＳインターフェース１６０を含む。システムメモリ１０４は、ＲＯＭ１０８およびＲＡＭ１１０などの揮発性および／または不揮発性メモリの形態でのコンピュータ記憶媒体を含む。起動中など、コンピュータ１０１内の要素間で情報を転送するのを助ける基本ルーチンを含む基本入出力システム１１２（ＢＩＯＳ）は、一般にはＲＯＭ１０８に格納される。ＲＡＭ１１０は、一般に、処理ユニット１０２によって直ちにアクセス可能な、および／または処理ユニット１０２によって現在処理されているデータおよび／またはプログラムモジュールを含む。限定ではなく一例として、図１は、オペレーティングシステム１３０、アプリケーションプログラム１３２、他のプログラムモジュール１３４、プログラムデータ１３６、仮想マシンモニタ１３２’、および仮想ハードディスク１３６’を示す。本明細書では、アプリケーションプログラム１３２は、実行可能バイナリファイルとも呼ぶ。
【００１９】
コンピュータ１０１は、他の取り外し可能／取り外し不能、揮発性／不揮発性のコンピュータ記憶媒体も含み得る。単に例として、図１は、取り外し不能で不揮発性の磁気媒体に対して読み取りまたは書き込みを行うハードディスクドライブ１１４を示す。例示的な動作環境で使用可能な他の取り外し可能／取り外し不能、揮発性／不揮発性コンピュータ記憶媒体には、これらに限定されないが、ＣＤＲＯＭまたはデジタル多用途ディスクなどの光ディスク、磁気テープカセット、フラッシュメモリカード、デジタルビデオテープ、ソリッドステートＲＡＭ、ソリッドステートＲＯＭなどが含まれる。ハードディスクドライブ１１４は、一般には、データストレージインターフェース１２４を介してシステムバス１０６に接続される。コンピュータ１０１は、一般にはシステムバス１０６に接続されたネットワークインターフェース１５０を介して、イントラネットおよびインターネットのうちの少なくとも１つを経由してアクセス可能なデータレポジトリに対して読み取りまたは書き込みを行うように構成される。少なくとも１つの実施形態では、ドメインネームサービスディレクトリ１８５がイントラネットデータリポジトリとして機能し、ＧＰＳデータアーカイブ１９２がインターネットデータリポジトリとして機能する。本明細書においてドメインネームサービスディレクトリ１８５を使用することに言及する場合は、ドメインネームサービスディレクトリ１８５に加えて、またはそれに代えて提供される他のデータリポジトリを含む（これに限定されないが、ＧＰＳデータアーカイブ１９２を含む）。コンピュータ１０１の追加の要素については、以下でより詳細に説明する。
【００２０】
上述したように、リソースのジオロケーション認証方法およびシステムは、コンピュータ１０１の現在の地理的位置を確認することを含む。より詳細には、少なくともいくつかの実施形態において、リソースのジオロケーション認証方法およびシステムは、コンピュータまたはそのオペレーティングシステムが認証された地理的位置の範囲内で動作していることを確認し証明することを含む。特定の地理的位置は、いくつかの異なる方法で決定することができる。少なくとも１つの実施形態において、所望の地理的位置データを提供する主要なソースとして全地球測位システム（ＧＰＳ）が利用されるが、他の実施形態では、地理的位置データを取得するための他のソースも利用可能である。
【００２１】
図１に示されるように、処理ユニット１０２は、コンピュータ１０１内の１つ以上のマイクロプロセッサまたはマイクロプロセッサコアを備え、システムメモリ１０４に格納されたプログラム命令を実行することにより、ＧＰＳインターフェース１６０をＧＰＳアンテナ１６２に通信可能に接続して、指示した機能を実行するように設計される。このインターフェースは、ＧＰＳ信号の受信や、コンピュータ１０１のオペレーティングシステム１３０への現在時刻、緯度、経度、および送信衛星ＰＲＮ（疑似ランダム雑音）の配信を容易にする。少なくとも１つの実施形態において、ＧＰＳインターフェース１６０は、ウィスコンシン州バーリントンのシンク−ン−スケール エルエルシー（Ｓｙｎｃ−ｎ−Ｓｃａｌｅ， ＬＬＣ）によって設計および製造されたＰＣＩｅアドオンカードを備える。しかしながら、この例は限定することを意図するものではなく、ＧＰＳインターフェース１６０は、同等のナビゲーション支援システムに準拠し、上述した機能を実行するように設計された従来のハードウェアもしくはその後に開発されたハードウェア、あるいはハードウェアとソフトウェアとの組み合わせを含むものでもよい。
【００２２】
リソースのジオロケーション認証方法およびシステムは、特定のコンピュータの地理的位置を取得することに加えて、ジオロケーション情報を、以下に詳細に説明する仮想マシン、内蔵アプリケーションプログラム、コンテナなどのコンピュータオブジェクトを開始および動作させるための前提条件インジケータとして使用することをさらに含み得る。図２を参照すると、ハイパーバイザとも呼ばれる仮想マシンモニタ１３２’が示されている。ハイパーバイザは、オペレーティングシステムを実行可能な他のコンピュータをエミュレートする特定のタイプのアプリケーションプログラム１３２である。エミュレートされたコンピュータは、仮想マシン、例えば仮想マシン１０１’と呼ばれる。この仮想マシン１０１’は、コンピュータオペレーティングシステム１３０と同じオペレーティングシステムであるオペレーティングシステム１３０’を実行することができる。詳細な説明は省略するが、仮想マシンモニタ１３２’を介して２つ以上の仮想マシン１０１’をエミュレートすることもできる。
【００２３】
仮想マシンモニタ１３２’は、仮想ハードディスク１３６’に格納された命令を使用して仮想マシン１０１’を作成して開始することができる。以下に詳細に説明するように、コンピュータ１０１または他の同様に機能するデバイスを使用して仮想ハードディスク１３６’イメージを作成し、それを個別のイントラネットまたはインターネットデータリポジトリに格納することができる。少なくともいくつかの実施形態では、仮想ハードディスク１３６’は、特定のフォーマットに従った単一のコンピュータファイルの形式で構成された特定タイプのプログラムデータ１３６である。このファイルは、１つ以上のファイルシステムを有するとともに、標準的なディスクおよびファイルの読み取りおよび書き込み処理をサポートするようにエミュレートされたストレージデバイスを包含する。標準的なコンピュータファイルとして、仮想ハードディスク１３６’は、他のコンピュータファイルが同じコンピュータ上で遵守するストレージポリシー、動作ポリシー、およびアクセスポリシーに従う。これらのポリシーは、デバイス要求（claim）およびリソース属性として表され、ドメインネームサービスディレクトリ１８５などのドメインネームサービスディレクトリに保持される。ドメインネームサービスディレクトリ１８５は、組織または企業規模のドメインネームサービスディレクトリまたは他の同等のデータリポジトリとすることができる。作成時において、仮想ハードディスク１３６’は、ハイパーバイザ１３２が利用可能な一般的なデータ保護方法を使用することによって、暗号化して保護されるか、またはセキュリティ目的のために保護される。この保護は、コンピュータオブジェクトを形成する仮想ハードディスク１３６’のコンテンツに対する改ざんや、それらコンテンツに対する不正アクセスを防止するために行われる。
【００２４】
図１を再度参照すると、少なくともいくつかの実施形態では、アプリケーションプログラム１３２は自立しており、単一の実行可能バイナリファイル、またはコンテナとも呼ばれる特定のタイプのプログラムモジュール１３４の形式をとることができる。コンテナには、実行可能命令、アプリケーション実行時ライブラリ、システムツール、ライブラリなど、アプリケーションプログラムが実行する必要がある全てのものが含まれる。他のオブジェクトと同様、コンテナは、改ざんを防止するためにオペレーティングシステムで利用可能な一般的なデータ保護方法を使用して作成時に暗号化によって保護されるか、セキュリティ目的で保護される。
【００２５】
上述したように、少なくともいくつかの実施形態において、ジオロケーション認証方法およびシステムは、種々のコンピュータオブジェクトタイプに地理的領域を関連付けることを含む。少なくともいくつかの実施形態において、コンピュータオブジェクトは、コンピュータファイル、コンピュータファイルを含むストレージデバイス、ストレージデバイスからコンピュータファイルを受信して送出するインターフェース、コンピュータファイルを具現化するデータベース、ストレージデバイスおよびインターフェース、ならびに、種々の他の組み合わせを含み得る。
【００２６】
地理的領域は、コンピュータオブジェクトの動作が許容される許容位置を提供する。この地理的領域は、ジオロケーションデータポイントの集合によって、および任意で追加の幾何学的ディメンションによって特定することができる。図３Ａ〜３Ｄに示すように、これらのデータポイントのグループ化は、ａ）経度および緯度座標３２２と半径３２３（図３Ａ）、ｂ）経度および緯度座標３２２と放射長３２４と放射幅３２５（図３Ｂ）、およびｃ）２つ以上の経度および緯度座標の集合（図３Ｃ，図３Ｄ，図３Ｅ）のうちのいずれか１つを含み得る。これらのジオロケーションデータポイントの各グループは、仮想の円形３３０、仮想の矩形３３２，３３４、または仮想の多角形３３６などの外周を構成する。各外周は、コンピュータオブジェクトを展開、開始、操作できる地表上の実際の連続した境界のある地理的領域を表す。
【００２７】
地理的領域は、データセンタの建物３２０（図３Ａ）内のサーバラックフットプリントを取り囲む直下の床スペースと同じ程度に小さなものであってもよいし、または図３Ｅに示されるように一連の地理座標３４２，３４４，３４６，３４８としてその境界が表される管轄区域３４０と同じ程度に大きなものであってもよい。さらに、矩形状の地理的領域は、地理座標から計算または導出することができる。矩形状の地理的領域の外周の４つのコーナーは、図３Ｂに示されるような所与の地理座標３２２と放射長３２４と放射幅３２５とから計算することができる。あるいは、これら４つのコーナーは、図３Ｃに示されるような所与の２つの地理座標３２２’および３２２”から他の２つの地理座標３２６および３２７を得るように導出することができる。
【００２８】
これらジオロケーションデータポイントの各グループは、コンピュータデバイス（例えば、サーバなど）のジオロケーションリソース要求（claim）（すなわち、リソース属性）、コンピュータデバイスに関連付けられたオペレーティングシステム、またはコンピュータオブジェクトとして識別することができる。各コンピュータオブジェクトには、複数のジオロケーション要求を割り当てることができる。コンピュータオブジェクトのジオロケーション要求は、本明細書では地理的オブジェクト・リソース要求と呼ぶことができる。地理的オブジェクト・リソース要求は、本明細書ではオブジェクトＩＤ（以下で詳細に説明する）と呼ばれるコンピュータオブジェクトの固有の識別子と記録され、関連付けることができる。この情報は、ドメインネームサービスディレクトリ１８５または同様のタイプのデータリポジトリで維持することができる。少なくともいくつかの実施形態において、ドメインネームサービスディレクトリ１８５へのアクセスは、１つ以上の認証アクセスレベルに限定される。コンピュータオブジェクトに１つ以上のジオロケーション要求を割り当てるのと同様に、コンピュータオペレーティングシステム１３０またはハイパーバイザ１３２’に、認証されて動作する少なくとも１つの地理的領域を割り当てることもできる。各地理的領域は、同様に限定されたリソースにオペレーティングシステム１３０がアクセスすることができる範囲の領域を確立する。この地理的範囲には、関連するオペレーティングシステムまたはハイパーバイザのインスタンス（コンピュータ自体ではない）の１つ以上のジオロケーション要求が含まれ、本明細書では地理的リソースデバイス要求と呼ぶことができる。この目的のために、複数の地理的リソースデバイス要求を割り当てることができる。地理的オブジェクト・リソース要求と同様に、地理的リソースデバイス要求およびそれに関連する詳細は、異なるまたは同じドメインネームサービスディレクトリ１８５内で保護され、必要とされる認証なしにコンピュータの管理者またはオペレータがアクセスすることはできない。
【００２９】
認証されたユーザは、１つ以上のジオロケーション要求の作成に続いて、ジオロケーション要求内のジオロケーション座標を追加、除去、または置換することにより、情報技術（ＩＴ）を管理する目的でそれらを抽出することができる。このような変更は、一般に、モニタ１３８、キーボード１３９、およびマウス１４０などのデバイスを含むヒューマンインターフェース１４２を使用して実現することができる。ジオロケーション要求とは別に、意図された許容ジオロケーションをユーザに通知して、コンピュータオブジェクトが認証のためにタグ付けされているか（ジオタグ付けされているか）否かを識別することができる割り当てジオロケーションインジケータ（例えば、ファイル属性）をコンピュータオブジェクトと関連付けることができ、これにより、すべてのユーザはその割り当てジオロケーションインジケータを随時検査で見ることができる。割り当てジオロケーションインジケータの追加は、ジオロケーション要求には影響を与えない。これは、ジオロケーション要求は保護されていて随時検査ではアクセスできないためである。このアクセス認証および制御の分離は、例えば、ドメイン・ネーム・サービス・ディレクトリ１８５または別のデータリポジトリと組み合わせてドメインコントローラ１８０によって実施することができる。
【００３０】
１つ以上の地理的オブジェクト・リソース要求を有するコンピュータオブジェクトをマーキング（ジオタグ付け）することは、種々のタイプのコンピュータベースのオペレーティングシステムで実行することができ、例えばデータセンタやデプロイメントセンターなどの様々な場所で行うことができる。例示的なマーキング処理を図４のフローチャート４００を参照して説明する。処理を開始するために、ステップ４０２において、地理的オブジェクト・リソース要求が形成される。具体的には、コンピュータオブジェクトを操作することが認証されているデータセンタなどの１つ以上の場所の地理座標が取得されて格納される。少なくともいくつかの実施形態において、地理座標は、ドメインコントローラ１８０に関連付けられたドメインネームサービスディレクトリ１８５内のリソース属性として格納される。ステップ４０４において、認証処理で使用されるコンピュータオブジェクトに対して、固有のオブジェクトＩＤが生成される。少なくともいくつかの実施形態において、固有のオブジェクトＩＤは、グローバルユニークＩＤ（ＧＵＩＤ）であるが、他のタイプの識別子を使用することもできる。
【００３１】
ステップ４０６において、アクセスまたは操作のためにジオロケーションベースの認証を要求するコンピュータオブジェクトがオペレーティングシステムによって作成され、固有のオブジェクトＩＤがオブジェクトに埋め込まれるか、あるいは関連付けられる。この処理は、様々な方法で実行することができる。例えば、コンピュータオブジェクトが仮想マシン（例えば、仮想マシン１０１’）を動作させるための仮想ハードディスク（例えば、仮想ハードディスク１３６’）などのファイルベースである場合、仮想ハードディスクイメージファイルは、１つ以上の部分（例えば、パーティション、セクションなど）を用いて作成することができる。少なくともいくつかの実施形態において、セクションは、認証データ部分とプログラムデータ部分とを含み得る。プログラムデータ部分は、例えば、仮想マシン１０１’を動作させるための命令と固有のオブジェクトＩＤとを含み得る。認証データ部分は、例えば、地理的オブジェクト・リソース要求などの、仮想マシン１０１’に関する固有のオブジェクトＩＤとジオロケーション認証要求情報を含み得る。認証データ部分は、プログラムデータ部分へのアクセスとは独立してアクセス可能であり、かつ認証されたエンティティによってのみアクセス可能である。これにより、オブジェクトのプログラムコンテンツにアクセスすることなく認証が可能となる。また、第２の保護部分とは別個に視認可能な第１の保護部分を提供する上記処理は、上述した種々のタイプのコンピュータオブジェクトに対して使用することができる。
【００３２】
ステップ４０８において、オペレーティングシステムは、コンピュータオブジェクトの固有のオブジェクトＩＤをドメインネームサービスディレクトリ１８５に格納する。ステップ４１０において、ドメインコントローラ１８０は、ドメインネームサービスディレクトリ１８５内の固有のオブジェクトＩＤに地理的オブジェクト・リソース要求をリソース属性としてバインドする。ステップ４１２において、オペレーティングシステムは、認証されたアクセスの目的のために、コンピュータオブジェクトに対して追加のリソース属性およびデータ保護方法を適用し、その後の展開のためにコンピュータオブジェクトを保存する。上述したように、追加の属性は、割り当てジオロケーションインジケータとすることができる。ジオロケーションにジオタグ付けが行われると、コンピュータオブジェクトは、その後のアクセスのためにデータセンタまたは他のサイトに配布され、ジオタグ付きオブジェクトにアクセスしようとするオペレーティングシステムにジオタグ付けされたものとして認識される。
【００３３】
次に、図５〜図７を参照すると、ジオタグ付きコンピュータオブジェクトをデータセンタまたは他のサービスポイントでサービスするため、あるいはジオタグ付きオブジェクトの使用を継続する場合に、アクセス要求が行われて認証が実行される。この処理を、フローチャート５００，６００，７００を参照して以下に詳しく説明する。具体的には、例示的な仮想マシン（図５）、例示的なコンテナ（図６）、および例示的なデータリポジトリ（図７）を含む、種々のタイプのオブジェクトの展開／アクセスについて説明する。少なくともいくつかの実施形態において、処理のステップは、これら３つのタイプのコンピュータオブジェクトを含む多くのタイプのコンピュータオブジェクトについて同様であるので、それらのステップを３つのフローチャートについて同時に説明する。
【００３４】
ステップ５０２，６０２，７０２での開始において、オペレーティングシステム１３０が起動またはレジュームイベントを開始すると、それに続く動作中に、オペレーティングシステム１３０は、そのアクティブＧＰＳインターフェース１６０（ＧＰＳアンテナ１６２が接続されたもの）から、このオペレーティングシステムが現在動作している場所における実際のおよび証明可能なジオロケーションを取得する。本明細書において、このジオロケーションは、デバイスジオロケーション要求とも呼ばれる。起動したコンピュータが仮想マシン（例えば、１０１’）である場合には、そのオペレーティングシステム１３０’は、そのハイパーバイザ１３２’からジオロケーション情報を取得する。ステップ５０４，６０４，７０４において、オペレーティングシステム１３０が現在動作している場所における実際のジオロケーションがシステム管理者やオペレータに利用可能とされ、そのジオロケーションが適切なドメインコントローラ１８０に転送されて、ドメインネームサービスディレクトリ１８５が更新される。この処理は連続的に生じ、これはコンピュータオブジェクトが展開または動作のために認証される前であってもよいし、その途中であってもよいし、その後であってもよい。
【００３５】
ステップ５０６，６０６，７０６において、オペレーティングシステム１３０は、コンピュータオブジェクト（仮想ハードディスク１３６’、コンテナ１３４、または実行可能バイナリファイル１３２）の展開の開始、あるいはそのコンピュータオブジェクトへのアクセスの許可に対するリクエストを受信する。コンピュータオブジェクトがジオロケーションインジケータなどを用いてジオタグ付けされていると識別された場合、処理はステップ５０８，６０８，７０８に進み、オペレーティングシステム１３０は、評価のためにコンピュータオブジェクトの固有のオブジェクトＩＤをドメインコントローラ１８０に送信する。少なくともいくつかの実施形態では、オペレーティングシステム１３０は、オペレーティングシステム１３０のシステムＩＤも送信する。コンピュータオブジェクトがジオタグ付けされているとオペレーティングシステムによって識別されない場合、処理はステップ５１４，６１４，７１４に進み、コンピュータオブジェクトへの展開および／またはアクセスが許可される。ステップ５１０，６１０，７１０において、ドメインコントローラ１８０は、送信されたオブジェクトＩＤを使用して、ドメインネームサービスディレクトリ１８５を検索することにより、コンピュータオブジェクトの地理的オブジェクト・リソース要求を特定する。一旦特定すると、ドメインコントローラ１８０は、ドメインネームサービスディレクトリ１８５に記録されているオブジェクトＩＤに結合された地理的オブジェクト・リソース要求を、同じくドメインネームサービスディレクトリ１８５に格納されているオペレーティングシステム１３０の報告されたデバイスジオロケーション要求（ジオロケーション座標）と比較する。少なくともいくつかの実施形態では、この比較は、ドメインコントローラ１８０が、送信されたデバイスジオロケーション要求と、地理的オブジェクト・リソース要求とを使用して、ＰＩＰ（point-in-polygon）問題を解決することを含む。ＰＩＰ幾何学的計算は、平面内の所与の点が多角形の境界の内側に位置するのか、その境界の外側に位置するのか、それとも境界上に位置するのかを解決する。また、一般的な幾何学的計算および方法は、コンピュータオブジェクトに関連付けられた所与のジオロケーションが、地表上で許容される規定の連続した地理的領域の範囲内にあるのか、それともその地理的領域の外側にあるのかを決定するために使用され得る。このような計算は、アクセス認証要求に応答してドメインコントローラ１８０によって実行される。より詳細には、ステップ５１２，６１２，７１２において、デバイスジオロケーション要求が、コンピュータオブジェクトに割り当てられた保護された地理的オブジェクト・リソース要求を表す境界（すなわち、領域）の内側に位置することを示す場合、ドメインコントローラは、その評価を成功として示し、ジオロケーション認証の成立を示す合格結果を返す。一方、デバイスジオロケーション要求が、コンピュータオブジェクトに割り当てられた保護された地理的オブジェクト・リソース要求を表す境界（すなわち、領域）の外側に位置することを示す場合、処理はステップ５１６，６１６，７１６に移行し、ドメインコントローラは��その評価を失敗として示す。オペレーティングシステム１３０はこの評価結果に応じて動作する。すなわち、処理はステップ５１４，６１４，７１４に移動し、オペレーティングシステム１３０およびそのハイパーバイザ１３２’が認証されて、仮想マシン１０１’の展開、ゲストオペレーティングシステム１３０’や実行可能バイナリファイル１３２の実行、またはコンテナ１３４の動作を進める。
【００３６】
有利には、この方法は、仮想ハードディスク１３６’が組織内でコピーされ特定の物理データセンタサイトの外側で不正に動作することを防止することによって、仮想ハードディスク１３６’の追加の保護層を提供することができる。また、この方法は、バックアップやその他のデータ管理操作のために仮想ハードディスクのストレージへの正当な認証アクセスを利用するが、その内容を使用して仮想マシンを展開し開始することは認証されていない不正な従業員が仮想マシンを展開して開始しようとすることを発見して起動する。本発明の原理に従ったこの方法は、システムの場所および管轄権に関する契約上の義務を証明することに加えて、ベンダーが顧客の要求を満たすための最良の効率的なデータセンタサイトを決定しつつ、電気や通信などの環境およびインフラストラクチャーの制約内で作業負荷を操作することを可能にする。さらに、少なくともいくつかの実施形態においては、ユーザが地理的領域内のデバイスまたはコンピュータを操作しているかどうかを確認し、これにより、ユーザがデータリポジトリ１７０を作成してオペレーティングシステムに接続したり、あるいは同一または他の地理的領域で管理されている既存のデータリポジトリにアクセスしたりすることが所定のポリシーによって許容されているか否かを確認するために、この方法を使用することができる。
【００３７】
上述したように、本発明の例示的な実施形態では、種々のコンピューティングデバイスおよびシステムアーキテクチャに関して説明したが、その基本的な概念を、地理的に特定のデータセンタ内の仮想マシンの展開および動作を制御することが望ましい任意のコンピューティングデバイスまたはシステムに適用することができる。
【００３８】
したがって、本発明の方法およびシステムは、種々のアプリケーションおよびシステムに適用することができる。本明細書において、例示的なハードウェアインターフェースや名前や実施例は種々の選択肢の代表として選択されているが、これらのハードウェアインターフェースや名前や例は限定を意図するものではない。当業者は、本発明によって実現されるものと同じ、類似の、または同等のシステムおよび方法を達成するジオロケーションデータを得るための多くの方法があることを理解し得る。
【００３９】
本明細書で説明する様々な技術は、ハードウェアまたはソフトウェアで、または適切な場合には両方の組み合わせとともに実装されてもよい。したがって、本発明の方法およびシステム、あるいはその特定の態様またはその一部は、ＣＤ−ＲＯＭ、フラッシュドライブ、ハードドライブなどの有形媒体に組み込まれたプログラムコード（すなわち、命令）の形態を取り得るプログラムコードがコンピュータなどの機械にロードされて実行されると、その機械は本発明を実施するためのシステムとなる。プログラマブルコンピュータ上でプログラムコードを実行する場合、コンピューティングデバイスは、一般には、プロセッサ、プロセッサによって読み取り可能な記憶媒体（揮発性および不揮発性メモリおよび／または記憶要素を含む）、少なくとも１つの入力装置、および少なくとも１つの出力デバイスを含む。例えばデータ処理ＡＰＩなどを使用することにより本発明の信号処理サービスを利用することができる１つまたは複数のプログラムは、コンピュータと通信するために、高水準手続き型またはオブジェクト指向プログラミング言語で実装されることが好ましい。しかしながら、プログラムは、必要に応じて、アセンブリ言語または機械語で実装されてもよい。いずれにしても、言語はコンパイルされた言語またはインタープリタ言語であり、ハードウェア実装と組み合わされている。
【００４０】
また、本発明の方法およびシステムは、例えば、電気配線またはケーブルを介して、光ファイバを介して、あるいは任意の他の伝送形態を介して、などのように任意の伝送媒体を介して伝送されるプログラムコードの形態で実施される通信を介して実現される。ＥＰＲＯＭ、ゲートアレイ、プログラマブルロジックデバイス（ＰＬＤ）、クライアントコンピュータ、ビデオレコーダなどの機械でプログラムコードが受信され、ロードされ実行されると、上述した例示的な実施形態で説明した信号処理能力を有する機械は、本発明を実施するためのシステムになる。汎用プロセッサ上に実装される場合、プログラムコードはプロセッサと結合して、本発明の機能を呼び出すように動作する固有のシステムを提供する。また、本発明に関して使用される任意のストレージ技術は、常に、ハードウェアとソフトウェアとの組み合わせであってもよい。
【００４１】
本発明を、種々の形態での好ましい実施形態に関して説明したが、他の同様の実施形態が使用されてもよく、あるいは本発明から逸脱することなく本発明の同じ機能を実行するように上記実施形態に対する変更、追加を行ってもよい。さらに、特にワイヤレスネットワークデバイスの数が増え続けるにつれて、ハンドヘルドデバイスオペレーティングシステムや他の特定用途向けオペレーティングシステムを含む種々のコンピュータプラットフォームが考慮されることが強調されるべきである。したがって、本発明は、いかなる単一の実施形態にも限定されるべきではなく、むしろ添付の特許請求の範囲に従って広く解釈されるべきである。
【００４２】
本発明を好ましい実施形態を参照して説明したが、本発明は上記特定の実施形態に限定されるものではない。当業者は、本発明の思想または意図から逸脱することなく、任意の置換、変更、変形、および省略を行うことができる。したがって、上記説明は例示的なものに過ぎず、本発明は、本発明の主題に対するすべての妥当な均等物を含むと解釈され、特許請求の範囲に記載された本発明の範囲を限定するものではない。さらに、動作方法を参照して本明細書で説明されるステップは限定的であるとみなされるべきではなく、ステップの追加、ステップの省略、およびステップの再順序付けなどの変形を含むことができる。
【図１】
0006463837.tif 000002
【図２】
0006463837.tif 000003
【図３Ａ】
0006463837.tif 000004
【図３Ｂ】
0006463837.tif 000005
【図３Ｃ】
0006463837.tif 000006
【図３Ｄ】
0006463837.tif 000007
【図３Ｅ】
0006463837.tif 000008
【図４】
0006463837.tif 000009
【図５】
0006463837.tif 000010
【図６】
0006463837.tif 000011
【図７】
0006463837.tif 000012