コンピュータが実施する、仮想化されたアプリケーションを実行する要求を受け取る動作と、前記要求を受け取ったことに応答して、前記仮想化されたアプリケーションに関して実行ポリシーを評価して、前記仮想化されたアプリケーションが実行され得るかどうかを判定する動作と、前記仮想化されたアプリケーションが実行され得ると判定したことに応答して、前記仮想化されたアプリケーションを公開する動作とを実行するステップを含むことを特徴とするコンピュータ実施方法。前記実行ポリシーは、前記仮想化されたアプリケーションが、前記仮想化されたアプリケーションを実行するデバイスが或る指定された地理的位置に位置している場合に限って実行され得ると指定することを特徴とする請求項1に記載のコンピュータ実施方法。前記実行ポリシーは、前記仮想化されたアプリケーションが、或る指定された期間中に限って実行され得ると指定することを特徴とする請求項1に記載のコンピュータ実施方法。前記実行ポリシーは、前記仮想化されたアプリケーションが、或る指定された持続時間に限って実行され得ると指定することを特徴とする請求項1に記載のコンピュータ実施方法。前記実行ポリシーは、前記仮想化されたアプリケーションが、前記仮想化されたアプリケーションを実行するデバイスによって利用されるコンピューティングリソースが制限されていない場合に限って実行され得ると指定することを特徴とする請求項1に記載のコンピュータ実施方法。前記実行ポリシーが評価され得るかどうかを判定するステップと、前記実行ポリシーが評価され得ないと判定したことに応答して、前記仮想化されたアプリケーションを非公開にするステップとをさらに含むことを特徴とする請求項1に記載のコンピュータ実施方法。前記仮想化されたアプリケーションを公開する動作は、前記仮想化されたアプリケーションがデバイスにインストールされているかどうかを判定すること、前記仮想化されたアプリケーションが前記デバイスにインストールされている場合、前記仮想化されたアプリケーションを実行され得るようにすること、および前記仮想化されたアプリケーションが前記デバイスにインストールされていない場合、前記仮想化されたアプリケーションを前記デバイスにストリーミングすることを含むことを特徴とする請求項6に記載のコンピュータ実施方法。コンピュータによって実行されると、前記コンピュータに、仮想化されたアプリケーションを実行する要求を受け取らせ、前記要求を受け取ったことに応答して、前記仮想化されたアプリケーションに関して実行ポリシーを評価して、前記仮想化されたアプリケーションが実行され得るかどうかを判定させ、および前記仮想化されたアプリケーションが実行され得ると判定したことに応答して、前記仮想化されたアプリケーションを公開させるコンピュータ実行可能命令を格納していることを特徴とするコンピュータ読み取り可能な記憶媒体。前記コンピュータによって実行されると、前記コンピュータに、前記仮想化されたアプリケーションの実行中に前記実行ポリシーを評価して、前記仮想化されたアプリケーションが引き続き実行され得るかどうかを判定させ、および前記仮想化されたアプリケーションが引き続き実行され得ないと判定したことに応答して、前記仮想化されたアプリケーションを非公開にさせるコンピュータ実行可能命令をさらに格納していることを特徴とする請求項8に記載のコンピュータ読み取り可能な記憶媒体。前記コンピュータによって実行されると、前記コンピュータに、前記実行ポリシーが評価され得るかどうかを判定させ、および前記実行ポリシーが評価され得ないと判定したことに応答して、前記仮想化されたアプリケーションを非公開にさせるコンピュータ実行可能命令をさらに格納していることを特徴とする請求項9に記載のコンピュータ読み取り可能な記憶媒体。コンピュータアプリケーションプログラムアプリケーションの使用を制限することは、特に、別の状況ではそのアプリケーションを使用することが許可されているユーザを、何らかの様態で制限しなければならない場合、物理的アイテムへのアクセスを制限することと比べて、より困難な場合がある。このことは、ラップトップコンピュータ、タブレットコンピュータ、およびスマートフォンなどのポータブルコンピューティングデバイスを従業員に支給する組織に特に当てはまる。従業員は、支給されたコンピューティングデバイスに絶えずアクセスするため、それらのコンピューティングデバイス上にインストールされたアプリケーションの使用を制限することは困難な場合がある。本明細書でなされる開示は、以上、およびその他の考慮に関連して提示される。仮想化されたアプリケーションに対するポリシーベースのアクセスのための技術が、本明細書で説明される。本明細書で提示される概念および技術の実施を介して、実行ポリシーに従って仮想化されたアプリケーションの実行を制限することができるアプリケーション仮想化環境が提供され得る。この実行ポリシーは、管理者によって設定されることが可能であり、仮想化されたアプリケーションが実行され得る条件、または実行され得ない条件を定義する。このようにして、アプリケーションの実行は、アプリケーションが実行されるデバイスの地理的位置、アプリケーションの使用の時間帯もしくは持続時間、デバイスにいくつかのコンピューティングリソースが利用可能であるかどうか、またはその他の条件などの、様々な条件に基づいて制限され得る。本明細書で開示される実施形態は、アプリケーション仮想化環境に関連して実施される。特に、アプリケーション仮想化クライアント構成要素が、仮想化されたアプリケーションの実行のための環境を提供するように構成される。また、アプリケーション仮想化クライアント構成要素は、基礎をなすオペレーティングシステム、他のアプリケーションプログラム、およびシステムリソースから仮想化されたアプリケーションをカプセル化するための機能も提供する。また、アプリケーション仮想化クライアント構成要素は、アプリケーション仮想化サーバ構成要素から仮想化されたアプリケーションの必要とされる部分をストリーミングすることによって、仮想化されたアプリケーションのいくつかの部分をロードするための機能を提供することも可能である。別の態様によれば、アプリケーション仮想化クライアント構成要素は、仮想化されたアプリケーションに対するポリシーベースのアクセスをもたらすように構成される。特に、仮想化されたアプリケーションを実行する要求が受け取られると、アプリケーション仮想化クライアント構成要素は、実行ポリシーを評価して、そのアプリケーションが実行され得るかどうかを判定する。上記で簡単に説明したとおり、実行ポリシーは、管理者によって設定されることが可能であり、仮想化されたアプリケーションが実行され得る条件、または実行され得ない条件を定義する。例えば、実行ポリシーは、仮想化されたアプリケーションが、このアプリケーションを実行するデバイスが或る指定された地理的区域内にある場合に限って実行され得る、このアプリケーションが、或る指定された時間帯中例えば、午前9時から午後5時までに限って、1日当り或る指定された持続時間例えば、1日当り1時間に限って実行され得る、またはこのアプリケーションが、いくつかのコンピューティングリソースが制限されていない場合に限って実行され得る、と指定することが可能である。アプリケーション仮想化クライアント構成要素が、実行ポリシーに基づいて、仮想化されたアプリケーションが実行され得ると判定した場合、アプリケーション仮想化クライアント構成要素は、仮想化されたアプリケーションを公開する。本明細書で使用される公開するという用語は、仮想化されたアプリケーションを実行され得るようにすることを意味する。例えば、一実施形態において、アプリケーション仮想化クライアントアプリケーションは、仮想化されたアプリケーションがインストールされているかどうかを判定し、さらに、インストールされている場合、仮想化されたアプリケーションを実行され得るようにすることによって、仮想化されたアプリケーションを公開する。仮想化されたアプリケーションがインストールされていない場合、アプリケーション仮想化クライアント構成要素は、その仮想化されたアプリケーションが、実行のためにデバイスにストリーミングされるようにすることが可能である。別の態様によれば、アプリケーション仮想化クライアント構成要素は、仮想化されたアプリケーションの実行中、実行ポリシーを定期的に、または絶えず評価する。アプリケーション仮想化クライアント構成要素が、実行ポリシーがもはや満たされないと判定した場合、アプリケーション仮想化クライアント構成要素は、仮想化されたアプリケーションを非公開にする。例えば、アプリケーション仮想化クライアント構成要素は、仮想化されたアプリケーションの実行を停止し、さらにそのアプリケーションを実行され得ないようにすることが可能である。また、アプリケーション仮想化クライアント構成要素は、仮想化されたアプリケーションを、そのアプリケーションが実行されているクライアントデバイスから取り除くことも可能である。別の態様によれば、アプリケーション仮想化クライアント構成要素は、実行ポリシーが評価され得ない場合に、仮想化されたアプリケーションを非公開にすることもする。例えば、仮想化されたアプリケーションは、そのアプリケーションが或る特定の地理的区域内に限って実行されることを実行ポリシーが要求し、さらにそのアプリケーションを実行しているデバイスが入っている地理的区域が特定され得ない場合、非公開にされ得る。また、アプリケーション仮想化クライアント構成要素は、仮想化されたアプリケーションに対する許可されなかったアクセスに関する監査データ、アプリケーションが非公開にされた条件、およびアプリケーション仮想化環境の管理者に潜在的に役立つ他の情報を格納することも可能である。この概要は、特許請求の範囲に記載される主題の重要な特徴または不可欠な特徴を特定することは意図しておらず、この概要が特許請求の範囲に記載される主題の範囲を制限するように使用されることも意図していない。さらに、特許請求の範囲に記載される主題は、本開示のいずれの部分に記載されるいずれかの欠点を解決する実施形態にも、そのようなすべての欠点を解決する実施形態にも限定されない。以下の詳細な説明は、仮想化されたアプリケーションに対するポリシーベースのアクセスのための技術を対象とする。上記で簡単に説明したとおり、実行ポリシーに基づいて仮想化されたアプリケーションの実行に対して制限を執行するように構成されたアプリケーション仮想化環境が提供される。特に、仮想化されたアプリケーションを実行する要求が受け取られると、アプリケーション仮想化クライアント構成要素が、実行ポリシーを評価して、そのアプリケーションが公開され、実行され得るかどうかを判定する。アプリケーション仮想化クライアント構成要素が、実行ポリシーに基づいて、その仮想化されたアプリケーションが実行され得ると判定した場合、アプリケーション仮想化クライアント構成要素は、その仮想化されたアプリケーションを公開し、実行する。アプリケーション仮想化クライアント構成要素は、仮想化されたアプリケーションがインストールされている場合、そのアプリケーションを実行され得るようにすることによって、そのアプリケーションがインストールされていない場合は、その仮想化されたアプリケーションをインストールすることによって、そのアプリケーションを公開する。また、アプリケーション仮想化クライアント構成要素は、仮想化されたアプリケーションの実行中、実行ポリシーを評価することもする。アプリケーション仮想化クライアント構成要素が、実行ポリシーがもはや満たされないと判定した場合、アプリケーション仮想化クライアント構成要素は、仮想化されたアプリケーションを非公開にして、その仮想化されたアプリケーションの実行を防止する。これら、およびその他の特徴に関するさらなる詳細が、後段で提示される。本明細書で説明される主題は、コンピュータシステム上のオペレーティングシステムおよびアプリケーションプログラムの実行に関連して実行されるプログラムモジュールの一般的なコンテキストで提示されるが、他のタイプのプログラムモジュールとの組み合わせで他の実施形態が実行されてもよいことが当業者には認識されよう。一般に、プログラムモジュールには、特定のタスクを実行する、または特定の抽象データ型を実装するルーチン、プログラム、構成要素、データ構造、および他のタイプの構造が含まれる。さらに、本明細書で説明される主題は、ハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベースの家庭用電子機器またはプログラマブル家庭用電子機器、ミニコンピュータ、メインフレームコンピュータなどを含む、他のコンピュータシステム構成で実施されてもよいことが当業者には理解されよう。以下の詳細な説明において、本明細書の一部分を形成するとともに、例示的な特定の実施形態または実施例として示される添付の図面が参照される。次に、同様の参照符号が、いくつかの図にわたって同様の要素を表す図面を参照して、仮想化されたアプリケーションに対するポリシーベースのアクセスのためのコンピューティングシステムおよび方法の態様を説明する。図1は、本明細書で開示される実施形態に関する1つの例示的な動作環境100を示すソフトウェア-ネットワークアーキテクチャ図である。図1に示される例示的な動作環境100は、ネットワーク106によってサーバ104と通信するように構成されたクライアントデバイス102を含む。クライアントデバイス102は、オペレーティングシステム108Aおよびアプリケーション仮想化クライアント構成要素110を実行するように構成されたコンピューティングデバイスである。クライアントデバイス102は、標準のデスクトップコンピュータもしくはラップトップコンピュータ、タブレットコンピュータ、スマートフォン、または仮想化されたアプリケーションに対するポリシーベースのアクセスのための本明細書で提示される動作を実行することができる他の任意のタイプのコンピューティングデバイスであり得る。また、クライアントデバイス102は、本明細書で開示される機能を提供するように構成されたサーバコンピュータであってもよい。サーバ104は、オペレーティングシステム108Bおよびアプリケーション仮想化サーバ構成要素116を実行するように構成されたコンピューティングシステムである。サーバ104は、アプリケーション仮想化サーバ構成要素110を実行するように構成されたサーバコンピュータであることが可能であり、またはサーバ104によって実行されるものと本明細書で説明される機能を実行するように構成された別のタイプのコンピュータシステムを備えることが可能であることを理解されたい。図1に示されるネットワーク106は、ワイドエリアネットワークまたはローカルエリアネットワークを備え得る。例えば、ネットワーク106は、企業ローカルエリアネットワーク、インターネットなどのワイドエリアネットワーク、または複数のワイドエリアネットワークとローカルエリアネットワークの組み合わせであり得る。図1には単一のネットワーク106が例示されているが、他の多くのネットワークが利用され得ることを理解されたい。また、図1には単一のクライアントデバイス102および単一のサーバ104が例示されているが、多数のそのようなデバイスが、本明細書で開示される実施形態によって利用され得ることも理解されたい。上記で簡単に説明したとおり、クライアントデバイス102は、アプリケーション仮想化クライアント構成要素110を実行するように構成される。アプリケーション仮想化クライアント構成要素110は、アプリケーション仮想化環境をもたらすように構成されたソフトウェア構成要素である。これに関して、アプリケーション仮想化クライアント構成要素110は、仮想化されたアプリケーション112を実行するように構成される。アプリケーション仮想化クライアント構成要素110は、オペレーティングシステム108Aから仮想化されたアプリケーション112の実行をカプセル化するための機能を提供する。また、アプリケーション仮想化クライアント構成要素110は、クライアントデバイス102の他のアプリケーションプログラムおよびシステムリソースから仮想化されたアプリケーション112の実行をカプセル化するための機能をもたらすことも可能である。例えば、アプリケーション仮想化クライアント構成要素110は、オペレーティングシステム108Aまたはクライアントデバイス102のリソースを仮想化することが可能である。仮想化されたアプリケーション112が、それらの物理的リソースにアクセスしようと試みると、アプリケーション仮想化クライアント構成要素110は、アプリケーション112に仮想化されたリソースを提示する。このようにして、仮想化されたアプリケーション112は、オペレーティングシステム108Aまたはクライアントデバイス102によって公開exposeされる実際のリソースに影響を与えない様態で実行され得る。他の態様によれば、アプリケーション仮想化クライアント構成要素110はまた、仮想化されたアプリケーション112のいくつかの部分をオンデマンドでロードするための機能ももたらす。特に、アプリケーション仮想化クライアント構成要素110は、アプリケーション仮想化サーバ構成要素116と連携して動作して、サーバ104からクライアントデバイス102に仮想化されたアプリケーション112の必要とされる部分をストリーミングすることが可能である。このようにして、仮想化されたアプリケーション112は、クライアントデバイス102においてオンデマンドでアクセスされ得る。さらに、仮想化されたアプリケーション112の必要とされる部分だけが、サーバ104からクライアントデバイス102にストリーミングされ得るため、仮想化されたアプリケーション112へのアクセスが、サーバ104からクライアントデバイス102にアプリケーション112全体をストリーミングすることなしにもたらされ得る。仮想化されたアプリケーション112の実行をカプセル化するため、およびサーバ104からクライアントデバイス112に仮想化されたアプリケーション112をストリーミングするためにアプリケーション仮想化クライアント構成要素110によってもたらされる機能に関するさらなる詳細は、それぞれ参照によりそれらの全体が本明細書に組み込まれている、SystemsandMethodsforDeliveringContentoveraComputerNetworkという名称の、2007年5月29日に出願した特許文献1、MethodandSystemforServingSoftwareApplicationstoClientComputersという名称の、2007年4月3日に出願した特許文献2、OperatingSystemAbstractionandProtectionLayerという名称の、2008年11月11日に出願した特許文献3、およびServingSoftwareApplicationsfromServersforClientComputersという名称の、2010年9月14日に出願した特許文献4において見ることができる。また、アプリケーション仮想化クライアント構成要素110は、仮想化されたアプリケーション112に対するポリシーベースのアクセスをもたらすようにも構成される。これに関して、サーバ104およびクライアントデバイス102が、実行ポリシー114を格納することが可能である。実行ポリシー114は、仮想化されたアプリケーション112が実行され得る条件、または実行され得ない条件を定義する。例えば、実行ポリシー114は、仮想化されたアプリケーション112が、クライアントデバイス102が或る特定の地理的区域内にある場合に限って実行され得ると指定することが可能である。代替として、または組み合わせで、実行ポリシー114は、仮想化されたアプリケーション112が、或る指定された時間帯中に限って、または1日当り或る指定された持続時間に限って実行され得ると指定することも可能である。別の例として、実行ポリシー114は、仮想化されたアプリケーション112が、クライアントデバイス102のいくつかのコンピューティングリソースが制限されていない場合に限って実行され得ると指定することが可能である。例えば、中央処理装置またはネットワーク帯域幅の或る量をクライアントデバイス102が利用できない場合、実行ポリシー114は、仮想化されたアプリケーション112が実行され得ないと指定することが可能である。実行ポリシー114は、物理的位置、時間、または他の要因に基づいて他の制限を指定することもできることを理解されたい。また、クライアントデバイス102またはサーバ104の管理者が実行ポリシー114を設定することができることも理解されたい。仮想化されたアプリケーション112を実行する要求がクライアントデバイス102において受け取られると、アプリケーション仮想化クライアント構成要素110は、実行ポリシー114を評価して、アプリケーション112が実行され得るかどうかを判定するように構成される。実行ポリシー114を評価するため、アプリケーション仮想化クライアント構成要素110は、実行ポリシー114を評価するのに必要なデータを獲得するために他の構成要素と協働し得る。例えば、アプリケーション仮想化クライアント構成要素110は、クライアントデバイス102の物理的位置を特定することができるソフトウェア構成要素またはハードウェア構成要素と連携して動作し得る。クライアントデバイス102の位置を識別するための例示的な技術には、セルラ三角測量技術、全地球測位システムGPS位置特定、A-GPS位置特定、ワイヤレス信号強度ベースの位置特定、有線信号強度ベースの位置特定、インターネットプロトコルアドレスベースの位置特定、およびその他が含まれる。また、アプリケーション仮想化クライアント構成要素110は、実行ポリシー114を評価するのに必要なデータを獲得するために他のタイプの構成要素と連携して動作することも可能である。後段でさらに詳細に説明されるとおり、アプリケーション仮想化クライアント構成要素110が、実行ポリシー114を評価するのに必要なデータを獲得することができない場合、仮想化されたアプリケーション112の実行は、禁止され得る。いくつかの実施形態によれば、実行ポリシー114の評価は、クライアントデバイス102において、サーバ104において、またはクライアントデバイス102とサーバ104との組み合わせにおいて行われ得ることを理解されたい。例えば、一実施形態において、アプリケーション仮想化クライアント構成要素110が、アプリケーション仮想化サーバ構成要素116による実行ポリシー114の評価を要求するように構成される。アプリケーション仮想化サーバ構成要素116が利用できない場合、アプリケーション仮想化クライアント構成要素110は、クライアントデバイス102において実行ポリシー114を評価することが可能である。代替として、アプリケーション仮想化サーバ構成要素116が実行ポリシー114を評価するのに利用できない場合、アプリケーション仮想化クライアント構成要素110は、仮想化されたアプリケーション112の実行を禁止し得る。代替として、アプリケーション仮想化クライアント構成要素110は、全くサーバ104の支援なしにクライアントデバイス102において実行ポリシー114を評価するように構成され得る。アプリケーション仮想化クライアント構成要素110が、実行ポリシー114に基づいて、仮想化されたアプリケーション112が実行され得ると判定した場合、アプリケーション仮想化クライアント構成要素110は、仮想化されたアプリケーション112を使用のために公開する。上記で簡単に説明したとおり、公開するという用語は、仮想化されたアプリケーション112をクライアントデバイス102上で実行され得るようにすることを意味する。例えば、一実施形態において、アプリケーション仮想化クライアント構成要素110は、仮想化されたアプリケーション112がクライアントデバイス102にインストールされているかどうかを判定することによって、仮想化されたアプリケーション112を公開する。仮想化されたアプリケーション112がクライアントデバイス102にインストールされている場合、アプリケーション仮想化クライアント構成要素110は、仮想化されたアプリケーション112を実行され得るようにする。仮想化されたアプリケーション112がクライアントデバイス102にインストールされていない場合、アプリケーション仮想化クライアント構成要素110は、仮想化されたアプリケーション112が、実行のためにサーバ104からクライアントデバイス102にストリーミングされるようにすることが可能である。また、アプリケーション仮想化クライアント構成要素110は、仮想化されたアプリケーション112の実行中に実行ポリシー114を評価するようにも構成される。例えば、アプリケーション仮想化クライアント構成要素110は、実行ポリシー114を定期的に、または絶えず評価して、実行ポリシー114が満たされていることを確実にすることが可能である。アプリケーション仮想化クライアント構成要素110が、実行ポリシー114がもはや満たされていないと判定した場合、アプリケーション仮想化クライアント構成要素110は、仮想化されたアプリケーション112を非公開にする。例えば、アプリケーション仮想化クライアント構成要素110は、仮想化されたアプリケーション112の実行を停止し、さらにアプリケーション112を実行され得ないようにすることが可能である。また、アプリケーション仮想化クライアント構成要素110は、仮想化されたアプリケーション112をクライアントデバイス102から取り除くことも可能である。実行ポリシー114が後に再び満たされた場合、アプリケーション仮想化クライアント構成要素110は、仮想化されたアプリケーション112をサーバ104からクライアントデバイス102にストリーミングすることによって、仮想化されたアプリケーション112を再公開することが可能である。上記で簡単に説明したとおり、アプリケーション仮想化クライアント構成要素110はまた、実行ポリシー114が評価され得ない場合、仮想化されたアプリケーション112を非公開にすることもする。例えば、仮想化されたアプリケーション112は、アプリケーション112が、或る特定の地理的区域内に限って実行されることを実行ポリシー114が要求し、さらに地理的区域が、アプリケーション仮想化クライアント構成要素110によって特定され得ない場合、非公開にされ得る。クライアントデバイス102が、アプリケーション112の実行が許される地理的区域に後に戻された場合、アプリケーション仮想化クライアント構成要素110は、アプリケーション112を実行のために再公開することが可能である。他の態様によれば、アプリケーション仮想化クライアント構成要素110は、サーバ104およびクライアントデバイス102の管理者によって使用されるように監査データを格納するように構成される。例えば、監査データには、仮想化されたアプリケーション112に対する許可されなかったアクセスを識別するデータ、アプリケーション仮想化クライアント構成要素110がアプリケーション112を非公開にした条件、ならびに構成要素110および116によって供給された、アプリケーション仮想化環境の管理者に潜在的に役立つ他の情報が含まれ得る。アプリケーション仮想化クライアント構成要素110、クライアントデバイス102、およびサーバ104の動作に関するさらなる詳細が、図2A~図2Bに関連して後段で与えられる。図2A~図2Bは、仮想化されたアプリケーションに対するポリシーベースのアクセスのための本明細書で開示される1つの例示的なプロセスの態様を例示するルーチン200を示す流れ図である。図2A~図2B、およびその他の図に関連して本明細書で説明される論理的動作は、1コンピューティングシステム上で実行される一連のコンピュータによって実施される動作、もしくはプログラムモジュールとして、さらに/または2コンピューティングシステム内の互いに接続されたマシン論理回路もしくは回路モジュールとして実施されることを理解されたい。実施形態は、コンピューティングシステムのパフォーマンスおよび他の要件に依存する選択の問題である。したがって、本明細書で説明される論理動作は、動作、構造的デバイス、作用、またはモジュールと様々な呼ばれ方をする。これらの動作、構造的デバイス、作用、およびモジュールは、ソフトウェアで、ファームウェアで、専用のデジタルロジックで、さらに以上の任意の組み合わせで実施され得る。また、図に示され、本明細書で説明されるより多い、または少ない動作が実行されてもよいことも理解されたい。また、これらの動作は、本明細書で説明される順序とは異なる順序で実行されることも可能である。ルーチン200は、動作202で始まり、アプリケーション仮想化クライアント構成要素110が、仮想化されたアプリケーション112を実行する要求が受け取られているかどうかを判定する。例えば、クライアントデバイス102のユーザが、アプリケーション112を実行する要求を行い得る。そのような要求が受け取られていない場合、ルーチン200は、動作202に戻り、別のそのような判定が行われる。アプリケーション仮想化クライアント構成要素110が、仮想化されたアプリケーション112を実行する要求が受け取られていると判定した場合、ルーチン200は、動作202から動作204に進む。動作204で、アプリケーション仮想化クライアント構成要素110が、実行ポリシー114を評価しようと試みる。前述したとおり、アプリケーション仮想化クライアント構成要素110は、他の構成要素によってもたらされる機能を利用して、実行ポリシー114を評価するのに必要なデータを獲得することが可能である。例えば、アプリケーション仮想化クライアント構成要素110は、クライアントデバイス102の地理的位置を識別するデータ、時刻、または実行ポリシー114を評価するのに必要な他の情報を獲得することが可能である。動作204から、ルーチン200は、動作206に進む。動作206で、アプリケーション仮想化クライアント構成要素110が、アプリケーション仮想化クライアント構成要素110が実行ポリシー114を評価することができたかどうかを判定する。例えば、アプリケーション仮想化クライアント構成要素110は、クライアントデバイス102の地理的位置などのデータが利用できない場合、実行ポリシー114を評価することができない可能性がある。また、アプリケーション仮想化クライアント構成要素110は、他の実施形態において、サーバ104に対するネットワーク接続が行われ得ない場合、実行ポリシー114を評価することができないこともあり得る。また、他のタイプの要因が、アプリケーション仮想化クライアント構成要素110が実行ポリシー114を評価することを防止することもあり得る。実行ポリシー114が評価され得ない場合、ルーチン200は、動作206から動作208に進む。動作208で、アプリケーション仮想化クライアント構成要素110が、仮想化されたアプリケーション112を実行する要求を拒否する。さらに、前述したとおり、アプリケーション仮想化クライアント構成要素110は、仮想化されたアプリケーション112に対する許可されなかったアクセスに関する監査データを、アプリケーション仮想化環境の管理者に潜在的に役立つ他の情報と一緒に格納することが可能である。動作208から、ルーチン200は、前述した動作202に進み、アプリケーション112を実行する別の要求が処理され得る。実行ポリシー114がアプリケーション仮想化クライアント構成要素110によって評価された場合、ルーチン200は、動作206から動作210に進む。動作210で、実行ポリシー114が満たされていたかどうかの判定が行われる。実行ポリシー114が満たされていなかった場合、ルーチン200は、動作210から動作208に進み、仮想化されたアプリケーション112を実行する要求が拒否される。さらに、前述したとおり、監査データが格納されることも可能である。実行ポリシー114が満たされていた場合、ルーチン200は、動作212に進み、アプリケーション仮想化クライアント構成要素110が仮想化されたアプリケーション112を公開する。前述したとおり、アプリケーション112を公開するために、アプリケーション仮想化クライアント構成要素110は、アプリケーション112がクライアントデバイス102にインストールされているかどうかを判定することが可能である。アプリケーション112がインストールされている場合、アプリケーション仮想化クライアント構成要素110は、仮想化されたアプリケーションを、クライアントデバイス102上の実行のために実行され得るようにすることが可能である。仮想化されたアプリケーション112がクライアントデバイス102にインストールされていない場合、アプリケーション仮想化クライアント構成要素110は、仮想化されたアプリケーション112が、実行のためにサーバ104からクライアントデバイス102にストリーミングされるようにすることが可能である。アプリケーション112が公開されると、ルーチン200は、動作212から動作214に進む。一実施形態によれば、アプリケーション仮想化クライアント構成要素110は、仮想化されたアプリケーション112が非公開にされるたびにアプリケーション112の状態を格納するように構成され得る。例えば、アプリケーション仮想化クライアント構成要素110は、アプリケーション112が非公開にされるたびにクライアントデバイス102のリソースの状態を記述するメモリ、レジスタ、およびデータの内容を格納することが可能である。この実装において、アプリケーション仮想化クライアント構成要素110は、仮想化されたアプリケーション112が再公開されるたびにアプリケーション112の以前に保存された状態を復元するように構成され得る。例えば、ルーチン200の動作214で、アプリケーション仮想化クライアント構成要素110が、仮想化されたアプリケーション112の以前に保存された状態を復元する。このようにして、再公開が行われると、クライアントデバイス102のユーザに、仮想化されたアプリケーション112が非公開にされた時点と同一の状態にあるアプリケーション112が提示され得る。動作214から、ルーチン200は、動作216に進み、アプリケーション仮想化クライアント構成要素110が、仮想化されたアプリケーション112が実行されるようにする。前述したとおり、アプリケーション仮想化クライアント構成要素110は、オペレーティングシステム108、他のアプリケーションプログラム、およびシステムリソースから仮想化されたアプリケーション112の実行をカプセル化するための機能をもたらす。動作216から、ルーチン200は、動作218に進む。動作218で、アプリケーション仮想化クライアント構成要素110は、仮想化されたアプリケーション112の実行中に実行ポリシー114を評価しようと試みる。このようにして、アプリケーション仮想化クライアント構成要素110は、仮想化されたアプリケーション112が実行されている間でさえ、実行ポリシー114によって課せられる制限を執行することができる。動作218から、ルーチン200は、動作220に進み、アプリケーション仮想化クライアント構成要素110が、アプリケーション仮想化クライアント構成要素110が実行ポリシー114を評価することができたかどうかを判定する。例えば、前述したとおり、アプリケーション仮想化クライアント構成要素110は、必要とされるデータが利用できない場合、またはサーバ104に対する接続が確立され得ない場合、実行ポリシー114を評価することができない可能性がある。実行ポリシー114が評価されることが可能であった場合、ルーチン200は、動作220から動作222に進む。動作222で、アプリケーション仮想化クライアント構成要素110が、実行ポリシー114が満たされるかどうかを判定する。満たされる場合、ルーチン200は、動作222から、前述した動作216に進み、仮想化されたアプリケーション112の実行が続けられる。実行ポリシー114が満たされない場合、ルーチン200は、動作222から動作224に進む。さらに、ルーチン200は、アプリケーション仮想化クライアント構成要素110が実行ポリシー114を評価することができない場合、動作220から動作224に進む。動作224で、アプリケーション仮想化クライアント構成要素110が、仮想化されたアプリケーション112の状態を格納する。前述したとおり、アプリケーション仮想化クライアント構成要素110は、再公開の後、仮想化されたアプリケーション112を現在の状態に戻すのに必要なメモリ、レジスタ内容、およびその他の情報を格納することが可能である。仮想化されたアプリケーション112の状態が格納されると、ルーチン200は、動作226に進む。動作226で、アプリケーション仮想化クライアント構成要素110が、仮想化されたアプリケーション112を非公開にする。上記で簡単に説明したとおり、アプリケーション仮想化クライアント構成要素110は、仮想化されたアプリケーション112をクライアントデバイス102によって実行され得ないようにすることによって、アプリケーション112を非公開にすることが可能である。また、アプリケーション仮想化クライアント構成要素110は、仮想化されたアプリケーション112、および仮想化されたアプリケーション112の状態をクライアントデバイス102から取り除くことも可能である。仮想化されたアプリケーション112は、次回に仮想化されたアプリケーション112が実行される際、サーバ104からクライアントデバイス102にストリーミングされ得る。また、アプリケーション仮想化クライアント構成要素110は、動作226で、アプリケーション112に対する許可されなかったアクセスに関する監査データ、アプリケーション112が非公開にされた条件、ならびにクライアントデバイス102およびサーバ104の管理者に潜在的に役立つ他の情報を格納することも可能である。動作226から、ルーチン200は、前述した動作202に進み、アプリケーション112に対するさらなる要求が、前述した様態で処理される。図3は、本明細書で提示される様々な実施形態を実施することができるコンピューティングシステムに関する例示的なコンピュータハードウェア-ソフトウェアアーキテクチャを示すコンピュータアーキテクチャ図である。図3に示されるコンピュータアーキテクチャは、従来のデスクトップコンピュータ、ラップトップコンピュータ、またはサーバコンピュータを示し、さらに本明細書で説明される様々なソフトウェア構成要素を実行するのに利用され得る。図3に示されるコンピュータアーキテクチャは、中央処理装置302CPUと、ランダムアクセスメモリ314RAMおよび読み取り専用メモリROM316を含むシステムメモリ308と、このメモリをCPU302に結合するシステムバス304とを含む。起動中などに、コンピュータ300内の要素間で情報を転送するのを助ける基本ルーチンを含む基本入出力システムBIOSが、ROM316の中に格納される。コンピュータ300は、後段でさらに詳細に説明される、オペレーティングシステム318、アプリケーションプログラム、および他のプログラムモジュールを格納するための大容量ストレージデバイス310をさらに含む。大容量ストレージデバイス310は、バス304に接続された大容量ストレージコントローラ図示せずを介してCPU302に接続される。大容量ストレージデバイス310、および関連するコンピュータ読み取り可能な記憶媒体は、コンピュータ300に不揮発性ストレージをもたらす。本明細書に含まれるコンピュータ読み取り可能な媒体の説明は、ハードディスクドライブまたはCD-ROMドライブなどの大容量ストレージデバイスについて述べるが、コンピュータ読み取り可能な記憶媒体は、コンピュータ300によってアクセスされ得る任意の利用可能なコンピュータ記憶媒体であり得ることが当業者には理解されよう。例として、限定としてではなく、コンピュータ読み取り可能な記憶媒体には、コンピュータ読み取り可能な命令、データ構造、プログラムモジュール、または他のデータなどの情報を格納するために任意の方法または技術で実施される揮発性媒体および不揮発性媒体、リムーバブルメディアおよびリムーバブルでないメディアが含まれ得る。例えば、コンピュータ読み取り可能な記憶媒体には、RAM、ROM、EPROM、EEPROM、フラッシュメモリもしくは他のソリッドステートメモリ技術、CD-ROM、デジタルバーサタイルディスクDVD、HD-DVD、BLU-RAY登録商標もしくは他の光ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージもしくは他の磁気ストレージデバイス、または所望される情報を格納するのに使用され得るとともに、コンピュータ300によってアクセスされ得る他の任意の一時的でない媒体が含まれるが、以上には限定されない。また、本明細書で開示されるコンピュータ読み取り可能な媒体は、通信媒体も包含することを理解されたい。通信媒体は、通常、コンピュータ読み取り可能な命令、データ構造、プログラムモジュール、または他のデータを搬送波などの変調されたデータ信号で、または他のトランスポート機構で実現し、さらに任意の情報配信媒体を含む。変調されたデータ信号という用語は、信号内に情報を符号化するように特性の1つまたは複数が設定されている、または変更されている信号を意味する。例として、限定としてではなく、通信媒体には、有線ネットワークまたは直接配線接続などの有線媒体、ならびに音響媒体、RF媒体、赤外線媒体、およびその他のワイヤレス媒体などのワイヤレス媒体が含まれる。また、前述した媒体のうちの任意の媒体の組み合わせも、コンピュータ読み取り可能な媒体の範囲内に含められなければならない。コンピュータ読み取り可能な記憶媒体は、通信媒体を包含しない。様々な実施形態によれば、コンピュータ300は、ネットワーク320のようなネットワークを介する遠隔コンピュータに対する論理接続を使用するネットワーク化された環境において動作することが可能である。コンピュータ300は、バス304に接続されたネットワークインターフェイスユニット306を介してネットワーク320に接続され得る。ネットワークインターフェイスユニット306は、他のタイプのネットワークおよび遠隔コンピュータシステムを接続するのにも利用され得ることを理解されたい。また、コンピュータ300は、キーボード、マウス、または電子スタイラス図3には示されないを含む、いくつかの他のデバイスからの入力を受け取るため、および処理するための入出力コントローラ312を含むことも可能である。同様に、入出力コントローラが、ディスプレイ画面、プリンタ、または他のタイプの出力デバイスやはり、図3には示されないに出力を供給することも可能である。上記で簡単に説明したとおり、ネットワーク化されたデスクトップコンピュータ、ラップトップコンピュータ、またはサーバコンピュータの動作を制御するのに適したオペレーティングシステム318を含む、いくつかのプログラムモジュールおよびデータファイルが、コンピュータ300の大容量ストレージデバイス310およびRAM314の中に格納され得る。また、大容量ストレージデバイス310およびRAM314は、1つまたは複数のプログラムモジュールを格納することも可能である。特に、大容量ストレージデバイス310およびRAM314は、仮想化されたアプリケーション112、アプリケーション仮想化クライアント構成要素110、および/または前述した他のソフトウェア構成要素を格納することが可能である。また、大容量ストレージデバイス310およびRAM314は、他のプログラムモジュール、および実行ポリシー114などのデータを格納することも可能である。一般に、ソフトウェアアプリケーションまたはモジュールは、CPU302にロードされ、実行されると、CPU302および全体的なコンピュータ300を汎用コンピューティングシステムから、本明細書で提示される機能を実行するようにカスタマイズされた専用コンピューティングシステムに変換する。CPU302は、個々に、または共同で任意の数の状態をとり得る任意の数のトランジスタまたは他の別個の回路要素から構築され得る。より具体的には、CPU302は、ソフトウェア内、またはモジュール内に含まれる実行可能命令に応答して、1つまたは複数の有限状態マシンとして動作することが可能である。これらのコンピュータ実行可能命令は、CPU302が状態の間をどのように遷移するかを指定して、CPU302を構成するトランジスタまたは他の別個のハードウェア要素を物理的に変換することによって、CPU302を変換することが可能である。また、ソフトウェアまたはモジュールを大容量ストレージデバイス上に符号化することが、大容量ストレージデバイスまたは関連するコンピュータ読み取り可能な記憶媒体の物理的構造を変換することも可能である。物理的構造の特定の変換は、この説明の様々な実施形態において、様々な要因に依存し得る。そのような要因の例には、コンピュータ読み取り可能な記憶媒体が一次ストレージとして特徴付けられるか、二次ストレージとして特徴付けられるかにかかわらず、コンピュータ読み取り可能な記憶媒体を実施するのに使用される技術などが含まれ得るが、そのような技術には限定されない。例えば、コンピュータ読み取り可能な記憶媒体が半導体ベースのメモリとして実施される場合、ソフトウェアまたはモジュールは、ソフトウェアが半導体メモリの中に符号化されると、半導体メモリの物理的状態を変換することが可能である。例えば、ソフトウェアは、半導体メモリを構成するトランジスタ、キャパシタ、または他の別個の回路要素の状態を変換することが可能である。別の例として、コンピュータ読み取り可能な記憶媒体は、磁気技術または光技術を使用して実施され得る。そのような実施形態において、ソフトウェアまたはモジュールは、ソフトウェアが磁気媒体または光媒体の中に符号化されると、磁気媒体または光媒体の物理的状態を変換することが可能である。これらの変換には、所与の磁気媒体内の特定の位置の磁気特性を変えることが含まれ得る。また、これらの変換には、所与の光媒体内の特定の位置の物理的特徴または物理的特性を変えて、それらの位置の光学特性を変化させるようにすることも含まれ得る。本明細書の説明の範囲および趣旨を逸脱することなく、物理媒体の他の変換も可能であり、前述の例は、この説明を容易にするように与えられているに過ぎない。以上に基づいて、仮想化されたアプリケーションに対するポリシーベースのアクセスのための技術が本明細書で提示されたことが理解されよう。本明細書で提示される主題は、コンピュータ構造上の特徴、方法上の動作、およびコンピュータ読み取り可能な媒体に特有の用語で説明されてきたが、添付の特許請求の範囲において規定される本発明は、本明細書で説明される特定の特徴、動作、および媒体に必ずしも限定されないものと理解されたい。むしろ、特定の特徴、動作、および媒体は、特許請求の範囲を実施する例示的な形態として開示される。前述の主題は、単に例として与えられ、限定するものと解釈されるべきではない。図示され、説明される例示的な実施形態および応用例に従うことなしに、添付の特許請求の範囲に記載される本発明の真の趣旨および範囲を逸脱することなく、本明細書で説明される主題に様々な変形および変更が行われ得る。