ロケーション情報に基づいてリソースに関するアクセス権限を設定するコンピューターにより実行される方法であって、ロケーションベースの権限情報を含むように、識別されたリソースに対する権限を更新する権限更新リクエストを受信するステップと、前記識別されたリソースを配置するステップと、前記識別されたリソースに関連付けられたアクセスコントロール情報を配置するステップと、前記リクエストを伴う前記ロケーションベースの権限情報から1つまたは複数の許可された行為を判定するステップと、前記許可されたロケーションベースの行為を含むように前記配置されたアクセスコントロール情報を更新するステップと、前記識別されたリソースに関連付けられた、前記更新されたアクセスコントロール情報を格納することによって、前記識別されたリソースにアクセスする後続の試みが、特定のロケーションベースのアクセス情報の影響を受けることになるステップと、を備え、前記ステップが少なくとも1つのプロセッサーにより実行されることを特徴とする方法。前記識別されたリソースは、少なくとも1つのアクセスコントロールリストACLまたはアクセスコントロールエントリーACEを含む、関連付けられたセキュリティ情報を含むオペレーティングシステムにより管理されたオブジェクトであることを特徴とする請求項1に記載の方法。前記権限更新リクエストを受信するステップは、オペレーティングシステムのアプリケーションプログラミングインターフェースAPIを通じてアプリケーションから前記リクエストを受信することを含むことを特徴とする請求項1に記載の方法。前記権限更新リクエストを受信するステップは、少なくとも1つのアクセス基準として地理的ロケーションを含む、アクセスコントロール情報を受信するパスによって、前記リソースを識別する情報を受信することを含むことを特徴とする請求項1に記載の方法。前記識別されたリソースを配置するステップは、構成データベース内または構成ディレクトリー内のディスク上の前記リソースにアクセスすることと、前記リソースに関連付けられた関連するアクセスコントロールメタデータにアクセスすることとを含むことを特徴とする請求項1に記載の方法。前記アクセスコントロール情報を配置するステップは、ロケーションベースの情報を含むアクセスコントロール情報をナビゲートし、および/または修正する、オペレーティングシステムのアプリケーションプログラミングインターフェースAPIを呼び出すことを含むことを特徴とする請求項1に記載の方法。前記1つまたは複数の許可された行為を判定するステップは、前記リソースが格納されたコンピューティングデバイスの地理的ロケーションに基づいて、前記リソースを読み取ることができるか、書き込むことができるか、またはリストに含めることができるかを判定することを含むことを特徴とする請求項1に記載の方法。前記1つまたは複数の許可された行為を判定するステップは、地理的領域の1つまたは複数の特定の境界線に基づいて、前記地理的領域を判定することを含むことを特徴とする請求項1に記載の方法。前記アクセスコントロール情報を更新するステップは、前記識別されたリソースに関連した特定の行為が許可される地理的領域を示す、階層的なアクセスコントロールエントリーACEを追加することを含むことを特徴とする請求項1に記載の方法。前記アクセスコントロール情報を更新するステップは、ロケーションベースのアクセスコントロール情報と、非ロケーションベースのアクセスコントロール情報とを組み合わせて、前記識別されたリソースにアクセスする1つまたは複数の基準を示すことを含むことを特徴とする請求項1に記載の方法。ソフトウェアアプリケーションに対し、改ざん防止ロケーションサービスを提供するコンピューターシステムであって、前記システムの現在の地理的ロケーションを示すハードウェア信号を提供するロケーションハードウェアコンポーネントと、前記システム上で稼動するソフトウェアコードに対する信頼できるコンピューターの保証を提供するハードウェアセキュリティコンポーネントと、下記のコンポーネント内で具現化されるソフトウェア命令を実行するように構成されたプロセッサーおよびメモリーと、オペレーティングシステムのカーネルからロケーション情報を使用するユーザモードのサービスおよびアプリケーションまでのインターフェースを提供するカーネルロケーションプロバイダーと、前記ロケーションハードウェアコンポーネントおよびハードウェアセキュリティコンポーネントからの情報によって、前記コンピューターシステムの現在のロケーションを示す認証を取り出す、ロケーション認証コンポーネントと、前記コンピューターシステムに関連付けられたセキュアロケーションシステムの監査証跡を格納するロケーション監査コンポーネントと、前記カーネルロケーションプロバイダーからのロケーション情報を要求し、および受信されたロケーション情報に基づいて1つまたは複数の行為を実行するロケーション照合コンポーネントと、を備えることを特徴とするシステム。前記ロケーションハードウェアコンポーネントは、グローバルポジショニングシステムGPS信号を受信し、および前記システムのロケーション情報を判定するGPSハードウェアデバイスを含むことを特徴とする請求項11に記載のシステム。前記ハードウェアセキュリティコンポーネントは、コンピューティングデバイスのセキュリティに関連した暗号によって照合可能な承認情報を提供する、信頼されたプラットフォームモジュールTPMを含むことを特徴とする請求項11に記載のシステム。前記ハードウェアセキュリティコンポーネントおよび前記ロケーションハードウェアコンポーネントは、通信用のセキュアチャネルを介して接続されることを特徴とする請求項11に記載のシステム。前記ハードウェアセキュリティコンポーネントは、前記ロケーションハードウェアコンポーネントから前記オペレーティングシステムまでの信頼のセキュアな連鎖を生成するために、前記ロケーションハードウェアコンポーネントに関連付けられたソフトウェアドライバーに対する承認情報を照合することを特徴とする請求項11に記載のシステム。本明細書では、アクセス決定を行うためにロケーションベースのサービスおよびハードウェアを利用するセキュアロケーションシステムを説明する。例えば、オペレーティングシステムが、コンピューターの物理的なロケーションに基づいてファイルおよびサービスの異なるサブセットへのアクセスを許可すべきと考えられ、例えば、あるファイルが様々な国にあるとき、またはオフィスの外にあるときにおいて、当該ファイルに対してはアクセスを許可しない。多くのモバイルコンピューターは、GPSなどのロケーションデバイスを有する。それらはまた、信頼されたプラットフォームモジュールTPM:trustedplatoformmoduleまたは他のセキュリティデバイスを有する。現在、GPSのロケーションデータは、単一のプロトコル例えばRS232またはUSBを使用して、信頼されていないアプリケーションコードに直接アクセスが可能である。セキュアロケーションシステムは、セキュアメカニズムを提供し、当該メカニズムにより、特定の時間におけるコンピューターのGPSのロケーションを、オペレーティングシステムのカーネルおよびTPMにより認証してもよい。一部の実施形態では、セキュアロケーションシステムは、動作時間においてコンピューティングデバイスの地理的ロケーションを示すラベルとともにユーザーの活動を記録する。セキュアロケーションシステムは、改ざんが困難ですなわち改ざん防止かつタイムスタンプ付きのロケーションを、カーネルモードのGPSのアクセスとTPMまたは同様のセキュリティハードウェアとの組み合わせを通じて提供することができる。一部の実施形態では、システムは、特定の行動が特定のロケーションで発生したことを照合するのに使用することができるセキュアな監査証跡を提供する。当該システムはまた、地理的ロケーションおよび/または時間に基づいてファイルのアクセスコントロールの決定に対するオペレーティングシステムのサービスまたは利用を制限することができる。例えば、会社は、コンピューターが会社の内部にあるときは、ラップトップコンピューター上のファイルの1セットへのアクセスを提供してもよいが、コンピューターを他の場所に持って行くときには、ファイルのより小さなサブセットに対するアクセスに限定してもよい。別の例として、セキュアロケーションシステムは、コンピューティングデバイスが56ビットの暗号化の制限を許可する国にあるときに、あるタイプの暗号化例えばセキュアなウェブページへのアクセスに対するを使用してもよく、およびより高度なレベルの暗号化を許可する国においては、別のタイプの暗号化を使用してもよい。この例では、オペレーティングシステムのベンダーは、たとえバイナリモジュールの共有セットが各々の場所に運ばれたとしても、オペレーティングシステムがその国の法律を守ることを、各々の場所に対して承認することができる。セキュアロケーションシステムは、カーネルによってのみGPSハードウェアに対するアクセスを可能にすることによって、可能であれば個別の暗号化チャネルによって、これらの動作を実行する。TPMは、オペレーティングシステムおよびブートローダーコードが、信頼されたソースに基づいていることを保証する。オペレーティングシステムは、セキュアなGPSのロケーションを読み出し、および認証されたGPSデータ/時間データをユーザー空間のプロセスに提供する。システムは、ブートプロセスの初期から、アプリケーションによってどのようにGPSの情報を提供し、および使用するかをモニタリングおよび制御するユーザプロセスの実行までの信頼の連鎖を形成する。システムは、地理的領域が埋め込まれたアクセスコントロールリストを含むように、修正されたファイル、ディレクトリー、および他のリソースのメタデータを含んでもよい。例えば、管理者は、誰が、だけではなく、どこで、そして、いつ、さえもファイルがアクセス可能であるかを特定することができる。ファイルおよびディレクトリーのタイムスタンプatime、ctime、mtimeを、地理的ロケーションを含むように増補することができる。オペレーティングシステムは、セキュアなGPSのロケーションデータにより、ユーザー動作のログ例えばMicrosoft登録商標TMWINDOWS登録商標TMセキュリティイベントログを増補する。アプリケーションは、ロケーションの認証を読み出しおよび取得することができる。アプリケーションがファイルを読み出すときに、アプリケーションが返すデータを、ロケーションに基づいて、オペレーティングシステムにおいて、またはより高いセキュアレベルにおいて選択することができる。一部の実施形態では、セキュアロケーションシステムは、コンピューターが現在どの国/地域にあるかに基づいて、ユーザーのレベルにおいて、ファイルシステム全体の見え方を交換することができる例えば、ステガノグラフィーファイルシステムを使用して。したがって、セキュアロケーションシステムは、セキュアなロケーション情報を、承認および他のオペレーティングシステムの決定に組み込む。図1は、一実施形態におけるセキュアロケーションシステムのコンポーネントを示すブロック図である。システム100は、ロケーションハードウェアコンポーネント110と、ハードウェアセキュリティコンポーネント120と、カーネルロケーションプロバイダー130と、ロケーション認証コンポーネント140と、ロケーション監査コンポーネント150と、ロケーション照合コンポーネント160と、を含む。それらのコンポーネントの各々を、本明細書においてさらに詳細に説明する。ロケーションハードウェアコンポーネント110は、システムの現在の地理的ロケーションを示すハードウェア信号を提供する。例えば、当該コンポーネント110は、GPSチップ、Wi-Fiチップ、またはセルラーチップを含んでもよく、それらのチップは緯度座標および経度座標、緯度及び経度を導出することができる三角測量情報、または他のロケーション情報を提供する。モバイルデバイスは、ハードウェア情報と他の情報例えば、振り当てられたインターネットプロトコルIPアドレスとの組み合わせを使用して、コンピューティングデバイスのおおよそのロケーションまたは正確なロケーションを判定することができる。ロケーションハードウェアコンポーネント110は、ルートroot情報を提供し、当該ルート情報からシステムのロケーションを判定する。ハードウェアセキュリティコンポーネント120は、システム上で稼動するソフトウェアコードに対する信頼できるコンピューターの保証を提供する。当該コンポーネント120は、TPM、プロセッサーのシリアル番号、信頼の暗号の連鎖、またはコンピューティングデバイスのセキュリティに関する承認情報を提供するように設計された他のハードウェアおよびソフトウェアコンポーネントを含んでいてもよい。一部のケースでは、システムは、TPM内の鍵により暗号化及び復号化されて格納されるブートローダーコードを含んでもよい。このことにより、TPMが、ブートローダーコードが安全であり、かつ信頼できるソースに基づいていることを照合することが可能になる。一部のケースでは、鍵は、公開鍵/秘密鍵のペアの公開された部分であり、および公開鍵により復号できることは、当該コードが秘密鍵の所有者により署名されたことを示す。ブートローダーコードを復号化した後、ハードウェアセキュリティコンポーネント120は、同様の方法で、オペレーティングシステムのロードを継続し、実行されているコードのソースを照合してもよい。同様に、システムは、ロケーションハードウェアコンポーネント110に対するドライバーを照合して、それによりロケーションハードウェアからオペレーティングシステムまでの信頼のセキュアな連鎖を生成するようにしてもよい。カーネルロケーションプロバイダー130は、オペレーティングシステムのカーネルから、ユーザーモードサービスおよびロケーション情報を使用するアプリケーションまでのインターフェースを提供する。当該インターフェースは、アプリケーションまたはオペレーティングシステムのサービスが、セキュアなロケーション情報を受信し、およびコンピューティングデバイスの現在ロケーションに基づく決定を行うように使用することができる、1つまたは複数のAPIを含んでもよい。カーネルロケーションプロバイダー130は、共通の方法でセキュアなロケーション情報をアプリケーションおよびサービスに開示するために、ドライバー、または様々なロケーションハードウェアデバイスおよびセキュリティハードウェアデバイスと対話するほかのソフトウェアを提供するプラグ着脱可能モデルを含んでもよい。ロケーション認証コンポーネント140は、ロケーションハードウェアコンポーネント110およびハードウェアセキュリティコンポーネント120からの現在のロケーションを示す認証を取り出す。当該認証は、コンピューティングデバイスのロケーション、および認証が生成された時間の署名されたインジケーションを含んでもよい。ハードウェアセキュリティコンポーネント120は、ロケーション情報のソースの署名として認証が生成されたコンピューティングデバイスに固有の鍵または他の暗号化識別子によって、認証を署名してもよい。アプリケーションは、照合可能なロケーション情報に基づいて、動作が実行されたことの証明として、認証を格納してもよい。ロケーション監査コンポーネント150は、コンピューティングデバイスに関連付けられたセキュアなロケーション情報の監査証跡を格納する。当該コンポーネントは、様々な時刻におけるデバイスの1つまたは複数のロケーションを示す、1つまたは複数のファイル、データベースエントリー、または他の構造化データを格納してもよい。一部の実施形態では、ロケーション監査コンポーネント150は、アプリケーションまたはサービスがロケーション認証コンポーネント140にロケーション認証を要求するたびに、当該デバイスのロケーションのインジケーションを格納する。システム100はまた、定期的にロケーション監査コンポーネント150に対し、ロケーションハードウェアコンポーネント110からのロケーション情報の取得し、および受信した情報とともに監査証跡を格納するように指示してもよい。このことにより、管理者または他のユーザーが、コンピューティングデバイスがどこに移動していたか、および、場合によっては各々のロケーションで何の動作を実行していたかを後に照合することが可能になる。一部の実施形態では、管理者は、中央リポジトリーに監査証跡を定期的にアップロードするソフトウェアをコンピューティングデバイス上にインストールしてもよく、それによって、組織が当該組織に関連付けられたデバイスをどこで使用しており、およびどのように使用しているかを追跡することができる。システム100はまた、例えばデバイスが定義された許容範囲のロケーション境界の外側に持ち出された場合に、IT担当者に警告または通知を提供してもよい。例えば、会社は、リリース前のコンピューティングデバイスが、試験機関または会社のビルから出ることを防止するようにしてもよい。ロケーション照合コンポーネント160は、カーネルロケーションプロバイダー130に対してロケーション情報を要求し、および受信したロケーション情報に基づいて1つまたは複数の動作を実行する。コンピューティングデバイスは、当該デバイスの現在のロケーションに基づいて決定をするロケーション照合コンポーネント160を含む、多数のアプリケーションおよびサービスを有してもよい。例えば、ファイルシステムフィルターは、デバイスの現在のロケーションに基づいて、どのファイルにアプリケーションがアクセスすることができるかを判定してもよい。マッピングロケーションは、デバイスの現在のロケーションに基づいて、マッピングおよび他の情報を表示してもよい。オペレーティングシステムは、地域の法律に基づいて機能を有効にし、もしくは無効にしてもよく、またはデバイスのロケーションに基づいて他の制限を有効にし、もしくは無効にしてもよい。デバイスの最先のブートから、カーネル層まで実施された信頼の連鎖により、アプリケーションおよびサービスが、オペレーティングシステムから受信されたロケーション情報を信頼することが可能になる。セキュアロケーションシステムが実装されたコンピューティングデバイスは、中央処理装置、メモリー、入力デバイス例えば、キーボードおよびポインティングデバイス、出力デバイス例えば、ディスプレイデバイス、ならびに記憶装置例えば、ディスクドライブ、またはその他の不揮発性記憶媒体を含んでもよい。メモリーおよび記憶装置は、システムを実行または有効にするコンピューター実行可能命令例えばソフトウェアにより符号化することができるコンピューター可読記憶媒体である。加えて、データ構造およびメッセージ構造を格納してもよく、または通信リンク上の信号などのデータ伝送媒体を介して伝送してもよい。インターネット、ローカルエリアネットワーク、ワイドエリアネットワーク、ポイントツーポイントダイヤルアップ接続、および携帯電話ネットワークなどの様々な通信リンクを使用してもよい。システムの実施形態を、パーソナルコンピューター、サーバーコンピューター、ハンドヘルドデバイスもしくはラップトップデバイス、マルチプロセッサーシステム、マイクロプロセッサーベースのシステム、プログラミング可能な家庭用電化製品、デジタルカメラ、ネットワークPC、ミニコンピューター、メインフレームコンピューター、上述したデバイスもしくはシステムのいずれかを含む分散コンピューティング環境、セットトップボックス、およびシステムオンチップSOCなどを含む、様々なオペレーティング環境において実装してもよい。当該コンピューターシステムは、携帯電話、携帯情報端末、スマートフォン、パーソナルコンピューター、プログラミング可能な家庭用電化製品、およびデジタルカメラなどであってもよい。システムを、1つもしくは複数のコンピューターまたは他のデバイスによって実行されるプログラムモジュールなどのコンピューター実行可能命令の一般的なコンテキストにおいて説明してもよい。一般的には、プログラムモジュールは、特定のタスクを実行し、または特定の抽象データタイプを実装するルーチン、プログラム、オブジェクト、コンポーネント、およびデータ構造などを含む。主として、当該プログラムモジュールの機能を、様々な実施形態で求められるように、組み合わせ、または分散してもよい。図2は、一実施形態における、ロケーション情報に基づいてリソース権限を設定するセキュアロケーションシステムの処理を示すフローチャートである。リソースは、ファイル、ディレクトリー、プリンター、設定項目、ユーザーアカウント、またはアクセスコントロールリストACLもしくはアクセスコントロールエントリーACEなどのセキュリティ情報を一般的に含むオペレーティングシステム内の任意の他のオブジェクトを含んでもよい。セキュアロケーションシステムは、リソースにアクセスするための権限の基準としてロケーション情報を含むようにこれらのデータ構造を拡張する。ブロック210において開始し、システムは、権限更新リクエストを受信して、ロケーションベースの権限情報を含むように識別されたリソースに対する権限を更新する。例えば、アプリケーションは、オペレーティングシステムAPIを通じてリクエストを送信してもよく、またはユーザーは、シェルプログラムもしくは他のツールに当該リクエストを投入させてもよい。当該リクエストは、パスまたは他の識別子によりリソースを識別し、ならびに少なくとも1つのアクセス基準として地理的ロケーションを含むACLおよび/またはACEなどのアクセスコントロール情報を含む。例えば、当該リクエストは、米国からのみアクセスすることができるファイルに対する権限を示してもよい。続いてブロック220において、システムは、識別したリソースを配置する。当該リソースを、ディスク上例えば、ファイルまたはフォルダー、構成データベース内例えば、レジストリーエントリ、ディレクトリー内例えば、アクティブディレクトリーリソースなどに格納してもよい。システムは、リソースを配置して、エントリーに関連付けられた任意の関係するアクセスコントロールメタデータを取り出す。例えば、当該リソースは、当該リソースに隣接して格納され、または当該リソースに関連付けられて格納されたレコードを含んでもよく、当該レコードは、アクセスコントロール情報を特定する。続いてブロック230において、システムは、識別したリソースに関連付けられたアクセスコントロールリストを配置する。一部の実施形態では、システムは、既存のオペレーティングシステムAPIを修正して、地理的アクセス制限に対するアクセスコントロール情報を設定しおよび取り出す。オペレーティングシステムは、一般的に、様々なタイプのリソースに関連付けられたアクセスコントロール情報をナビゲートし、および修正するために、セキュリティAPIの強固なセットを含む。続いてブロック240において、システムは、リクエストを伴うロケーションベースの権限情報から、1つまたは複数の許可された行為を判定する。当該行為は、リソースを読み取ることができるか、書き込むことができるか、およびリストに含めることができるかなどを含んでもよい。ロケーションベースの権限情報は、座標によって定義された角を有する長方形などの、境界のある地理的領域、または他の適切な領域を特定してもよい。例えば、システムは、行為が許可される地理的領域、または行為が許可されない地理的領域かを識別する中心点および当該中心点の周りの半径を受信してもよい。権限は、本質的に肯定と否定の両方であることができ、識別されたリソースに関連して許可される何らかのもの、または許可されない何らかのもののいずれかを示す。続いてブロック250において、システムは、許可されたロケーションベースの行為を含むように、配置したアクセスコントロールリストを更新する。アクセスコントロールリストは、どのユーザーがどの行為を実行することができるかに関する権限データの階層を含むことが多く、およびシステムは、どこで行為を実行することができるかを含むようにこれらのリストを修正する。ロケーションベースのアクセスコントロール情報を、例えば、管理者が任意のロケーションでファイルを読み取ることができるが、より限定されたユーザーが特定の地理的領域内でのみファイルを読み取ることができるように、他のアクセスコントロール情報と組み合わせてもよい。続いてブロック260において、システムは、識別したリソースに関連付けられた、更新したアクセスコントロールリストを格納することにより、当該識別したリソースにアクセスする後続の試みは、特定のロケーションベースのアクセス情報の影響を受ける。例えば、当該アクセスコントロールリストが、行為を実行することができる特定の領域を示す場合、システムは、アクセスを許可する前にアクセスリクエストが当該領域で発生しているかをテストする。このプロセスを、図3を参照してさらに説明する。ブロック260の後に、これらのステップは完了する。図3は、一実施形態における、ロケーションベースのアクセス権限によってリソースへアクセスするセキュアロケーションシステムの処理を示すフローチャートである。コンピューティングシステム内のリソースは、リソースへのアクセスのための複数の基準の1つとしてのロケーション情報を含んでもよい。例えば、ファイルは、ユーザーおよびロケーションの制限を含んでもよく、それにより、特定のユーザーが特定のロケーションからのみファイルへアクセスすることができる。ブロック310において開始し、システムは、識別したリソースにアクセスするリクエストを受信する。当該識別したリソースは、ロケーションベースのアクセス情報を含む。例えば、リソースは、ファイル、ディレクトリー、プリンター、コンピューター周辺機器、構成データベースエントリー、またはオペレーティングシステムがアクセスコントロールを定義し、および実施する他のリソースを含んでもよい。リクエストは、ファイルまたは他のリソースへアクセスするための、オペレーティングシステムのAPIを呼び出すアプリケーションに基づいてもよい。リクエストは、当該リクエストに関連付けられたセキュリティプリンシパルを識別するセキュリティトークンを含む。続いてブロック320において、システムは、ロケーション情報のセキュアソースにアクセスする。例えば、システムは、照合可能で且つ監査可能なロケーション情報インジケーションを提供する、GPSおよび/またはTPMハードウェアからロケーション情報の認証をリクエストする、オペレーティングシステムのAPIを起動してもよい。当該ロケーション情報インジケーションは、緯度座標および経度座標、もしくは他のロケーション情報の詳細、並びにタイムスタンプ、および当該ロケーション情報が現在のものであり、改ざんされてないことを確認する他の識別情報を含んでもよい。コンピューティングデバイスは、信頼の連鎖を生成するセキュアブートプロセスを含んでもよい。当該信頼の連鎖は、オペレーティングシステムがロケーション情報ハードウェアの制御を有すること、およびオペレーティングシステムから受信したロケーション情報に関連した出力が信頼できることを保証する。続いてブロック330において、システムは、リクエストを受信したコンピューティングデバイスの現在の地理的ロケーションを示すロケーション情報のセキュアソースから、ロケーションの認証を受信する。当該認証は、署名、またはロケーション情報のソースの他の暗号によって照合可能なインジケーションを含んでもよい。受信側は、TPMまたは他のセキュリティハードウェアに問い合わせをして、認証において提供されたロケーション情報に改ざんが為されてないことを保証するために署名を照合してもよい。システムはまた、発行されたロケーション認証のログを生成してもよい。当該ログは、特定のロケーションにおいて実行された行為のいかなる事後調査のための監査証跡を形成する。続いてブロック340において、システムは、受信したロケーションの認証により提供されたロケーションベースの情報を、識別したリソースに関連付けられたアクセスコントロールリストの少なくとも1つのロケーションベースの制限と比較する。例えば、アクセスコントロールリストは、米国外ではリソースを読み取ることができず、または書き込むことができず、ならびに米国内ではどこでも、読み取ることができ、および特定の都市内でのみ書き込むことができる、ことを規定してもよい。このことは単なる一例であり、当業者は、アクセスコントロールリストがアクセス制限の様々な組み合わせを許可して、任意の特定目的のためにリソースのアクセスを調整することを理解するであろう。続いて判定ブロック350において、当該比較が、リソースの要求したアクセスが、現在のロケーションにおいて許可されてないことを示す場合、システムはブロック360に進み、そうでない場合は、システムはブロック370に進む。続いてブロック360において、システムはアクセスリクエストを拒否する。システムは、エラーメッセージまたはリクエストが拒否されたことを示す他のインジケーションを提供してもよい。一部の実施形態では、システムはリソースが存在しないかのように動作してもよく、ロケーションまたは他の制限を満たさないことに起因してアクセスが許可されないときには、リソースを事実上隠してもよい。一部の実施形態では、システムは、どの条件下でリソースをアクセスすることができるかを示すエラーメッセージを提供してもよく、それにより、例えば、ユーザーは、許可されたロケーションに前記デバイスを移動することができる。続いてブロック370において、システムは、アクセスリクエストを許可し、およびリソースへの要求したアクセスを提供する。例えば、リソースがファイルである場合、システムは、ファイルの内容を開き、および参照するリクエストを許可してもよい。一部の実施形態では、システムは、アクセスリクエストを許可するが、デバイスの判定したロケーションに基づいてファイルデータを置き換えてもよい。例えば、システムは、デバイスがあるロケーションにあるときには、関心のないデータで満たされたファイルシステムを返してもよいが、デバイスが他のロケーションにあるときには、秘密の情報を返してもよい。ブロック370の後、前記ステップは完了する。一部の実施形態では、セキュアロケーションシステムは、ステガノグラフィーファイルシステムの実装を容易にする。ステガノグラフィーファイルシステムは、記憶装置上のデータに対するアクセスのレイヤーを提供する。例えば、ベースレイヤーは、鍵が無くてもアクセス可能であってもよく、またはいかなるロケーションからアクセス可能であってもよく、および特にセキュリティセンシティブではないビナインbenignデータを含んでもよい。TPMまたは他のセキュアハードウェアは、デバイスの現在のロケーションに基づいて、アクセスリクエストに応答して暗号鍵を提供してもよい。より上位レイヤーになるにしたがって、適切な鍵を持つものに対しては、センシティブなデータに対するより多くのアクセスを提供してもよい。このように、コンピューターは、あるロケーションではベナインなデータで満たされているように見え、しかし別のロケーションではセキュリティにセンシティブな情報を有してもよい。このことは、コンピューターユーザーに対し、コンピューティングデバイスが盗難にあった場合、悪意のあるユーザーが、センシティブなユーザー情報にアクセスさせないことの保証を提供することができる。一部の実施形態では、セキュアロケーションシステムは、オペレーティングシステムが、システム上で稼動しているコンピューティングデバイスのロケーションに基づいて、異なる特徴を提供することを可能にする。例えば、セキュアロケーションシステムは、コンピューティングデバイスがクッキーの使用を制限している国にある場合、ウェブブラウザの中にあるクッキーをオフにしてもよい。別の例として、オペレーティングシステムは、セキュアソケットレイヤーSSLに使用される暗号化のレベル、またはデバイスが使用されている場所の地域の法律に基づく他の暗号化された通信のために使用される暗号化のレベルを変更してもよい。オペレーティングシステムのベンダーは現在、特定の国において各々出荷されるオペレーティングシステムの多数の最小在庫単位SKU:StockKeepingUnitsを管理する。そのようなSKUの管理が困難であるだけでなく、特定の国において特定のSKUを販売しても、ある人物が非正規なSKUを国の中に持ち込まないという保証はない。セキュアロケーションシステムを使用して、オペレーティングシステムのベンダーは、SKUが使用されているロケーションのセキュアな知識に基づいて、その振る舞いを自動的に修正する単一のSKUを出荷することができ、複数のSKUに対する必要性を削減しまたは取り除き、および管理コストを削減することができる。一部の実施形態では、セキュアロケーションシステムを、ロケーションベースの決定を容易にするために組み込みデバイスに使用する。例えば、レンタカー会社は、どこで全車両における1台を運転することが許可されるかに関する地理的制限を実施するため、その全レンタル車両に当該システムを実装するデバイスを含めることができる。一部のレンタカー会社では、車に対し、ある特定の国または州を離れることを望まなくてもよく、およびこのタイプの制限を実施するために当該システムを使用することができる。他の実装形態では、会社は、他の地理的地域における使用を許可してもよいが、車両が使用された各地域に対して、異なる料金をレンタルに関して課せるように情報を記録してもよい。一部の実施形態では、セキュアロケーションシステムは、様々なロケーションベースのハードウェアによって動作する。デバイスのGPSチップは、今日、多くの異なるベンダーからの一般的なものであり、およびシステムを修正して、これらの各々と動作することができる。加えて、システムは、ロケーション認証の一部として捕捉することができるGPSチップ毎の実質上一意な識別子を含む、GPSハードウェアを採用してもよく、ロケーション情報を提供する特定のロケーションの権限を識別する。プロセッサーおよびTPMは、暗号化及び識別の目的で一意なシリアル番号を使用してきたので、それらが危険にさらされる場合、および他の理由の場合に、特定のインスタンスを禁止することができる。類似する技術を、GPSハードウェアに適用して、各GPSユニットを一意に識別し、および信頼できないインスタンスへのアクセスを拒否することができる。一部の実施形態では、セキュアロケーションシステムは、GPSモジュールおよびTPMなどのロケーション情報ハードウェアとセキュリティハードウェアとの間でセキュアなデータ通信チャネルを使用する。当該チャネルにより、TPMがGPSチップの出力を認証すること、およびGPSハードウェアとオペレーティングシステムまたはアプリケーションとの間で改ざんを防止する信頼の連鎖を保証することが可能になる、暗号化された通信を含んでもよい。一部の実施形態では、リソースへのアクセスを、TPMまたは他のセキュリティハードウェアにより管理された暗号鍵によって保護してもよく、およびTPMは、ロケーション情報ハードウェアから得られたデバイスの現在のロケーションに基づいて、期限付きの鍵を配布してもよい。一部の実施形態では、セキュアロケーションシステムは、ロケーション情報を使用して、モバイルコンピューティングデバイス上のネットワークセキュリティポリシーを実施する。例えば、システムは、デバイスが企業のネットワークにアクセスすることができる前に、ウィルススキャンを完了すべきことを判定するために、ラップトップが最近海外にあったという情報を使用してもよい。これを行うには、ネットワークインフラストラクチャーは、最新のセキュリティチェックがもしあれば、当該セキュリティチェックが為されてからデバイスがどこにあったかという監査証跡を提供する、コンピューティングデバイス上に格納されたロケーション情報の履歴にアクセスする。システムは、入来するネットワークトラフィック、出来するネットワークトラフィックまたはその両方を制限してもよい。これらのおよび他のポリシーを、セキュアロケーションシステムにより実施することができる。上記説明から、セキュアロケーションシステムの特定の実施形態を、本明細書において例示の目的で説明していることが理解されるであろうが、本発明の精神及び範囲から逸脱することなしに、様々な修正を行ってもよいことが理解されるであろう。したがって、本発明は、添付の特許請求の範囲以外のものによって制限されることはない。