JP2014501419A - 仮想化されたアプリケーションに対するポリシーベースのアクセス - Google Patents

仮想化されたアプリケーションに対するポリシーベースのアクセス Download PDF

Info

Publication number
JP2014501419A
JP2014501419A JP2013547566A JP2013547566A JP2014501419A JP 2014501419 A JP2014501419 A JP 2014501419A JP 2013547566 A JP2013547566 A JP 2013547566A JP 2013547566 A JP2013547566 A JP 2013547566A JP 2014501419 A JP2014501419 A JP 2014501419A
Authority
JP
Japan
Prior art keywords
application
virtualized application
computer
virtualized
executed
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2013547566A
Other languages
English (en)
Other versions
JP5960164B2 (ja
JP2014501419A5 (ja
Inventor
ウェリントン ミフォード ジュニア クリード
クリストファー バベイ マシュー
シャルドン アルヴィン
エリオット スターンズ スコット
ブラディ アンダーソン アダム
ペレイラ デソウザ リディアン
メーレ アンダーソン アンジェラ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2014501419A publication Critical patent/JP2014501419A/ja
Publication of JP2014501419A5 publication Critical patent/JP2014501419A5/ja
Application granted granted Critical
Publication of JP5960164B2 publication Critical patent/JP5960164B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/468Specific access rights for resources, e.g. using capability register
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45575Starting, stopping, suspending or resuming virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2111Location-sensitive, e.g. geographical location, GPS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general

Abstract

仮想化されたアプリケーションを実行する要求が受け取られると、アプリケーション仮想化クライアント構成要素が、実行ポリシーを評価して、アプリケーションが実行され得るかどうかを判定する。アプリケーション仮想化クライアント構成要素が、実行ポリシーに基づいて、仮想化されたアプリケーションが実行され得ると判定した場合、アプリケーション仮想化クライアント構成要素は、仮想化されたアプリケーションを公開する。アプリケーション仮想化クライアント構成要素は、仮想化されたアプリケーションがインストールされている場合、そのアプリケーションを実行され得るようにすることによって、さらに仮想化されたアプリケーションがインストールされていない場合、そのアプリケーションをインストールすることによって、そのアプリケーションを公開する。また、アプリケーション仮想化クライアント構成要素は、仮想化されたアプリケーションの実行中に実行ポリシーを評価することもする。アプリケーション仮想化クライアント構成要素が、実行ポリシーがもはや満たされていないと判定した場合、アプリケーション仮想化クライアント構成要素は、仮想化されたアプリケーションを非公開にして、仮想化されたアプリケーションの実行を防止する。

Description

本発明は、仮想化されたアプリケーションに対するポリシーベースのアクセスに関する。
企業、行政機関、およびその他のタイプのエンティティは、一般に、いくつかのタイプの機密情報または繊細な情報へのアクセスを制限する。物理的な文書など物理的情報へのアクセスを制限することは、標準のアクセス制限を使用して容易に達成することができる。また、サーバコンピュータ上に格納された文書などデジタル情報へのアクセスを制限することも、アクセス制御リストなど標準のセキュリティ対策を使用して比較的容易に達成することができる。
米国特許第7,225,264号明細書 米国特許第7,200,632号明細書 米国特許第7,451,451号明細書 米国特許第7,797,372号明細書
コンピュータアプリケーションプログラム(「アプリケーション」)の使用を制限することは、特に、別の状況ではそのアプリケーションを使用することが許可されているユーザを、何らかの様態で制限しなければならない場合、物理的アイテムへのアクセスを制限することと比べて、より困難な場合がある。このことは、ラップトップコンピュータ、タブレットコンピュータ、およびスマートフォンなどのポータブルコンピューティングデバイスを従業員に支給する組織に特に当てはまる。従業員は、支給されたコンピューティングデバイスに絶えずアクセスするため、それらのコンピューティングデバイス上にインストールされたアプリケーションの使用を制限することは困難な場合がある。
本明細書でなされる開示は、以上、およびその他の考慮に関連して提示される。
仮想化されたアプリケーションに対するポリシーベースのアクセスのための技術が、本明細書で説明される。本明細書で提示される概念および技術の実施を介して、実行ポリシーに従って仮想化されたアプリケーションの実行を制限することができるアプリケーション仮想化環境が提供され得る。この実行ポリシーは、管理者によって設定されることが可能であり、仮想化されたアプリケーションが実行され得る条件、または実行され得ない条件を定義する。このようにして、アプリケーションの実行は、アプリケーションが実行されるデバイスの地理的位置、アプリケーションの使用の時間帯もしくは持続時間、デバイスにいくつかのコンピューティングリソースが利用可能であるかどうか、またはその他の条件などの、様々な条件に基づいて制限され得る。
本明細書で開示される実施形態は、アプリケーション仮想化環境に関連して実施される。特に、アプリケーション仮想化クライアント構成要素が、仮想化されたアプリケーションの実行のための環境を提供するように構成される。また、アプリケーション仮想化クライアント構成要素は、基礎をなすオペレーティングシステム、他のアプリケーションプログラム、およびシステムリソースから仮想化されたアプリケーションをカプセル化するための機能も提供する。また、アプリケーション仮想化クライアント構成要素は、アプリケーション仮想化サーバ構成要素から仮想化されたアプリケーションの必要とされる部分をストリーミングすることによって、仮想化されたアプリケーションのいくつかの部分をロードするための機能を提供することも可能である。
別の態様によれば、アプリケーション仮想化クライアント構成要素は、仮想化されたアプリケーションに対するポリシーベースのアクセスをもたらすように構成される。特に、仮想化されたアプリケーションを実行する要求が受け取られると、アプリケーション仮想化クライアント構成要素は、実行ポリシーを評価して、そのアプリケーションが実行され得るかどうかを判定する。上記で簡単に説明したとおり、実行ポリシーは、管理者によって設定されることが可能であり、仮想化されたアプリケーションが実行され得る条件、または実行され得ない条件を定義する。例えば、実行ポリシーは、仮想化されたアプリケーションが、このアプリケーションを実行するデバイスが或る指定された地理的区域内にある場合に限って実行され得る、このアプリケーションが、或る指定された時間帯中(例えば、午前9時から午後5時まで)に限って、1日当り或る指定された持続時間(例えば、1日当り1時間)に限って実行され得る、またはこのアプリケーションが、いくつかのコンピューティングリソースが制限されていない場合に限って実行され得る、と指定することが可能である。
アプリケーション仮想化クライアント構成要素が、実行ポリシーに基づいて、仮想化されたアプリケーションが実行され得ると判定した場合、アプリケーション仮想化クライアント構成要素は、仮想化されたアプリケーションを公開する。本明細書で使用される「公開する」という用語は、仮想化されたアプリケーションを実行され得るようにすることを意味する。例えば、一実施形態において、アプリケーション仮想化クライアントアプリケーションは、仮想化されたアプリケーションがインストールされているかどうかを判定し、さらに、インストールされている場合、仮想化されたアプリケーションを実行され得るようにすることによって、仮想化されたアプリケーションを公開する。仮想化されたアプリケーションがインストールされていない場合、アプリケーション仮想化クライアント構成要素は、その仮想化されたアプリケーションが、実行のためにデバイスにストリーミングされるようにすることが可能である。
別の態様によれば、アプリケーション仮想化クライアント構成要素は、仮想化されたアプリケーションの実行中、実行ポリシーを定期的に、または絶えず評価する。アプリケーション仮想化クライアント構成要素が、実行ポリシーがもはや満たされないと判定した場合、アプリケーション仮想化クライアント構成要素は、仮想化されたアプリケーションを「非公開にする」。例えば、アプリケーション仮想化クライアント構成要素は、仮想化されたアプリケーションの実行を停止し、さらにそのアプリケーションを実行され得ないようにすることが可能である。また、アプリケーション仮想化クライアント構成要素は、仮想化されたアプリケーションを、そのアプリケーションが実行されているクライアントデバイスから取り除くことも可能である。
別の態様によれば、アプリケーション仮想化クライアント構成要素は、実行ポリシーが評価され得ない場合に、仮想化されたアプリケーションを非公開にすることもする。例えば、仮想化されたアプリケーションは、そのアプリケーションが或る特定の地理的区域内に限って実行されることを実行ポリシーが要求し、さらにそのアプリケーションを実行しているデバイスが入っている地理的区域が特定され得ない場合、非公開にされ得る。また、アプリケーション仮想化クライアント構成要素は、仮想化されたアプリケーションに対する許可されなかったアクセスに関する監査データ、アプリケーションが非公開にされた条件、およびアプリケーション仮想化環境の管理者に潜在的に役立つ他の情報を格納することも可能である。
この概要は、特許請求の範囲に記載される主題の重要な特徴または不可欠な特徴を特定することは意図しておらず、この概要が特許請求の範囲に記載される主題の範囲を制限するように使用されることも意図していない。さらに、特許請求の範囲に記載される主題は、本開示のいずれの部分に記載されるいずれかの欠点を解決する実施形態にも、そのようなすべての欠点を解決する実施形態にも限定されない。
本明細書で開示される実施形態に関する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によってもたらされる機能に関するさらなる詳細は、それぞれ参照によりそれらの全体が本明細書に組み込まれている、「Systems and Methods for Delivering Content over a Computer Network」という名称の、2007年5月29日に出願した特許文献1、「Method and System for Serving Software Applications to Client Computers」という名称の、2007年4月3日に出願した特許文献2、「Operating System Abstraction and Protection Layer」という名称の、2008年11月11日に出願した特許文献3、および「Serving Software Applications from Servers for Client Computers」という名称の、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に示されるコンピュータアーキテクチャは、中央処理装置302(「CPU」)と、ランダムアクセスメモリ314(「RAM」)および読み取り専用メモリ(「ROM」)316を含むシステムメモリ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を変換することが可能である。
また、ソフトウェアまたはモジュールを大容量ストレージデバイス上に符号化することが、大容量ストレージデバイスまたは関連するコンピュータ読み取り可能な記憶媒体の物理的構造を変換することも可能である。物理的構造の特定の変換は、この説明の様々な実施形態において、様々な要因に依存し得る。そのような要因の例には、コンピュータ読み取り可能な記憶媒体が一次ストレージとして特徴付けられるか、二次ストレージとして特徴付けられるかにかかわらず、コンピュータ読み取り可能な記憶媒体を実施するのに使用される技術などが含まれ得るが、そのような技術には限定されない。例えば、コンピュータ読み取り可能な記憶媒体が半導体ベースのメモリとして実施される場合、ソフトウェアまたはモジュールは、ソフトウェアが半導体メモリの中に符号化されると、半導体メモリの物理的状態を変換することが可能である。例えば、ソフトウェアは、半導体メモリを構成するトランジスタ、キャパシタ、または他の別個の回路要素の状態を変換することが可能である。
別の例として、コンピュータ読み取り可能な記憶媒体は、磁気技術または光技術を使用して実施され得る。そのような実施形態において、ソフトウェアまたはモジュールは、ソフトウェアが磁気媒体または光媒体の中に符号化されると、磁気媒体または光媒体の物理的状態を変換することが可能である。これらの変換には、所与の磁気媒体内の特定の位置の磁気特性を変えることが含まれ得る。また、これらの変換には、所与の光媒体内の特定の位置の物理的特徴または物理的特性を変えて、それらの位置の光学特性を変化させるようにすることも含まれ得る。本明細書の説明の範囲および趣旨を逸脱することなく、物理媒体の他の変換も可能であり、前述の例は、この説明を容易にするように与えられているに過ぎない。
以上に基づいて、仮想化されたアプリケーションに対するポリシーベースのアクセスのための技術が本明細書で提示されたことが理解されよう。本明細書で提示される主題は、コンピュータ構造上の特徴、方法上の動作、およびコンピュータ読み取り可能な媒体に特有の用語で説明されてきたが、添付の特許請求の範囲において規定される本発明は、本明細書で説明される特定の特徴、動作、および媒体に必ずしも限定されないものと理解されたい。むしろ、特定の特徴、動作、および媒体は、特許請求の範囲を実施する例示的な形態として開示される。
前述の主題は、単に例として与えられ、限定するものと解釈されるべきではない。図示され、説明される例示的な実施形態および応用例に従うことなしに、添付の特許請求の範囲に記載される本発明の真の趣旨および範囲を逸脱することなく、本明細書で説明される主題に様々な変形および変更が行われ得る。

Claims (10)

  1. コンピュータが実施する、
    仮想化されたアプリケーションを実行する要求を受け取る動作と、
    前記要求を受け取ったことに応答して、前記仮想化されたアプリケーションに関して実行ポリシーを評価して、前記仮想化されたアプリケーションが実行され得るかどうかを判定する動作と、
    前記仮想化されたアプリケーションが実行され得ると判定したことに応答して、前記仮想化されたアプリケーションを公開する動作と
    を実行するステップを含むことを特徴とするコンピュータ実施方法。
  2. 前記実行ポリシーは、前記仮想化されたアプリケーションが、前記仮想化されたアプリケーションを実行するデバイスが或る指定された地理的位置に位置している場合に限って実行され得ると指定することを特徴とする請求項1に記載のコンピュータ実施方法。
  3. 前記実行ポリシーは、前記仮想化されたアプリケーションが、或る指定された期間中に限って実行され得ると指定することを特徴とする請求項1に記載のコンピュータ実施方法。
  4. 前記実行ポリシーは、前記仮想化されたアプリケーションが、或る指定された持続時間に限って実行され得ると指定することを特徴とする請求項1に記載のコンピュータ実施方法。
  5. 前記実行ポリシーは、前記仮想化されたアプリケーションが、前記仮想化されたアプリケーションを実行するデバイスによって利用されるコンピューティングリソースが制限されていない場合に限って実行され得ると指定することを特徴とする請求項1に記載のコンピュータ実施方法。
  6. 前記実行ポリシーが評価され得るかどうかを判定するステップと、
    前記実行ポリシーが評価され得ないと判定したことに応答して、前記仮想化されたアプリケーションを非公開にするステップとをさらに含むことを特徴とする請求項1に記載のコンピュータ実施方法。
  7. 前記仮想化されたアプリケーションを公開する動作は、
    前記仮想化されたアプリケーションがデバイスにインストールされているかどうかを判定すること、
    前記仮想化されたアプリケーションが前記デバイスにインストールされている場合、前記仮想化されたアプリケーションを実行され得るようにすること、および
    前記仮想化されたアプリケーションが前記デバイスにインストールされていない場合、前記仮想化されたアプリケーションを前記デバイスにストリーミングすることを含むことを特徴とする請求項6に記載のコンピュータ実施方法。
  8. コンピュータによって実行されると、前記コンピュータに、
    仮想化されたアプリケーションを実行する要求を受け取らせ、
    前記要求を受け取ったことに応答して、前記仮想化されたアプリケーションに関して実行ポリシーを評価して、前記仮想化されたアプリケーションが実行され得るかどうかを判定させ、および
    前記仮想化されたアプリケーションが実行され得ると判定したことに応答して、前記仮想化されたアプリケーションを公開させる
    コンピュータ実行可能命令を格納していることを特徴とするコンピュータ読み取り可能な記憶媒体。
  9. 前記コンピュータによって実行されると、前記コンピュータに、
    前記仮想化されたアプリケーションの実行中に前記実行ポリシーを評価して、前記仮想化されたアプリケーションが引き続き実行され得るかどうかを判定させ、および
    前記仮想化されたアプリケーションが引き続き実行され得ないと判定したことに応答して、前記仮想化されたアプリケーションを非公開にさせる
    コンピュータ実行可能命令をさらに格納していることを特徴とする請求項8に記載のコンピュータ読み取り可能な記憶媒体。
  10. 前記コンピュータによって実行されると、前記コンピュータに、
    前記実行ポリシーが評価され得るかどうかを判定させ、および
    前記実行ポリシーが評価され得ないと判定したことに応答して、前記仮想化されたアプリケーションを非公開にさせる
    コンピュータ実行可能命令をさらに格納していることを特徴とする請求項9に記載のコンピュータ読み取り可能な記憶媒体。
JP2013547566A 2010-12-27 2011-12-22 仮想化されたアプリケーションに対するポリシーベースのアクセス Active JP5960164B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/978,655 US8931037B2 (en) 2010-12-27 2010-12-27 Policy-based access to virtualized applications
US12/978,655 2010-12-27
PCT/US2011/066790 WO2012092113A2 (en) 2010-12-27 2011-12-22 Policy-based access to virtualized applications

Publications (3)

Publication Number Publication Date
JP2014501419A true JP2014501419A (ja) 2014-01-20
JP2014501419A5 JP2014501419A5 (ja) 2015-01-22
JP5960164B2 JP5960164B2 (ja) 2016-08-02

Family

ID=46318678

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013547566A Active JP5960164B2 (ja) 2010-12-27 2011-12-22 仮想化されたアプリケーションに対するポリシーベースのアクセス

Country Status (6)

Country Link
US (1) US8931037B2 (ja)
EP (1) EP2659422B1 (ja)
JP (1) JP5960164B2 (ja)
CN (2) CN102591701A (ja)
TW (1) TWI566176B (ja)
WO (1) WO2012092113A2 (ja)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9215225B2 (en) 2013-03-29 2015-12-15 Citrix Systems, Inc. Mobile device locking with context
US9137262B2 (en) 2011-10-11 2015-09-15 Citrix Systems, Inc. Providing secure mobile device access to enterprise resources using application tunnels
US20140032733A1 (en) 2011-10-11 2014-01-30 Citrix Systems, Inc. Policy-Based Application Management
US20140053234A1 (en) * 2011-10-11 2014-02-20 Citrix Systems, Inc. Policy-Based Application Management
US9280377B2 (en) 2013-03-29 2016-03-08 Citrix Systems, Inc. Application with multiple operation modes
CN104160713B (zh) 2012-03-05 2018-06-05 Lg电子株式会社 视频显示设备及其操作方法
US20140108558A1 (en) 2012-10-12 2014-04-17 Citrix Systems, Inc. Application Management Framework for Secure Data Sharing in an Orchestration Framework for Connected Devices
US9516022B2 (en) 2012-10-14 2016-12-06 Getgo, Inc. Automated meeting room
US8910239B2 (en) 2012-10-15 2014-12-09 Citrix Systems, Inc. Providing virtualized private network tunnels
US20140109176A1 (en) 2012-10-15 2014-04-17 Citrix Systems, Inc. Configuring and providing profiles that manage execution of mobile applications
US9971585B2 (en) 2012-10-16 2018-05-15 Citrix Systems, Inc. Wrapping unmanaged applications on a mobile device
US9606774B2 (en) 2012-10-16 2017-03-28 Citrix Systems, Inc. Wrapping an application with field-programmable business logic
US20140108793A1 (en) 2012-10-16 2014-04-17 Citrix Systems, Inc. Controlling mobile device access to secure data
US9170800B2 (en) 2012-10-16 2015-10-27 Citrix Systems, Inc. Application wrapping for application management framework
US9985850B2 (en) 2013-03-29 2018-05-29 Citrix Systems, Inc. Providing mobile device management functionalities
US9355223B2 (en) 2013-03-29 2016-05-31 Citrix Systems, Inc. Providing a managed browser
US10284627B2 (en) 2013-03-29 2019-05-07 Citrix Systems, Inc. Data management for an application with multiple operation modes
US8849979B1 (en) 2013-03-29 2014-09-30 Citrix Systems, Inc. Providing mobile device management functionalities
US9369449B2 (en) 2013-03-29 2016-06-14 Citrix Systems, Inc. Providing an enterprise application store
US9705801B2 (en) * 2013-10-07 2017-07-11 Facebook, Inc. Systems and methods for mapping and routing based on clustering
CN105227523B (zh) * 2014-06-10 2021-09-28 中兴通讯股份有限公司 虚拟化应用提供、访问方法与装置及实现方法与系统
US10614211B2 (en) * 2017-03-22 2020-04-07 Ca, Inc. Bringing a non-isolated application into an isolation layer with an isolated application
US11048390B2 (en) * 2018-06-25 2021-06-29 MI Technical Solutions, Inc. Auto-reformatting of home screen graphical user interface depicting only administrator-approved applications
JP7309533B2 (ja) * 2019-09-06 2023-07-18 株式会社日立製作所 モデル改善支援システム
US11853782B2 (en) * 2020-12-09 2023-12-26 Dell Products L.P. Method and system for composing systems using resource sets

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008131594A (ja) * 2006-11-24 2008-06-05 Nippon Telegr & Teleph Corp <Ntt> アプリケーション制御システムおよび制御方法
US20090199178A1 (en) * 2008-02-01 2009-08-06 Microsoft Corporation Virtual Application Management
JP2011529596A (ja) * 2008-07-30 2011-12-08 サムスン エレクトロニクス カンパニー リミテッド 仮想化環境と結合されたアプリケーション実行方法

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6154172A (en) 1998-03-31 2000-11-28 Piccionelli; Gregory A. System and process for limiting distribution of information on a communication network based on geographic location
US6763370B1 (en) 1998-11-16 2004-07-13 Softricity, Inc. Method and apparatus for content protection in a secure content delivery system
US7225264B2 (en) 1998-11-16 2007-05-29 Softricity, Inc. Systems and methods for delivering content over a computer network
US7017188B1 (en) 1998-11-16 2006-03-21 Softricity, Inc. Method and apparatus for secure content delivery over broadband access networks
US7200632B1 (en) 1999-04-12 2007-04-03 Softricity, Inc. Method and system for serving software applications to client computers
US6938096B1 (en) 1999-04-12 2005-08-30 Softricity, Inc. Method and system for remote networking using port proxying by detecting if the designated port on a client computer is blocked, then encapsulating the communications in a different format and redirecting to an open port
US7730169B1 (en) 1999-04-12 2010-06-01 Softricity, Inc. Business method and system for serving third party software applications
US7370071B2 (en) 2000-03-17 2008-05-06 Microsoft Corporation Method for serving third party software applications from servers to client computers
US6678824B1 (en) 1999-11-02 2004-01-13 Agere Systems Inc. Application usage time limiter
CA2316003C (en) * 2000-08-14 2009-02-03 Ibm Canada Limited-Ibm Canada Limitee Accessing legacy applications from the internet
US7028305B2 (en) 2001-05-16 2006-04-11 Softricity, Inc. Operating system abstraction and protection layer
US20030069692A1 (en) 2001-10-10 2003-04-10 Krasner Norman F. Methods and apparatuses for controlling distribution of location information
US7328259B2 (en) 2002-11-08 2008-02-05 Symantec Operating Corporation Systems and methods for policy-based application management
US20050080898A1 (en) 2003-10-08 2005-04-14 Block Jerald J. System and method for managing computer usage
US7590743B2 (en) 2003-12-23 2009-09-15 Softricity, Inc. Method and system for associating a process on a multi-user device with a host address unique to a user session associated with the process
JP4379223B2 (ja) * 2004-06-18 2009-12-09 日本電気株式会社 動作モデル作成システム、動作モデル作成方法および動作モデル作成プログラム
CN100498725C (zh) 2004-07-20 2009-06-10 索芙特瑞斯提股份有限公司 用于最小化计算机应用程序中的丢失的方法和系统
EP1674961A1 (en) * 2004-12-21 2006-06-28 International Business Machines Corporation Method for determining an applicable policy for an incoming message
TW200745951A (en) * 2005-10-21 2007-12-16 Vir2Us Inc Computer security method having operating system virtualization allowing multiple operating system instances to securely share single machine resources
US9942271B2 (en) * 2005-12-29 2018-04-10 Nextlabs, Inc. Information management system with two or more interactive enforcement points
US8621549B2 (en) 2005-12-29 2013-12-31 Nextlabs, Inc. Enforcing control policies in an information management system
US20070174429A1 (en) * 2006-01-24 2007-07-26 Citrix Systems, Inc. Methods and servers for establishing a connection between a client system and a virtual machine hosting a requested computing environment
US9860274B2 (en) * 2006-09-13 2018-01-02 Sophos Limited Policy management
US20080134348A1 (en) 2006-12-05 2008-06-05 Microsoft Corporation Conditional policies in software licenses
US7912451B2 (en) 2007-02-26 2011-03-22 Sony Ericsson Mobile Communications Ab Limiting use of electronic equipment features based on location
US7890135B2 (en) 2007-03-09 2011-02-15 Sony Ericsson Mobile Communication Ab System and method for protecting data based on geographic presence of a restricted device
US8875266B2 (en) * 2007-05-16 2014-10-28 Vmware, Inc. System and methods for enforcing software license compliance with virtual machines
US20080313639A1 (en) 2007-06-13 2008-12-18 Krishna Kumar Policy based scheduling of software applications
US20090199175A1 (en) 2008-01-31 2009-08-06 Microsoft Corporation Dynamic Allocation of Virtual Application Server
US8560694B2 (en) * 2008-02-01 2013-10-15 Microsoft Corporation Virtual application server with version control
US8078713B1 (en) * 2008-03-05 2011-12-13 Full Armor Corporation Delivering policy settings with virtualized applications
US9495538B2 (en) 2008-09-25 2016-11-15 Symantec Corporation Graduated enforcement of restrictions according to an application's reputation
US8893009B2 (en) * 2009-01-28 2014-11-18 Headwater Partners I Llc End user device that secures an association of application to service policy with an application certificate check
US8272031B2 (en) * 2009-09-23 2012-09-18 Avaya Inc. Policy-based virtualization method involving adaptive enforcement
US9552497B2 (en) * 2009-11-10 2017-01-24 Mcafee, Inc. System and method for preventing data loss using virtual machine wrapped applications
US8996649B2 (en) * 2010-02-05 2015-03-31 Qualcomm Incorporated Utilizing policies for offload and flow mobility in wireless communications
US20110208797A1 (en) * 2010-02-22 2011-08-25 Full Armor Corporation Geolocation-Based Management of Virtual Applications

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008131594A (ja) * 2006-11-24 2008-06-05 Nippon Telegr & Teleph Corp <Ntt> アプリケーション制御システムおよび制御方法
US20090199178A1 (en) * 2008-02-01 2009-08-06 Microsoft Corporation Virtual Application Management
JP2011529596A (ja) * 2008-07-30 2011-12-08 サムスン エレクトロニクス カンパニー リミテッド 仮想化環境と結合されたアプリケーション実行方法

Also Published As

Publication number Publication date
TW201229905A (en) 2012-07-16
EP2659422A4 (en) 2017-12-27
CN102591701A (zh) 2012-07-18
JP5960164B2 (ja) 2016-08-02
CN107688485A (zh) 2018-02-13
EP2659422A2 (en) 2013-11-06
WO2012092113A2 (en) 2012-07-05
US20120167159A1 (en) 2012-06-28
US8931037B2 (en) 2015-01-06
EP2659422B1 (en) 2021-07-28
WO2012092113A3 (en) 2012-10-04
CN107688485B (zh) 2021-08-24
TWI566176B (zh) 2017-01-11

Similar Documents

Publication Publication Date Title
JP5960164B2 (ja) 仮想化されたアプリケーションに対するポリシーベースのアクセス
US10229283B2 (en) Managing applications in non-cooperative environments
US10037220B2 (en) Facilitating software-defined networking communications in a container-based networked computing environment
US9548897B2 (en) Network entity registry for network entity handles included in network traffic policies enforced for a provider network
US11757937B2 (en) Enabling webapp security through containerization
US9912682B2 (en) Aggregation of network traffic source behavior data across network-based endpoints
US20120246740A1 (en) Strong rights management for computing application functionality
US9959426B2 (en) Method and apparatus for specifying time-varying intelligent service-oriented model
US10440132B2 (en) Tracking application usage in a computing environment
JP2014505931A (ja) 仮想アプリケーションのライセンシングおよびメータリング
US10592259B2 (en) Managed application detection logic
US20140101719A1 (en) Systems and methods for providing a network storage system
CN108293047B (zh) 由用户访问跨多个分布式计算网络的资源的系统和方法
US20170279911A1 (en) Resource usage anonymization
US11288396B2 (en) Data security through physical separation of data
WO2020263430A1 (en) Template-based session control in proxy solutions

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20130905

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20130909

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141126

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141126

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20150523

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151211

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151215

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160314

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160524

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160622

R150 Certificate of patent or registration of utility model

Ref document number: 5960164

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250