(57)【特許請求の範囲】
【請求項１】
モバイルデバイス上で提示するための管理対象アプリケーションを実行し、
前記モバイルデバイス上にローカルにデータファイルを保存する要求を、前記モバイルデバイスが受信し、
前記モバイルデバイスによって、前記データファイルが機密データを含むかどうか判定し、
前記データファイルが機密データを含むと判定した場合、前記要求に応答する際に、
前記モバイルデバイスによって、前記データファイルを暗号化し、
前記モバイルデバイス上に前記暗号化されたデータファイルを記憶し、
前記暗号化されたデータファイルに含まれるメタデータの一部を含むストリームマーカーを用いて、前記モバイルデバイスによって、前記暗号化されたデータファイルを、前記機密データを含まない、暗号化されていないバージョンのデータファイルにリンクする、
方法。
【請求項２】
前記モバイルデバイスにおいて、前記暗号化されたデータファイルを開く要求を受信することと、
それに応答して、前記モバイルデバイスにおいて、所定の条件を満たさない限り前記暗号化されたデータファイルへのアクセスを拒否することと
をさらに含む、請求項１に記載の方法。
【請求項３】
前記判定することは、前記モバイルデバイスにおいて、前記データファイルが前記管理対象アプリケーションにより使用される際に前記データファイルのための変更を受信することを含む、請求項１に記載の方法。
【請求項４】
前記変更を受信する手順は、
前記モバイルデバイスによって、サーバに接続することと、
前記モバイルデバイスによって、前記サーバから情報にアクセスすることと、
前記モバイルデバイスによって、前記情報を前記データファイルへと挿入することと、
前記モバイルデバイスによって、前記機密データが前記情報を備える場合に、前記情報を暗号化することと、
前記モバイルデバイスによって、前記暗号化された情報を前記暗号化されていないバージョンのデータファイルにリンクすることと
を含む、請求項３に記載の方法。
【請求項５】
前記機密データは、秘密データを含む、請求項１に記載の方法。
【請求項６】
前記データファイルは、第１の暗号化鍵が１または複数のサーバのあるグループに特定されている場合に前記第１の暗号化鍵を使用してホストサーバにより暗号化される、請求項１に記載の方法。
【請求項７】
前記第１の暗号化鍵は、前記暗号化されていないデータファイルに関連付けられたメタデータ内に記憶される、請求項６に記載の方法。
【請求項８】
前記メタデータは、前記暗号化されていないデータファイルに関連付けられたファイルストリームおよび変更ジャーナルのうちの１つであり、前記メタデータは、第２の鍵で暗号化される、請求項７に記載の方法。
【請求項９】
少なくとも１つのプロセッサと、
前記少なくとも１つのプロセッサによって実行されると、システムに、モバイルデバイス上で提示のための管理対象アプリケーションを実行することと、前記モバイルデバイス上にローカルにデータファイルを保存する要求を受信することと、前記データファイルが機密データを含むかどうか判定することとを実行させる各命令を記憶する少なくとも１つのメモリとを備え、
前記データファイルが機密データを含むと判定した場合、前記要求に応答する際に、前記命令はさらに前記システムに、
前記データファイルを暗号化させ、
前記モバイルデバイス上に前記暗号化されたデータファイルを記憶させ、
前記暗号化されたデータファイルに含まれるメタデータの一部を含むストリームマーカーを用いて、前記暗号化されたデータファイルを、前記機密データを含まない、暗号化されていないバージョンのデータファイルにリンクさせる、システム。
【請求項１０】
前記命令は、前記システムに、
前記モバイルデバイスにおいて、前記暗号化されたデータファイルを開く要求を受信することと、
それに応答して、前記モバイルデバイスにおいて、所定の条件を満たさない限り前記暗号化されたデータファイルへのアクセスを拒否することと
をさらに実行させる、請求項９に記載のシステム。
【請求項１１】
前記判定することは、前記データファイルが前記管理対象アプリケーションにより使用される際に前記データファイルのための変更を受信することを含む、請求項９に記載のシステム。
【請求項１２】
前記変更を受信する手順は、
サーバに接続することと、
前記サーバから情報にアクセスすることと、
前記データファイルへと前記情報を挿入することと、
前記機密データが前記情報を備える場合に、
前記情報を暗号化することと、
前記暗号化された情報を前記暗号化されていないバージョンのデータファイルにリンクすることと
を含む、請求項１１に記載のシステム。
【請求項１３】
前記機密データは、秘密データを含む、請求項９に記載のシステム。
【請求項１４】
前記データファイルは、第１の暗号化鍵が１または複数のサーバのあるグループに特定されている場合に前記第１の暗号化鍵を使用してホストサーバにより暗号化される、請求項９に記載のシステム。
【請求項１５】
前記第１の暗号化鍵は、前記暗号化されていないデータファイルに関連付けられたメタデータ内に記憶される、請求項１４に記載のシステム。
【請求項１６】
前記メタデータは、前記暗号化されていないデータファイルに関連付けられたファイルストリームおよび変更ジャーナルのうちの１つであり、前記メタデータは、第２の鍵で暗号化される、請求項１５に記載のシステム。
【請求項１７】
格納された命令を有する１つ以上の不揮発性コンピュータ可読記憶媒体であって、前記命令は、１つ以上のプロセッサによって実行されたときに、前記１つ以上のプロセッサに、
モバイルデバイス上での提示のための管理対象アプリケーションを実行することと、
前記モバイルデバイス上にローカルにデータファイルを保存する要求を受信することと、
前記データファイルが機密データを含むかどうか判定することと
を実行させ、
前記データファイルが機密データを含むと判定した場合、前記要求に応答する際に、前記命令は前記１つ以上のプロセッサに、
前記データファイルを暗号化することと、
前記モバイルデバイス上に前記暗号化されたデータファイルを記憶することと、
前記暗号化されたデータファイルに含まれるメタデータの一部を含むストリームマーカーを用いて、前記暗号化されたデータファイルを、前記機密データを含まない、暗号化されていないバージョンのデータファイルにリンクすることと
をさらに実行させる、不揮発性コンピュータ可読記憶媒体。
【請求項１８】
前記命令は、前記１つ以上のプロセッサに、
前記モバイルデバイスにおいて、前記暗号化されたデータファイルを開く要求を受信することと、
それに応答して、前記モバイルデバイスにおいて、所定の条件を満たさない限り前記暗号化されたデータファイルへのアクセスを拒否することと
をさらに実行させる、請求項１７に記載の不揮発性コンピュータ可読記憶媒体。
【請求項１９】
前記判定することは、前記データファイルが前記管理対象アプリケーションにより使用される際に前記データファイルのための変更を受信することを含む、請求項１７に記載の不揮発性コンピュータ可読記憶媒体。
【請求項２０】
前記変更を受信する手順は、
サーバに接続することと、
前記サーバから情報にアクセスすることと、
前記データファイルへと前記情報を挿入することと、
前記機密データが前記情報を備える場合に、前記命令はさらに前記１つ以上のプロセッサに、
前記情報を暗号化することと、
前記暗号化された情報を前記暗号化されていないバージョンのデータファイルにリンクすることと
を実行させる、請求項１９に記載の不揮発性コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、コンピュータハードウェアおよびソフトウェアに関するものである。具体的には、本開示の１つ以上の態様は、一般に、モバイルデバイス管理型セキュリティのためのセキュリティ保護されたクライアントドライブマッピングおよび／またはファイルストレージシステムを提供するためのコンピュータハードウェアおよびソフトウェアに関する。
【背景技術】
【０００２】
モバイルデバイス（たとえば、スマートフォン、タブレットコンピュータ、モバイルコンピューティングデバイスの他のタイプなど）は、ますます普及してきている。より多くの人々がさまざまな目的のために、個人およびビジネス状況でモバイルデバイスを使用している。たとえば、ＷＩＮＤＯＷＳ（登録商標）８のようなオペレーティングシステムとともに、ソフトウェアおよびハードウェアの会社は、単一のモバイルデバイス上で、たとえば、ワードプロセッシングアプリケーションなどのコンピューティングサービスとともに、ソーシャルネットワークサービスなどのモバイルサービスを提供している。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
単一の電子デバイス上でモバイルおよびコンピューティングサービスの両方を許可してしまうと、そのモバイルデバイス上に秘密および／または機密の企業データを携行する従業員を有する企業にとっては危険である。モバイルデバイスのローカルドライブが企業のサーバおよび／またはネットワークにマッピングされている場合に、これは特に当てはまる。たとえば、従業員は、ソーシャルネットワーキングサイトへ機密の企業データを含むファイルをアップロードして、大きなセキュリティ上の問題を引き起こすかもしれない。さらに、もし望ましくないユーザが従業員のモバイルデバイスへのアクセスを取得してしまうと、その望ましくないユーザが、マッピングされたデバイスドライブ内のデバイスに記憶された秘密情報にアクセスすることができるかもしれない。
【０００４】
このように、モバイルデバイスに記憶された機密データを保護する必要がある。
【０００５】
上述の先行技術における制限を克服するために、および、本明細書を読み、理解することにより明らかとなるであろう他の制限を克服するために、本明細書に記載の態様は、クライアントデバイスファイルストレージおよび／またはドライブマッピング用のモバイルデバイス管理型セキュリティを提供することを目的とする。
【課題を解決するための手段】
【０００６】
以下に、本明細書に説明する様々な発明の態様の簡単な概要を提示する。本概要は広範な全体像ではなく重要なもしくは欠かせない要素を特定すること、または特許請求の範囲を正確に説明することを意図していない。以下の概要は、以下に記載するより詳細な説明の導入として、単にいくつかの概念を簡単な形で提示するにすぎない。
【０００７】
本開示の１つ以上の態様は、モバイルデバイス上での表示用の管理対象アプリケーションを実行し、モバイルデバイス上にローカルにデータファイルを保存する要求を受信し、データファイルが機密データを含むかどうか判定する方法を提供する。続いて、データファイルが機密データを含む場合、要求に応答する際に、本方法はまた、データファイルを暗号化し、モバイルデバイス上に暗号化されたデータファイルを記憶し、および、暗号化されたデータファイルを、機密データを含まない、暗号化されていないバージョンのデータファイルにリンクする。
【０００８】
本開示の１つ以上の態様は、少なくとも１つのプロセッサと、少なくとも１つのプロセッサによって実行されると、システムに各ステップを実行させることができる命令を記憶する少なくとも１つのメモリと、を含むシステムを提供する。システムが実行する各ステップは、モバイルデバイス上での提示用の管理対象アプリケーションを実行すること、モバイルデバイス上にローカルにデータファイルを保存する要求を受信すること、および、データファイルが機密データを含むかどうか判定すること、を含んでいる。続いて、データファイルが機密データを含む場合、要求に応答する際に、前記命令はさらにシステムに、データファイルを暗号化すること、モバイルデバイス上に暗号化されたデータファイルを記憶すること、および、暗号化されたデータファイルを、機密データを含まない、暗号化されていないバージョンのデータファイルにリンクすること、を行わせてもよい。
【０００９】
本開示の１つ以上の態様は、１つ以上のプロセッサによって実行されたときに、１つ以上のプロセッサに各ステップを実行させることができる、格納された命令を有する１つ以上の不揮発性コンピュータ可読記憶媒体を提供する。１つ以上のプロセッサが実行するステップは、モバイルデバイス上での提示用の管理対象アプリケーションを実行すること、モバイルデバイス上にローカルにデータファイルを保存する要求を受信すること、および、データファイルが機密データを含むかどうか判定すること、を含んでいる。続いて、データファイルが機密データを含み、要求に応答する際、命令はさらに１つ以上のプロセッサに、データファイルを暗号化すること、モバイルデバイス上に暗号化されたデータファイルを記憶すること、および、暗号化されたデータファイルを、機密データを含まない、暗号化されていないバージョンのデータファイルにリンクすること、を行わせてもよい。
【００１０】
以上および追加の態様は、以下のさらに詳細に述べる開示によって十分理解されるであろう。
【００１１】
本明細書で説明する態様およびその利点は、添付の図面を考慮して以下の説明を参照すると、より完全な理解が得られる。図面において、同じ参照番号は同じ特徴を示す。
【図面の簡単な説明】
【００１２】
【図１】発明の実施の態様に従い使用される例示的なコンピュータシステムのアーキテクチャを示す。
【図２】発明の実施の態様に従い使用される例示的なリモートアクセスシステムのアーキテクチャを示す。
【図３】発明の実施の態様に従う、クライアントドライブマッピング用モバイルデバイス管理型セキュリティのためのシステムを示すブロック図を示す。
【図４】発明の実施の態様に従い使用される例示的なクラウドベースのシステムのアーキテクチャを示す。
【図５】発明の実施の態様に従う例示的なエンタープライズモビリティ管理システムを示す。
【図６】発明の実施の態様に従う別の例示的なエンタープライズモビリティ管理システムを示す。
【図７】発明の実施の態様に従って、クライアントドライブマッピング用モバイルデバイス管理型セキュリティを使用して、マッピングされたローカルドライブに変更されたファイルを保存するプロセスを示すフロー図である。
【図８】発明の実施の態様に従って、クライアントドライブマッピング用モバイルデバイス管理型セキュリティを使用して、クライアント上でファイルを開くプロセスを示すフロー図である。
【発明を実施するための形態】
【００１３】
上述のとおり特定され、本明細書の一部をなし、例示により本明細書で説明する本発明の各態様を実施するための様々な実施形態を、添付の図面を参照しながら説明する。本明細書で説明する範囲を逸脱することなく、他の実施形態を利用し、構造および機能に変更を加えてもよいことは理解されるべきである。本発明の各態様は他の実施形態が可能であり、様々な異なる方法で実施または実行することが可能である。
【００１４】
以下詳細に説明する主題の概要紹介として、本明細書で説明する実施の形態は、モバイルコンピューティングデバイスの管理対象モバイルアプリケーションを使用して、企業コンピューティングシステムのリソースへのリモートアクセスを制御することを指向する。アクセスマネージャは、企業リソースへのアクセスを要求するモバイルアプリケーションが正確に特定され、モバイルコンピューティングデバイスへのインストール後に改変されていないかどうかを判定する検証プロセスを行う。このように、アクセスマネージャは企業リソースへのアクセスを要求するモバイルアプリケーションが信頼でき、その企業リソースを保護するために使用されるセキュリティメカニズムを回避しようとしていないことを保証する。その結果、企業に関連する個人は、自分の私用モバイルデバイスで企業リソースを有利に利用できる。
【００１５】
本明細書で使用される表現および用語は、説明目的であり、制限と見なしてはならないことは理解されるべきである。むしろ、本明細書で使用される表現および用語には、そのもっとも広い解釈および意味が与えられるべきである。「含み」および「備え」ならびにその変形の使用は、これ以降で挙げられるアイテムおよびその等価物ならびに追加アイテムおよびその等価物を包含することが意図されている。「取り付けられている」、「接続されている」、「連結されている」、「位置付けられている」、「係合されている」および同様な用語の使用は、直接的および間接的の両方の取り付け、接続、連結、位置付けおよび係合を含むことが意図されている。
【００１６】
〈コンピューティングアーキテクチャ〉
コンピュータのソフトウェア、ハードウェアおよびネットワークは、特に、スタンドアロン、ネットワーク化、リモートアクセス（別称、リモートデスクトップ）、仮想化および／またはクラウドベースの環境を含め、多様な異なるシステム環境で利用される。
【００１７】
図１は、本明細書で説明する１つ以上の態様を、スタンドアロンおよび／またはネットワーク環境で実装するために使用される、システムアーキテクチャならびにデータ処理装置の一実施例を示す。
【００１８】
様々なネットワークノード１０３，１０５，１０７および１０９は、インターネットなどの広域ネットワーク（ＷＡＮ）１０１を介して相互接続されている。プライベートイントラネット、企業ネットワーク、ＬＡＮ、メトロポリタンエリアネットワーク（ＭＡＮ）、ワイヤレスネットワーク、パーソナルネットワーク（ＰＡＮ）等を含む、他のネットワークもまた、または代わりに使用してもよい。ネットワーク１０１は例示目的であり、より少ないか、または追加のコンピュータネットワークと取り替えてもよい。ローカルエリアネットワーク（ＬＡＮ）はあらゆる周知のＬＡＮトポロジーのうちの１つ以上を有しており、イーサーネットなどの多様な異なるプロトコルのうちの１つ以上を使用する。デバイス１０３，１０５，１０７，１０９および他のデバイス（図示せず）は、撚り対線、同軸ケーブル、光ファイバ、電波または他の通信媒体を介してネットワークのうちの１つ以上に接続している。
【００１９】
本明細書で使用し、図面に図示する用語「ネットワーク」とは、遠隔記憶装置が１つ以上の通信パスを介して互いに連結されているシステムだけではなく、記憶容量を有する当該システムにそのときどきで連結してもよいスタンドアロンデバイスのことも含む。そのため、「ネットワーク」とは、「物理的ネットワーク」だけでなく、すべての物理的ネットワークに常駐する（単一のエンティティに帰属する）データから構成される「コンテンツネットワーク」をも含む。
【００２０】
コンポーネントは、データサーバ１０３、ウェブサーバ１０５およびクライアントコンピュータ１０７，１０９を含んでいる。データサーバ１０３は、本明細書で説明する１つ以上の態様を行うために、データベースおよび制御ソフトウェアの全体的なアクセス、制御および管理（administration）を提供する。
【００２１】
データサーバ１０３はウェブサーバ１０５に接続されていてもよく、それによりユーザは必要なデータとやりとりし、必要なデータを取得する。あるいは、データサーバ１０３はウェブサーバ自体として作動してもよく、インターネットに直接接続してもよい。データサーバ１０３は、直接もしくは間接的な接続を介して、または何らかの他のネットワークを介して、ネットワーク１０１（たとえば、インターネット）経由でウェブサーバ１０５に接続されていてもよい。
【００２２】
ユーザはリモートコンピュータ１０７，１０９を使用して、たとえばウェブサーバ１０５がホストする１つ以上の外部に露出するウェブサイトを介してデータサーバ１０３に接続するためのウェブブラウザを使用して、データサーバ１０３とやりとりする。クライアントコンピュータ１０７，１０９はデータサーバ１０３とともに使用されて、そこに格納されているデータにアクセスしてもよく、または他の目的で使用されてもよい。たとえばユーザは、クライアントデバイス１０７から、当該技術分野で周知のインターネットブラウザを使用して、またはコンピュータネットワーク（インターネットなど）上でウェブサーバ１０５および／またはデータサーバ１０３と通信するソフトウェア・アプリケーションを実行することにより、ウェブサーバ１０５にアクセスしてもよい。
【００２３】
サーバおよびアプリケーションは同じ物理マシン上に組み合わされて、個別の仮想アドレスもしくは論理アドレスを保持してもよく、または個別の物理マシンに常駐していてもよい。
【００２４】
図１は、使用され得るネットワークアーキテクチャのほんの一実施例を示しており、当業者は、使用される特定のネットワークアーキテクチャおよびデータ処理装置を変更してもよいこと、ならびに、本明細書で詳細に説明するように、それが提供する機能に対して二次的なものであることを認識するであろう。たとえば、ウェブサーバ１０５およびデータサーバ１０３が提供するサービスは単一のサーバに結合されてもよい。
【００２５】
各コンポーネント１０３，１０５，１０７，１０９は、あらゆるタイプの周知のコンピュータ、サーバまたはデータ処理装置であってもよい。たとえば、データサーバ１０３はレートサーバ１０３のオペレーション全体を制御するプロセッサ１１１を含んでいてもよい。データサーバ１０３は、ＲＡＭ１１３、ＲＯＭ１１５、ネットワークインターフェース１１７、入出力インターフェース１１９（たとえば、キーボード、マウス、ディスプレイ、プリンタ等）およびメモリ１２１をさらに含んでいてもよい。
【００２６】
Ｉ／Ｏ１１９は、データまたはファイルを読み込み、書き込み、表示し、および／または印刷する多様なインターフェースユニットおよびドライブを含んでいてもよい。メモリ１２１はデータ処理装置１０３、本明細書で説明する態様を行うようデータサーバ１０３に指図する制御ロジック１２５、ならびに本明細書で説明する態様と合わせて使用してもしなくてもよい二次的、サポートおよび／または他の機能を提供する他のアプリケーションソフトウェア１２７のオペレーション全体を制御するオペレーティングシステム・ソフトウェア１２３をさらに格納していてもよい。
【００２７】
制御ロジックは本明細書ではデータサーバソフトウェア１２５ともいう。データサーバソフトウェアの機能は、制御ロジックに符号化され、システムに入力を提供するユーザによって手動で作成されるルールに基づいて自動的に行われるオペレーションもしくは決定、および／またはユーザ入力（たとえば、問合わせ、データのアップデート等）に基づく自動処理の組合せをいう。
【００２８】
メモリ１２１は、第１データベース１２９および第２データベース１３１を含め、本明細書で説明する１つ以上の態様の実施で使用されるデータも格納している。いくつかの実施形態では、第１データベースは第２データベースを含んでいてもよい（たとえば、個別のテーブル、レポート等として）。すなわち、情報は、システムの設計により、単一のデータベースに格納することができ、または別々の論理データベース、仮想データベースもしくは物理的データベースに分けることができる。デバイス１０５，１０７，１０９は、デバイス１０３に関して説明したのと同様なアーキテクチャを有してもよく、または異なるアーキテクチャを有していてもよい。当業者にはわかるように、本明細書で説明するデータ処理装置１０３（またはデバイス１０５，１０７，１０９）の機能を複数のデータ処理装置に分散して、たとえば、複数のコンピュータに処理ロードを分散し、地理的な場所、ユーザのアクセスレベル、サービスの質（ＱｏＳ）等に基づいてトランザクションを分けてもよい。
【００２９】
１つ以上の態様は、１つ以上のプログラムモジュールなど、１つ以上のコンピュータまたは本明細書で説明される他のデバイスによって実行されるコンピュータで使用可能な、もしくは読取可能なデータおよび／またはコンピュータ実行可能命令に具現されてもよい。
【００３０】
一般に、プログラムモジュールは、コンピュータまたは他のデバイス内のプロセッサによって実行されるとき、特定のタスクを行うかまたは特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造等を含んでいる。モジュールは実行のために後でコンパイルされるソースコードプログラミング言語で書き込んでもよく、またはＪａｖａ（登録商標）ｓｃｒｉｐｔもしくはＡｃｔｉｏｎＳｃｒｉｐｔなどの（ただし、これだけに限定されない）スクリプト言語で書き込んでもよい。コンピュータ実行可能命令は、不揮発性記憶装置などのコンピュータ読取可能媒体に格納されていてもよい。ハードディスク、ＣＤ−ＲＯＭ、光学記憶装置、磁気記憶装置、および／またはそのあらゆる組合せを含め、あらゆる適したコンピュータ読取可能記憶媒体を利用してもよい。さらに、本明細書で説明するデータまたはイベントを表す様々な伝送（非記憶）媒体は、金属ワイヤ、光ファイバ、ならびに／またはワイヤレス伝送媒体（たとえば、空気および／もしくは空間）など、信号伝達媒体を通して移動する電磁波の形で、送信元と宛先との間を転送してもよい。
【００３１】
本明細書で説明する様々な態様は、方法、データ処理システム、またはコンピュータプログラム製品として具現される。そのため、様々な機能は、集積回路、フィールドプログラマブル・ゲートアレイ（ＦＰＧＡ）等といった、ソフトウェア、ファームウェアおよび／またはハードウェアもしくはハードウェア等価物に全部または一部具現化されてもよい。本明細書で説明する１つ以上の態様をより効果的に実装するために特定のデータ構造を使用してもよく、当該データ構造は本明細書で説明されるコンピュータ実行可能命令およびコンピュータ使用可能データの範囲内に含まれる。
【００３２】
図２をさらに参照して、本明細書で説明する１つ以上の態様はリモートアクセス環境に実装されている。図２は、本明細書で説明する１つ以上の態様に従って使用されるコンピューティング環境２００の汎用コンピューティングデバイス２０１を含むシステムアーキテクチャを示す。
【００３３】
汎用コンピューティングデバイス２０１は、クライアントアクセスデバイスに仮想マシンを提供するように構成されている単一サーバまたはマルチサーバのデスクトップ仮想化システム（たとえば、リモートアクセスもしくはクラウドシステム）内のサーバ２０６ａとして使用されてもよい。汎用コンピューティングデバイス２０１は、ランダムアクセスメモリ（ＲＡＭ）２０５、読取専用メモリ（ＲＯＭ）２０７、入出力（Ｉ／Ｏ）モジュール２０９およびメモリ２１５を含め、サーバおよびその関連コンポーネントのオペレーション全体を制御するプロセッサ２０３を有していてもよい。
【００３４】
Ｉ／Ｏモジュール２０９は、汎用コンピューティングデバイス２０１のユーザが入力を提供するマウス、キーパッド、タッチスクリーン、スキャナ、光学リーダ、および／またはスタイラス（もしくは他の入力デバイス）を含んでいてもよく、また音声出力を提供するスピーカと、テキスト、オーディオビジュアルおよび／またはグラフィカル出力を提供するビデオディスプレイデバイスとのうちの１つ以上を含んでいてもよい。
【００３５】
ソフトウェアはメモリ２１５および／または他のストレージ内に格納され、本明細書で説明する様々な機能を実施するために汎用コンピューティングデバイス２０１を専用コンピューティングデバイスに構成する命令をプロセッサ２０３に与える。たとえば、メモリ２１５は、オペレーティングシステム２１７、アプリケーション・プログラム２１９および関連データベース２２１など、コンピューティングデバイス２０１が使用するソフトウェアを格納していてもよい。
【００３６】
コンピューティングデバイス２０１は、端末２４０（クライアントデバイスともいう）などの１つ以上のリモートコンピュータへの接続をサポートするネットワーク化環境で動作してもよい。端末２４０は、汎用コンピューティングデバイス１０３もしくは２０１に関して上述した要素の多くもしくはすべてを含むパーソナルコンピュータ、モバイルデバイス、ラップトップコンピュータ、タブレット、またはサーバであってもよい。
【００３７】
図２に図示するネットワーク接続はローカルエリアネットワーク（ＬＡＮ）２２５および広域ネットワーク（ＷＡＮ）２２９を含むが、他のネットワークを含んでいてもよい。ＬＡＮネットワーク化環境で使用される場合、コンピューティングデバイス２０１はネットワークインターフェースまたはアダプタ２２３経由でＬＡＮ２２５に接続してもよい。ＷＡＮネットワーク化環境で使用される場合、コンピューティングデバイス２０１は、コンピュータネットワーク２３０（たとえば、インターネット）など、ＷＡＮ２２９上で通信を確立するモデム２２７または他の広域ネットワークインターフェースを含んでいてもよい。
【００３８】
図示するネットワーク接続は例示的なものであり、コンピュータ間で通信リンクを確立する他の手段も使用してもよいことは認識されるであろう。コンピューティングデバイス２０１および／または端末２４０は、バッテリ、スピーカおよびアンテナ（図示せず）などの様々な他のコンポーネントを含めて、モバイル端末（たとえば、携帯電話、スマートフォン、ＰＤＡ、ノートブック等）であってもよい。
【００３９】
本明細書で説明する態様は、複数の他の汎用もしくは専用コンピューティングシステムの環境または構成と併用して動作可能であってもよい。本明細書で説明する態様と併用するのに適する他のコンピューティングシステム、環境および／または構成の例には、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルドもしくはラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサベースシステム、セットトップボックス、プログラム可能な家庭用電化製品、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータ、上述のシステムまたはデバイスのいずれかを含む分散コンピューティング環境などがあげられるが、これだけに限定されない。
【００４０】
図２に図示するように、１つ以上のクライアントデバイス２４０は１つ以上のサーバ２０６ａ〜２０６ｎ（総称的に、本明細書では「サーバ２０６」という）と通信する状態であってもよい。一実施形態では、コンピューティング環境２００は、サーバ２０６とクライアントマシン２４０との間にインストールされているネットワーク・アプライアンスを含んでいてもよい。ネットワーク・アプライアンスはクライアント／サーバ接続を管理してもよく、ある場合には複数のバックエンドサーバ２０６間のクライアント接続の負荷分散をすることができる。
【００４１】
クライアントマシン２４０は、いくつかの実施形態では、単一クライアントマシン２４０またはクライアントマシンの単一グループ２４０と称されることがあり、サーバ２０６は単一サーバ２０６またはサーバの単一グループ２０６と称されることがある。一実施形態では、単一クライアントマシン２４０は２つ以上のサーバ２０６と通信し、別の実施形態では単一サーバ２０６は２つ以上のクライアントマシン２４０と通信する。さらに別の実施形態では、単一クライアントマシン２４０は単一サーバ２０６と通信する。
【００４２】
クライアントマシン２４０は、いくつかの実施形態では、次の非網羅的な用語のうちのいずれか１つによって言及することができる。すなわち、クライアントマシン、クライアント、クライアントコンピュータ、クライアントデバイス、クライアントコンピューティングデバイス、ローカルマシン、リモートマシン、クライアントノード、エンドポイント、またはエンドポイントノード。サーバ２０６は、いくつかの実施形態では、次の非網羅的な用語のうちのいずれか１つによって言及してもよい。すなわち、サーバ、ローカルマシン、リモートマシン、サーバファーム、またはホストコンピューティングデバイス。
【００４３】
一実施形態では、クライアントマシン２４０は仮想マシンであってもよい。仮想マシンはあらゆる仮想マシンであってもよいが、いくつかの実施形態では、仮想マシンはタイプ１またはタイプ２のハイパーバイザ、たとえば、サイトリックス・システムズ、ＩＢＭ、ヴイエムウェアによって開発されるハイパーバイザ、またはあらゆる他のハイパーバイザによって管理されるあらゆる仮想マシンであってもよい。いくつかの態様において、仮想マシンはハイパーバイザによって管理してもよいが、いくつかの態様では、仮想マシンはサーバ２０６上で実行するハイパーバイザまたはクライアント２４０上で実行するハイパーバイザによって管理してもよい。
【００４４】
いくつかの実施形態では、サーバ２０６または遠隔に設置された他のマシン上で遠隔実行するアプリケーションによって生成されるアプリケーション出力を表示するクライアントデバイス２４０を含む。これらの実施形態では、クライアントデバイス２４０は仮想マシンのレシーバプログラムまたはアプリケーションを実行して、アプリケーションウインドウ、ブラウザ、または他の出力ウインドウに出力を表示してもよい。一つの実施例では、アプリケーションはデスクトップであるが、他の実施例では、アプリケーションはデスクトップを生成または提示するアプリケーションである。デスクトップは、ローカルおよび／またはリモート・アプリケーションを統合することのできるオペレーティングシステムのインスタンスにユーザインターフェースを提供するグラフィカルシェルを含んでもよい。本明細書で使用するアプリケーションとは、オペレーティングシステム（および、必要ならばデスクトップも）のインスタンスがロードされた後に実行されるプログラムである。
【００４５】
サーバ２０６は、いくつかの実施形態では、クライアント上で実行するシンクライアントまたはリモートディスプレイ・アプリケーションにデータを送信するリモートプレゼンテーション・プロトコルまたは他のプロトコルを使用して、サーバ２０６上で実行するアプリケーションによって生成されるディスプレイ出力を提示する。シンクライアントまたはリモートディスプレイ・プロトコルは、次の非網羅的なプロトコルリストのうちのいずれか１つとすることができる。すなわち、フロリダ州フォート・ローダーデールのサイトリックス・システムズ・インクが開発したインディペンデント・コンピューティング・アーキテクチャ（ＩＣＡ）プロトコル、またはワシントン州レドモンドのマイクロソフト・コーポレーションが製造するリモートデスクトッププロトコル（ＲＤＰ）。
【００４６】
リモートコンピューティング環境は、サーバ２０６ａ〜２０６ｎが、たとえばクラウドコンピューティング環境のサーバファーム２０６に論理的にまとめられるように、２つ以上のサーバ２０６ａ〜２０６ｎを含んでいてもよい。サーバファーム２０６は論理的にまとめられながらも地理的に分散しているサーバ２０６、または論理的にまとめられながらも互いに近接して配置されているサーバ２０６を含んでいてもよい。サーバファーム２０６内の地理的に分散したサーバ２０６ａ〜２０６ｎは、いくつかの実施形態では、ＷＡＮ（広域）、ＭＡＮ（メトロポリタン）、またはＬＡＮ（ローカル）を使用して通信することができ、異なる地理的地域は、異なる大陸、大陸の中の異なる地域、異なる国、異なる州、異なる都市、異なる大学、異なる部屋、または前述の地理的な場所のあらゆる組合せとして特徴付けることができる。いくつかの実施形態では、サーバファーム２０６は単一エンティティとして管理されてもよいが、他の実施形態では、サーバファーム２０６は複数のサーバファームを含むことができる。
【００４７】
いくつかの実施形態では、サーバファームは、実質的に同じようなタイプのオペレーティングシステムのプラットフォーム（例、ＷＩＮＤＯＷＳ（登録商標）、ＵＮＩＸ（登録商標）、ＬＩＮＵＸ（登録商標）、ｉＯＳ、ＡＮＤＲＯＩＤ（登録商標）、ＳＹＭＢＩＡＮ等）を実行するサーバ２０６を含んでいてもよい。他の実施形態では、サーバファーム２０６は、第１タイプのオペレーティングシステムのプラットフォームを実行する１つ以上のサーバからなる第１グループと、第２タイプのオペレーティングシステムのプラットフォームを実行する１つ以上のサーバからなる第２グループとを含んでいてもよい。
【００４８】
サーバ２０６は、必要なあらゆるタイプのサーバとして、たとえば、ファイルサーバ、アプリケーションサーバ、ウェブサーバ、プロキシサーバ、アプライアンス、ネットワーク・アプライアンス、ゲートウェイ、アプリケーション・ゲートウェイ、ゲートウェイサーバ、仮想化サーバ、デプロイメントサーバ、ＳＳＬ  ＶＰＮサーバ、ファイヤウォール、ウェブサーバ、アプリケーションサーバ、またはマスターアプリケーションサーバ、アクティブディレクトリを実行するサーバ、またはファイヤウォール機能、アプリケーション機能、もしくは負荷分散機能を提供するアプリケーション高速化プログラムを実行するサーバとして構成されていてもよい。他のサーバのタイプも使用してもよい。
【００４９】
いくつかの実施形態は、クライアントマシン２４０からの要求を受信し、要求を第２サーバ２０６ｂに転送し、第２サーバ２０６ｂからの応答により、クライアントマシン２４０により生成される要求に応答する第１サーバ２０６ａを含む。第１サーバ２０６ａはクライアントマシン２４０に利用できるアプリケーションの一覧表、およびアプリケーションの一覧表内で特定されるアプリケーションをホストするアプリケーションサーバ２０６に関連するアドレス情報を取得してもよい。それから、第１サーバ２０６ａは、ウェブインターフェースを使用してクライアントの要求に対する応答を提示し、クライアント２４０と直接通信して、特定されたアプリケーションへのアクセスをクライアント２４０に提供することができる。１つ以上のクライアント２４０および／または１つ以上のサーバ２０６は、ネットワーク２３０、たとえばネットワーク１０１上でデータを伝送してもよい。
【００５０】
図２は、デスクトップ仮想化システムの高レベルアーキテクチャを示す。図示するように、デスクトップ仮想化システムは、１つ以上のクライアントアクセスデバイス２４０に仮想デスクトップおよび／または仮想アプリケーションを提供するように構成されている少なくとも１つの仮想化サーバ２０６を含め、単一サーバもしくはマルチサーバシステムまたはクラウドシステムであってもよい。
【００５１】
本明細書で使用されるデスクトップとは、１つ以上のアプリケーションをホストおよび／または実行してもよいグラフィカル環境またはスペースをいう。デスクトップは、ローカルおよび／またはリモート・アプリケーションを統合することのできるオペレーティングシステムのインスタンスにユーザインターフェースを提供するグラフィカルシェルを含んでいてもよい。アプリケーションは、オペレーティングシステムのインスタンス（および、任意でデスクトップも）をロードした後に実行するプログラムを含んでいてもよい。オペレーティングシステムのインスタンスは物理的（たとえば、１デバイスにつき１つのオペレーティングシステム）または仮想的（たとえば、単一デバイス上で稼動するＯＳの多くのインスタンス）であってもよい。各アプリケーションはローカルデバイス上で実行してもよく、または遠隔設置されたデバイス上で実行（たとえば、遠隔操作）してもよい。
【００５２】
図３は、本明細書で説明する１つ以上の開示された特徴に従う、クライアントドライブマッピング用モバイルデバイス管理型セキュリティのためのシステム３００の一例を示すブロック図である。システム３００は、ネットワーク３０１、クライアントドライブマッピングファイルシステム（ＣＤＭシステム）３０２、およびクライアント３０４を含んでいる。
【００５３】
ネットワーク３０１は、会社や事業体などの企業により運営および／または管理されていてもよい。ネットワーク３０１により、クライアント３０４などの、クライアントのユーザが、クライアントからファイルなどの企業または個人のリソースにアクセスし、個人的使用のためにクライアントを使用することができる。
【００５４】
ＣＤＭシステム３０２はまた、ＣＤＭシステムドライバ３０６などのドライバ、システムファイル、および、ユーザまたはカーネルモードで動作させることができるネットワークマネージャを含んでもよい。ＣＤＭシステム３０２は、たとえば、ＣＤＭサービスドライバ３０６を使用して、企業ドライブまたはＣＤＭシステム３０２のドライブにクライアントドライブをマッピングしてもよい。ＣＤＭシステム３０２の各構成要素は、ＣＤＭシステム３０２の任意の他の構成要素とインタラクトしてもよい、および／または、結合されてもよい。ＣＤＭシステム３０２を、たとえば、企業サーバマシン上に配置してもよい。
【００５５】
クライアント３０４は、タブレット３０４ａ、ラップトップ３０４ｂ、携帯電話３０４ｃなどの任意の電子コンピューティングデバイスであってもよい。ＣＤＭシステム３０２へと３０４ａ，３０４ｂおよび３０４ｃのそれぞれをリンクする線によって、図３に示すように、クライアント３０４がＣＤＭシステム３０２に接続され、および／または結合される。たとえば、ＣＤＭシステム３０２は、企業ネットワークなどのネットワーク３０１の一部であってもよい。クライアント３０４はまた、たとえばリモートアクセス接続を使用して、ネットワーク３０１へ接続してもよい。
【００５６】
システム３００を、ＣＤＭシステム３０２に関連付けられた企業ドライブにクライアント３０４上のドライブをマッピングするために使用してもよい。クライアントドライブマッピングは、クライアントデバイスが企業ネットワークに接続されているときにユーザが利用可能な、ＣＤ−ＲＯＭ、ＤＶＤまたはＵＳＢメモリスティックを含む、クライアントデバイスに搭載された任意のディレクトリを作る。サーバがクライアントドライブマッピングを許可するように構成されている場合、ユーザは、自身のローカルに保存されたファイルにアクセスし、企業ネットワークに接続したときにそれらを用いて作業し、そして、ローカルドライブまたはサーバ上のドライブのいずれかにそれらを再度、保存することができる。
【００５７】
ドライブのマッピングにより、ＣＤＭシステム３０２およびクライアント３０４のローカルドライブに関連付けられた企業ドライブが、相互に通信することが可能となり、クライアント３０４上での読み込みおよび書き込みがＣＤＭシステム３０２を通過することができる。たとえば、クライアント３０４がＣＤＭシステム３０２に接続され、クライアント３０４上のドライブがＣＤＭシステム３０２に関連付けられた企業ドライブにマッピングされた後、ＣＤＭシステム３０２によって管理されるアプリケーションを使用するクライアント３０４上のファイルを保存するための要求は、ＣＤＭシステム３０２にファイルのデータを渡してもよく、ＣＤＭシステム３０２はそして、クライアント３０４上のドライブにファイルを書き込んでもよい。
【００５８】
ドライブがマッピングされた後、あたかもそのドライブが、クライアント３０４などのクライアント上のローカル物理ハードディスクドライブを表すかのように、そのドライブにアクセスすることによって、クライアント上で実行中のアプリケーションが、企業サーバマシンからなど、ストレージ場所からファイルを読み書きすることができる。
【００５９】
図４をさらに参照すると、本明細書で説明するいくつかの態様は、クラウドベースの環境に実装される。図４はクラウドコンピューティング環境（またはクラウドシステム）４００の実施例を示す。図４から分かるように、クライアントコンピュータ４１１〜４１４はクラウド管理サーバ４１０と通信して、クラウドシステムのコンピューティングリソース（たとえば、ホストサーバ４０３、ストレージリソース４０４およびネットワークリソース４０５）にアクセスしてもよい。
【００６０】
管理サーバ４１０は１つ以上の物理的サーバ上に実装してもよい。管理サーバ４１０は、たとえば、特にフロリダ州フォート・ローダーデールのサイトリックス・システムズ・インクのＣＬＯＵＤＳＴＡＣＫ、またはＯＰＥＮＳＴＡＣＫを稼動してもよい。管理サーバ４１０は、たとえば、ホストコンピュータ４０３、データ記憶装置４０４およびネットワーキングデバイス４０５など、クラウド・ハードウェアおよびソフトウェア・リソースを含め、様々なコンピューティングリソースを管理してもよい。クラウド・ハードウェアおよびソフトウェア・リソースは非公開および／または公開コンポーネントを含んでいてもよい。たとえば、クラウドは１つ以上の特定のカスタマもしくはクライアントコンピュータ４１１〜４１４によって、および／またはプライベートネットワーク上で使用されるプライベートクラウドとして構成していてもよい。他の実施形態では、パブリッククラウドまたはハイブリッドパブリック−プライベートクラウドが、オープンまたはハイブリッドネットワーク上で他のカスタマによって使用されてもよい。
【００６１】
管理サーバ４１０は、クラウドオペレータおよびクラウドカスタマがクラウドシステムとやりとりしてもよいユーザインターフェースを提供するように構成されていてもよい。たとえば、管理サーバ４１０はユーザインターフェースにＡＰＩのセットおよび／または１つ以上のクラウドオペレータコンソール・アプリケーション（たとえば、ウェブベースまたはスタンドアロンアプリケーション）を提供して、クラウドオペレータがクラウドリソースを管理し、仮想化レイヤを構成し、カスタマアカウントを管理し、他のクラウド管理タスクを行うことができるようにしてもよい。
【００６２】
管理サーバ４１０は、クライアントコンピュータ４１１〜４１４を介してエンドユーザからのクラウドコンピューティング要求、たとえば、クラウド内で仮想マシンを作成、修正または破棄する要求を受信するように構成されているユーザインターフェースを備えるＡＰＩのセットおよび／または１つ以上のカスタマコンソール・アプリケーションを含んでいてもよい。クライアントコンピュータ４１１〜４１４はインターネットまたは他の通信ネットワークを介して管理サーバ４１０に接続してもよく、管理サーバ４１０が管理するコンピューティングリソースのうちの１つ以上へのアクセスを要求してもよい。クライアントの要求に応答して、管理サーバ４１０は、クライアント要求に基づいて、クラウドシステムのハードウェアレイヤの物理的リソースを選択し、プロビジョニングするように構成されているリソース・マネージャを含んでいてもよい。たとえば、管理サーバ４１０およびクラウドシステムの追加コンポーネントは、カスタマに計算リソース、データストレージサービス、ネットワーク能力、ならびにコンピュータプラットフォームおよびアプリケーションサポートを提供しながら、ネットワーク（たとえば、インターネット）上で、クライアントコンピュータ４１１〜４１４のカスタマのために、仮想マシンおよびその動作環境（たとえば、ハイパーバイザ、ストレージリソース、ネットワーク素子が提供するサービス等）をプロビジョニングし、作成し、管理するように構成されていてもよい。クラウドシステムはまた、セキュリティシステム、開発環境、ユーザインターフェース等を含め、様々な特定のサービスを提供するように構成されていてもよい。
【００６３】
たとえば、一定のクライアント４１１〜４１４は、同じエンドユーザ、または同じ会社もしくは組織に属する異なるユーザの代わりに仮想マシンを作成する異なるクライアントコンピュータに関連付けられてもよい。他の実施例では、一定のクライアント４１１〜４１４は、異なる会社もしくは組織に属するユーザなどに関連付けられていなくてもよい。関連付けられていないクライアントに対して、いずれかのユーザの仮想マシンまたはストレージ上の情報を他のユーザから隠してもよい。
【００６４】
ここでクラウドコンピューティング環境の物理的ハードウェアレイヤを参照すると、可用性（availability）ゾーン４０１〜４０２（またはゾーン）は物理的コンピューティングリソースのひとまとまりのセットといえる。ゾーンはコンピューティングリソースのクラウド全体において他のゾーンとは地理的に分離していてもよい。たとえば、ゾーン４０１はカリフォルニア州に配置されている第１クラウド・データセンターであってもよく、ゾーン４０２はフロリダ州に配置されている第２クラウド・データセンターであってもよい。管理サーバ４１０は可用性ゾーンのうちの１つ、または別の場所に配置されていてもよい。各ゾーンは、ゲートウェイ経由で、管理サーバ４１０などのゾーン外にあるデバイスとインターフェースする内部ネットワークを含んでいてもよい。クラウドのエンドユーザ（たとえば、クライアント４１１〜４１４）は、ゾーン間の区別に気付くかもしれないし、または気づかないかもしれない。たとえば、エンドユーザは指定される量のメモリ、処理能力、およびネットワーク能力を有する仮想マシンの作成を要求してもよい。
【００６５】
管理サーバ４１０はユーザの要求に応答してもよく、ゾーン４０１またはゾーン４０２のリソースを使用して仮想マシンが作成されたかどうかをユーザが知ることなく、仮想マシンを作成するためにリソースを割り当ててもよい。他の実施例では、クラウドシステムは、エンドユーザが特定のゾーンまたはゾーン内の特定のリソース４０３〜４０５に仮想マシン（または他のクラウドリソース）を割り当てるよう要求できるようにしてもよい。
【００６６】
この実施例では、各ゾーン４０１〜４０２は様々な物理的ハードウェアコンポーネント（またはコンピューティングリソース）４０３〜４０５の配列、たとえば、物理的ホスティングリソース（またはプロセッシングリソース）、物理的ネットワークリソース、物理的ストレージリソース、スイッチ、および、カスタマにクラウドコンピューティングサービスを提供するために使用してもよい追加のハードウェアリソースを含んでいてもよい。
【００６７】
クラウドゾーン４０１〜４０２の物理的ホスティングリソースは、上述した仮想化サーバ３０１など、仮想マシンのインスタンスを作成しホストするように構成されていてもよい１つ以上のコンピュータサーバ４０３を含んでいてもよい。クラウドゾーン４０１または４０２の物理的ネットワークリソースは、ファイヤウォール、ネットワークアドレス変換器、ロードバランサ、仮想プライベートネットワーク（ＶＰＮ）ゲートウェイ、ダイナミック・ホスト・コンフィギュレーション・プロトコル（ＤＨＣＰ）ルータ等といった、クラウドカスタマにネットワークサービスを提供するように構成されているハードウェアおよび／またはソフトウェアを備える１つ以上のネットワーク素子４０５（たとえば、ネットワークサービスプロバイダ）を含んでいてもよい。クラウドゾーン４０１〜４０２のストレージリソースは、ストレージディスク（たとえば、ソリッドステートドライブ（ＳＳＤ）、磁気ハードディスク等）および他の記憶装置を含んでいてもよい。
【００６８】
図４に図示するクラウドコンピューティング環境は、クラウドの物理的リソースを使用して仮想マシンを作成して管理し、カスタマに他のサービスを提供するように構成されている追加のハードウェアおよび／またはソフトウェア・リソースを備える仮想化レイヤ（たとえば、図１〜図３に図示するもの）も含んでいてもよい。
【００６９】
仮想化レイヤは、ネットワーク仮想化、ストレージ仮想化等を提供する他のコンポーネントとともに、上述の図３で説明したハイパーバイザを含んでいてもよい。仮想化レイヤは物理的リソースレイヤとは別のレイヤとしてもよく、または物理的リソースレイヤと同じハードウェアおよび／もしくはソフトウェア・リソースのいくつかもしくはすべてを共有していてもよい。たとえば、仮想化レイヤは物理的コンピューティングリソースを有する仮想化サーバ４０３のそれぞれにインストールされているハイパーバイザを含んでいてもよい。あるいは、たとえば、ＷＩＮＤＯＷＳ（登録商標）  ＡＺＵＲＥ（ワシントン州レドモンドのマイクロソフト・コーポレーション）、ＡＭＡＺＯＮ  ＥＣ２（ワシントン州シアトルのアマゾン・ドット・コム・インク）、ＩＢＭ  ＢＬＵＥ  ＣＬＯＵＤ（ニューヨーク州アーモンクのＩＢＭコーポレーション）、または他のものなど、周知のクラウドシステムを使用してもよい。
【００７０】
〈企業モビリティ管理アーキテクチャ〉
図５は、ＢＹＯＤ環境で使用するための企業モビリティ技術アーキテクチャ５００を示す。このアーキテクチャはモバイルデバイス５０２のユーザがモバイルデバイス５０２から企業リソースまたは個人リソースにアクセスすることと、モバイルデバイス５０２を個人利用に使用することと、の両方を可能にする。
【００７１】
ユーザは、当該企業リソース５０４または企業サービス５０８へのアクセスを、ユーザが購入したモバイルデバイス５０２を使用して行ってもよく、または企業がユーザに支給するモバイルデバイス５０２を使用して行ってもよい。ユーザはモバイルデバイス５０２をビジネス専用で利用しても、またはビジネスと個人兼用で利用してもよい。モバイルデバイスはｉＯＳオペレーティングシステム、およびアンドロイド・オペレーティングシステム等を稼動してもよい。企業はモバイルデバイス５０４を管理するポリシーを実装することを選んでもよい。
【００７２】
ポリシーは、ファイヤウォールまたはゲートウェイにより、モバイルデバイスを特定し、セキュリティ保護もしくはセキュリティ検証し、企業リソースへの選択的アクセスもしくは完全なアクセスをモバイルデバイスに提供できるように埋め込んでもよい。ポリシーはモバイルデバイス管理ポリシー、モバイルアプリケーション管理ポリシー、モバイルデータ管理ポリシー、またはモバイルデバイス、アプリケーションおよびデータ管理ポリシーのなんらかの組合せとしてもよい。モバイルデバイス管理ポリシーの適用により管理されるモバイルデバイス５０４は登録デバイスということがある。
【００７３】
モバイルデバイスのオペレーティングシステムは、管理対象パーティション５１０と非管理対象パーティション５１２とに分離されていてもよい。管理対象パーティション５１０は管理対象パーティション上で稼動しているアプリケーションおよび管理対象パーティションに格納されているデータをセキュリティ保護された状態にする（secure）ために、ポリシーをそれに適用させてもよい。管理対象パーティション上で稼動しているアプリケーションはセキュリティ保護されたアプリケーションであってもよい。セキュリティ保護されたアプリケーションは、電子メール・アプリケーション、ウェブブラウザ・アプリケーション、サービスとしてのソフトウェア（ＳａａＳ）アクセス・アプリケーション、Ｗｉｎｄｏｗｓ（登録商標）Ａｐｐｌｉｃａｔｉｏｎアクセス・アプリケーション等であってもよい。セキュリティ保護されたアプリケーションは、セキュリティ保護されたネイティブアプリケーション５１４、セキュリティ保護されたアプリケーション・ランチャ５１８が実行するセキュリティ保護されたリモート・アプリケーション５２２、セキュリティ保護されたアプリケーション・ランチャ５１８が実行する仮想化アプリケーション５２６等であってもよい。
【００７４】
セキュリティ保護されたネイティブアプリケーション５１４はセキュリティ保護されたアプリケーション・ラッパー５２０によってラッピングしてもよい。セキュリティ保護されたアプリケーション・ラッパー５２０は、セキュリティ保護されたネイティブアプリケーションがデバイス上で実行されるときに、モバイルデバイス５０２上で実行される統合ポリシーを含んでいてもよい。セキュリティ保護されたアプリケーション・ラッパー５２０は、モバイルデバイス５０２上で稼動するセキュリティ保護されたネイティブアプリケーション５１４を、セキュリティ保護されたネイティブアプリケーション５１４の実行時に要求されるタスクを完了するようにセキュリティ保護されたネイティブアプリケーション５１４が要求してもよい企業でホストされるリソースに差し向けるメタデータを含んでいてもよい。セキュリティ保護されたアプリケーション・ランチャ５１８が実行するセキュリティ保護されたリモート・アプリケーション５２２は、セキュリティ保護されたアプリケーション・ランチャ・アプリケーション５１８内で実行してもよい。セキュリティ保護されたアプリケーション・ランチャ５１８が実行する仮想化アプリケーション５２６は、企業リソース５０４等で、モバイルデバイス５０２のリソースを利用してもよい。セキュリティ保護されたアプリケーション・ランチャ５１８が実行する仮想化アプリケーション５２６によってモバイルデバイス５０２で使用されるリソースは、ユーザ対話リソース、プロセッシングリソース等を含んでいてもよい。
【００７５】
ユーザ対話リソースは、キーボード入力、マウス入力、カメラ入力、触覚入力、オーディオ入力、ビジュアル入力、ジェスチャ入力等を収集して、伝送するために使用してもよい。プロセッシングリソースはユーザインターフェースを提示し、企業リソース５０４等から受信されるデータを処理するために使用してもよい。セキュリティ保護されたアプリケーション・ランチャ５１８が実行する仮想化アプリケーション５２６によって企業リソース５０４で使用されるリソースは、ユーザインターフェース生成リソース、プロセッシングリソース等を含んでいてもよい。ユーザインターフェース生成リソースは、ユーザインターフェースをアセンブルし、ユーザインターフェースを修正し、ユーザインターフェースをリフレッシュする等のために使用してもよい。
【００７６】
プロセッシングリソースは情報を作成し、情報を読み取り、情報を更新し、情報を削除する等のために使用してもよい。たとえば、仮想化アプリケーションはＧＵＩに関連するユーザの対話を記録し、それをサーバ・アプリケーションに伝えてもよく、当該サーバ・アプリケーションはユーザ対話データをサーバで動作するアプリケーションへの入力として使用する。
【００７７】
この構成では、企業は、アプリケーションに関連するデータ、ファイル等と同様に、サーバ側のアプリケーションを維持する選択をしてもよい。企業はモバイルデバイスへのデプロイメントのためにそれをセキュリティ保護された状態にすることにより本明細書の原理に従っていくつかのアプリケーションを「モバイル化」する選択をしてもよいが、この構成は一定のアプリケーションのためにも選択してもよい。たとえば、いくつかのアプリケーションはモバイルデバイスで使用するためにセキュリティ保護された状態にしてもよいが、他のものはモバイルデバイスへのデプロイメントの準備がされていないかまたはデプロイメントに適切ではない可能性があるので、企業は仮想化技術により準備されていないアプリケーションへのアクセスをモバイルユーザに提供する選択をしてもよい。
【００７８】
別の実施例として、企業は大量の複雑なデータセットを有する大きく複雑なアプリケーション（たとえば、資材所要量計画アプリケーション）を有することがあり、当該モバイルデバイスのアプリケーションをカスタマイズするのは非常に難しく、またはその他望ましくないので、企業は仮想化技術によりアプリケーションへのアクセスを提供する選択をしてもよい。さらに別の実施例として、企業は、セキュリティ保護したモバイル環境であっても扱いに非常に注意を要すると企業に見なされて、企業が当該アプリケーションおよびデータへのモバイルアクセスを許可するために仮想化技術を選択してもよい高セキュリティ保護化データ（たとえば、人事データ、顧客データ、エンジニアリングデータ）を維持するアプリケーションを有していてもよい。
【００７９】
企業はサーバ側でより適切に動作すると見なされるアプリケーションへのアクセスを許可するために、仮想化アプリケーションとともに、モバイルデバイス上の完全にセキュリティ保護しかつ完全に機能するアプリケーションを提供する選択をしてもよい。実施形態では、仮想化アプリケーションは、携帯電話のセキュリティ保護された記憶場所のうちの１つに、いくつかのデータ、ファイル等を格納してもよい。たとえば、企業は一定の情報を電話に格納させるが、他の情報を許可しない選択をしてもよい。
【００８０】
本明細書で説明するように、仮想化アプリケーションに関連して、モバイルデバイスは、ＧＵＩを提示し、さらにＧＵＩとのユーザの対話を記録するように設計されている仮想化アプリケーションを有していてもよい。アプリケーションは、アプリケーションとのユーザインタラクションとして、サーバ側アプリケーションが使用するサーバ側とのユーザインタラクションを伝えてもよい。応答して、サーバ側のアプリケーションはモバイルデバイスに新たなＧＵＩを送り戻してもよい。たとえば、新たなＧＵＩは静的ページ、動的ページ、アニメーションまたは同様な他のものであってもよい。
【００８１】
管理対象パーティション上で稼働するアプリケーションは安定化されたアプリケーションであってもよい。安定化されたアプリケーションはデバイスマネージャ５２４によって管理されてもよい。デバイスマネージャ５２４は安定化されたアプリケーションを監視して、問題を検出して補修する技術が利用されない場合に安定化されていないアプリケーションをもたらすような問題検出および補修のための前記技術を利用してもよい。
【００８２】
セキュリティ保護されたアプリケーションは、モバイルデバイスの管理対象パーティション５１０のセキュリティ保護されたデータコンテナ５２８に格納されているデータにアクセスしてもよい。セキュリティ保護されたデータコンテナにセキュリティ保護されているデータは、セキュリティ保護されたラッピングされたアプリケーション５１４、セキュリティ保護されたアプリケーション・ランチャ５２２が実行するアプリケーション、セキュリティ保護されたアプリケーション・ランチャ５２２が実行する仮想化アプリケーション５２６等によってアクセスされることができる。セキュリティ保護されたデータコンテナ５２８に格納されているデータはファイル、データベース等を含んでもよい。セキュリティ保護されたデータコンテナ５２８に格納されているデータはセキュリティ保護されたアプリケーション５３２の中で共有される特定のセキュリティ保護されたアプリケーション５３０等に制限されるデータを含んでもよい。セキュリティ保護されたアプリケーションに制限されるデータは、セキュリティ保護された一般データ５３４および高セキュリティ保護されたデータ５３８を含んでもよい。セキュリティ保護された一般データはＡＥＳ  １２８ビット暗号化等の強力な暗号化方式を使用してもよいが、高セキュリティ保護されたデータ５３８はＡＥＳ  ２５４ビット暗号化などの非常に強力な暗号化方式を使用してもよい。セキュリティ保護されたデータコンテナ５２８に格納されているデータは、デバイスマネージャ５２４からのコマンドを受信すると、デバイスから削除されてもよい。
【００８３】
セキュリティ保護されたアプリケーションはデュアルモードオプション５４０を有してもよい。デュアルモードオプション５４０は、非セキュリティ保護化モードで、セキュリティ保護されたアプリケーションを動作させるオプションをユーザに提示してもよい。非セキュリティ保護化モードでは、セキュリティ保護されたアプリケーションはモバイルデバイス５０２の非管理対象パーティション５１２の非セキュリティ保護化データコンテナ５４２に格納されているデータにアクセスしてもよい。非セキュリティ保護化データコンテナに格納されているデータは個人データ５４４であってもよい。非セキュリティ保護化データコンテナ５４２に格納されているデータは、モバイルデバイス５０２の非管理対象パーティション５１２上で稼動している非セキュリティ保護化アプリケーション５４８によってアクセスしてもよい。非セキュリティ保護化データコンテナ５４２に格納されているデータは、セキュリティ保護されたデータコンテナ５２８に格納されているデータがモバイルデバイス５０２から削除されるとき、モバイルデバイス５０２上に残してもよい。
【００８４】
企業は、ユーザが所有、ライセンスもしくは制御する個人データ、ファイルおよび／もしくはアプリケーション（個人データ）を残しながら、またはその他存続させながら、企業が所有、ライセンスまたは制御する選択されたもしくはすべてのデータ、ファイル、および／またはアプリケーション（企業データ）をモバイルデバイスから削除したいことがある。この動作を選択的消去と称されることがある。本明細書で説明する態様に従って分類される企業データおよび個人データを用いて、企業は選択的消去を行ってもよい。
【００８５】
モバイルデバイスは、企業において企業リソース５０４および企業サービス５０８、公共のインターネット５４８などに接続される。モバイルデバイスは、仮想プライベートネットワーク接続を介して企業リソース５０４および企業サービス５０８に接続されてもよい。仮想プライベートネットワーク接続は、特定のアプリケーション５５０、特定のデバイス、モバイルデバイス上の特定のセキュリティ保護された領域および同様のもの（たとえば、５５２）に固有であってもよい。たとえば、電話のセキュリティ保護された領域におけるラッピングされたアプリケーションの各々は、アプリケーション固有のＶＰＮを介して企業リソースにアクセスしてもよく、それにより、ＶＰＮへのアクセスが、おそらくはユーザまたはデバイスの属性情報と連動して、アプリケーションに関連付けられた属性に基づいて付与されるであろう。仮想プライベートネットワーク接続は、Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｈａｎｇｅのトラフィック、Ｍｉｃｒｏｓｏｆｔ  Ａｃｔｉｖｅ  Ｄｉｒｅｃｔｏｒｙのトラフィック、ＨＴＴＰトラフィック、ＨＴＴＰＳトラフィック、アプリケーション管理トラフィックなどを運んでもよい。仮想プライベートネットワーク接続は、シングル・サイン・オン認証プロセス５５４をサポートおよび可能としてもよい。シングル・サイン・オンプロセスにより、ユーザが認証クレデンシャルの単一のセットを提供することができ、これはそして、認証サービス５５８によって検証される。認証サービス５５８はそして、各個別の企業リソース５０４への認証クレデンシャルの提供をユーザに要求することなく、複数の企業リソース５０４へのユーザのアクセスを許可してもよい。
【００８６】
仮想プライベートネットワーク接続は、アクセス・ゲートウェイ５６０によって確立されて、管理してもよい。アクセス・ゲートウェイ５６０は企業リソース５０４のモバイルデバイス５０２への配信を管理し、高速化しおよび改善するパフォーマンス向上特徴を含んでいてもよい。アクセス・ゲートウェイはモバイルデバイス５０２から公衆インターネット５４８にトラフィックを経路切替えしてもよく、モバイルデバイス５０２が公衆インターネット５４８で稼動している公開利用できる非セキュリティ保護化アプリケーションにアクセスすることを可能にする。モバイルデバイスは転送ネットワーク５６２を介してアクセス・ゲートウェイに接続してもよい。
【００８７】
転送ネットワーク５６２はワイヤードネットワーク、ワイヤレスネットワーク、クラウドネットワーク、ローカルエリアネットワーク、メトロポリタンエリアネットワーク、広域ネットワーク、パブリックネットワーク、プライベートネットワーク等でもよい。
【００８８】
企業リソース５０４は電子メールサーバ、ファイル共有サーバ、ＳａａＳアプリケーション、ウェブアプリケーションサーバ、Ｗｉｎｄｏｗｓ（登録商標）アプリケーションサーバ等を含んでいてもよい。電子メールサーバはＥｘｃｈａｎｇｅサーバ、Ｌｏｔｕｓ  Ｎｏｔｅｓサーバ等を含んでいてもよい。ファイル共有サーバはＳｈａｒｅＦｉｌｅサーバ等を含んでいてもよい。ＳａａＳアプリケーションはＳａｌｅｓｆｏｒｃｅ等を含んでいてもよい。Ｗｉｎｄｏｗｓ（登録商標）アプリケーションサーバはローカルなＷｉｎｄｏｗｓ（登録商標）オペレーティングシステム上で稼動するように意図されたアプリケーションを提供するために構築されているあらゆるアプリケーションサーバ等を含んでいてもよい。
【００８９】
企業リソース５０４はプレミスベースのリソース、クラウドベースのリソース等であってもよい。企業リソース５０４はモバイルデバイス５０２から直接、またはアクセス・ゲートウェイ５６０経由でアクセスしてもよい。企業リソース５０４はモバイルデバイス５０２から転送ネットワーク５６２を介してアクセスしてもよい。転送ネットワーク５６２はワイヤードネットワーク、ワイヤレスネットワーク、クラウドネットワーク、ローカルエリアネットワーク、メトロポリタンエリアネットワーク、広域ネットワーク、パブリックネットワーク、プライベートネットワーク等であってもよい。
【００９０】
企業サービス５０８は認証サービス５５８、脅威検出サービス５６４、デバイスマネージャサービス５２４、ファイル共有サービス５６８、ポリシーマネージャサービス５７０、ソーシャル統合サービス５７２、アプリケーションコントローラサービス５７４等を含んでいてもよい。
【００９１】
認証サービス５５８はユーザ認証サービス、デバイス認証サービス、アプリケーション認証サービス、データ認証サービス等を含んでいてもよい。認証サービス５５８は証明書を使用してもよい。証明書は企業リソース５０４等によりモバイルデバイス５０２に格納してもよい。モバイルデバイス５０２に格納されている証明書は、モバイルデバイスの暗号化された場所に格納してもよく、証明書は認証時点で使用する等のためにモバイルデバイス５０２に一時的に格納してもよい。脅威検出サービス５６４は侵入検出サービス、不正アクセス試行検出サービス等を含んでいてもよい。不正アクセス試行検出サービスはデバイス、アプリケーション、データ等への不正アクセスの試行を含んでいてもよい。
【００９２】
デバイス管理サービス５２４は構成サービス、プロビジョニングサービス、セキュリティサービス、サポートサービス、監視サービス、レポーティングサービスおよびデコミッショニングサービスを含んでいてもよい。ファイル共有サービス５６８はファイル管理サービス、ファイルストレージサービス、ファイルコラボレーションサービス等を含んでいてもよい。ポリシーマネージャサービス５７０はデバイスポリシーマネージャサービス、アプリケーションポリシーマネージャサービス、データポリシーマネージャサービス等を含んでいてもよい。
【００９３】
ソーシャル統合サービス５７２は連絡先統合サービス、コラボレーションサービス、Ｆａｃｅｂｏｏｋ、ＴｗｉｔｔｅｒおよびＬｉｎｋｅｄＩｎなどのソーシャル・ネットワークとの統合等を含んでいてもよい。アプリケーションコントローラサービス５７４は管理サービス、プロビジョニングサービス、デプロイメントサービス、割り当てサービス、失効サービス、ラッピングサービス等を含んでいてもよい。
【００９４】
企業モビリティ技術アーキテクチャ５００は、アプリケーションストア５７８を含んでいてもよい。アプリケーションストア５７８はラッピングされていないアプリケーション５８０、予めラッピングされたアプリケーション５８２等を含んでいてもよい。アプリケーションはアプリケーションコントローラ５７４からアプリケーションストア５７８に配置してもよい。アプリケーションストア５７８はモバイルデバイス５０２からアクセス・ゲートウェイ５６０、公衆インターネット５４８等経由でアクセスしてもよい。アプリケーションストアには直観的に理解でき、使いやすいユーザインターフェースを備えてもよい。アプリケーションストア５７８はソフトウェア開発キット５８４へのアクセス権を提供してもよい。
【００９５】
ソフトウェア開発キット５８４は、本明細書で上述したようにアプリケーションをラッピングすることにより、ユーザが選択したアプリケーションをセキュリティ保護する機能をユーザに提供してもよい。ソフトウェア開発キット５８４を用いてラッピングされたアプリケーションは、さらにアプリケーションコントローラ５７４を用いてアプリケーションストア５７８にそれを配置することにより、モバイルデバイス５０２に利用できるようにしてもよい。
【００９６】
企業モビリティ技術アーキテクチャ５００は、管理解析機能を含んでいてもよい。管理解析機能はリソースの使用方法、リソースの使用頻度等に関連する情報を提供してもよい。リソースはデバイス、アプリケーション、データ等を含んでいてもよい。リソースの使用方法は、どのデバイスがどのアプリケーションをダウンロードするか、どのアプリケーションがどのデータにアクセスするか等を含んでいてもよい。リソースの使用頻度は、アプリケーションがダウンロードされた頻度、アプリケーションが特定のデータセットにアクセスした回数等を含んでいてもよい。
【００９７】
図６は、別の企業モビリティ管理システム６００である。図５を参照して上述したモビリティ管理システム５００の構成要素のうちのいくつかは、簡略化するために省略している。図６に図示するシステム６００のアーキテクチャは、図５を参照して上述したシステム５００のアーキテクチャと多くの点で類似しており、上述していない追加の特徴を含んでいる。
【００９８】
この場合、左側はクライアントエージェントソフトウェア６０４を伴う登録済モバイルデバイス６０２を表し、これは、（アクセスゲートウェイおよびアプリケーション制御機能を含む）クラウドゲートウェイ６０６とインタラクトして、右上に示すように、Ｅｘｃｈａｎｇｅ、Ｓｈａｒｅｐｏｉｎｔ、ＰＫＩリソース、ケロベロスリソース、および、証明書発行サービスなどの、さまざまな企業リソース６０８およびサービス６０９にアクセスする。具体的には図示していないが、モバイルデバイス６０２はまた、アプリケーションの選択およびダウンロードのために企業アプリケーションストア（たとえば、ＳｔｏｒｅＦｒｏｎｔ）とインタラクトしてもよい。
【００９９】
クライアントエージェントソフトウェア６０４は、企業データセンターでホストされるＷｉｎｄｏｗｓ（登録商標）アプリ／デスクトップを仲介するＵＩ（ユーザインターフェース）として機能し、これらは、ＨＤＸ／ＩＣＡ表示リモーティングプロトコルを使用してアクセスされる。クライアントエージェントソフトウェア６０４はまた、ネイティブｉＯＳまたはＡｎｄｒｏｉｄアプリケーションなどのモバイルデバイス６０２上のネイティブアプリケーションのインストールおよび管理をサポートする。たとえば、上図に示されている管理対象アプリケーション６１０（メール、ブラウザ、ラッピングされたアプリケーション）はすべて、デバイス上でローカルに実行するネイティブアプリケーションである。企業リソース／サービス６０８への接続性およびＳＳＯ（シングル・サイン・オン）などの、ポリシーによる管理の機能および特徴を提供するよう、クライアントエージェントソフトウェア６０４およびこのアーキテクチャのアプリケーション管理フレームワーク（ＡＭＦ）は機能する。クライアントエージェントソフトウェア６０４は、企業への、通常は他のクラウドゲートウェイコンポーネントへのＳＳＯによるアクセスゲートウェイ（ＡＧ）への、一次ユーザ認証を処理する。クライアントエージェントソフトウェア６０４は、モバイルデバイス６０２上のＡＭＦ管理対象アプリケーション６１０の挙動を制御するために、クラウドゲートウェイ６０６からポリシーを取得する。
【０１００】
ネイティブアプリケーション６１０およびクライアントエージェントソフトウェア６０４間のセキュリティ保護されたＩＰＣリンク６１２は管理チャネルを表し、これにより、クライアントエージェントソフトウェアが、各アプリケーションを「ラッピング」するＡＭＦフレームワーク６１４により強制されるポリシーを供給することを可能にする。ＩＰＣチャネル６１２はまた、クライアントエージェントソフトウェア６０４が、企業リソース６０８への接続性およびＳＳＯを可能にするクレデンシャルおよび認証情報を提供することを可能にする。最後に、ＩＰＣチャネル６１２により、ＡＭＦフレームワーク６１４が、オンラインおよびオフライン認証などの、クライアントエージェントソフトウェア６０４によって実装されるユーザインターフェース機能を呼び出すことができる。
【０１０１】
クライアントエージェントソフトウェア６０４およびクラウドゲートウェイ６０６間の通信は本質的に、それぞれのネイティブな管理対象アプリケーション６１０をラッピングするＡＭＦフレームワーク６１４からの管理チャネルの拡張である。ＡＭＦフレームワーク６１４は、クライアントエージェントソフトウェア６０４からのポリシー情報を要求し、これは次に、クラウドゲートウェイ６０６からそれを要求する。ＡＭＦフレームワーク６１４は認証を要求し、クライアントエージェントソフトウェア６０４は、クラウドゲートウェイ６０６のゲートウェイサービス部（ＮｅｔＳｃａｌｅｒ  Ａｃｃｅｓｓ  Ｇａｔｅｗａｙとしても知られている）にログインする。クライアントエージェントソフトウェア６０４はまた、クラウドゲートウェイ６０６上のサポーティングサービスを呼び出してもよく、これは入力材料を生成して、より詳細に以下に説明されるように、ローカルデータボルト６１６のための暗号化鍵を導出、または、ＰＫＩ保護リソースへの直接認証を可能にするクライアント証明書を提供してもよい。
【０１０２】
より詳細には、ＡＭＦフレームワーク６１４は、それぞれの管理対象アプリケーション６１０を「ラッピング」する。これは、明示的なビルドステップを経て、または、ビルド後の処理ステップを経て組み込まれてもよい。ＡＭＦフレームワーク６１４は、セキュリティ保護されたＩＰＣチャネルを初期化し、そのアプリケーションのポリシーを取得するためのアプリケーション６１０の最初の起動時に、クライアントエージェントソフトウェア６０４と「ペア」にしてもよい。ＡＭＦフレームワーク６１４は、クライアントエージェントソフトウェアのログイン依存性、および、ローカルＯＳサービスをいかに使用することができるか、または、それらがアプリケーション６１０といかにインタラクトすることができるかを制限する閉じ込めポリシーの一部などの、ローカルに適用されるポリシーの関連部分を強制してもよい。
【０１０３】
ＡＭＦフレームワーク６１４は、認証および内部ネットワークアクセスを容易にするために、セキュリティ保護されたＩＰＣチャネル６１２を介してクライアントエージェントソフトウェア６０４によって提供されるサービスを使用してもよい。プライベートおよび共有データボルト６１６（コンテナ）のための鍵管理はまた、管理対象アプリケーション６１０およびクライアントエージェントソフトウェア６０４間の適切なインタラクションによって管理されてもよい。ボルト６１６は、オンライン認証後のみに利用可能であってもよく、または、ポリシーで許可される場合にはオフライン認証後に利用可能にされてもよい。ボルト６１６の最初の使用は、オンライン認証を必要としてもよく、オフラインアクセスは、最大で、オンライン認証が再び必要とされる前のポリシーリフレッシュ期間に限定されてもよい。
【０１０４】
内部リソースへのネットワークアクセスは、アクセスゲートウェイ６０６を介して個々の管理対象アプリケーション６１０から直接、行ってもよい。ＡＭＦフレームワーク６１４は、各アプリケーション６１０に代わってネットワークアクセスのオーケストレーションを担う。クライアントエージェントソフトウェア６０４は、オンライン認証後に得られる適切に時間制限された二次クレデンシャルを提供することによって、これらのネットワーク接続を容易にすることができる。リバースウェブプロキシ接続およびエンドツーエンドＶＰＮスタイルトンネル６１８など、ネットワーク接続の複数のモードを使用してもよい。
【０１０５】
メール・ブラウザ管理対象アプリケーション６１０は特別なステータスを有し、任意にラッピングされたアプリケーションには一般に利用できない可能性のあるファシリティを利用できるようにしてもよい。たとえば、メール・アプリケーションは、フルＡＧログオンを要求せずに、長時間Ｅｘｃｈａｎｇｅへのアクセスを可能にする特別なバックグラウンドネットワークアクセスメカニズムを使用してもよい。ブラウザ・アプリケーションは異なる種類のデータを分ける複数のプライベートデータボルトを使用してもよい。
【０１０６】
このアーキテクチャは、様々な他のセキュリティ特徴の組み込みをサポートする。たとえば、ある場合にはクラウドゲートウェイ６０６（そのゲートウェイ・サービスを含む）はＡＤパスワードの妥当性検証をする必要がない。ある状況においてＡＤパスワードをあるユーザの認証因子として使用するかどうかは、企業の裁量に任すことができる。ユーザがオンラインまたはオフラインである（つまり、ネットワークに接続されている場合または接続されていない場合）、異なる認証方法を使用してもよい。
【０１０７】
ステップアップ認証は、クラウドゲートウェイ６０６が強力な認証が必要な極秘データへアクセスすることが認められている管理対象ネイティブアプリケーション６１０を識別し、以前の弱いレベルのログイン後にユーザにより再認証が要求されることになるとしても、これらのアプリケーションへのアクセスが適切な認証を行った後にのみ許可されることを確保してもよいのが特徴する。
【０１０８】
このソリューションの別のセキュリティ特徴は、モバイルデバイス６０２でのデータボルト（data vaults）６１６（コンテナ）の暗号化である。ボルト６１６は、ファイル、データベースおよび構成を含むすべてのオンデバイスデータが保護されるように暗号化してもよい。オンラインボルトの場合、鍵はサーバ（クラウドゲートウェイ６０６）に格納してもよく、オフラインボルトの場合、鍵のローカルコピーをユーザ・パスワードによって保護してもよい。セキュリティ保護されたコンテナ６１６でデータがデバイス６０２にローカルに格納される場合、最低でもＡＥＳ２５６暗号化アルゴリズムを利用するのが好ましい。
【０１０９】
他のセキュリティ保護されたコンテナの特徴も実装してもよい。たとえば、ロギング特徴を含めてもよく、アプリケーション６１０内で起こるすべてのセキュリティイベントを記録して、バックエンドに報告する。アプリケーション６１０が改ざんを検出する場合など、データ消去をサポートしてもよく、ユーザデータが破棄されたことの手がかりをファイルシステムに残さずに、関連暗号化鍵をランダムデータで上書きしてもよい。スクリーンショットの保護は別の特徴であり、アプリケーションはデータをスクリーンショットに格納させないようにしてもよい。たとえば、鍵ウインドウの隠しプロパティをＹＥＳに設定してもよい。これにより、どのようなコンテンツが現在スクリーンに表示されていてもそれを隠せるので、通常いずれかのコンテンツが常駐するスクリーンショットがブランクになる。
【０１１０】
たとえば、データを外部のアプリケーションにコピーまたは送信するなど、アプリケーション・コンテナ外にローカルにデータを転送することを一切させないなどして、ローカルなデータ転送を防止してもよい。キーボードのキャッシュ特徴は扱いに注意を要するテキストフィールドのオートコレクト機能を使用不可にするように動作してもよい。ＳＳＬ証明書の妥当性検証を使用可能にしてもよいので、キーチェーンに格納する代わりに、アプリケーションはサーバＳＳＬ証明書を特別に妥当性検証する。デバイスのデータを暗号化するために使用する鍵をユーザによって供給されるパスフレーズを使用して生成するように（オフラインアクセスが要求される場合）、暗号化鍵生成特徴を使用してもよい。オフラインアクセスが要求されない場合、サーバ側でランダムに生成し、格納される別の鍵を用いてＸＯＲをとってもよい。鍵導出関数は、ユーザ・パスワードから生成される鍵が、その暗号学的ハッシュを作成するのではなく、ＫＤＦ（鍵導出関数、特にＰＢＫＤＦ２）を使用するように動作してもよい。前者では、鍵が総当たり攻撃または辞書攻撃を受けやすくなる。
【０１１１】
さらに、暗号化方法に１つ以上の初期化ベクトルを使用してもよい。初期化ベクトルは同じ暗号化データの複数のコピーに異なる暗号文出力を生じ、再生および暗号解読攻撃の両方を防止する。これは攻撃者がデータの暗号化に使用する特定の初期化ベクトルが不明な場合に盗んだ暗号鍵を用いた場合であっても、データの解読を防止する。また、認証後の解読を使用してもよく、ユーザがアプリケーション内で認証された後でしかアプリケーションデータは解読されない。別の特徴はメモリ内の扱いに注意を要するデータに関係してもよく、それが必要なときにのみ、メモリ（ディスクではない）に保管されてもよい。たとえば、ログイン資格情報はログイン後にメモリから消去されて、オブジェクティブＣインスタンス変数内の暗号化鍵および他のデータは、簡単に参照される可能性があるため格納されない。代わりに、これらのためにメモリを手動で割り当ててもよい。
【０１１２】
ポリシーで定義した無活動期間の経過後に、ユーザのセッションを終了する無活動タイムアウトを実装してもよい。
【０１１３】
ＡＭＦフレームワーク６１４からのデータ漏えいは、他の方法で防止してもよい。たとえば、アプリケーション６１０がバックグラウンドに入る場合、所定（構成可能な）期間後にメモリをクリアにしてもよい。バックグラウンドに移るとき、アプリケーションの最後に表示されたスクリーンのスナップショットを取得して、フォアグラウンドに出すプロセスを迅速化してもよい。スクリーンショットは機密データを含むことがあり、そのためクリアにされるべきである。
【０１１４】
別のセキュリティ特徴は、１つ以上のアプリケーションにアクセスするためにＡＤ（アクティブディレクトリ）６２２のパスワードを使用せずに、ＯＴＰ（ワンタイムパスワード）６２０の使用に関係する。ある場合には、あるユーザは自身のＡＤパスワードを知らず（または知ることを許可されておらず）、そのためこれらユーザはＳｅｃｕｒＩＤなどのハードウェアＯＴＰシステムを使用するなど、ＯＴＰ６２０を使用して認証してもよい（ＯＴＰは、エントラストまたはジェムアルトなど、異なるベンダによっても提供されてよい）。ある場合には、ユーザがユーザＩＤで認証した後、ＯＴＰ６２０を用いてユーザにテキストが送信される。ある場合には、これはオンライン利用の場合のみ実施してもよく、プロンプトは単一フィールドである。
【０１１５】
企業ポリシーによるオフライン使用が許可されるアプリケーション６１０については、オフライン認証のためにオフラインパスワードを実装してもよい。たとえば、企業は企業アプリケーションストアにこの方法でアクセスしてもらいたい可能性がある。この場合、クライアントエージェントソフトウェア６０４はユーザにカスタムオフラインパスワードの設定を要求してもよく、ＡＤパスワードは使用されない。クラウドゲートウェイ６０６は、標準的なＷｉｎｄｏｗｓ（登録商標）  Ｓｅｒｖｅｒパスワードの複雑さの要件で記述されるなど、パスワードの最低長さ、文字種の組合せおよび有効期限に関するパスワード標準を制御し、強制するポリシーを提供してもよい。ただし、これらの要件は修正してもよい。
【０１１６】
別の特徴は、二次クレデンシャルとして一定のアプリケーション６１０のクライアント側証明書の有効化に関する（ＡＭＦのマイクロＶＰＮ特徴を介してＰＫＩ保護ウェブリソースにアクセスするため）。たとえば、メールのアプリケーションはこのような証明書を利用することがある。この場合、ＡｃｔｉｖｅＳｙｎｃ（または他の同期）プロトコルを使用した証明書による認証をサポートしてもよく、クライアントエージェントソフトウェア６０４からの証明書はクラウドゲートウェイ６０６によって検索されて、キーチェーンで使用してもよい。各管理対象アプリケーションは、クラウドゲートウェイ６０６で定義されるラベルによって識別される１つの関連クライアント証明書を有してもよい。
【０１１７】
クラウドゲートウェイ６０６は企業専用ウェブサービスとやりとりして、該当の管理対象アプリケーションが内部ＰＫＩ保護リソースに認証を行うことを可能にするクライアント証明書の発行をサポートしてもよい。
【０１１８】
クライアントエージェントソフトウェア６０４およびＡＭＦフレームワーク６１４は、内部ＰＫＩ保護ネットワークリソースに認証を行うために、クライアント証明書の取得および使用をサポートするように増強してもよい。様々なレベルのセキュリティおよび／または隔離の要求事項に応じるためなど、２つ以上の証明書をサポートしてもよい。証明書はメール・ブラウザ管理対象アプリケーション、および最終的には任意にラッピングされたアプリケーションが使用してもよい（ただし、ＡＭＦフレームワークがＨＴＴＰＳ要求を仲介するのが合理的な場合、これらのアプリケーションはウェブサービス型の通信パターンを使用する）。
【０１１９】
ｉＯＳのＡＭＦのクライアント証明書サポートは、各使用期間中、各管理対象アプリケーションのｉＯＳキーチェーンへのＰＫＣＳ  １２  ＢＬＯＢ（バイナリ・ラージ・オブジェクト）のインポートに依拠してもよい。ＡＭＦのクライアント証明書サポートは、プライベートメモリ内キーストレージとともにＨＴＴＰＳ実装を使用してもよい。クライアント証明書はｉＯＳキーチェーンには絶対に存在することはなく、強力に保護されている「オンライン限定の」データ値を潜在的に除き、存続させない。
【０１２０】
相互ＳＳＬも実装して、企業に対してモバイルデバイス６０２が認証され、かつその逆を要求することにより、追加のセキュリティを提供してもよい。クラウドゲートウェイ６０６に対する認証用の仮想スマートカードも実装してもよい。
【０１２１】
限定およびフル両方のケルベロスサポートを追加の特徴としてもよい。フルサポート特徴は、ＡＤパスワードまたは信頼できるクライアント証明書を使用したＡＤ６２２へのフルケルベロスログインを行い、ＨＴＴＰ  Ｎｅｇｏｔｉａｔｅ認証チャレンジにレスポンスするためにケルベロスサービスチケットを取得する能力に関係する。限定サポート特徴はＡＦＥＥでの制約付き委任に関係し、当該ＡＦＥＥはケルベロスプロトコル遷移の呼び出しをサポートするので、ＨＴＴＰ  Ｎｅｇｏｔｉａｔｅ認証チャレンジにレスポンスしてケルベロスサービスチケット（制約付き委任を条件とする）を取得して使用することができる。このメカニズムはリバースウェブプロキシ（別名ＣＶＰＮ）モードで機能し、ＨＴＴＰ（ただし、ＨＴＴＰＳではない）接続はＶＰＮおよびマイクロＶＰＮモードでプロキシされる。
【０１２２】
別の特徴はアプリケーション・コンテナのロックおよび消去に関係し、これはジェイルブレイクまたはルート化検出時には自動的に行われ、管理コンソールからプッシュされるコマンドとして発生し、たとえアプリケーション６１０が稼動していないときでも、遠隔消去機能を含んでいてもよい。
【０１２３】
障害のある場合に、いくつかの異なる場所のうちの１つからユーザがサービスを受けられる企業アプリケーションストアおよびアプリケーションコントローラのマルチサイト・アーキテクチャまたは構成をサポートしてもよい。
【０１２４】
ある場合には、管理対象アプリケーション６１０には、ＡＰＩ（たとえば、ＯｐｅｎＳＳＬ）を介して証明書および秘密鍵にアクセスが許可されてもよい。企業の信頼できる管理対象アプリケーション６１０は、アプリケーションのクライアント証明書および秘密鍵を用いて、特定の公開鍵オペレーションを行うことが認められてもよい。アプリケーションがブラウザのように挙動し、証明書アクセスが要求されない場合、アプリケーションが「ｗｈｏ  ａｍ  Ｉ」証明書を読み取るとき、アプリケーションが証明書を使用してセキュリティ保護されたセッション・トークンを構築するとき、およびアプリケーションが重要なデータのデジタル署名のため（たとえば、トランザクションログ）または一時データ暗号化のために秘密鍵を使用するときなど、様々な使用のケースが識別され、それに応じて扱われてもよい。
【０１２５】
〈クライアントドライブマッピングのためのモバイルデバイス管理型セキュリティのためのセキュリティ保護されたクライアントドライブマッピングおよびファイルストレージ〉
本明細書に開示された１つ以上の特徴によれば、クライアントデバイスに保存された秘密データおよび／またはファイルに対する管理制御は、ＺＥＮＰＲＩＳＥまたはＭＩＣＲＯＳＯＦＴ  ＳＣＣＭなどのプログラムによって提供される。管理制御を、クライアントドライブに書き込まれたファイルを介して提供してもよく、それにより、ＺＥＮＰＲＩＳＥなどの管理コンソールは、クライアントドライブ内の機密ファイルを監視し、および／または、ポリシーを使用してクライアントドライブからファイルを遠隔削除／消去する。
【０１２６】
本明細書に開示された特徴によれば、クライアントドライブへの読み取りおよび／または書き込みコマンドは、ＣＤＭシステム３０２などのＣＤＭファイルシステム（「ＣＤＭシステム」）を介して動作してもよく、これは、ＸＥＮＤＥＳＫＴＯＰ  ＳＥＲＶＥＲなどの企業サーバマシンに存在する。ＣＤＭシステムは、ファーム／企業固有の鍵（複数可）を使用して、クライアントデバイスへの書き込みコマンドを暗号化する。ファイルを開く間、ＣＤＭシステムは、たとえばＣＤＭドライバ３０６などのドライバを使用することによりファイルが既に書き込まれたかもしくは保存されているかを区別するためのメカニズムを使用してもよく、および／または、クライアントドライブから既存の個人用ファイルを開いてもよい。この目的のために、ＣＤＭシステムは、Ｎｅｗ  Ｔｅｃｈｎｏｌｏｇｙ  Ｆｉｌｅ  Ｓｙｓｔｅｍ（ＮＴＦＳ）代替ストリーム（「ファイルストリーム」）または変更ジャーナルなどの関連するメカニズムを使用してもよい。このように、ファイルを開くための要求を受信した後、特殊またはマークつきのファイルストリームがファイルに存在する場合、ファイルが既にＣＤＭシステムによって保存されている場合があり、ファイルのファイルブロックの部分は、アプリケーションでファイルを開く前に解読される必要があるかもしれない。アプリケーションは管理対象アプリケーションであってもよい。
【０１２７】
本明細書に記載の１つ以上の特徴によれば、ユーザがクライアントドライブに記憶されている既存の個人用ファイルを変更しているかもしれないとき、ＣＤＭシステムは、同じファイルへの書き込みアクセスを拒否されるかもしれない。たとえば、ユーザが、クライアントドライブ上に配置されている、ＥＸＣＥＬファイルであるｍｙｆｉｌｅ．ｘｓｌなどのファイルを開いた後、ユーザは、企業チャートなどの機密情報や秘密情報を（たとえば、カット＆ペーストを介して）スプレッドシートにコピーするかもしれない。ユーザが変更されたファイルを保存したい場合、ＣＤＭシステムが、変更されたファイルからの任意の更新されたファイルブロック／データと、既存の未変更ファイルのコピーとを追加してもよく、その結果、更新されたファイルのブロック／データを含んだ新しいファイルが作成される可能性がある。
【０１２８】
この新しいファイルは、既存の未変更ファイルとは別であってもよく、暗号化形式でクライアントドライブに保存されてもよい。これは、ＣＤＭシステムによって制御および／またはＣＤＭシステムを介してアクセスされてもよい。次に、ユーザが、たとえばＥＸＣＥＬなどのローカルにインストールされたバージョンのアプリケーションを使用してｍｙｆｉｌｅ．ｘｓｌを開きたい場合に、未変更ファイル（すなわち、追加された機密情報や秘密情報が含まれていないｍｙｆｉｌｅ．ｘｓｌ）が開かれ、および／またはアクセスされてもよい。あるいは／さらに、ユーザが、ＣＤＭシステムの制御下にあるかもしれないＥｘｃｅｌなどのアプリケーションの管理対象バージョンを使用してｍｙｆｉｌｅ．ｘｓｌを開きたい場合、新しいファイル（すなわち、追加された機密情報や秘密情報を含まないｍｙｆｉｌｅ．ｘｓｌ）が開かれ、および／またはアクセスされてもよい。
【０１２９】
ＣＤＭシステムは、ファイルストリームまたは変更ジャーナル内のストリームマーキングなどの、ファイルのメタデータを使用して、機密データが含まれている新しいファイルに機密データが含まれていない未変更ファイルをリンクまたはポイントする。したがって、ＣＤＭシステムは、クライアントがＣＤＭシステムに接続されていることを検出し、既存のファイルを開くための要求の受信に応答して、ＣＤＭシステムは、ファイルストリームまたは変更ジャーナルなどのファイルのメタデータが、秘密データを含むファイルのバージョンへのリンクを含むマーカーストリームを含むかどうかを判定してもよい。そうである場合、秘密データを含むファイルへのクライアントアクセスを提供してもよい。
【０１３０】
開示された実施形態に係る機能および処理が、図７および図８において以下に説明される。
【０１３１】
図７は、本明細書に記載される１つ以上の開示された特徴に応じて、モバイルデバイス管理型セキュリティのためのセキュリティ保護されたクライアントドライブマッピングおよびファイルストレージを使用して、マッピングされたローカルドライブに変更されたファイルを保存する例示的なプロセス７００を示すフロー図である。
【０１３２】
図７に示すプロセスおよび／または１つ以上のステップは、コンピューティングデバイス（たとえば、クライアントデバイス３０４、企業サーバマシンなど）によって実行されてもよい。また、図７に示すプロセスおよび／またはその１つ以上のステップは、不揮発性(non-transitory)コンピュータ可読メモリなどのコンピュータ可読媒体に記憶されるコンピュータ実行可能命令で具現化されてもよい。プロセス７００において、ステップ７０６，７０８，７１０，７１２，７１４，７４０および７４６は、たとえば、クライアント３０４などのクライアント側において実施または実行され、ステップ７１８，７２０，７２２，７２４，７２６，７２８，７３０，７３２，７３４，７３６，７３８，７４２，７４４および７４６は、たとえば、ＣＤＭシステム３０２上などの企業サーバマシンやＣＤＭシステム側において、実施または実行される。あるいはまたはさらに、プロセス７００の任意のステップは、クライアント、企業サーバマシンまたはＣＤＭシステム上において実施されてもよい。
【０１３３】
プロセス７００は、ステップ７０６で開始される。そこでは、表計算やワードプロセシングプログラムなどのアプリケーションが、クライアント３０４などのクライアントデバイス上でロードまたは起動される。アプリケーションは、ＣＤＭシステム３０２に作動可能に接続されている企業サーバなどのサーバ上で管理されているアプリケーションのインスタンスを実行しているかもしれない。
【０１３４】
管理対象アプリケーションを、たとえば、１つ以上のポリシーが管理対象アプリケーションに適用される少なくとも１つの管理モードを提供するように構成してもよく、１つ以上のポリシーは、上述したように、管理対象アプリケーションの１つ以上の機能を制限するように構成される。ユーザまたは他のアプリケーションからなど、管理対象アプリケーションにアクセスするための要求に応答して、管理対象アプリケーションをロードまたは起動する。管理対象アプリケーションを、例として、ベース仮想デスクトップまたは企業配信アプリケーションから起動してもよい。あるいは、またはさらに、アプリケーションがクライアント３０４上で実行中であってもよい。
【０１３５】
ステップ７０８において、ファイルにアクセスして変更する要求を受信する。たとえば、クライアント３０４は、クライアント３０４上のローカルドライブに記憶されたファイルおよび／または文書などの１つ以上のクライアントリソースにアクセスして変更する要求を受信してもよい。ローカルドライブは、マッピングされたまたはマッピングされていないドライブであってもよい。変更は、たとえば、文書にデータを入力すること、または、民間企業データなどの秘密データをリソースに挿入することであってもよい。ユーザがクライアント３０４を使用するときにファイルが変更されてもよい。クライアント３０４は、企業サーバマシンおよび／またはＣＤＭシステム３０２に接続されるか、もしくは関連付けられており、企業サーバマシンから情報を受信し、ファイルの中に情報を挿入できる。
【０１３６】
いくつかの実施形態によれば、ユーザは、企業マシンまたはリソースにログインして、クライアント上のドライブに企業マシンまたはリソースからのコンテンツをダウンロードしたり保存したりするかもしれず、そして、これはクライアント上で変更されるかもしれない。いくつかの実施形態によれば、ユーザは、クライアント上でファイルを開いてもよく、そのファイルに、たとえば、企業サーバマシンから取得することができる機密情報をコピーしてもよい。
【０１３７】
ステップ７１０では、ファイルの変更後、ユーザがアプリケーションを閉じるか、クライアントをシャットダウンする前に、ファイルをローカルに保存することを望む場合、クライアント３０４に変更されたファイルを保存するための要求を受信する。
【０１３８】
ステップ７１２では、変更されたファイルを保存するための要求を受信したことに応答して、アプリケーションが企業によって管理されるなどの管理されたモードで実行されているかどうか、または、アプリケーションが管理されたモードで実行されていないかどうかの判断が、たとえばクライアント３０４によってなされる。たとえば、管理対象アプリケーションを実行中のクライアント３０４を、ＣＤＭシステム３０２に接続される企業サーバマシンに接続してもよい。この場合、クライアント３０４は、ＣＤＭシステム３０２に関連付けられている企業サーバマシンにマッピングされた、そのローカルドライブを有してもよい。あるいは、管理対象アプリケーションを実行していないクライアント３０４は、企業サーバマシンに接続されておらず、したがって、ＣＤＭシステム３０２に関連付けられている企業サーバマシンにマッピングされた、そのローカルドライブを持っていないかもしれない。
【０１３９】
また、アプリケーションが管理されたモードでないとステップ７１２で判定された場合、プロセス７００はステップ７１４に進む。ステップ７１４において、変更されたファイルを、クライアント３０４のローカルドライブに保存する。たとえば、変更されたファイルは、既存のファイルを上書きしてもよく、または、ローカルドライブに新しいファイルとして保存されてもよい。ついで、プロセスはステップ７１６で終了する。
【０１４０】
また、アプリケーションが管理されたモードであるとステップ７１２で判定された場合、プロセス７００はステップ７１８に進む。ステップ７１８において、変更されたファイルを保存するための要求が、ＣＤＭシステム３０２などのＣＤＭシステムによって受信される。これは、企業サーバマシンに接続されるか、または、企業サーバマシンに関連して行われる。クライアント３０４のローカルドライブはまた、ＣＤＭシステム３０２に動作可能に接続された企業ドライブにマッピングされてもよい。
【０１４１】
ＣＤＭシステム３０２が、クライアント３０４から変更されたファイルを保存するための要求を受け取った後、変更されたファイルが秘密情報や機密データを含むかどうかがステップ７２０で判定される。秘密データは、企業に関連付けられている会社および／またはＣＤＭシステム３０２によって保護されることが求められるデータであってもよい。秘密データはまた、それにアクセスすることが承認されていない者にアクセスされるべきではないデータを含んでもよい。
【０１４２】
ステップ７０８でのファイルの変更があれば、ファイルに秘密データを挿入した可能性がある。したがって、ＣＤＭシステム３０４は、変更されたファイルが秘密データを含むかどうかを判定するために、ファイルにおいて挿入および／または変更されたデータを評価する。ＣＤＭシステム３０４はまた、この判定を行うために、変更されたファイルとファイルの既存のバージョンとを比較してもよい。あるいは、コピーされたデータが実際に秘密／機密であるか否かに関係なく、企業ベースのソースから、たとえば企業ストレージに存在するファイルから、ファイルにデータがコピーされたときはいつでも、ＣＤＭシステム３０４は、ファイルが機密データを含んでいると判定してもよい。あるいは、ＣＤＭシステム３０４は、たとえば、クライアント３０４を使用するユーザによってファイルに、入力、挿入、コピー、ペースト、タイプなどされた可能性のある任意のデータを、秘密／機密として扱ってもよい。あるいは、ネットワーク管理者またはマネージャなどの、企業および／またはＣＤＭシステム３０２に関連付けられた担当者は、企業および／またはＣＤＭシステム３０２のセキュリティのレベルを構成してもよく、セキュリティのこのレベルの実施することによって、ファイルが秘密／機密情報を含むかどうかの判断を援助してもよい。
【０１４３】
たとえば、セキュリティレベルが、より高く、より制限的なレベルに設定されている場合、ファイルに入力されたほとんどのデータが、秘密／機密とみなされるかもしれない。たとえば、セキュリティレベルが、より低く、より制限の少ないレベルに設定されている場合、ファイルに入力されたほとんどのデータが、秘密／機密とみなされないかもしれない。さらに、ネットワーク管理者またはマネージャが、ファイルに入力されたデータが秘密／機密とみなされるかどうかを判断するための追加要件／条件を追加する柔軟性を有していてもよい。
【０１４４】
変更されたファイルが秘密データを含んでいないとステップ７２０で判定された場合は、プロセス７００は７１４に進む。ステップ７１４において、変更されたファイルをクライアント３０４のローカルドライブに保存してもよい。たとえば、変更されたファイルは、既存のファイルを上書きしてもよく、または、ローカルドライブに新しいファイルとして保存されてもよい。ついで、プロセスはステップ７１６で終了する。
【０１４５】
変更されたファイルが秘密データを含むかもしれないとステップ７２０で判定された場合、プロセス７００はステップ７２２に進む。ステップ７２２において、変更されたファイルまたは変更されたファイルの一部を暗号化して、暗号化された変更ファイルを作成する。したがって、秘密データを含むファイルの一部が暗号化されてもよく、および／または、さらなる部分が暗号化されてもよい。暗号化された部分は、暗号化されたデータブロックを含んでもよい。任意の暗号化アルゴリズムを、暗号化を実行するために使用してもよい。変更されたファイルを、ファーム固有の暗号化鍵を用いて暗号化してもよい。たとえば、ファーム固有秘密暗号化鍵は、特定の企業のために、特定の企業に接続されたコンピューティングデバイスのために、または、企業サーバマシンシステムを維持するために使用されるサーバのグループのために、生成された暗号化鍵であってもよい。暗号化鍵は、クライアントデバイス３０４などのクライアントデバイスに固有であってもよく、および／または、システム３０２などのＣＤＭシステムに固有であってもよい。暗号化鍵は、企業サーバマシンまたはＣＤＭシステム３０２上に記憶されてもよい。
【０１４６】
ステップ７２４において、変更されたファイルの既存のバージョンが、たとえば、ＣＤＭシステム３０２に動作可能に結合される企業サーバマシン上に存在する可能性があるかどうかが判定される。たとえば、ステップ７０８においてであれば、ユーザがファイルにアクセスして変更する可能性がある場合に、ユーザは、たとえば、企業サーバマシンで管理されるアプリケーションを使用して企業サーバマシンからファイルを開いてもよい。あるいは、またはさらに、ファイルが最初にクライアント３０４上で作成されてもよく、したがって、ファイルのバージョンは、企業サーバマシン上に存在しない場合がある。変更されたファイルの既存のバージョンは、ステップ７０８で受信した変更および／または任意の秘密データを含まないかもしれない。
【０１４７】
変更されたファイルの既存のバージョンがすでに企業サーバマシン上に存在しないことがステップ７２４で判定された場合、プロセス７００はステップ７２６に進む。ステップ７２６において、ＣＤＭシステム３０２は、暗号化された変更ファイルから新しい暗号化ファイルを作成してもよく、企業サーバマシン上にそれを格納してもよい。たとえば、新しい暗号化ファイルは、秘密データおよび／またはファイル内の任意の他のデータに対応する暗号化されたデータブロックを含んでもよい。
【０１４８】
ステップ７２８においては、新しい暗号化されたファイルのメタデータの一部またはすべてが暗号化される。メタデータは、ファイルのプロパティを記述してもよいし、変更されたファイルの暗号化に使用する暗号化鍵を含んでもよい。メタデータは、ファイルストリームおよび／または変更ジャーナルを含むか、またはそれに関連付けられてもよい。ファイルストリームおよび変更ジャーナルは、ファイルに関連付けすることができるメタデータであってもよく、それにより、アプリケーションがファイルを開くよう要求した後に、たとえば、ファイルに関連付けられているファイルストリームまたは変更ジャーナルなどのメタデータを読み取ってもよい。いくつかの実施形態では、ファイルストリームを暗号化しているかもしれないので、たとえば、管理されたモードでないかもしれないアプリケーションが、たとえば、ファイルストリームに記憶されたファイルの場所を判定することができないかもしれない。この態様で、管理対象アプリケーションは、たとえば、ファイルストリームに記憶されたファイルの場所を決定することができるようにファイルストリームを解読することができるかもしれない。この態様は、さらに以下に説明される。
【０１４９】
メタデータ、ファイルストリームおよび／または変更ジャーナルは、ファイルの名前を含んでいてもよいストリームマーカーを含むか、またはそれに関連付けられていてもよく、ファイルにポイントしてもよく、ならびに／または、企業サーバマシンおよび／もしくはクライアント３０４上に記憶されたファイルへアクセスする場所または方法を示してもよい。ストリームマーカーは、ステップ７２８で暗号化されてもよい。たとえば、マーカーは、管理対象アプリケーション、クライアントデバイス３０４、企業サーバマシンまたはＣＤＭシステム３０２に、非暗号化または暗号化バージョンのデータファイルのどちらにアクセスすべきかについて、信号を送ってもよい。この態様は、さらに以下に説明される。
【０１５０】
マーカーは、新しい暗号化されたファイルが秘密データを含むかどうかを示してもよい。また、複数のマーカーがメタデータに含まれてもよく、これらは、異なる秘密データを含むかもしれない異なるファイルをポイントしてもよい。さらに、ステップ７２２で変更されたファイルを暗号化するために使用されるファーム固有の暗号化鍵は、新しい暗号化されたファイルのメタデータに含まれてもよく、また、ステップ７２８で暗号化されてもよい。さらに、新しい暗号化されたファイルのメタデータは、ファーム固有の暗号化鍵を用いて暗号化されてもよく、これは、ステップ７２２で変更されたファイルを暗号化するために使用されるファーム固有の暗号化鍵などの、本明細書に開示された他の暗号化鍵と同じでも、または異なっていてもよい。たとえば、メタデータを暗号化するために使用されるファーム固有の秘密暗号化鍵は、特定の企業のために、特定の企業サーバマシンに接続されたコンピューティングデバイスのために、または、企業サーバマシンシステムを維持するために使用されるサーバのグループのために、生成された暗号化鍵であってもよい。メタデータを暗号化するために使用される暗号化鍵は、ファイル、クライアントデバイス３０４などのクライアントデバイスに固有、および／またはＣＤＭシステム３０２などのＣＤＭシステムに固有であってもよい。メタデータを暗号化するために使用する暗号化鍵は、企業サーバマシンまたはＣＤＭシステム７０２に記憶されてもよい。新しい暗号化されたファイルはそして、たとえば、クライアント３０４または企業サーバマシン上に保存されてもよい。
【０１５１】
変更されたファイルの既存のバージョンがすでに企業サーバマシン上に存在することがステップ７２４で判定された場合は、プロセス７００は７３０に進む。ステップ７３０において、既存のファイルが、たとえば、既存のファイルのメタデータ内に暗号化されたマーカーを含むかどうかが判定される。マーカーは、既存のファイルのメタデータに含まれる、または、それに関連付けられるファイルストリームもしくは変更ジャーナルに含まれてもよい。
【０１５２】
既存のファイルが暗号化されたマーカーを含んでいないとステップ７３０で判定された場合、プロセス７００は７３２に進む。ステップ７３２において、秘密データを含むかもしれない、既存のファイルのコピー（「コピーされたセキュリティ保護されていない(non-secure)ファイル」）は、ＣＤＭシステム３０２または企業サーバマシン上で作成されてもよい。
【０１５３】
ステップ７３４において、コピーされたセキュリティ保護されていないファイルは、コピーされたセキュリティ保護された(secure)ファイルを作成するために、暗号化される。さらに、ステップ７２２で変更されたファイルを暗号化するために使用されるファーム固有の暗号化鍵は、コピーされたセキュリティ保護されたファイルのメタデータに含まれてもよい。さらに、コピーされたセキュリティ保護されたファイルのメタデータは、ステップ７２２で変更されたファイルを暗号化するために使用されるファーム固有の暗号化鍵などの、本明細書に開示された他の暗号化鍵と同じでも、または異なっていてもよいファーム固有の暗号化鍵を用いて暗号化されてもよい。
【０１５４】
ステップ７３６において、既存のファイルのメタデータの一部または全部がマークされた変更されていないファイルを作成して暗号化される。たとえば、暗号化されたマーカーを作成してもよく、および／またはメタデータに含ませてもよい。暗号化されたマーカーは、マークされた変更されていないファイルのメタデータに含まれるかまたはそれに関連付けられる、ファイルストリームまたは変更ジャーナルに含まれてもよい。マーカーは、マークされた変更されていないファイルをコピーされたセキュリティ保護されたファイルにリンクまたはポイントしてもよい。たとえば、マーカーは、マークされた変更されていないファイルを開くための要求を受信した後、コピーされたセキュリティ保護されたファイルにアクセスするかどうかについて、たとえば、管理対象アプリケーション、クライアントデバイス３０４、企業サーバマシンおよび／またはＣＤＭシステム３０２に信号を送ってもよい。この態様は、さらに以下に説明される。
【０１５５】
マーカーは、マークされた変更されていないファイルに秘密データが含まれているかどうかを示してもよい。また、複数のマーカーが、メタデータに含まれてもよい。さらに、ファイルを暗号化するために使用されるファーム固有の暗号化鍵が、マークされた変更されていないファイルのメタデータに含まれてもよく、また、ステップ７３６で暗号化されてもよい。さらに、マークされた変更されていないファイルのメタデータは、ファーム固有の暗号化鍵を用いて暗号化されてもよく、これは、たとえば、ステップ７２２で変更されたファイルを暗号化するために使用されるファーム固有の暗号化鍵などの本明細書に開示された他の暗号化鍵と同じであってもまたは異なってもよい。たとえば、マークされた変更されていないファイルのメタデータを暗号化するために使用されるファーム固有の秘密暗号化鍵は、特定の企業のために、特定の企業サーバマシンに接続されたコンピューティングデバイスのために、または、企業サーバマシンシステムを維持するために使用されるサーバのグループのために、生成される暗号化鍵であってもよい。マークされた変更されていないファイルのメタデータを暗号化するために使用される暗号化鍵は、ファイル、クライアントデバイス３０４などのクライアントデバイスに固有で、および／またはＣＤＭシステム３０２などのＣＤＭシステムに固有であってもよい。マークされた変更されていないファイルのメタデータの暗号化に使用する暗号化鍵は、企業サーバマシンまたはＣＤＭシステム７０２上に記憶されてもよい。マークされた変更されていないファイルは、クライアント３０４などのクライアント上に記憶されてもよい。あるいは、またはさらに、マークされた変更されていないファイルを、ＣＤＭシステム７０２または企業サーバマシン上に記憶してもよい。
【０１５６】
ステップ７３８において、ステップ７２２で暗号化された変更されたファイルの部分を、暗号化されたコピーされたファイル(copied file)を作成するために、コピーされたセキュリティ保護されたファイルに追加してもよく、または、そこに保存してもよい。暗号化されたコピーされたファイルは、企業サーバマシン、ＣＤＭシステム３０２などのＣＤＭシステム、および／またはクライアント３０４などのクライアント上に、記憶されてもよい。ステップ７３６で作成されたマークされた変更されていないファイルが、この新たに作成された暗号化されたコピーファイルをポイントするマーカーを含んでもよく、それにより、クライアント上でマークされた変更されていないファイルを開くための要求を受信した後、マークされた変更されていないファイルのマーカーが、暗号化されたコピーされたファイルをポイントしてもよく、および／またはそれへのアクセスを可能としてもよい。この態様は、さらに以下に説明される。
【０１５７】
ステップ７４０において、マークされた変更されていないファイルを、マッピングされたローカルドライブにおいて、クライアント３０４などのクライアント上に記憶させる。ついで、プロセスはステップ７１６で終了する。
【０１５８】
既存のファイルが暗号化されたマーカー（「マークされた既存のファイル」）を含んでいるかもしれないとステップ７３０において判定された場合、プロセス７００はステップ７４２に進む。ステップ７４２において、ストリームマーカーを、ファーム固有の暗号化鍵などの暗号化鍵を使用して解読してもよく、これはステップ７２２において変更したファイルを暗号化するために使用されるファーム固有の暗号化鍵などの本明細書に開示された他の暗号化鍵と同じでも、または異なっていてもよい。ストリームマーカーの解読により、マークされた既存のファイルの変更が可能となる。
【０１５９】
ステップ７４４において、ステップ７２２で暗号化されているかもしれない変更されたファイルの一部を、更新済みのマークされたファイルを作成するために、マークされた既存のファイルに追加してもよく、または、そこに保存してもよい。更新済みのマークされたファイルは、企業サーバマシン、ＣＤＭシステム３０２などのＣＤＭシステム、および／またはクライアント３０４などのクライアント上に記憶されてもよい。マークされた既存のファイルは、この更新済みのマークされたファイルをポイントするストリームマーカーを含んでもよく、それにより、クライアントにおいてマークされた既存のファイルを開くための要求を受信した後、マークされた既存のファイルのマーカーは、更新済みのマークされたファイルへポイントしてもよく、および／またはそれへのアクセスを可能としてもよい。この態様は、さらに以下に説明される。
【０１６０】
ステップ７４６では、マークされた既存のファイルを、マッピングされたローカルドライブにおいて、クライアント３０４などのクライアント上に記憶させる。そして、プロセスはステップ７１６で終了する。
【０１６１】
図８は、本明細書に記載される１つ以上の開示された特徴に応じて、モバイルデバイス管理型セキュリティのためのセキュリティ保護されたクライアントドライブマッピングおよびファイルストレージを使用して、クライアント３０４などのクライアント上でファイルを開く例示的なプロセス８００を示すフロー図である。
【０１６２】
１つ以上の実施形態において、図８に示すプロセスおよび／または１つ以上のそのステップは、コンピューティングデバイス（たとえば、クライアントデバイス３０４、企業サーバマシンなど）によって実行されてもよい。他の実施形態では、図８に示すプロセスおよび／または１つ以上のそのステップは、不揮発性コンピュータ可読メモリなどのコンピュータ可読媒体に記憶されるコンピュータ実行可能命令で具現化されてもよい。
【０１６３】
プロセス８００において、ステップ８０６，８０８，８１０，８１２，８１４，８２４，８３２および８３４は、たとえば、クライアント３０４などのクライアント側において実施または実行されてもよく、ステップ８１８，８２０，８２２，８２６，８２８および８３０は、たとえば、企業サーバマシンやＣＤＭシステム３０２などのＣＤＭシステム側において、実施または実行されてもよい。あるいはまたはさらに、プロセス８００の任意のステップは、クライアント、企業サーバマシンまたはＣＤＭシステム上において実施されてもよい。
【０１６４】
プロセス８００は、ステップ８０６で開始され、そこでは、表計算やワードプロセシングプログラムなどのアプリケーションを、クライアント３０４などのクライアントデバイス上でロードまたは起動する。アプリケーションは、ＣＤＭシステム３０２に作動可能に接続された企業サーバなどのサーバ上で管理されているアプリケーションのインスタンスを実行しているかもしれない。
【０１６５】
管理対象アプリケーションを、たとえば、１つ以上のポリシーが管理対象アプリケーションに適用される少なくとも１つの管理モードを提供するように構成してもよく、１つ以上のポリシーは、上述したように、管理対象アプリケーションの１つ以上の機能を制限するように構成されてもよい。ユーザまたは他のアプリケーションからなど、管理対象アプリケーションにアクセスするための要求に応答して、管理対象アプリケーションをロードまたは起動してもよい。管理対象アプリケーションを、例として、ベース仮想デスクトップまたは企業配信アプリケーションから起動することができる。あるいは、またはさらに、アプリケーションがクライアント３０４上で実行中であってもよい。
【０１６６】
ステップ８０８において、ローカルデバイスドライブに記憶されている既存のファイルにアクセスするかまたはそれを開く要求を、クライアント３０４などのクライアントデバイス上で受信する。たとえば、ユーザや他のアプリケーションがそのような要求を行ってもよい。ローカルデバイスドライブを、ＣＤＭシステム３０２などのＣＤＭシステムを使用して企業ドライブにマッピングしてもよい。
【０１６７】
ステップ８１０において、たとえば、クライアント３０４のローカルドライブ上に記憶されている既存のファイルにアクセスするまたはそれを開く要求を受信することに応答して、たとえば、既存のファイルにリンクされるか、またはそれに関連付けられてもよい機密または秘密情報へアクセスするために１つ以上の条件または経験則を満たすことができるかどうかを、クライアント３０４、ＣＤＭシステム３０２または企業サーバマシンなどによって判定する。機密または秘密情報は、企業サーバマシン上に記憶されたファイルに含まれてもよい。たとえば、クライアント３０４に記憶されている既存のファイルは、企業サーバマシンに記憶されたファイルにポイントすることができる既存のファイルのメタデータにおいてマーカーを含んでもよい。したがって、既存のファイルへアクセスするかまたはそれを開く要求が受信された後、および、１つ以上の条件が満たされた場合、企業サーバマシン上に記憶されたファイルへのアクセスが許可される。この態様は、さらに以下に説明される。
【０１６８】
前記各条件もしくは法則(heuristics)には、起動したアプリケーションが管理対象アプリケーションであってもよいかどうか、クライアント３０４がＣＤＭシステム３０２および／または企業サーバマシンに接続してもよいかどうか、既存のファイルがたとえば、別のファイルへポイントすることができる既存のファイルのメタデータ内のマーカーを有していてもよいかどうか、既存のファイルが暗号化されたメタデータを含んでもよいかどうか、既存のファイルが秘密または機密情報を含むかどうか、既存のファイルのメタデータの一部がファイルストリームおよび／または変更ジャーナルに関連付けられているか、またはそれを含むかどうか、コピーおよび／またはペーストイベントが発生したかどうか、クライアントがＣＩＴＲＩＸ  ＲＥＣＥＩＶＥＲなどのアプリケーションを介してネットワークに接続されているかどうか、などが含まれる。
【０１６９】
いくつかの態様によれば、いくつかの条件が満たされた場合には、他の情報にアクセスできなくても、特定の情報にアクセスすることはできる。たとえば、全ファイルへのアクセスを可能にすることを満たすことができる所定の数の条件が存在する一方で、一部のファイルへのアクセスを可能にするより少ない所定の数の条件が満たされてもよい。
【０１７０】
１つ以上の条件が満たされないかもしれないとステップ８１０で判定された場合、プロセス８００はステップ８１２に進む。ステップ８１２において、たとえば暗号化されたおよび／または秘密もしくは機密情報などの情報へのアクセスは拒否されるかもしれない。このような情報は、たとえば、クライアント３０４、ＣＤＭシステム３０２または企業サーバマシン上に記憶されたファイルに記憶されてもよい。
【０１７１】
ステップ８１４において、クライアント３０４のようなクライアントで実行中かもしれないアプリケーションは、その後、たとえば、暗号化されたおよび／または秘密もしくは機密情報などの情報が含まれないかもしれない既存のファイルのバージョン（セキュリティ保護されていないファイル）を開いてもよい。セキュリティ保護されていないファイルを、たとえば、クライアント３０４、ＣＤＭシステム３０２、または企業サーバマシン上に記憶してもよい。ついで、プロセスはステップ８１６で終了する。
【０１７２】
１つ以上の条件を満足しているかもしれないとステップ８１０で判定された場合、プロセス８００はステップ８１８に進む。ステップ８１８において、既存のファイルを開く要求は、企業サーバマシンおよび／またはクライアント３０４などのクライアントに接続されているか、またはそれに関連付けられてもよいＣＤＭシステム３０２などのＣＤＭシステムによって受信される。
【０１７３】
ＣＤＭシステム３０２がクライアント３０４から既存のファイルを開く要求を受信した後、既存のファイルが暗号化されたメタデータを含んでいるかどうかがステップ８２０で判定される。たとえば、ストリームマーカーは、既存のファイルのメタデータに含まれているか、またはそれに関連付けられているファイルストリームまたは変更ジャーナル中に存在してもよい。マーカーはまた、暗号化されてもよい。したがって、ステップ８２０において、既存のファイルがこのようなマーカーを含むかどうかを判定してもよい。
【０１７４】
既存のファイルが暗号化されたマーカーを含まないかもしれないとステップ８２０で判定された場合、プロセス８００はステップ８２２に進む。ステップ８２２において、ＣＤＭシステム３０２は、たとえば、暗号化されたおよび／または秘密もしくは機密情報などの情報を含んでいないかもしれない既存のファイルのバージョン（セキュリティ保護されていないファイル）のファイルハンドルを返してもよい。ファイルハンドルは、セキュリティ保護されていないファイルにアクセスするための表示(indicator)を提供してもよい。
【０１７５】
ステップ８２４では、クライアント３０４などのクライアント上で実行されているかもしれないアプリケーションが、セキュリティ保護されていないファイルのファイルハンドルを受信してもよい。
【０１７６】
ステップ８１４では、クライアント３０４のようなクライアント上で実行されているアプリケーションは、その後、セキュリティ保護されていないファイルを開いてもよい。セキュリティ保護されていないファイルを、たとえば、クライアント３０４、ＣＤＭシステム３０２、または企業サーバマシン上に記憶してもよい。ついで、プロセスはステップ８１６で終了する。
【０１７７】
既存のファイルのメタデータがファイルストリームまたは変更ジャーナルにおいてのように暗号化されたマーカーを含むかもしれないとステップ８２０で判定された場合、プロセス８００はステップ８２６に進む。ステップ８２６において、暗号化されたマーカーをファーム固有の暗号化鍵などの暗号化鍵を用いて解読する。
【０１７８】
暗号化されたマーカーがステップ８２６で解読された後、既存のファイルの解読されたマーカーが、秘密または機密情報を含んでいるかもしれない既存のファイルのバージョン（セキュリティ保護されたファイル）に関連する情報を含むことができるかどうかが、ステップ８２８で判定される。たとえば、マーカーは、セキュリティ保護されたファイルに関連する情報を含んでもよく、既存のファイルをセキュリティ保護されたファイルへポイントしてもよく、および／または、セキュリティ保護されたファイルへのアクセスを可能としてもよい。
【０１７９】
既存のファイルの解読されたマーカーが既存のファイルのセキュリティ保護されたバージョンに関連する情報を含まないかもしれないとステップ８２８において判定された場合、プロセス８００はステップ８２２に進む。ステップ８２２において、ＣＤＭシステム３０２は、たとえば暗号化されたおよび／または秘密もしくは機密情報などの情報が含まれないかもしれない既存のファイルのバージョン（「セキュリティ保護されていないファイル」）のファイルハンドルを返してもよい。ファイルハンドルは、セキュリティ保護されていないファイルにアクセスするための表示を提供してもよい。
【０１８０】
ステップ８２４では、クライアント３０４などのクライアント上で実行されているアプリケーションは、セキュリティ保護されていないファイルのハンドルを受信してもよい。
【０１８１】
ステップ８１４では、クライアント３０４のようなクライアント上で実行されているアプリケーションは、その後、セキュリティ保護されていないファイルを開いてもよい。セキュリティ保護されていないファイルを、たとえば、クライアント３０４、ＣＤＭシステム３０２、または企業サーバマシン上に記憶してもよい。ついで、プロセスはステップ８１６で終了する。
【０１８２】
既存のファイルの解読されたマーカーが既存のファイルのセキュリティ保護されたバージョンに関連する情報を含むかもしれないとステップ８２８で判定された場合、プロセス８００はステップ８３０に進む。ステップ８３０において、ＣＤＭシステム３０２は、たとえば、暗号化されたおよび／または秘密もしくは機密情報などの情報が含まれる場合がある既存のファイルのバージョン（「セキュリティ保護されたファイル」）のファイルハンドルを返してもよい。ファイルハンドルは、セキュリティ保護されたファイルにアクセスするための指標を提供してもよい。
【０１８３】
ステップ８３２では、クライアント３０４などのクライアント上で実行されているかもしれないアプリケーションは、セキュリティ保護されたファイルのファイルハンドルを受信する。
【０１８４】
ステップ８３４では、クライアント３０４のようなクライアントで実行されているかもしれないアプリケーションは、その後、既存のファイルのセキュリティ保護されたバージョンを開いてもよい。このセキュリティ保護されたファイルを、たとえば、クライアント３０４、ＣＤＭシステム３０２、または企業サーバマシン上に記憶する。ついで、プロセスはステップ８１６で終了する。
【０１８５】
構造的な特徴および／または方法論的な行為に特有の用語で主題を説明してきたが、添付の請求項で定義される主題は必ずしも上述した特有の特徴または行為に制限されるものではないことは理解されるべきである。むしろ、上述した特有の特徴および行為は以下の請求項の実施態様として説明されたものである。
【０１８６】
関連出願の相互参照
本願は、２０１３年１０月１６日に出願された「モバイルデバイス管理型セキュリティのためのセキュリティ保護されたクライアントドライブマッピングおよびファイルストレージシステム」という発明の名称を有する係属中の米国特許出願第１４／０５４，８９９号の優先権を主張する。
【図１】
0006480435.tif 000002
【図２】
0006480435.tif 000003
【図３】
0006480435.tif 000004
【図４】
0006480435.tif 000005
【図５】
0006480435.tif 000006
【図６】
0006480435.tif 000007
【図７】
0006480435.tif 000008
【図８】
0006480435.tif 000009