(58)【調査した分野】(Int.Cl.,DB名)
前記状態情報を監視するステップは、前記モバイルコンピューティングデバイス上に存在する1つ以上のアプリケーションを特定すること、前記モバイルコンピューティングデバイスにより使用される1つ以上のネットワーク接続を特定すること、または前記モバイルコンピューティングデバイスについての現在位置情報を判定することのうちの、1つ以上を含む、請求項1に記載の方法。
前記状態情報を監視するステップは、前記モバイルコンピューティングデバイス上に存在する1つ以上のアプリケーションを特定すること、前記モバイルコンピューティングデバイスにより使用される1つ以上のネットワーク接続を特定すること、または前記モバイルコンピューティングデバイスについての現在位置情報を判定することのうちの1つ以上を含む、請求項12に記載のモバイルコンピューティングデバイス。
前記状態情報を監視するステップは、前記モバイルコンピューティングデバイス上に存在する1つ以上のアプリケーションを特定すること、前記モバイルコンピューティングデバイスにより使用される1つ以上のネットワーク接続を特定すること、または、前記モバイルコンピューティングデバイスについての現在位置情報を判定することのうちの1つ以上を含む、請求項17に記載の1つ以上の不揮発性コンピュータ読取可能媒体。
【発明を実施するための形態】
【0017】
様々な実施形態についての以下の記載において、上で特定した添付図面への参照がなされ、それは本願の一部を形成し、そこでは本発明の様々な態様が実践される様々な実施形態が、実施例として示される。
【0018】
しかし他の実施形態が利用されてもよく、本発明で検討される範囲から逸脱しなければ、構造的および機能的修正がなされてもよい。様々な態様が、他の実施形態の実施を可能とし、実践され、または、様々な異なる方法で実行されることが可能である。
【0019】
さらに、本発明で使用される語法および用語法は、説明目的であって、限定的とみなされるべきではない。むしろ、本発明で使用される句および用語は、最も広い解釈および意味を与えられるべきである。「含む(including)」、「備える(comprising)」およびその変形の使用は、その後に列挙される項目およびその均等物ならびに追加の項目およびその均等物の包含を意味する。
【0020】
上述のように、モバイルデバイス管理機能の提供に関する特定の実施形態が、本明細書で検討される。しかしながら、これらの概念のより詳細な検討の前に、本発明の様々な態様の実装および/または別様の提供において使用されてもよいコンピューティングアーキテクチャおよび企業モビリティ管理アーキテクチャのいくつかの実施例が、まず
図1〜
図4を参照して検討される。
【0021】
〈コンピューティングアーキテクチャ〉
コンピュータソフトウェア、ハードウェアおよびネットワークが、とりわけ、スタンドアローン、ネットワーク接続、リモートアクセス(別名、リモートデスクトップ)、ヴァーチャル環境、および/または、クラウドベース環境、を含む様々な異なるシステム環境において利用される。
【0022】
図1は、スタンドアローンおよび/またはネットワーク接続環境において本明細書で記述される1つ以上の実施形態を実装するために使用される、システムアーキテクチャおよびデータ処理デバイスの一実施例を示す。
【0023】
様々なネットワークノード103,105,107および109が、インターネット等のワイドエリアネットワーク(WAN)101を介して相互接続されている。プライベートイントラネット、コーポレートネットワーク、ローカルエリアネットワーク(LAN)、メトロポリタンエリアネットワーク(MAN)、無線ネットワーク、パーソナルネットワーク(PAN)等の、他のネットワークが、さらに/あるいは(additionally or alternatively)使用されてもよい。ネットワーク101は、例示目的であって、より少ないまたは追加されたコンピュータネットワークで置換されてもよい。LANは、1つ以上の任意の公知のLANトポロジーを有してもよく、イーサネット(登録商標)等の様々な異なる1つ以上のプロトコルを使用してもよい。デバイス103,105,107,109および他のデバイス(図示せず)は、ツイステトペア線、同軸ケーブル、光ファイバ、無線波または他の通信媒体を介して1つ以上のネットワークに接続されている。
【0024】
本明細書で使用され、図面において示される用語「ネットワーク」は、1つ以上の通信パスを介してリモートストレージデバイスが互いに結合されるシステムだけではなく、ストレージ容量を有するようなシステムに随時、結合されるスタンドアローンデバイスをも指す。その結果、用語「ネットワーク」は、「物理ネットワーク」のみならず、全ての物理ネットワークにわたって存在する、単一エンティティに帰するデータからなる「コンテンツネットワーク」をも含む。
【0025】
コンポーネントは、データサーバ103、ウェブサーバ105およびクライアントコンピュータ107,109を含んでいる。データサーバ103は、本発明の1つ以上の実施形態を実行するためのデータベースおよび制御ソフトウェアについてのアクセス、制御および管理の全てを提供する。データサーバ103は、要求に応じてユーザがデータと相互作用し、データを取得するウェブサーバ105へと、接続されている。あるいは、データサーバ103は、ウェブサーバ自体として作動してもよく、インターネットに直接接続されてもよい。データサーバ103は、直接もしくは間接接続を介して、またはある他のネットワークを介して、ネットワーク101(例えばインターネット)を通じてウェブサーバ105に接続されていてもよい。
【0026】
ユーザは、リモートコンピュータ107,109を使用して、例えばウェブブラウザを使用してデータサーバ103と相互作用し、ウェブサーバ105によりホストされる外部露出した1つ以上のウェブサイトを介してデータサーバ103とやりとりする。クライアントコンピュータ107,109は、データサーバ103と呼応して使用されて、そこに記憶されたデータにアクセスしてもよく、または、他の目的のために使用されてもよい。例えば、この分野で公知のように、インターネットブラウザを使用して、または、コンピュータネットワーク(インターネット等)を介してウェブサーバ105および/またはデータサーバ103と通信するソフトウェアアプリケーションを実行することにより、ユーザはクライアントデバイス107からウェブサーバ105にアクセスしてもよい。
【0027】
サーバおよびアプリケーションは、同一の物理マシン上で組み合わされて、別個のヴァーチャルアドレスまたは論理アドレスを保持してもよく、またそれは別個の物理マシン上に存在してもよい。
【0028】
図1は、ネットワークアーキテクチャの一実施例を示しているにすぎず、当業者であれば、使用される特定のネットワークアーキテクチャおよびデータ処理デバイスが変更されてもよいこと、さらに本明細書で記述されるように、提供する機能に対して二次的であることを理解するであろう。例えば、ウェブサーバ105およびデータサーバ103により提供されるサービスは、単一サーバ上で組み合わされてもよい。
【0029】
各コンポーネント103,105,107,109は、公知のコンピュータ、サーバまたはデータ処理デバイスの任意のタイプであってもよい。データサーバ103は例えば、データサーバ103の全ての動作を制御するプロセッサ111を含んでいる。データサーバ103は、さらにRAM113、ROM115、ネットワークインタフェース117、入力/出力インタフェース119(例えばキーボード、マウス、ディスプレイ、プリンタ等)およびメモリ121を含んでいる。
【0030】
I/O119は、様々なインタフェースユニット、ならびに、データまたはファイルの読み取り、書き込み、表示および/または印刷を行うドライブを含んでいる。メモリ121は、さらにデータ処理デバイス103の全ての動作を制御するためのオペレーティングシステムソフトウェア123、データサーバ103に本発明の態様を実行させるよう命令する制御ロジック125、および、本発明の態様とともに使用されても、されなくてもよい、二次的な、サポートおよび/または他の機能を提供する他のアプリケーションソフトウェア127をさらに記憶していてもよい。
【0031】
制御ロジックは、本明細書ではデータサーバソフトウェア125と称されることがある。データサーバソフトウェアの機能は、制御ロジックにコード化された規則に基づいて自動的に行われた動作もしくは決定であるか、または、システムへの入力を提供するユーザにより手動でなされた動作または決定であるか、および/またはユーザ入力(例えばクエリ、データ更新等)に基づく自動処理の組み合わせであるかである。
【0032】
メモリ121はまた、第1のデータベース129および第2のデータベース131を含む、本発明の1つ以上の実施形態の実行において使用されるデータを記憶している。
【0033】
実施形態によっては、第1のデータベースは、第2のデータベース(例えば、別個のテーブル、レポート等として)を含んでもよい。つまり情報は、システム設計に応じて、単一のデータベースに記憶されることができるし、または、異なる論理、ヴァーチャルまたは物理データベースへと分離されることができる。
【0034】
デバイス105,107,109は、デバイス103に関して記述されたのと同様の、または異なるアーキテクチャを有してもよい。当業者であれば、本明細書で記述されるデータ処理装置103(またはデバイス105,107,109)の機能が、複数のデータ処理デバイスに分散されて、例えば複数のコンピュータにわたって処理負荷を分散させ、地理的位置、ユーザアクセスレベル、サービス品質(QoS)等に基づいてトランザクションを分離してもよいことを理解するであろう。
【0035】
1つ以上の態様が、本発明の1つ以上のコンピュータまたは他のデバイスにより実行される、1つ以上のプログラムモジュール等のコンピュータ使用可能または読取可能なデータおよび/またはコンピュータで実行可能な命令において具体化される。
【0036】
一般的に、プログラムモジュールは、コンピュータまたは他のデバイスにおいてプロセッサにより実行されるときに特定のタスクを実行するか、または、特定の抽出データ型を実装する、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造等を含む。モジュールは、実行のために順次コンパイルされるソースコードプログラミング言語で書かれてもよく、または、(限定されないが)Java(登録商標)scriptまたはActionScriptのようなスクリプト言語で書かれてもよい。
【0037】
コンピュータで実行可能な命令は、不揮発性ストレージデバイスのようなコンピュータ読取可能媒体上に記憶される。ハードディスク、CD−ROM、光学ストレージデバイス、磁気ストレージデバイス、および/または、これらの任意の組み合わせを含む、任意の適切なコンピュータ読取可能ストレージ媒体が利用されてもよい。さらに、本発明のデータまたはイベントを表す様々な伝送(非ストレージ)媒体が、金属線、光ファイバおよび/または無線伝送媒体(例えば、空中および/または空間)等の信号伝導媒体を介して移動する電磁波形式で、ソースとデスティネーションとの間で伝達されてもよい。
【0038】
本発明の様々な態様は、方法、データ処理システムまたはコンピュータプログラム製品として具体化される。すなわち、本発明の様々な機能が、ソフトウェア、ファームウェアおよび/またはハードウェア、または、集積回路、フィールドプログラマブルゲートアレイ(FPGA)等のハードウェア均等物において、全体として、または、部分的に具体化される。特定のデータ構造が、本発明の1つ以上の態様をより効率的に実装するために使用されてもよく、このようなデータ構造は、本発明のコンピュータ実行可能な命令およびコンピュータ使用可能なデータの範囲内であると考えられる。
【0039】
さらに
図2を参照すると、本発明の1つ以上の態様が、リモートアクセス環境で実装されている。
図2は、本発明の1つ以上の実施形態に従って使用されるコンピューティング環境200においてジェネリックコンピューティングデバイス201を含む、実施例としてのシステムアーキテクチャを示す。
【0040】
ジェネリックコンピューティングデバイス201は、クライアントアクセスデバイスに対してヴァーチャルマシンを提供するよう構成された単一サーバまたは複数サーバのデスクトップ仮想化システム(例えば、リモートアクセスまたはクラウドシステム)において、サーバ206aとして使用されている。ジェネリックコンピューティングデバイス201は、サーバ、ならびに、ランダムアクセスメモリ(RAM)205、リードオンリメモリ(ROM)207、入力/出力(I/O)モジュール209およびメモリ215を含む、その関連コンポーネントの全ての動作を制御するためのプロセッサ203を有している。
【0041】
I/Oモジュール209は、ジェネリックコンピューティングデバイス201のユーザが入力を提供する、マウス、キーボード、タッチスクリーン、スキャナ、光学リーダおよび/またはスタイラス(または他の入力デバイス)を含んでいてもよく、音声出力を提供するスピーカ、ならびに、テキスト、オーディオビジュアル、および/またはグラフィカル出力を提供するビデオディスプレイデバイスのうちの1つ以上を含んでもよい。
【0042】
ソフトウェアは、メモリ215および/または他のストレージ内に記憶され、ジェネリックコンピューティングデバイス201を、本発明の様々な機能を実行するための特別な目的のコンピューティングデバイスへと構成するよう命令をプロセッサ203に提供する。例えば、メモリ215は、オペレーティングシステム217、アプリケーションプログラム219および関連するデータベース221等の、コンピューティングデバイス201により使用されるソフトウェアを記憶している。
【0043】
コンピューティングデバイス201は、ターミナル240(クライアントデバイスとも称される)等の1つ以上のリモートコンピュータへの接続をサポートするネットワーク接続環境で動作する。ターミナル240は、パーソナルコンピュータ、モバイルデバイス、ラップトップコンピュータ、タブレット、またはジェネリックコンピューティングデバイス103または201に対して前記の多数または全ての要素を含むサーバであってもよい。
【0044】
図2に示されたネットワーク接続は、ローカルエリアネットワーク(LAN)225およびワイドエリアネットワーク(WAN)229を含むが、他のネットワークも含んでもよい。LANネットワーキング環境で使用されるとき、コンピューティングデバイス201は、ネットワークインタフェースまたはアダプタ223を通じてLAN225に接続される。WANネットワーキング環境で使用されるとき、コンピューティングデバイス201は、コンピュータネットワーク230(例えば、インターネット)等のWAN229を介した通信を確立するためのモデム227または他のワイドエリアネットワークインタフェースを含む。示されたネットワーク接続は例示であって、コンピュータ間の通信リンクを確立する他の手段が使用されてもよいことが理解されるであろう。
【0045】
コンピューティングデバイス201および/またはターミナル240は、電池、スピーカおよびアンテナ(図示せず)等の様々な他のコンポーネントを含むモバイルターミナル(例えば、携帯電話、スマートフォン、PDA、ノートブック等)であってもよい。
【0046】
本発明の態様は、幾多の他の汎用目的または特別な目的のコンピューティングシステム環境またはコンフィグレーションで動作する。本発明の態様での使用に適しているであろう、他のコンピューティングシステム、環境および/またはコンフィグレーションの実施例には、限定されないが、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルドまたはラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサベースシステム、セットトップボックス、プログラマブルコンシューマエレクトロニクス、ネットワークPC、ミニコンピュータ、メインフレームコンピュータ、前記のシステムまたはデバイスの任意のものを含む分散コンピューティング環境、等が含まれる。
【0047】
図2に示すように、1つ以上のクライアントデバイス240は、1つ以上のサーバ206a〜206n(ここでは一般的にサーバ206と称される)と通信する。1つの実施形態において、コンピューティング環境200は、サーバ206とクライアントマシン240との間に設置されるネットワークアプライアンスを含んでいる。ネットワークアプライアンスは、クライアント/サーバ接続を管理してもよく、場合によっては、複数のバックエンドサーバ206間でクライアント接続をロードバランシング(load balance)できる。
【0048】
クライアントマシン240は、実施形態によっては、単一のクライアントマシン240またはクライアントマシン240の単一のグループと称されてもよく、サーバ206は、単一のサーバ206またはサーバ206の単一のグループと称されてもよい。1つの実施形態において、単一のクライアントマシン240は、2以上のサーバ206と通信し、別の実施形態において、単一のサーバ206は、2以上のクライアントマシン240と通信する。さらに別の実施形態において、単一のクライアントマシン240は、単一のサーバ206と通信する。
【0049】
クライアントマシン240は、実施形態によっては、以下の非網羅的用語、すなわち、クライアントマシン、クライアント、クライアントコンピュータ、クライアントデバイス、クライアントコンピューティングデバイス、ローカルマシン、リモートマシン、クライアントノード、エンドポイント、またはエンドポイントノード、の任意の1つとして称される。サーバ206は、実施形態によっては、以下の非網羅的用語、すなわち、サーバ、ローカルマシン、リモートマシン、サーバファームまたはホストコンピューティングデバイス、の任意の1つとして称される。
【0050】
1つの実施形態において、クライアントマシン240は、ヴァーチャルマシンであってもよい。ヴァーチャルマシンは任意のヴァーチャルマシンであってもよく、実施形態によっては、ヴァーチャルマシンは、タイプ1またはタイプ2ハイパーバイザ、例えば、Citrix Systems、IBM、VMwareにより開発されたハイパーバイザまたは任意の他のハイパーバイザにより管理される任意のヴァーチャルマシンであってもよい。ある態様では、バーチャルマシンはハイパーバイザにより管理されてよく、また別の態様では、ヴァーチャルマシンは、サーバ206上で実行するハイパーバイザまたはクライアント240上で実行するハイパーバイザにより管理されてもよい。
【0051】
実施形態によっては、サーバ206または他の遠隔配置されたマシン上で遠隔実行するアプリケーションにより生成されるアプリケーション出力を表示するクライアントデバイス240が含まれる。これらの実施形態において、クライアントデバイス240は、ヴァーチャルマシンクライアントエージェントプログラムまたはアプリケーションを実行して、アプリケーションウィンドウ、ブラウザまたは他の出力ウィンドウにおいて出力を表示する。
【0052】
一実施例では、アプリケーションは、デスクトップであり、一方、他の実施例では、アプリケーションは、デスクトップを生成または提示するアプリケーションである。デスクトップは、ローカルおよび/またはリモートアプリケーションが統合されることができるオペレーティングシステムのインスタンスのためのユーザインタフェースを提供するグラフィカルシェルを含んでいる。アプリケーションは、ここで使用されるように、オペレーティングシステムのインスタンスが(および任意選択的にデスクトップも)ロードされた後に実行されるプログラムである。
【0053】
サーバ206は、実施形態によっては、リモートプレゼンテーションプロトコルまたは他のプログラムを使用して、データをシンクライアントまたはクライアント上で実行するリモートディスプレイアプリケーションに送信し、サーバ206上で実行するアプリケーションにより生成されるディスプレイ出力を提示する。シンクライアントまたはリモートディスプレイプロトコルは、以下のプロトコルの非網羅的リスト、すなわち、フロリダ州フォートローダーデールのCitrix Systems社により開発されたインデペンデントコンピューティングアキテクチャ(ICA)プロトコル、または、ワシントン州レドモンドのMicrosoft社により製造されるリモートデスクトッププロトコル(RDP)のうちの任意の1つであることができる。
【0054】
リモートコンピューティング環境は、2以上のサーバ206a〜206nを含んでもよく、サーバ206a〜206nは、例えばクラウドコンピューティング環境において、サーバファーム206へと論理的に一緒にグループ化される。サーバファーム206は、地理的に分散されるが、論理的に一緒にグループ化されたサーバ206、または、互いに近接して配置されるが、論理的に一緒にグループ化されたサーバ206を含んでもよい。サーバファーム206内の地理的に分散されたサーバ206a〜206nは、実施形態によっては、WAN(ワイド)、MAN(メトロポリタン)またはLAN(ローカル)を使用して通信ができ、異なる地理的領域は、異なる大陸、大陸の異なる領域、異なる国、異なる州、異なる都市、異なるキャンパス、異なる部屋、または前述の地理的位置の任意の組み合わせ、として特徴づけることができる。実施形態によっては、サーバファーム206は単一エンティティとして管理されてもよく、一方、他の実施形態において、サーバファーム206は複数のサーバファームを含むことができる。
【0055】
実施形態によっては、サーバファームは、オペレーティングシステムプラットフォーム(例えば、WINDOWS(登録商標)、UNIX(登録商標)、LINUX(登録商標)、iOS、ANDROID(登録商標)、SYMBIAN等)の実質的に同様のタイプを実行するサーバ206を含んでもよい。他の実施形態においては、サーバファーム206は、オペレーティングシステムプラットフォームの第1のタイプを実行する1つ以上のサーバの第1のグループ、および、オペレーティングシステムプラットフォームの第2のタイプを実行する1つ以上のサーバの第2のグループを含んでもよい。
【0056】
サーバ206は、必要に応じてサーバの任意のタイプ、例えばファイルサーバ、アプリケーションサーバ、ウェブサーバ、プロキシサーバ、アプライアンス、ネットワークアプライアンス、ゲートウェイ、アプリケーションゲートウェイ、ゲートウェイサーバ、仮想化サーバ、デプロイメントサーバ、SSL VPNサーバ、ファイアウォール、ウェブサーバ、アプリケーションサーバまたはマスターアプリケーションサーバとして、アクティブディレクトリを実行するサーバ、または、ファイアウォール機能、アプリケーション機能またはロードバランシング機能を提供するアプリケーションアクセラレーションプログラムを実行するサーバ、として構成されることができる。他のサーバタイプが使用されてもよい。
【0057】
実施形態によっては、クライアントマシン240からの要求を受信し、要求を第2のサーバ206bへ転送し、第2のサーバ206bからの応答でクライアントマシン240により生成された要求に応答する第1のサーバ206aが含まれる。第1のサーバ206aは、クライアントマシン240に利用可能なアプリケーションの列挙、および、アプリケーションの列挙によって特定されたアプリケーションをホストするアプリケーションサーバ206に関するアドレス情報を取得する。第1のサーバ206aは、ウェブインタフェースを使用してクライアントの要求に対する応答を提示し、直接、クライアント240と通信して、特定したアプリケーションへのアクセスをクライアント240に提供できる。1つ以上のクライアント240および/または1つ以上のサーバ206は、ネットワーク230、例えばネットワーク101を介してデータを送信してもよい。
【0058】
図2は、例示されたデスクトップ仮想化システムの高レベルアーキテクチャを示す。図示されているように、デスクトップ仮想化システムは、1つ以上のクライアントアクセスデバイス240にヴァーチャルデスクトップおよび/またはヴァーチャルアプリケーションを提供するよう構成された少なくとも1つの仮想化サーバ206を含む、単一サーバまたは複数サーバシステム、またはクラウドシステムであってもよい。
【0059】
本発明で使用されるように、デスクトップとは、1つ以上のアプリケーションがホストされ、および/または実行されてもよいグラフィカル環境または空間のことを指す。デスクトップは、ローカルおよび/またはリモートアプリケーションが統合されることができるオペレーティングシステムのインスタンスのためのユーザインタフェースを提供するグラフィカルシェルを含んでもよい。
【0060】
アプリケーションは、オペレーティングシステムのインスタンスが(および任意選択的にデスクトップも)ロードされた後に実行するプログラムを含んでいる。オペレーティングシステムの各インスタンスは、物理的(デバイスにつき1つのオペレーティングシステム)であっても、ヴァーチャル(単一デバイス上で実行されるOSの複数のインスタンス)であってもよい。各アプリケーションは、ローカルデバイス上で実行されてもよく、または、遠隔配置された(例えばリモートされた)デバイス上で実行されてもよい。
【0061】
〈企業モビリティ管理アーキテクチャ〉
図3は、企業環境、BYOD環境または他のモバイル環境での使用のための企業モビリティアーキテクチャ300を表す。アーキテクチャは、モバイルデバイス302(例えば、クライアント107,211または別様)のユーザが、企業またはパーソナルリソースにモバイルデバイス302からアクセスすること、および、パーソナルユースのためにモバイルデバイス302を使用すること、の両方を可能にする。
【0062】
ユーザは、ユーザにより購入されたモバイルデバイス302または企業によりユーザに提供されたモバイルデバイス302を使用して、このような企業リソース304または企業サービス308にアクセスする。ユーザは、ビジネスユースのみのために、または、ビジネスユースおよびパーソナルユースのために、モバイルデバイス302を利用してもよい。
【0063】
モバイルデバイスは、iOSオペレーティングシステム、Android(登録商標)オペレーティングシステムおよび/または同様のものを実行する。企業は、モバイルデバイス304を管理するためのポリシーを実装することを選択する。ポリシーは、モバイルデバイスが特定され、安全(secure)にされ、またはセキュリティ検証され、そして、企業リソースへの選択的または完全なアクセスを提供されてもよいように、ファイアウォールまたはゲートウェイを通じて埋め込まれる。ポリシーは、モバイルデバイス管理ポリシー、モバイルアプリケーション管理ポリシー、モバイルデータ管理ポリシー、または、モバイルデバイス、アプリケーションおよびデータ管理ポリシーのある組み合わせであってもよい。モバイルデバイス管理ポリシーのアプリケーションを通じて管理されるモバイルデバイス304は、エンロールドデバイスと称すことがある。
【0064】
モバイルデバイスのオペレーティングシステムは、管理パーティション310および非管理パーティション312に分離されてもよい。管理パーティション310は、実行中のアプリケーションおよび管理パーティションに記憶されたデータをセキュリティ保護するために、それに適用されるポリシーを有している。管理パーティション上で実行中のアプリケーションはセキュリティ保護アプリケーションであってもよい。セキュリティ保護アプリケーションは、電子メールアプリケーション、ウェブ閲覧アプリケーション、サース(SaaS)アクセスアプリケーション、Windows(登録商標)Applicationアクセスアプリケーション等であってもよい。セキュリティ保護アプリケーションは、セキュリティ保護ネイティブアプリケーション314、セキュリティ保護アプリケーションランチャー318により実行されるセキュリティ保護リモートアプリケーション322、セキュリティ保護アプリケーションランチャー318により実行される仮想化アプリケーション326等であってもよい。セキュリティ保護ネイティブアプリケーション314は、セキュリティ保護アプリケーションラッパー320によりラップされてもよい。セキュリティ保護アプリケーションラッパー320は、セキュリティ保護ネイティブアプリケーションがデバイス上で実行されるときにモバイルデバイス302上で実行される、統合されたポリシーを含んでもよい。
【0065】
セキュリティ保護アプリケーションラッパー320は、モバイルデバイス302上で実行されるセキュリティ保護ネイティブアプリケーション314を、セキュリティ保護ネイティブアプリケーション314の実行時に要求されるタスクを完了するためにセキュリティ保護ネイティブアプリケーション314が要求する、企業でホストされるリソースへとポイントするメタデータを含んでもよい。セキュリティ保護アプリケーションランチャー318により実行されるセキュリティ保護リモートアプリケーション322は、セキュリティ保護アプリケーションランチャーアプリケーション318内で実行されてもよい。セキュリティ保護アプリケーションランチャー318により実行される仮想化アプリケーション326は、モバイルデバイス302上で、また企業リソース304等で、リソースを利用してもよい。セキュリティ保護アプリケーションランチャー318により実行される仮想化アプリケーション326によりモバイルデバイス302上で使用されるリソースは、ユーザ相互作用リソース、処理リソース等を含んでいる。
【0066】
ユーザ相互作用リソースは、キーボード入力、マウス入力、カメラ入力、触覚入力、音声入力、映像入力、ジェスチャ入力等を収集して送信するために使用される。処理リソースは、ユーザインタフェースを提示する、企業リソース304から受信されたデータを処理する、等のために使用される。
【0067】
セキュリティ保護アプリケーションランチャー318により実行される仮想化アプリケーション326により企業リソース304で使用されるリソースは、ユーザインタフェース生成リソース、処理リソース等を含んでいる。ユーザインタフェース生成リソースは、ユーザインタフェースをアセンブルする、ユーザインタフェースを修正する、ユーザインタフェースをリフレッシュする、等のために使用される。処理リソースは、情報を生成する、情報を読み出す、情報を更新する、情報を削除する、等のために使用される。例えば、仮想化アプリケーションは、GUIに関するユーザ相互作用を記録し、それらをサーバアプリケーションに通信してもよく、サーバアプリケーションは、サーバ上で動作するアプリケーションへの入力としてユーザ相互作用データを使用するであろう。この構成において、企業はサーバ側のアプリケーションを、アプリケーションに関するデータ、ファイル等とともに維持することを選択してもよい。
【0068】
企業は、モバイルデバイスでの展開のためにそれらをセキュリティ保護することにより、本開示の原理に応じていくつかのアプリケーションを「モビライズ」することを選択してもよい一方で、この構成は、特定のアプリケーションのために選択される。例えば、いくつかのアプリケーションがモバイルデバイスでの使用のためにセキュリティ保護されるかもしれず、他のアプリケーションがモバイルデバイスでの展開のためには用意されないまたは適切ではないかもしれないため、企業は、仮想化技術を通じて、用意されないアプリケーションへのモバイルユーザアクセスを提供することを選択する。
【0069】
別の実施例として、企業は、大規模で複雑なデータセットを伴う大規模で複雑なアプリケーション(例えば、マテリアルリソースプランニングアプリケーション)を有し、モバイルデバイス用にアプリケーションをカスタマイズすることは、非常に困難で、または別様に望ましくないため、企業は、仮想化技術を通じて、アプリケーションへのアクセスを提供することを選択してもよい。
【0070】
さらに別の実施例として、企業は、たとえセキュリティ保護されたモバイル環境であっても企業があまりにもセンシティブであるとみなすかもしれない高度にセキュリティ保護されたデータ(例えば、人的資源データ、顧客データ、エンジニアリングデータ)を維持するアプリケーションを有し、企業は、仮想化技術を使用して、そのようなアプリケーションおよびデータへのモバイルアクセスを許可することを選択する。企業は、サーバ側でより適切に動作するとみなされるアプリケーションへのアクセスを許可するために、モバイルデバイス上で完全にセキュリティ保護および完全に機能的なアプリケーションならびに仮想化アプリケーションの両方を提供することを選択してもよい。
【0071】
本発明の実施形態において、仮想化アプリケーションは、セキュリティ保護されたストレージ位置の1つで、いくつかのデータ、ファイル等を携帯電話上に記憶する。企業は、例えば電話上に記憶された特定の情報を許可し、一方、他の情報を許可しないように選択する。
【0072】
仮想化アプリケーションに関して、本明細書に記述されるように、モバイルデバイスは、GUIを提示するよう設計された仮想化アプリケーションを有してもよく、そして、ユーザ相互作用をGUIで記録してもよい。アプリケーションは、ユーザ相互作用をサーバ側に通信し、アプリケーションでのユーザ相互作用としてサーバ側アプリケーションにより使用されてもよい。これに応じて、サーバ側のアプリケーションは、新たなGUIをモバイルデバイスに送信し戻してもよい。例えば、新たなGUIは、静的ページ、動的ページ、アニメーション等である。
【0073】
管理パーティションで実行中のアプリケーションは、安定化アプリケーションであってもよい。安定化アプリケーションは、デバイスマネージャ324によって管理される。デバイスマネージャ324は、安定化アプリケーションを監視し、問題を検出および修復する技術を利用してもよく、その問題とは、もし前記問題を検出および修復する技術が利用されなければ、不安定化アプリケーションとなってしまうことを指す。
【0074】
セキュリティ保護アプリケーションは、モバイルデバイスの管理パーティション310において、セキュリティ保護データコンテナ328に記憶されたデータにアクセスする。セキュリティ保護データコンテナにおいてセキュリティ保護にされたデータは、セキュリティ保護ラップ化アプリケーション314、セキュリティ保護アプリケーションランチャー318により実行されるアプリケーション、セキュリティ保護アプリケーションランチャー318により実行される仮想化アプリケーション326等によりアクセスされる。
【0075】
セキュリティ保護データコンテナ328に記憶されたデータは、ファイルやデータベース等を含んでいる。セキュリティ保護データコンテナ328に記憶されたデータは、セキュリティ保護アプリケーション332の間で共有され、特定のセキュリティ保護アプリケーション330に制限されるデータ等を含んでいる。セキュリティ保護アプリケーションに制限されるデータは、セキュリティ保護一般データ334および高度セキュリティ保護データ338を含んでいる。
【0076】
セキュリティ保護一般データは、AES128ビット暗号化等の暗号の強力形態を使用し、一方、高度セキュリティ保護データ338は、AES254ビット暗号化等の暗号の超強力形態を使用する。セキュリティ保護データコンテナ328に記憶されたデータは、デバイスマネージャ324からのコマンドの受信時に、デバイスから削除される。セキュリティ保護アプリケーションは、デュアルモードオプション340を有している。デュアルモードオプション340は、非セキュリティ保護モードでセキュリティ保護アプリケーションを実行するオプションを、ユーザに提示する。
【0077】
非セキュリティ保護モードでは、セキュリティ保護アプリケーションは、モバイルデバイス302の非管理パーティション312上の非セキュリティ保護データコンテナ342に記憶されたデータにアクセスしてもよい。非セキュリティ保護データコンテナに記憶されたデータは、パーソナルデータ344である。非セキュリティ保護データコンテナ342に記憶されたデータは、モバイルデバイス302の非管理パーティション312上で実行中の非セキュリティ保護アプリケーション348によりアクセスされる。非セキュリティ保護データコンテナ342に記憶されたデータは、セキュリティ保護データコンテナ328に記憶されたデータが、モバイルデバイス302から削除されるときに、モバイルデバイス302に残存してもよい。
【0078】
企業は、モバイルデバイスから、選択されたまたは全ての、企業により所有、ライセンス化または制御された、データ、ファイルおよび/またはアプリケーション(企業データ)が削除されることを欲してもよく、一方、ユーザにより所有、ライセンス化または制御された、パーソナルデータ、ファイルおよび/またはアプリケーション(パーソナルデータ)を残し、または、別様に保ってもよい。この動作は、選択的ワイプと称すことがある。本開示に記述される態様に従って配置された企業およびパーソナルデータで、企業は、選択的ワイプを実行してもよい。
【0079】
モバイルデバイスは、企業において企業リソース304、企業サービス308に、および公衆インターネット348等に接続される。モバイルデバイスは、ヴァーチャルプライベートネットワーク接続を通じて企業リソース304および企業サービス308に接続する。ヴァーチャルプライベートネットワーク接続は、特定のアプリケーション350、特定のデバイス、モバイルデバイス上の特定のセキュリティ保護エリア等(例えば、352)に特有である。例えば、電話のセキュリティ保護エリアにおける各ラップ済みアプリケーションは、アプリケーション特有のVPNを通じて企業リソースにアクセスしてもよく、これにより、VPNへのアクセスが、アプリケーションに関する属性に基づいて、おそらくはユーザまたはデバイス属性情報に関連付けられて、許可されるであろう。
【0080】
ヴァーチャルプライベートネットワーク接続は、Microsoft Exchangeトラフィック、Microsoft Active Directoryトラフィック、HTTPトラフィック、HTTPSトラフィック、アプリケーション管理トラフィック等を伝送してもよい。ヴァーチャルプライベートネットワーク接続は、SSO認証処理354をサポートおよび有効化してもよい。SSO処理は、ユーザが認証クレデンシャルの単一セットを提供することを許可してもよく、認証クレデンシャルは、認証サービス358により検証される。認証サービス358はそして、各個別企業リソース304への認証クレデンシャルの提供をユーザに要求することなく、ユーザに複数の企業リソース304へのアクセスを許可してもよい。
【0081】
ヴァーチャルプライベートネットワーク接続は、アクセスゲートウェイ360により確立され、管理される。アクセスゲートウェイ360は、企業リソース304のモバイルデバイス302への送達を管理、加速および改善するパフォーマンスを増強させる特徴を含んでいる。アクセスゲートウェイは、モバイルデバイス302から公衆インターネット348へとトラフィックをリルートしてもよく、モバイルデバイス302が、公衆インターネット348上で実行される公衆利用可能非セキュリティ保護アプリケーションへアクセスすることを有効化する。
【0082】
モバイルデバイスは、転送ネットワーク362を介してアクセスゲートウェイに接続されてもよい。転送ネットワーク362は、有線ネットワーク、無線ネットワーク、クラウドネットワーク、ローカルエリアネットワーク、メトロポリタンエリアネットワーク、ワイドエリアネットワーク、公衆ネットワーク、プライベートネットワーク等である。
【0083】
企業リソース304は、電子メールサーバ、ファイル共有サーバ、SaaSアプリケーション、Webアプリケーションサーバ、Windows(登録商標)アプリケーションサーバ等を含んでいる。電子メールサーバは、Exchangeサーバ、Lotus Notesサーバ等を含んでいる。ファイル共有サーバは、SHAREFILEサーバ、他のファイル共有サービス等を含んでいる。SaaSアプリケーションは、Salesforce等を含んでいる。Windows(登録商標)アプリケーションサーバは、ローカルWindows(登録商標)オペレーティングシステム上での実行が意図されるアプリケーションの提供のために構築された任意のアプリケーションサーバ等を含んでいる。
【0084】
企業リソース304は、プレミスベースリソース、クラウドベースリソース等である。企業リソース304は、モバイルデバイス302によって直接、または、アクセスゲートウェイ360を通じてアクセスされる。企業リソース304は、転送ネットワーク362を介してモバイルデバイス302によってアクセスされてもよい。転送ネットワーク362は、有線ネットワーク、無線ネットワーク、クラウドネットワーク、ローカルエリアネットワーク、メトロポリタンエリアネットワーク、ワイドエリアネットワーク、公衆ネットワーク、プライベートネットワーク等であってもよい。
【0085】
企業サービス308は、認証サービス358、脅威検出サービス364、デバイスマネージャサービス324、ファイル共有サービス368、ポリシーマネージャサービス370、ソーシャル統合サービス372、アプリケーションコントローラサービス374等を含んでいる。
【0086】
認証サービス358は、ユーザ認証サービス、デバイス認証サービス、アプリケーション認証サービス、データ認証サービス等を含んでいる。認証サービス358は、証明書を使用してもよい。証明書は、企業リソース304等によりモバイルデバイス302に記憶されてもよい。モバイルデバイス302に記憶された証明書は、モバイルデバイス上の暗号化位置に記憶されてもよく、証明書は、認証時の使用等のためにモバイルデバイス302上に一時的に記憶されてもよい。
【0087】
脅威検出サービス364は、侵入検出サービス、非許諾アクセス試行検出サービス等を含んでいる。非許諾アクセス試行検出サービスは、デバイス、アプリケーション、データ等へのアクセスの非許諾試行を含んでいる。デバイス管理サービス324は、コンフィグレーション、プロビジョニング、セキュリティ、サポート、監視、報告およびデコミッショニングサービスを含んでもよい。ファイル共有サービス368は、ファイル管理サービス、ファイルストレージサービス、ファイルコラボレーションサービス等を含んでいる。ポリシーマネージャサービス370は、デバイスポリシーマネージャサービス、アプリケーションポリシーマネージャサービス、データポリシーマネージャサービス等を含んでいる。
【0088】
ソーシャル統合サービス372は、コンタクト統合サービス、コラボレーションサービス、Facebook,TwitterおよびLinkedIn等のソーシャルネットワークとの統合等を含んでいる。アプリケーションコントローラサービス374は、管理サービス、プロビジョニングサービス、デプロイメントサービス、アサインメントサービス、リボケーションサービス、ラッピングサービス等を含んでいる。
【0089】
企業モビリティ技術アーキテクチャ300は、アプリケーションストア378を含んでもよい。アプリケーションストア378は、非ラップ化アプリケーション380、プリラップ化アプリケーション382等を含んでいる。
【0090】
アプリケーションは、アプリケーションコントローラ374からアプリケーションストア378に集約されてもよい。アプリケーションストア378は、アクセスゲートウェイ360を通じて、または公衆インターネット348を通じて等、モバイルデバイス302によりアクセスされる。アプリケーションストアには、直覚的および使用しやすいユーザインタフェースが提供されてもよい。アプリケーションストア378はソフトウェア開発キット384へのアクセスを提供してもよい。ソフトウェア開発キット384は、本明細書に以前に記述したようにアプリケーションをラップすることによって、ユーザにより選択されたアプリケーションをセキュリティ保護する能力をユーザに提供する。ソフトウェア開発キット384を使用してラップされたアプリケーションはそして、アプリケーションコントローラ374を使用してそれをアプリケーションストア378に集約することにより、モバイルデバイス302に利用可能にされる。
【0091】
企業モビリティ技術アーキテクチャ300は、管理および解析能力を含んでもよい。管理および解析能力は、リソースがどのように使用されるか、リソースがどれくらいの頻度で使用されるか等に関する情報を提供する。リソースは、デバイス、アプリケーション、データ等を含んでもよい。リソースがどのように使用されるかについては、どのデバイスがどのアプリケーションをダウンロードし、どのアプリケーションがどのデータにアクセスするか等を含んでいる。リソースがどれくらいの頻度で使用されるかには、アプリケーションがどれくらいの頻度でダウンロードされたか、データの特定のセットが何回アプリケーションによりアクセスされたか等を含んでいる。
【0092】
図4に、別の企業モビリティ管理システム400を示す。
図3に関して上述されたモビリティ管理システム300のコンポーネントのいくつかは、簡明さのために省略されている。
図4に示されたシステム400のアーキテクチャは、
図3に関して上述されたシステム300のアーキテクチャと多くの点で同様であり、上述されない追加の特徴を含んでいる。
【0093】
この場合、左手側は、エンロールドモバイルデバイス402(クライアント107,212,302等)をクライアントエージェント404とともに表し、これは、右手側上方に示された、Exchange、Sharepoint、PKI Resource、Kerberos ResourceおよびCertificate Issuance Service等の様々な企業リソース408およびサービス409へのアクセスのために、ゲートウェイサーバ406(アクセスゲートウェイおよびアプリケーションコントローラ機能を含む)と相互作用する。
【0094】
特に示してはいないが、モバイルデバイス402は、アプリケーションの選択およびダウンロードのための企業アプリケーションストア(例えば、StoreFront)と相互作用してもよい。クライアントエージェント404は、例えば、リモートリソースおよび/または仮想化リソースで通信を容易にする、クライアントデバイス上で実行するソフトウェアアプリケーションである。ゲートウェイサーバ406は、例えば、企業リソースおよび/またはクラウドリソースへのアクセスを提供するサーバまたは他のリソースである。
【0095】
クライアントエージェント404は、EnterpriseデータセンタでホストされるWindows(登録商標)アプリ/デスクトップ媒介用のUI(ユーザインタフェース)として作動し、Windows(登録商標)アプリ/デスクトップは、HDX/ICAディスプレイリモーティングプロトコルまたは他のリモーティングプロトコルを使用してアクセスされる。クライアントエージェント404は、ネイティブiOSまたはAndroid(登録商標)アプリケーション等の、モバイルデバイス402上のネイティブアプリケーションのインストールおよび管理もサポートする。
【0096】
例えば、上述の図に示された、管理されたアプリケーション410(メール、ブラウザ、ラップ化アプリケーション)は全て、デバイス上でローカルに実行されるネイティブアプリケーションである。クライアントエージェント404およびフロリダ州フォートローダーデールのCitrix Systems社によるMDX(モバイルエクスペリエンステクノロジ)等のアプリケーション管理フレームワーク(他のアプリケーション管理フレームワークも用いられてもよい)は、企業リソース/サービス408への接続性およびSSO等のポリシー駆動管理能力および特徴を提供するために作動する。
【0097】
クライアントエージェント404は、企業への、通常他のゲートウェイサーバコンポーネントへのSSOを伴うアクセスゲートウェイ(AG)への、一次的ユーザ認証を取り扱う。クライアントエージェント404は、モバイルデバイス402上での管理されたアプリケーション410の挙動を制御するために、ゲートウェイサーバ406からポリシーを取得する。本発明で使用されるように、管理されたアプリケーションは、独立に定義されて通信されたポリシーファイルに基づいて制御され、それに従って動作することが可能なアプリケーションである。
【0098】
ネイティブアプリケーション410およびクライアントエージェント404間のセキュリティ保護IPCリンク412は、管理チャネルを表し、これにより、クライアントエージェントが、各アプリケーションを「ラップする」アプリケーション管理フレームワーク414により適用されるポリシーを供給することが可能となる。IPCチャネル412はまた、クライアントエージェント404が、企業リソース408への接続性およびSSOを有効化するクレデンシャルおよび認証情報を供給することを可能とする。最後に、IPCチャネル412は、アプリケーション管理フレームワーク414が、オンラインおよびオフライン認証等のクライアントエージェント404により実装されるユーザインタフェース機能を起動することを可能とする。
【0099】
クライアントエージェント404およびゲートウェイサーバ406間の通信は、本質的に、各ネイティブな管理されたアプリケーション410をラップするアプリケーション管理フレームワーク414からの管理チャネルの拡張である。アプリケーション管理フレームワーク414は、クライアントエージェント404からポリシー情報を要求し、一方、クライアントエージェント404は、ゲートウェイサーバ406からそれを要求する。アプリケーション管理フレームワーク414は、認証を要求し、クライアントエージェント404は、ゲートウェイサーバ406のゲートウェイサービス部分(NetScaler Access Gatewayとしても知られる)にログインする。クライアントエージェント404は、ゲートウェイサーバ406上でサポートサービスも呼び出してもよく、これにより、以下でさらに完全に説明されるように、ローカルデータ貯蔵庫(data vaults;以下「データボルト」、「ボルト」と言うことがある)416のための暗号化鍵を導出するための入力マテリアルを生成しても、または、PKI保護リソースへの直接認証を有効化してもよいクライアント証明書を供給してもよい。
【0100】
より詳細には、アプリケーション管理フレームワーク414は、各管理されたアプリケーション410を「ラップする」。これは、明示的な構築ステップを介して、または、構築後処理ステップを介して組み込まれてもよい。アプリケーション管理フレームワーク414は、アプリケーション410の最初のローンチにおいてクライアントエージェント614と「ペアリング」し、セキュリティ保護IPCチャネルを初期化し、そのアプリケーション用のポリシーを取得する。アプリケーション管理フレームワーク414は、クライアントエージェントのログイン依存性、および、ローカルOSサービスがいかに使用されてよいか、またはそれらがアプリケーション410といかに相互作用してよいかについて制限する制約ポリシーのいくつか等、ローカル適用のポリシーの関連部分を適用(enforce)する。
【0101】
アプリケーション管理フレームワーク414は、認証および内部ネットワークアクセスを容易にするために、セキュリティ保護IPCチャネル412を介してクライアントエージェント404により提供されるサービスを使用する。プライベートおよび共有データボルト416の鍵管理(コンテナ)は、管理されたアプリケーション410およびクライアントエージェント404間の適切な相互作用により管理される。ボルト416は、オンライン認証後にのみ利用可能、または、ポリシーにより許可された場合のオフライン認証後に利用可能にされてもよい。ボルト416の最初の使用は、オンライン認証を要求してもよく、オフラインアクセスは、最大でもオンライン認証が再び要求される前のポリシーリフレッシュ期間に制限されてもよい。
【0102】
内部リソースへのネットワークアクセスは、アクセスゲートウェイ406を通じて個別に管理されたアプリケーション410から直接、生じる。アプリケーション管理フレームワーク414は、各アプリケーション410のためのネットワークアクセスのオーケストレーションを担う。クライアントエージェント404は、オンライン認証に続いて取得される適切な時間制限二次的クレデンシャルの提供により、これらのネットワーク接続を容易にする。リバースウェブプロキシ接続およびエンドトゥエンドVPNスタイルトンネル418等の、ネットワーク接続の複数のモードが使用されてもよい。
【0103】
メールおよびブラウザの管理されたアプリケーション410は、特別な状態を有しており、また任意のラップ化アプリケーションに一般的に利用可能ではないかもしれない能力を使用する。例えば、メールアプリケーションは、完全なADログオンを要求することなく延長された期間、Exchangeへのアクセスを可能とする、特別なバックグラウンドネットワークアクセス機構を使用してもよい。ブラウザアプリケーションは、異なる種類のデータを分離するために複数のプライベートなデータボルトを使用してもよい。
【0104】
このアーキテクチャは、様々な他のセキュリティ特徴の組み込みをサポートする。例えば、ゲートウェイサーバ406(そのゲートウェイサービスも含む)は、場合によっては、ADパスワードを確認する必要がないであろう。ADパスワードが、状況によってはあるユーザ達に対する認証ファクタとして使用されるか否かについては、企業の裁量に任されたままとすることができる。ユーザがオンラインであるかオフラインであるか(すなわち、ネットワークに接続されているか、接続されていないか)によって、異なる認証方法が使用されてもよい。
【0105】
ステップアップ認証は、ゲートウェイサーバ406が、厳密な認証を要求する高度機密データへのアクセスを有することが許可された、管理されたネイティブアプリケーション410を特定し、たとえこれが前回のより弱いレベルのログイン後に再認証がユーザにより要求されることを意味するとしても、これらのアプリケーションへのアクセスが適切な認証の実施後にのみ許可されることを確実にしてもよい特徴である。
【0106】
このソリューションの別のセキュリティ特徴は、モバイルデバイス402上のデータボルト416(コンテナ)の暗号化である。ファイル、データベース、およびコンフィグレーションを含む全てのオンデバイスデータが保護されるよう、ボルト416を暗号化してもよい。オンラインボルトについては、鍵がサーバ(ゲートウェイサーバ406)上に記憶されてもよく、オフラインボルトについては、鍵のローカルコピーがユーザパスワードにより保護されてもよい。データがデバイス402上でローカルにセキュリティ保護コンテナ416内に記憶されたときに、AES256暗号化アルゴリズムの最小値が利用されることが好ましい。
【0107】
他のセキュリティ保護コンテナ特徴も実装されてもよい。例えば、ロギング特徴が含まれてもよく、アプリケーション410内で発生する全てのセキュリティイベントがログされ、バックエンドに報告される。アプリケーション410が改ざんを検出すると関連する暗号化鍵がランダムデータで上書きされ、ユーザデータが破壊されたファイルシステム上になんらヒントを残さない、等のデータ完全削除がサポートされてもよい。スクリーンショット保護は、アプリケーションがスクリーンショットにおいてあらゆるデータの記憶を防止する別の特徴である。例えば、キーウィンドウの隠しプロパティがYESに設定されてもよい。これにより、いかなるコンテンツが現在スクリーン上に表示されていようとも隠され、通常は任意のコンテンツが存在するはずが、ブランクスクリーンショットとなる。
【0108】
任意のデータがアプリケーションコンテナ外に(例えばそれをコピーすることまたは外部アプリケーションにそれを送信することにより)ローカルに伝達されるのを防止することによって等、ローカルデータ伝達が防止されてもよい。キーボードキャッシュ特徴は、センシティブテキスト分野用の自動修正機能を無効化するよう動作してもよい。アプリケーションがサーバSSL証明書を、キーチェーン内にそれを記憶する代わりに、特定的に検証するよう、SSL証明書検証は動作可能であってもよい。デバイス上でデータを暗号化するために使用される鍵が、ユーザにより供給されるパスフレーズを使用して生成される(オフラインアクセスが要求される場合)ように、暗号化鍵生成特徴が使用されてもよい。オフラインアクセスが要求されない場合、それは、ランダムに生成されてサーバ側に記憶された別の鍵とXORされてもよい。鍵導出関数は、その暗号ハッシュを生成するよりもむしろ、ユーザパスワードから生成された鍵がKDF(鍵導出関数、とりわけPBKDF2)を使用するよう動作してもよい。暗号ハッシュは、総あたりのまたは辞書攻撃を受けやすい鍵を作る。
【0109】
さらに、1つ以上の初期化ベクトルが、暗号化方法において使用されてもよい。初期化ベクトルにより、同じ暗号化データの複数のコピーが、リプレーアタックおよび暗号解読攻撃の両方を防止しつつ異なる暗号テキスト出力を生成するであろう。これにより、データを暗号化するのに使用される特定の初期化ベクトルが知られていない場合に、盗まれた暗号化鍵であっても、攻撃者が任意のデータを解読することが防止されるであろう。さらに、認証そして解読が使用されてもよく、ユーザがアプリケーション内で認証された後にのみアプリケーションデータは解読される。別の特徴は、メモリ内のセンシティブデータに関連してもよく、これは、必要時にのみメモリ内に(ディスク内ではなく)保存されてもよい。例えば、ログインクレデンシャルは、ログイン後にメモリからワイプされてもよく、暗号化鍵およびオブジェクティブCのインスタンス変数内の他のデータは、参照されやすいかもしれないので、記憶されない。代わりに、メモリは手動でこれらに割り当てられてもよい。
【0110】
非活動タイムアウトが実装されてもよく、非活動のポリシー定義期間の後に、ユーザセッションが終了する。
【0111】
アプリケーション管理フレームワーク414からのデータ漏れは、他の方法で防止されてもよい。例えば、アプリケーション410がバックグラウンドに置かれるとき、所定(構成可能)期間の後にメモリはクリアされてもよい。バックグラウンド化の際に、フォアグラウンド処理と結びつけるために、アプリケーションの最後に表示されるスクリーンのスナップショットが撮られてもよい。スクリーンショットは、機密データを含むかもしれず、よって、クリアされるべきである。
【0112】
別のセキュリティ特徴は、1つ以上のアプリケーションへのアクセスのためのAD(アクティブディレクトリ)422パスワードの使用を伴わない、OTP(ワンタイムパスワード)420の使用に関する。場合によっては、あるユーザ達は自身のADパスワードを知らない(または知ることが許されない)ため、これらのユーザは、SecurIDのようなハードウェアOTPシステムを使用することによって等、OTP420を使用して認証してもよい(OTPは、EntrustまたはGemalto等の異なるベンダにより提供されてもよい)。場合によっては、ユーザがユーザIDで認証した後に、テキストがOTP420でユーザに送信される。場合によっては、これは、シングルフィールドであるプロンプトで、オンライン使用でのみ実装されてもよい。
【0113】
オフラインパスワードは、オフライン使用が企業ポリシーを介して許可されるそれらのアプリケーション410用のオフライン認証のために実装されてもよい。例えば、企業は、企業アプリケーションストアが、このようにアクセスされることを欲するかもしれない。この場合、クライアントエージェント404は、ユーザにカスタムオフラインパスワードを設定することを要求してもよく、ADパスワードは使用されない。ゲートウェイサーバ406は、標準Windows(登録商標) Serverパスワード複雑化(complexity)要件による記述等の、最小長、文字クラス構成およびパスワードの期限に関するパスワード基準を制御および適用するためのポリシーを提供してもよいが、これらの要件は修正されてもよい。
【0114】
別の特徴は、二次的クレデンシャルとしての特定のアプリケーション410用のクライアント側証明書の有効化に関する(アプリケーション管理フレームワークマイクロVPN特徴を介したPKI保護ウェブリソースへのアクセス目的で)。例えば、企業電子メールアプリケーション等のアプリケーションは、このような証明書を利用してもよい。この場合、ActiveSyncプロトコルを使用する証明書ベース認証がサポートされてもよく、クライアントエージェント404からの証明書が、ゲートウェイサーバ406により取得され、キーチェーンで使用されてもよい。各管理されたアプリケーションは、ゲートウェイサーバ406内で定義されるラベルにより特定される、1つの関連クライアント証明書を有してもよい。
【0115】
ゲートウェイサーバ406は、関連する管理されたアプリケーションが内部PKI保護リソースへの認証を行なうためのクライアント証明書の発行をサポートするために、企業特別目的ウェブサービスと相互作用してもよい。
【0116】
クライアントエージェント404およびアプリケーション管理フレームワーク414は、内部PKI保護ネットワークリソースへの認証のためのクライアント証明書の取得および使用をサポートするために増強されてもよい。セキュリティおよび/または分離要件の様々なレベルに合わせるため等、2つ以上の証明書がサポートされてもよい。証明書は、メールおよびブラウザの管理されたアプリケーションにより、最終的には、任意のラップ化アプリケーションにより、使用されてもよい(それらのアプリケーションが、アプリケーション管理フレームワークがHTTPS要求を媒介することが妥当であるウェブサービススタイル通信パターンを使用するとの条件のもとで)。
【0117】
iOS上のアプリケーション管理フレームワーククライアント証明書サポートは、各使用期間における各管理されたアプリケーション内のiOSキーチェーンへのPKCS 12 BLOB(バイナリラージオブジェクト)のインポートに依拠してもよい。アプリケーション管理フレームワーククライアント証明書サポートは、プライベートインメモリキーストレージを伴うHTTPS実装を使用してもよい。クライアント証明書は、iOSキーチェーン内に決して存在せず、強力に保護された「オンラインのみ」のデータ値内に潜在的に存することを除いて、持続されないであろう。
【0118】
相互SSLもまた、モバイルデバイス402が企業に認証され、そしてその逆の形の認証を要求することにより、さらなるセキュリティを提供するために実装されてもよい。ゲートウェイサーバ406への認証のためのヴァーチャルスマートカードもまた、実装されてもよい。
【0119】
限定および完全Kerberosサポートの両方が、さらなる特徴であってもよい。完全サポート特徴は、ADパスワードまたは信頼済みクライアント証明書を使用してAD422への完全Kerberosログインを行ない、HTTPネゴシエート認証チャレンジに応答するためのKerberosサービスチケットを取得する能力に関する。限定サポート特徴は、AFEEにおける制約付き委任に関し、AFEEは、Kerberosプロトコル遷移の誘発をサポートするため、それは、HTTPネゴシエート認証チャレンジに応じて、(制約付き委任の対象となる)Kerberosサービスチケットを取得および使用できる。この機構は、リバースウェブプロキシ(別名CVPN)モードで、HTTP(HTTPSではない)接続がVPNおよびMicroVPNモードにおいてプロキシされるときに、作動する。
【0120】
別の特徴は、アプリケーションコンテナのロックおよびワイプに関し、これは、ジェイルブレイクまたはルーティング検出時に自動で発生し、アドミニストレーションコンソールからのプッシュコマンドとして発生してもよく、たとえアプリケーション410が実行中でなくともリモートワイプ機能を含んでもよい。
【0121】
企業アプリケーションストアおよびアプリケーションコントローラのマルチサイトアーキテクチャまたはコンフィグレーションがサポートされてもよく、これは、障害時に異なるいくつかの位置の1つからユーザがサービスを受けることを可能にする。
【0122】
場合によっては、管理されたアプリケーション410は、証明書およびプライベート鍵にAPI(例としてOpenSSL)を介してアクセスしてもよい。企業の信頼済みの管理されたアプリケーション410は、アプリケーションのクライアント証明書おおびプライベート鍵で特定の公開鍵動作を行なってもよい。アプリケーションがブラウザのような挙動をして証明書アクセスが要求されない場合、アプリケーションが「自分が誰か」についての証明書を読み出す場合、アプリケーションが証明書を使用してセキュリティ保護セッショントークンを構築する場合、および、アプリケーションが重要データのデジタルサイニング(例えばトランザクションログ)または一時的データ暗号化のためのプライベート鍵を使用する場合等の、様々な使用状況が特定され、それに応じて処理されてもよい。
【0123】
〈モバイルデバイス管理特徴〉
本開示の様々な態様の提供および/または実装において使用されるコンピューティングアーキテクチャおよび企業モビリティ管理アーキテクチャのいくつかの実施例を検討したが、以下、複数の実施形態をより詳細に検討する。特に、前記で紹介されたように、開示のいくつかの態様が大略的にモバイルデバイス管理機能の提供に関する。下記においては、いかにモバイルデバイス管理機能が1つ以上の実施形態に従って提供されてもよいかを例示する様々な実施例が検討される。
【0124】
図5は、本開示に検討される1つ以上の実施形態に従って1つ以上のモバイルデバイス管理ポリシーを管理されたブラウザに適用する方法を説明するためのフローチャートを示す。1つ以上の実施形態では、
図5に例示された方法および/または1つ以上のそのステップは、コンピューティングデバイス(例えば、ジェネリックコンピューティングデバイス201)によって実行される。他の実施形態においては、
図5に例示された方法および/または1つ以上のそのステップは、不揮発性(non-transitory)コンピュータ読取可能メモリ等のコンピュータ読取可能媒体に記憶されたコンピュータ実行可能命令で具体化されてもよい。
【0125】
図5に示されるように、この方法は、モバイルデバイス管理(MDM)エージェントが初期化されるステップ505で開始される。例えば、ステップ505において、コンピューティングデバイス(例えば、ラップトップコンピュータ、タブレットコンピュータ、スマートフォンまたは他のタイプのモバイルデバイス等のモバイルコンピューティングデバイス)は、MDMエージェントをデバイス上で初期化される(例えば、MDMエージェントを実行、構成および/または別様に開始することにより)。1つ以上の配置において、MDMエージェントは、デバイス上で実行されるよう構成され、デバイスの現在の状態についての情報を含む、デバイスについての情報を収集および/または別様に取得するようさらに構成される、アプリケーション、サービスまたは処理であってもよい。例えば、MDMエージェントは、デバイスに記憶されたおよび/またはデバイスで実行中のオペレーティングシステムおよび/またはアプリケーションを示す状態情報(state information)、デバイスに利用可能なおよび/またはデバイスが使用中のネットワーク接続を示す状態情報、および/または、デバイスが位置するおよび/または使用されている現在位置を示す状態情報(例えば、地理座標について、「家庭」または「仕事」等のセマンティックラベルについて)等の、デバイスレベル状態情報を収集および/または維持するよう構成されてもよい。これらのタイプの状態情報は、例によってはMDMエージェントにより収集および/または維持されるデバイスレベル状態情報のタイプの実施例としてここで列挙されるが、さらなるおよび/または代替的な状態情報のタイプが、同様に他の例においてMDMエージェントにより収集および/または維持されてもよい。
【0126】
状態情報の様々なタイプの収集および/または維持に加えて、MDMエージェントは、収集される様々なタイプの状態情報を評価、解析および/または別様に監視するようさらに構成されてもよい。例えば、MDMエージェントは、状態情報内の変化の検出に基づいて、状態情報が1つ以上の作動を変更および/または実行したかを周期的に判定するよう構成されてもよい。例えば、MDMエージェントは、状態情報を1つ以上の他のアプリケーション、サービスおよび/または処理に提供してもよい。例えば、下記に検討される実施例によっては、MDMエージェントおよび/またはデバイス上の1つ以上の他のアプリケーション、サービスならびに/もしくは処理は、モバイルデバイス管理ポリシーの適用および/またはモバイルデバイス管理ポリシーに関する他の作動の実施において、MDMエージェントにより収集された状態情報を解析および/または別様に処理してもよい。例えば、モバイルデバイス管理ポリシーによっては、MDMエージェントにより収集されたデバイス状態情報を使用して評価されてもよい状況の異なるセットに基づいて許可および/または禁止の機能ならびに/もしくはアプリケーションを定義してもよい。これらのおよび/または他の方法において、状態情報は、下記に検討される実施例においての管理されたブラウザ等の、様々な機能および/またはアプリケーション上の挙動制限の適用において使用されてもよい。
【0127】
デバイスレベル状態情報(例えば、デバイス上でどのようなアプリケーションがインストールおよび/または実行されているか、デバイスがどこに位置しているか、どのようなネットワークにデバイスがつながっているか、についての情報、および/または、例えばアプリケーションレベル考慮事項とは異なる他のデバイスレベル考慮事項を含んでもよい)の収集、維持、評価、解析および/または別様の監視により、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、単一アプリケーションにより分かる情報のみに基づいては行えない1つ以上のポリシー決定を評価および実行可能であってもよい。その結果、このようなコンピューティングデバイスおよび/またはMDMエージェントは、ポリシー管理および適用についての、いくつかの従来のアプリケーション管理フレームワークよりも多くの制御を提供できるかもしれない(従来のアプリケーション管理フレームワークでは、アプリケーションレベル情報にのみ基づいてポリシー決定を評価および実行し、その結果、デバイスレベル状態情報が使用されるときに提供できるのと同じレベルの機能の提供に失敗していたであろう)。
【0128】
実施形態によっては、MDMエージェントがコンピューティングデバイス上で初期化された後(例えば、ステップ505で)、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、1つ以上のポリシー管理サーバ(これは例えば、デバイスの状態に影響を与える)に情報を提供および/または1つ以上のポリシー管理サーバから1つ以上のコマンドを受信してもよい。例えば、1つ以上のポリシー管理サーバに情報を提供する場合、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、1つ以上のポリシー管理サーバに状態情報(これは例えば、本開示で検討されるようにデバイス状態情報の様々なタイプを含んでもよい)を送信してもよく、1つ以上のポリシー管理サーバは例えば、このような情報を解析し、コマンドおよび/または他の情報をコンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントに提供し戻すように構成されてもよい。さらに、1つ以上のポリシー管理サーバからのコマンドの受信において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、新たなおよび/または更新されたポリシーおよび/または他のポリシー情報、遠隔解析されたおよび/または別様に処理されたデバイス状態情報(例えば、1つ以上のポリシー管理サーバは、デバイスにより収集、デバイスから取得および/またはデバイスに関連した状態情報を、遠隔解析および/または別様に処理してもよく、そして、このような解析および/または処理された状態情報をデバイスに提供し戻す)、および/または、他の情報を受信してもよい。
【0129】
ステップ510において、管理されたブラウザ(managed browser)がロードされる。例えば、ステップ510において、コンピューティングデバイス(例えば、ステップ505においてMDMエージェントを初期化したコンピューティングデバイス)は、管理されたブラウザをロードする(例えば、管理されたブラウザを開くおよび/または別様にその実行を開始することによって)。
【0130】
実施形態によっては、管理されたブラウザは、1つ以上の企業セキュリティ特徴を提供するよう構成されたウェブブラウザであってもよい。例えば、管理されたブラウザは、1つ以上のモバイルデバイス管理ポリシー(これは例えば、企業によって定義および/または配布されてもよい)がブラウザ上で適用されてもよい「管理」モードで提供および/または動作するよう構成されてもよく(例えば、企業リソースおよび/または他のコンテンツにアクセスおよび/または相互作用するブラウザの能力を含む、ブラウザの様々な機能が、1つ以上のポリシーに従っておよび/またはデバイス状態情報に基づいて制限されてもよいように)、ポリシーが適用されないであろうが、1つ以上の企業リソースを含む特定のリソースへアクセスするブラウザの能力が制限されるかもしれない「非管理」モードを提供および/またはそのモードで動作するよう、管理されたブラウザが構成されてもよい。
【0131】
さらに/あるいは、管理されたブラウザは、ブラウザ内で実行されるよう構成されるモバイルデバイスアプリケーションでの使用のために様々な企業セキュリティ特徴を拡張してもよい。例えば、企業は、一部または全部のその従業員および/または他のユーザに、企業セキュリティリスク低減のため自身のデバイスの持込(Bring−Your−Own−Device:BYOD)スキームにおいて自身の各モバイルデバイス上に管理されたブラウザをインストールして使用することを要求してもよい。
【0132】
さらに、管理されたブラウザは、例えば、モバイルデバイスユーザが企業イントラネットおよび/または他の企業リソースにヴァーチャルプライベートネットワーク(VPN)への接続なしでアクセスすることを可能とするために使用できる。例えば、管理されたブラウザは、企業イントラネットおよび/または他の企業リソースへのこのようなアクセスを可能とする下記に詳述されるようなもの等の、トンネリング機能を実装および/または提供してもよい。
【0133】
ステップ515において、1つ以上のモバイルデバイス管理ポリシーが、管理されたブラウザに適用される。例えば、ステップ515において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、MDMエージェントにより収集された状態情報に基づいて管理されたブラウザの特定の機能が選択的に有効化および/または無効化されてもよいよう、1つ以上のポリシーを管理されたブラウザに適用してもよい。1つ以上の配置(arrangement)において、管理されたブラウザに適用されたモバイルデバイス管理ポリシーは、さらに/あるいは、管理されたブラウザの実行中にコンピューティングデバイスの機能を制御してもよい。例えば、モバイルデバイス管理ポリシーは、さらに/あるいは、管理されたブラウザがコンピューティングデバイス上で実行されていない(例えば、代わりに単にコンピューティングデバイス上に存在するだけの)場合であっても、コンピューティングデバイスの機能を制御してもよい。
【0134】
実施形態によっては、1つ以上のモバイルデバイス管理ポリシーを管理されたブラウザに適用することは、状態情報を1つ以上のポリシー管理サーバに提供すること、および、1つ以上のポリシー管理サーバから管理情報を受信することを含んでもよい。例えば、1つ以上のモバイルデバイス管理ポリシーを管理されたブラウザに適用することにおいて(例えば、ステップ515において)、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、1つ以上のポリシー管理サーバへの接続およびそれに続く1つ以上のポリシー管理サーバへの状態情報の送信により、状態情報(これは例えば、ステップ505でロードされたMDMエージェントにより監視されている少なくともいくつかの状態情報を含む)を1つ以上のポリシー管理サーバに提供してもよい。
【0135】
1つ以上のポリシー管理サーバは例えば、管理されたブラウザに適用されるべき1つ以上のポリシーを配布および/または別様に実装する企業により動作および/または制御されてもよい。さらに/あるいは、1つ以上のポリシー管理サーバは、状態情報(これは例えば、1つ以上のデバイス上で1つ以上のMDMエージェントから受信されてもよい)を解析し、管理情報(これは例えば、1つ以上のデバイス上で1つ以上のMDMエージェントに供給され、続いて1つ以上のMDMエージェントにより受信されてもよい)を生成するよう構成されてもよい。例えば、1つ以上のポリシー管理サーバに状態情報を提供した後に、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、1つ以上のポリシー管理サーバから管理情報を受信してもよく、このような管理情報は、供給された状態情報に基づいて1つ以上のポリシー管理サーバにより生成されてもよい。例によっては、管理情報は、コンピューティングデバイスおよび/またはMDMエージェントにより実行されるべき1つ以上のコマンドを含んでもよい。例えば、管理情報は、実行されたときに、コンピューティングデバイスおよび/またはMDMエージェントに、管理されたブラウザの1つ以上の機能を選択的に有効化および/または無効化させる1つ以上のコマンドを含んでもよい。他の例では、管理情報は、1つ以上のポリシー更新を含んでもよい。例えば、管理情報は、管理されたブラウザに適用されるべき1つ以上の新たなおよび/または更新されたポリシーを反映する1つ以上のポリシー更新を含んでもよい。
【0136】
実施形態によっては、1つ以上のモバイルデバイス管理ポリシーのうちの少なくとも1つのポリシーは、ポリシー管理サーバから受信されてもよい。例えば、コンピューティングデバイスおよび/またはコンピューティングデバイス上のMDMエージェントは、コンピューティングデバイス上の管理されたブラウザに適用されるべく、コンピューティングデバイスおよび/またはコンピューティングデバイス上のMDMエージェントに1つ以上のポリシーを送信しおよび/または別様に提供する、企業により制御されおよび/または使用されるポリシー管理サーバから1つ以上のポリシーを受信してもよい。例によっては、ポリシー管理サーバから受信されたモバイルデバイス管理ポリシーは、企業に関する全てのユーザに適用されるよう構成されるジェネリックポリシーであってもよい。他の例では、ポリシー管理サーバから受信されたモバイルデバイス管理ポリシーは、コンピューティングデバイスの特定のユーザに適用されるよう構成されるユーザ特有のポリシーおよび/または企業内で特定役割(例えば、販売、会計、法務、技術、役員等)を有するユーザに適用されるよう構成される役割特有のポリシーであってもよい。
【0137】
ステップ520において、デバイスに関する状態情報は監視される。例えば、ステップ520において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、コンピューティングデバイスの現在状態を示す状態情報を監視してもよい(例えば、このような状態情報の収集、取得、評価および/または解析によって)。上で検討されたように、MDMエージェントにより監視されてもよいデバイス状態情報のタイプのいくつかの実施例は、デバイス上で記憶および/または実行されるオペレーティングシステムおよび/またはアプリケーションについての情報、デバイスに利用可能および/または使用中のネットワーク接続についての情報、および/または、デバイスの現在位置についての情報を含んでいてもよい。
【0138】
ステップ525において、1つ以上の挙動制限(behavior limitations)が、管理されたブラウザ上で適用される。例えば、ステップ525において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、状態情報(例えば、ステップ520の監視中に収集および/または解析された状態情報)に基づいて、管理されたブラウザ上での1つ以上の挙動制限を適用してもよい。例えば、管理されたブラウザ上での1つ以上の挙動制限の適用において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、例えば、コンピューティングデバイスが特定の場所に位置している、または、特定の方法で使用されていることを示す状態情報に基づいて、管理されたブラウザ内の特定の機能を無効化してもよい。例えば、状態情報に含まれる位置情報が、ユーザの家庭位置または職場位置として以前に登録されていなかった位置でデバイスが使用中であることを示す場合に、ユーザが企業リソースおよび/または他の企業データにアクセスすることを防止するために、特定の機能が、管理されたブラウザ内で無効化されるかもしれない。
【0139】
実施形態によっては、管理されたブラウザ上での1つ以上の挙動制限の適用は、少なくとも1つのネットワークリソースへのアクセス制限を含んでもよい。例えば、1つ以上のネットワークリソースへのアクセス制限のための、管理されたブラウザ上での1つ以上の挙動制限の適用において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、特定のウェブサイトおよび/または他のネットワークアクセス可能な情報へのアクセスを制限、ブロックおよび/または別様に制御してもよい(例えば、禁止ウェブサイトのブラックリスト、許可ウェブサイトのホワイトリスト等を使用して)。例によっては、1つ以上のネットワークリソースへのアクセス制限は、1つ以上の公衆および/またはプライベートネットワークを介してアクセス可能であってもよい企業リソースおよび/または他の企業データへのアクセスの制限、ブロックおよび/または別様の制御を含んでもよい。
【0140】
実施形態によっては、管理されたブラウザ上での1つ以上の挙動制限の適用は、コンピューティングデバイスに関する位置情報に基づいて、管理されたブラウザの少なくとも1つの機能の選択的無効化を含んでもよい。例えば、管理されたブラウザ上での1つ以上の挙動制限の適用において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、デバイスが特定の位置に存在する場合に管理されたブラウザの特定の機能を選択的に制限および/または許可する1つ以上の位置ベースポリシーを、管理されたブラウザに適用してもよい。例えば、位置ベースポリシーは、デバイスが1つ以上の特定の位置に存在するまたは存在しない場合に、管理されたブラウザ(および/または管理されたブラウザ内の1つ以上の機能)が使用されることを防止してもよい。別の位置ベースポリシーは、例えば、デバイスが1つ以上の特定の位置に存在するまたは存在しない場合に、管理されたブラウザを使用してアクセス可能なウェブサイト、アプリケーションおよび/または他のリソースを制限してもよい。例によっては、位置ベースポリシーは、ポリシーが適用されるまたはされない1つ以上の領域を定義してもよく、その1つ以上の領域は、地理的に(例えば、地理座標に関して)および/またはセマンティックに(例えば、「家庭」または「仕事」等のラベルを使用して)定義されてもよい。
【0141】
実施形態によっては、管理されたブラウザ上での1つ以上の挙動制限の適用は、コンピューティングデバイスに関するアプリケーションインベントリ情報に基づいて、管理されたブラウザの少なくとも1つの機能を選択的に無効化することを含んでもよい。例えば、管理されたブラウザ上での1つ以上の挙動制限の適用において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、コンピューティングデバイスに関するアプリケーションインベントリ情報に基づいて、管理されたブラウザの1つ以上の機能を選択的に無効化してもよい。このようなアプリケーションインベントリ情報は、例えば、コンピューティングデバイス上で実行中の、コンピューティングデバイス上にインストールされた、および/または、別様にコンピューティングデバイス上に存在するアプリケーションの列挙、ならびに、列挙に含まれるアプリケーションの各々についての状態情報(例えば、アプリケーションが開かれているか、アプリケーションがローカルに実行されているか、アプリケーションが遠隔実行されているか、アプリケーションが管理されたブラウザ内で実行されているか等を示す)、および/または、アプリケーションについての他の情報を含んでもよい。例えば、1つ以上の特定のアプリケーションがコンピューティングデバイス上で実行されている、コンピューティングデバイス上にインストールされている、および/または、コンピューティングデバイス上に別様に存在する場合、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、管理されたブラウザの1つ以上の機能を選択的に無効化することを判定してもよく、これは、例によっては、管理されたブラウザが特定の企業リソースにアクセスすること、特定の企業データを修正すること、および/または他の機能を実行することを選択的に防止することを含んでもよい。
【0142】
実施形態によっては、管理されたブラウザ上での1つ以上の挙動制限の適用は、管理されたブラウザに関する1つ以上のキャッシュを選択的にワイプすることを含んでもよい。例えば、管理されたブラウザ上での1つ以上の挙動制限の適用において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、特定の状況で、管理されたブラウザの1つ以上のキャッシュを選択的にワイプ(wipe)する(例えば、コンピューティングデバイスによって、コンピューティングデバイス上で実行中のMDMエージェントによって、管理されたブラウザ自身によって等)1つ以上のキャッシュクリーニングポリシーを、管理されたブラウザに適用してもよい。例えば、キャッシュクリーニングポリシーは、デバイスが特定の位置において使用される、および/または、特定の方法で使用されることを示す状態情報に基づいて、管理されたブラウザの1つ以上のキャッシュを選択的にワイプしてもよい。管理されたブラウザのキャッシュの選択的ワイプにおいて、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、キャッシュに含まれる全てのデータまたはキャッシュに含まれるデータの一部のみを削除してもよい(例えば、非管理パーソナルデータは削除せずに管理企業データのみを削除してもよい)。さらに/あるいは、キャッシュクリーニングポリシーは、1つ以上の管理されたブラウザの1つ以上のキャッシュ(例えば、様々なデバイス上の)がワイプされる処理をアクティブに開始するために、ネットワークアドミニストレータにより使用されてもよい。
【0143】
実施形態によっては、1つ以上のモバイルデバイス管理ポリシーを管理されたブラウザに適用することは、1つ以上のポリシーのセットのうちのポリシーの第1のセットが、ユーザに関する識別(identity)情報に基づいて、管理されたブラウザのユーザに適用可能であると判定すること、および、それに続いてポリシーの第1のセットの、管理されたブラウザへの適用を判定することを含んでもよい。例えば、異なるポリシーが、管理されたブラウザの異なるユーザに適用されてもよい。1つ以上のモバイルデバイス管理ポリシーを管理されたブラウザに適用することにおいて、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、コンピューティングデバイスの現在のユーザについての識別情報に基づいて適用されるべき適切なポリシーのセットを判定してもよい(例えば、コンピューティングデバイスに現在ログインしているユーザアカウントに基づいて)。ポリシーの特定のセットは、例えば、特定のユーザおよび/または特定のユーザのグループに課されてもよい。例えば、ポリシーの第1のセットは、ユーザが企業内の第1のグループの一部である、または、企業内の第1の役割を有するときに適用されてもよく、ポリシーの第2のセット(これは、例えばポリシーの第1のセットと異なってもよい)は、ユーザが企業内の第2のグループの一部である、または、企業内の第2の役割(これは、例えば第1の役割と異なってもよい)を有するときに適用されてもよい。
【0144】
図6は、本開示で検討される1つ以上の例示的な局面に従って、1つ以上のモバイルデバイス管理ポリシーをアプリケーショントンネリング機能に適用する方法を示すフローチャートを示す。1つ以上の実施形態において、
図6に示す方法および/またはその1つ以上のステップは、コンピューティングデバイス(例えば、ジェネリックコンピューティングデバイス201)により実行されてもよい。他の実施形態において、
図6に示す方法および/またはその1つ以上のステップは、不揮発性コンピュータ読取可能メモリ等のコンピュータ読取可能媒体に記憶されたコンピュータ実行可能な命令に具体化されてもよい。
【0145】
図6に見られるように、この方法は、モバイルデバイス管理(MDM)エージェントが初期化されるステップ605で開始される。例えばステップ605において、コンピューティングデバイス(例えば、ラップトップコンピュータ、タブレットコンピュータ、スマートフォンまたは他のタイプのモバイルデバイス等のモバイルコンピューティングデバイス)は、ステップ505(前記において検討された)においてこのようなMDMエージェントが初期化される方法と同様に、MDMエージェントを初期化してもよい。1つ以上の配置において、MDMエージェントがコンピューティングデバイス上で初期化された後(例えば、ステップ605で)、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、前記において検討された実施例においてこのような情報が提供され、このようなコマンドが受信される方法と同様に、1つ以上のポリシー管理サーバ(これは例えば、デバイスの状態に影響を与える)に情報を提供および/または1つ以上のポリシー管理サーバから1つ以上のコマンドを受信してもよい。
【0146】
ステップ610において、モバイルコンピューティングデバイスに関する状態情報は、モバイルデバイス管理エージェントにより監視される。例えば、ステップ610において、モバイルコンピューティングデバイスおよび/またはモバイルコンピューティングデバイス上で実行中のMDMエージェントは、前記において検討された実施例においてこのような状態情報がMDMエージェントおよび/またはコンピューティングデバイスにより監視される方法と同様に、様々なタイプの状態情報を収集、維持、評価、解析および/または別様に監視してもよい。
【0147】
実施形態によっては、状態情報を監視することは、少なくともいくつかの状態情報を1つ以上のポリシー管理サーバに提供すること、および、1つ以上のポリシー管理サーバから管理情報(management information)を受信することを含んでもよい。例えば、状態情報を監視することにおいて(例えば、ステップ610において)、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、1つ以上のポリシー管理サーバへの接続およびそれに続く1つ以上のポリシー管理サーバへの状態情報の送信により、MDMエージェントにより監視される状態情報の少なくとも一部を1つ以上のポリシー管理サーバに提供してもよい。1つ以上のポリシー管理サーバは例えば、下記に検討されるように、アプリケーショントンネリング機能に適用されるべき1つ以上のポリシーを配布および/または別様に実装する企業により動作および/または制御されてもよい。
【0148】
さらに/あるいは、1つ以上のポリシー管理サーバは、状態情報(これは例えば、1つ以上のデバイス上で1つ以上のMDMエージェントから受信されてもよい)を解析し、管理情報(これは例えば、1つ以上のデバイス上で1つ以上のMDMエージェントに供給され、続いて1つ以上のMDMエージェントにより受信されてもよい)を生成するよう構成されてもよい。例えば、1つ以上のポリシー管理サーバに状態情報を提供した後に、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、1つ以上のポリシー管理サーバから管理情報を受信してもよく、このような管理情報は、供給された状態情報に基づいて1つ以上のポリシー管理サーバにより生成されてもよい。例によっては、管理情報は、コンピューティングデバイスおよび/またはMDMエージェントにより実行されるべき1つ以上のコマンドを含んでもよい。例えば、管理情報は、実行されたときに、コンピューティングデバイスおよび/またはMDMエージェントに、下記に検討されるように、1つ以上の特定のアプリケーションについてアプリケーショントンネリング機能を選択的に有効化および/または無効化させる1つ以上のコマンドを含んでもよい。他の例では、管理情報は、1つ以上のポリシー更新を含んでもよい。例えば、管理情報は、アプリケーショントンネリング機能に適用されるべき1つ以上の新たなおよび/または更新されたポリシーを反映する1つ以上のポリシー更新を含んでもよい。
【0149】
実施形態によっては、状態情報を監視することは、モバイルコンピューティングデバイス上に存在する1つ以上のアプリケーションを特定することを含んでもよい。例えば、モバイルコンピューティングデバイス上に存在する1つ以上のアプリケーションを特定することにおいて、モバイルコンピューティングデバイスおよび/またはモバイルコンピューティングデバイス上で実行中のMDMエージェントは、どのようなアプリケーションがコンピューティングデバイス上に記憶されているか、コンピューティングデバイス上にインストールされているか、以前にコンピューティングデバイス上で実行されたか、および/または、コンピューティングデバイス上で現在実行されているか、を判定するために、1つ以上のストレージデバイス(これは例えば、コンピューティングデバイスに接続されおよび/または別様にアクセス可能であってもよい)および/またはインストールログ(これは例えば、コンピューティングデバイスにより維持されてもよい)を検査してもよい。
【0150】
実施形態によっては、状態情報を監視することは、モバイルコンピューティングデバイスにより使用される1つ以上のネットワーク接続を特定することを含んでもよい。例えば、モバイルコンピューティングデバイスにより使用される1つ以上のネットワーク接続を特定することにおいて、モバイルコンピューティングデバイスおよび/またはモバイルコンピューティングデバイス上で実行中のMDMエージェントは、どのようなネットワークが、コンピューティングデバイスにアクセス可能および/またはコンピューティングデバイスの範囲内か、どのようなネットワークに、以前にコンピューティングデバイスが接続したか、および/または、どのようなネットワークに、コンピューティングデバイスが現在接続されているか、を判定するために、1つ以上のネットワークインタフェースおよび/または他のネットワークデバイス(これは例えば、コンピューティングデバイスに接続されおよび/または別様にコンピューティングデバイスにより使用可能であってもよい)および/または1つ以上の接続ログ(これは例えば、コンピューティングデバイスにより維持されてもよい)を検査してもよい。
【0151】
実施形態によっては、状態情報を監視することは、モバイルコンピューティングデバイスの現在位置情報を判定することを含んでもよい。例えば、モバイルコンピューティングデバイスの現在位置情報を判定することにおいて、モバイルコンピューティングデバイスおよび/またはモバイルコンピューティングデバイス上で実行中のMDMエージェントは、モバイルコンピューティングデバイスの現在位置を判定し、および/または、1つ以上の他のコンポーネント(例えば、GPS受信機、他の処理コンポーネント等)および/またはデバイスにモバイルコンピューティングデバイスの現在位置を判定させてもよい。例によっては、位置情報は、モバイルコンピューティングデバイスの現在位置を示す地理座標を含んでもよい。例によっては、位置情報は、1つ以上のユーザ特有のランドマークに関するモバイルコンピューティングデバイスの現在位置を示すセマンティックレベル(例えば、「家庭」または「仕事」)を含んでもよい。この位置のいずれかおよび/または全ては、例えば、1つ以上の位置ベースモバイルデバイス管理ポリシーの適用および/または強制の場面において、モバイルコンピューティングデバイスおよび/またはモバイルコンピューティングデバイス上で実行中のMDMエージェントにより使用されてもよい。
【0152】
ステップ615において、1つ以上のポリシーが、監視された状態情報に基づいて、モバイルコンピューティングデバイス上のアプリケーショントンネリング機能に適用される。例えば、ステップ615において、モバイルコンピューティングデバイスおよび/またはモバイルコンピューティングデバイス上で実行中のMDMエージェントは、MDMエージェントにより監視された状態情報に基づいてアプリケーショントンネリング機能の特定の態様が選択的に有効化および/または無効化されてもよいよう、1つ以上のモバイルデバイス管理ポリシーをコンピューティングデバイス上のアプリケーショントンネリング機能に適用してもよい。1つ以上の配置において、アプリケーショントンネリング機能は、例えば、企業サーバおよび/または他の企業リソースへのVPNスタイルトンネルを確立するために、モバイルコンピューティングデバイス上で実行中の特定のアプリケーションおよび/または他の処理を有効化してもよい(これは例えば、企業データにセキュリティ保護された状態でアクセスするためにこのようなアプリケーションを有効化してもよい)。
【0153】
実施形態によっては、1つ以上のポリシーのモバイルコンピューティングデバイス上のアプリケーショントンネリング機能への適用は、少なくとも1つのアプリケーショントンネルの有効化を含んでもよい。例えば、少なくとも1つのアプリケーショントンネルの有効化において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、1つ以上のモバイルデバイス管理ポリシー(これは例えば、特定の企業リソースを含む特定のリソースにアプリケーショントンネルが確立されることができるおよび/またはできない状況を記述してもよい)に基づいて、1つ以上のリソース(これは例えば、1つ以上の企業リソースを含んでもよい)への1つ以上のアプリケーショントンネルを許可および/または確立してもよい。
【0154】
1つ以上のアプリケーショントンネルの許可および/または確立において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、特定のリソース(これは例えば、企業リソースであってもよい)にアプリケーショントンネルが確立されることが許可できるかを判定するために、デバイス状態情報に鑑みて1つ以上のモバイルデバイス管理ポリシーを評価してもよい。例えば、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントが、アプリケーショントンネルが特定のリソースに確立されることが許可できると判定した場合、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、アプリケーショントンネルを確立してもおよび/またはアプリケーショントンネルが確立される(例えば、特定のリソースに接続および/または別様に通信することにより)ようにしてもよい。一方、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントが、アプリケーショントンネルが特定のリソースに確立されることが許可できないと判定した場合、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、アプリケーショントンネルが確立されることを防止してもよい。
【0155】
実施形態によっては、1つ以上のポリシーのうちの少なくとも1つのポリシー(これは例えば、アプリケーショントンネリング機能に適用される)は、ポリシー管理サーバから受信されてもよい。例えば、1つ以上のポリシーをアプリケーショントンネリング機能に適用する前に、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、ポリシー管理サーバから1つ以上のポリシーを受信してもよく、1つ以上の受信したポリシーは、例えば、特定のアプリケーショントンネリング機能が特定のアプリケーションおよび/またはサービスに対して選択的に有効化および/または選択的に無効化されるべき特定の状況を定義してもよい。このようなポリシー管理サーバ(これは例えば、ポリシーを実装する企業により動作および/または制御されてもよい)からのこのようなポリシーの受信後、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントはそして、1つ以上の受信したポリシーをモバイルコンピューティングデバイス上のアプリケーショントンネリング機能に適用してもよい(例えば、ポリシーに従ったおよび/またはデバイス状態情報に基づいた、特定のアプリケーションについてのトンネリング機能適用の選択的有効化および/または選択的無効化によって)。
【0156】
実施形態によっては、1つ以上のポリシーをモバイルコンピューティングデバイス上のアプリケーショントンネリング機能に適用することは、監視された状態情報に基づいて、モバイルコンピューティングデバイス上の1つ以上のアプリケーションについてのアプリケーショントンネリング機能を選択的に無効化することを含んでもよい。例えば、1つ以上のアプリケーションについてのアプリケーショントンネリング機能を選択的に無効化することにおいて、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、1つ以上のモバイルデバイス管理ポリシー(これは例えば、いかに状態情報がアプリケーショントンネリング機能に影響するかを記述してもよい)に基づいて、特定のアプリケーションについてのアプリケーショントンネリング機能を無効化することを判定し、および/または、特定の条件が満たされたおよび/または満たされていないことを示す状態情報に基づいて、引き続いて無効化することを判定してもよい。例えば、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、デバイス上に存在する特定のアプリケーションに基づいて、特定のネットワークに接続されているデバイスに基づいて、および/または、特定の位置に位置するデバイスに基づいて、1つ以上のアプリケーションについてのアプリケーショントンネリング機能を選択的に無効化してもよい。
【0157】
実施形態によっては、1つ以上のポリシーをモバイルコンピューティングデバイス上のアプリケーショントンネリング機能に適用することは、1つ以上の特定のリソースへのトンネリングを選択的に有効化および/または選択的に無効化することを含んでもよい。例えば、1つ以上の特定のリソースへのトンネリングの選択的有効化および/または選択的無効化において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、1つ以上のモバイルデバイス管理ポリシーに基づいてもよく、コンピューティングデバイスおよび/またはMDMエージェントは、1つ以上の特定のアプリケーションおよび/または他の処理が1つ以上の特定の企業リソースへのトンネルの確立および/または使用を行なうことができるようにアクティブ化および/または許可してもよい。さらに/あるいは、1つ以上の特定のリソースへのトンネリングの選択的有効化および/または選択的無効化において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、1つ以上の特定のアプリケーションおよび/または他の処理が1つ以上の特定の企業リソースからのトンネリングを確立ならびに/もしくは別様に使用することを選択的に禁止および/または防止してもよい。
【0158】
さらに、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、例えば、1つ以上のモバイルデバイス管理ポリシーに基づいて、および/または、デバイス状態情報(これは例えば、前記で検討されたように、コンピューティングデバイスおよび/またはMDMエージェントにより監視されてもよい)に基づいて、1つ以上の特定のリソースへのトンネリングの選択的有効化および/または選択的無効化を判定してもよい。よって、デバイス状態情報における変化は、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントに、1つ以上の特定の企業リソースへのトンネリングの選択的有効化および/または選択的無効化を行なわせてよい。
【0159】
実施形態によっては、1つ以上のポリシーをモバイルコンピューティングデバイス上のアプリケーショントンネリング機能に適用することは、アプリケーショントンネリング機能を介して交換可能なコンテンツの制限を含んでもよい。例えば、アプリケーショントンネリング機能を介して交換可能なコンテンツの制限において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、1つ以上のモバイルデバイス管理ポリシーに基づいて、様々な企業リソースへのアクセスおよび/またはそれとの相互作用において様々なアプリケーションにより確立および/または使用されてもよいVPNスタイルトンネルを介して1つ以上のタイプのデータが送信および/または受信されることを防止および/または引き続いて防止することを判定してもよい。例えば、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、高度にセキュリティ保護されたデータまたは最高機密データ等の特定のタイプのデータが、デバイス上に存在する特定のアプリケーションに基づいて、特定のネットワークに接続されているデバイスに基づいて、および/または、特定の位置に位置するデバイスに基づいて、アプリケーショントンネリング機能を介して交換されることを防止してもよい。
【0160】
実施形態によっては、1つ以上のポリシーをモバイルコンピューティングデバイス上のアプリケーショントンネリング機能に適用することは、アプリケーショントンネリング機能を介して実行可能な動作の制限を含んでもよい。例えば、アプリケーショントンネリング機能を介して実行可能な動作の制限において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、1つ以上のモバイルデバイス管理ポリシーに基づいて、様々な企業リソースへのアクセスおよび/またはそれとの相互作用において様々なアプリケーションにより確立および/または使用されてもよいVPNスタイルトンネルを介して特定のタイプの動作が実行されることを防止してもよい。例えば、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、デバイス上に存在する特定のアプリケーションに基づいて、特定のネットワークに接続されているデバイスに基づいて、および/または、特定の位置に位置するデバイスに基づいて、書き込み動作等の特定のタイプの動作の実行を防止してもよい(例えば、一方で読み取り動作の実行は許可しつつも)。
【0161】
図7は、本開示で検討される1つ以上の実施形態に従って、1つ以上のモバイルデバイス管理ポリシーをデバイスクラウドに適用する方法を示すフローチャートである。1つ以上の実施形態において、
図7に示す方法および/またはその1つ以上のステップは、コンピューティングデバイス(例えば、ジェネリックコンピューティングデバイス201)により実行されてもよい。他の実施形態において、
図7に示す方法および/またはその1つ以上のステップは、不揮発性コンピュータ読取可能メモリ等のコンピュータ読取可能媒体に記憶されたコンピュータ実行可能な命令に具体化されてもよい。
【0162】
図7に見られるように、この方法は、モバイルデバイス管理(MDM)エージェントが初期化されるステップ705で開始される。例えば、ステップ705において、コンピューティングデバイス(例えば、ラップトップコンピュータ、タブレットコンピュータ、スマートフォンまたは他のタイプのモバイルデバイス等のモバイルコンピューティングデバイス)は、ステップ505(前記において検討された)においてこのようなMDMエージェントが初期化される方法と同様に、MDMエージェントを初期化してもよい。1つ以上の配置において、MDMエージェントがコンピューティングデバイス上で初期化された後(例えば、ステップ705で)、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、前記において検討された実施例においてこのような情報が提供され、このようなコマンドが受信される方法と同様に、1つ以上のポリシー管理サーバ(これは例えば、デバイスの状態に影響を与える)に情報を提供および/または1つ以上のポリシー管理サーバから1つ以上のコマンドを受信してもよい。例えば、少なくともいくつかの監視された状態情報を1つ以上のポリシー管理サーバに提供した後に、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、提供された状態情報に基づいて、1つ以上のポリシー管理サーバから1つ以上のコマンドを受信してもよい(例えば、1つ以上のポリシー管理サーバは、提供された状態情報を受信し、提供された状態情報を1つ以上のモバイルデバイス管理ポリシーに鑑みて解析し、提供された状態情報および/または1つ以上のポリシーに基づいて1つ以上のコマンドを生成し、生成されたコマンドをコンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントに返送してもよい)。
【0163】
ステップ710において、デバイスクラウドを開始するために、少なくとも1つの他のデバイスへの接続が確立される。例えば、ステップ710において、コンピューティングデバイスは、デバイスクラウドを開始するために、1つ以上の他のコンピューティングデバイスへのネットワーク接続を確立してもよい。1つ以上の配置において、デバイスクラウドは、例えば、単一機能またはタスクを実行するために2つ以上のコンピューティングデバイスを互いに組み合わせて使用されることを可能としてもよい。典型例において、デバイスは同じユーザに使用されてもよく、および/または、両方が互いの近く(例えば、互いの所定距離内)および/またはユーザの近く(例えば、ユーザの所定距離内)に位置していてもよい。例によっては、デバイスクラウドは、ユーザのデバイスの1つによりサポートされてはいないが、そのユーザのデバイスの別の1つによりサポートされている機能を提供するように使用してもよい。例えば、ラップトップコンピュータのユーザが、別の人とのビデオカンファレンスを行ないたいと考えるが、ラップトップコンピュータがカメラを含んでいない場合がある。しかしながら、ユーザがカメラを含むスマートフォン(または他のコンピューティングデバイス)を有する場合、デバイスクラウドは2つのデバイスにより提供される機能を動的にリンクするために使用されてもよく、それによって、それらはビデオカンファレンスを提供するために使用されてもよい。
【0164】
特に、この実施例において、デバイスクラウドは、ユーザのスマートフォンがビデオカンファレンス用のビデオ入力装置として使用され、一方、ユーザのラップトップコンピュータがビデオカンファレンスを行なうのに必要とされる他の機能(例えば、他の人のデバイスへの接続の確立、テキストベースチャット機能の提供等)を実行するために使用できるよう、確立される。この実施例は、実施形態によってはデバイスクラウドが1つ以上のデバイスの機能を拡張するために使用されてもよいいくつかの方法を例示するが、このようなデバイスクラウドは、他の実施形態において様々なデバイスの追加のおよび/または代替的な機能を拡張するために他の方法で使用されてもよい。
【0165】
1つ以上の配置において、デバイスクラウド内で必要とされる2つ以上のコンピューティングデバイスは、様々な方法で通信してもよい(例えば、デバイスクラウドを介して提供されてもよい1つ以上の機能を容易にするための情報交換用)。例えば、2つ以上のコンピューティングデバイスは、無線LAN(WLAN)インタフェースおよび/または信号、セルラーインタフェースおよび/または信号、Bluetooth(登録商標)インタフェースおよび/または信号、ならびに/もしくは、任意の他の通信インタフェースおよび/または信号を使用して通信してもよい。例によっては、デバイスクラウドで必要とされる1つ以上のコンピューティングデバイスを実行するオーケストレーションエンジンは、デバイスクラウドで必要とされるコンピューティングデバイス間の相互作用および/または他の通信を管理してもよい。
【0166】
ステップ715において、1つ以上のポリシーがデバイスクラウドに適用される。1つ以上の実施形態において、1つ以上のポリシーは、第1の役割をコンピューティングデバイスに、第2の役割をデバイスクラウドに参加中の少なくとも1つの他のデバイスに、割り当てるよう構成されてもよい。例えば、ステップ715において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、1つ以上のモバイルデバイス管理ポリシーをステップ710で確立されたデバイスクラウドに適用してもよい。さらに/あるいは、1つ以上のモバイルデバイス管理ポリシーは、デバイスクラウドに必要とされるデバイスのそれぞれにより実行される異なる役割を定義してもよい。例えば、ビデオカンファレンスを必要とする前記の実施例では、モバイルデバイス管理ポリシーは、ビデオキャプチャの役割をデバイスクラウドに必要とされるスマートフォンに割り当ててもよく、モバイルデバイス管理ポリシーは、接続維持の役割をデバイスクラウドに必要とされるラップトップコンピュータに割り当ててもよい。さらに、1つ以上のポリシーのデバイスクラウドへの適用において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、MDMエージェントにより収集された状態情報を監視してもよく(例えば、前記で検討された実施例においてそのような状態情報が監視されてもよい方法と同様に)、引き続いて状態情報に基づいて1つ以上のポリシーを適用してもよい。
【0167】
実施形態によっては、デバイスクラウドに適用される1つ以上のポリシーは、1つ以上の特定のデバイスがデバイスクラウドおよび/または1つ以上の他のデバイスクラウドに接続および/または参加できるかを制御するよう構成されてもよい。このようなポリシーがデバイスクラウドに適用される例では、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、例えば、デバイスクラウドに参加中の、デバイスクラウドにアクセスを要求中のおよび/またはデバイスクラウドに別様に必要とされるデバイスを周期的に監視してもよい。このような監視は、例えば、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントが、特定のデバイスがデバイスクラウドに参加可能かおよび/または特定のデバイスがデバイスクラウドから除去されるべきかを判定するのを可能とするであろう。
【0168】
実施形態によっては、1つ以上のポリシーをデバイスクラウドに適用することは、コンピューティングデバイス上の少なくとも1つの機能の制限を含んでもよい。例えば、1つ以上のポリシーのデバイスクラウドへの適用において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、コンピューティングデバイス上の1つ以上の機能を、選択的有効化、選択的無効化および/または別様に制御してもよい。さらに/あるいは、1つ以上のポリシーのデバイスクラウドへの適用において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、デバイスクラウドに参加中の他のコンピューティングデバイス上の1つ以上の機能を、選択的有効化、選択的無効化および/または別様に制御してもよい。例によっては、デバイスクラウドに(例えば、コンピューティングデバイスおよび/またはMDMエージェントにより)適用されるモバイルデバイス管理ポリシーは、デバイスクラウドへの接続中および/またはデバイスクラウドセッション終了後(例えば、デバイスクラウドとの切断後)に、特定の機能を選択的有効化および/または無効化してもよい。例えば、デバイスクラウドに適用されるモバイルデバイス管理ポリシーは、デバイスクラウドへの接続中にコンピューティングデバイスのユーザが、企業データおよび/または企業リソースに対してアクセスおよび/または編集することを防止してもよい。別の実施例では、デバイスクラウドに適用されるモバイルデバイス管理ポリシーは、デバイスクラウドへの接続中にコンピューティングデバイスのユーザが、企業データを1つ以上のチャットウィンドウにコピーおよび/またはペーストすることを防止してもよい。
【0169】
実施形態によっては、1つ以上のポリシーをデバイスクラウドに適用することは、コンピューティングデバイス上の少なくとも1つのアプリケーションの制御を含んでもよい。例えば、1つ以上のポリシーのデバイスクラウドへの適用において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、コンピューティングデバイス上の1つ以上のアプリケーションを、選択的有効化、選択的無効化および/または別様に制御してもよい。さらに/あるいは、1つ以上のポリシーのデバイスクラウドへの適用において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、デバイスクラウドに参加中の他のコンピューティングデバイス上の1つ以上のアプリケーションを、選択的有効化、選択的無効化および/または別様に制御してもよい。例によっては、デバイスクラウドに(例えば、コンピューティングデバイスおよび/またはMDMエージェントにより)適用されるモバイルデバイス管理ポリシーは、デバイスクラウドへの接続中および/またはデバイスクラウドセッション終了後(例えば、デバイスクラウドとの切断後)に、特定のアプリケーションを選択的有効化および/または選択的無効化してもよい。
【0170】
実施形態によっては、コンピューティングデバイス上の少なくとも1つのアプリケーションの制御は、アプリケーションの無効化を含んでもよい。例えば、1つ以上のポリシーのデバイスクラウドへの適用において、および/または、アプリケーションの制御において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、アプリケーションを無効化してもよい(例えば、既に開かれている場合にアプリケーションを閉じることにより、アプリケーションが開かれるおよび/または実行されるのを防止することによって等)。
【0171】
実施形態によっては、コンピューティングデバイス上の少なくとも1つのアプリケーションの制御は、デバイスクラウドに必要とされる1つ以上のアプリケーションにアプリケーショントンネルを生成させることを含んでもよい。例えば、1つ以上のポリシーのデバイスクラウドへの適用において、および/または、アプリケーションの制御において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、1つ以上のアプリケーション(これは例えば、デバイスで実行中および/またはデバイスクラウドに参加中の1つ以上の他のデバイスで実行中であってもよい)に(1つ以上の企業リソースに対してアクセスおよび/または相互作用するための)1つ以上のVPNスタイルトンネルを生成させてもよい。
【0172】
ステップ720において、コンピューティングデバイスに関する状態情報が、評価される。例えば、ステップ720において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、MDMエージェントにより収集および/または監視された様々なタイプの状態情報を評価してもよい。例によっては、状態情報の評価において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、コンピューティングデバイスに関するネットワーク接続情報を解析してもよい。このようなネットワーク接続情報は、例えば、どのようなネットワークにデバイスが接続されているかを特定する情報、特定されたネットワークに関する様々なプロパティ、および/または、コンピューティングデバイスが使用中ならびに/もしくは利用可能なネットワークおよび/またはネットワーク接続に関する他の情報を含んでもよい。さらに/あるいは、状態情報の評価において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、コンピューティングデバイスに関する位置情報を解析してもよい。このような位置情報は、例えば、デバイスが現在どこに位置するか、デバイスが以前にどこに位置していたか、どの方向におよび/またはどのような速度でデバイスが移動中か、を特定する情報、および/または、デバイスの現在位置を示す他の情報を含んでもよい。
【0173】
実施形態によっては、ステップ720において評価される状態情報は、デバイスクラウドに参加中の少なくとも1つの他のデバイスに関する状態情報を含んでもよい。例えば、ステップ720において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、さらに/あるいは、デバイスクラウドに参加中の1つ以上の他のデバイスから取得したおよび/または別様にそれに関する状態情報を評価してもよい。他のデバイスから取得した状態情報は、MDMエージェントにより監視中の状態情報と同様であってもよく、例えば、どのようなプログラムが他のデバイス上に存在するか、他のデバイスがどこに位置しているか、どのようなネットワークに他のデバイスが接続されているか等についての情報を含んでもよい。
【0174】
ステップ725において、状態情報に基づいて、1つ以上のポリシーのうちの少なくとも1つのポリシーが違反となっているかどうかが判定される。例えば、ステップ725において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、ステップ720で評価された状態情報(これは例えば、前記で検討されたように位置情報および/またはネットワーク接続情報を含んでもよい)に基づいて、ステップ710でデバイスクラウドに適用された1つ以上のポリシーが違反となっているかどうかを判定してもよい。
【0175】
ステップ725において、1つ以上のポリシーのうちの少なくとも1つのポリシーが違反となっていると判定されると、ステップ730において、デバイスクラウドは切断される。例えば、ステップ730において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、デバイスクラウドとの接続を切断し、および/または、別様にデバイスクラウドを切断させてもよい(例えば、1つ以上のリモートサーバおよび/またはデバイスへの切断要求および/または他の情報の送信によって)。
【0176】
一方、ステップ725において、1つ以上のポリシーのうちの少なくとも1つのポリシーが違反となっていないと判定されると、方法は終了する。さらに/あるいは、(例えば、状態情報を再評価するおよび/または1つ以上のポリシーが違反となっているかを判定するために)ステップ720および725が周期的に繰り返されるように、方法はループ内で継続してもよい。さらに、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントがデバイスクラウドに参加中の1つ以上の他のデバイスから状態情報を取得および/または評価した例では、他のデバイスから取得した状態情報を使用して、同様のポリシー解析が実行されてもよく(例えば、ステップ725において)、ポリシー違反が特定されると、同様の切断作動が実行されてもよい(例えば、ステップ730において)。
【0177】
図8は、本開示の1つ以上の態様に従って、1つ以上のモバイルデバイス管理ポリシーに基づいてマルチモードアプリケーションの1つ以上のモードを選択的に無効化する方法を例示するフローチャートを示す。1つ以上の実施形態において、
図8に例示する方法および/またはその1つ以上のステップは、コンピューティングデバイス(例えば、ジェネリックコンピューティングデバイス201)により実行される。他の実施形態において、
図8に示す方法および/またはその1つ以上のステップは、不揮発性コンピュータ読取可能メモリ等のコンピュータ読取可能媒体に記憶されたコンピュータ実行可能な命令に具体化されてもよい。
【0178】
図8に見られるように、方法は、モバイルデバイス管理(MDM)エージェントが初期化されるステップ805で開始される。例えば、ステップ805において、コンピューティングデバイス(例えば、ラップトップコンピュータ、タブレットコンピュータ、スマートフォンまたは他のタイプのモバイルデバイス等のモバイルコンピューティングデバイス)は、ステップ505(前記において検討された)においてこのようなMDMエージェントが初期化される方法と同様に、MDMエージェントを初期化してもよい。1つ以上の配置において、MDMエージェントがコンピューティングデバイス上で初期化された後(例えば、ステップ805で)、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、前記において検討された実施例においてこのような情報が提供され、このようなコマンドが受信される方法と同様に、1つ以上のポリシー管理サーバ(これは例えば、デバイスの状態に影響を与える)に情報を提供および/または1つ以上のポリシー管理サーバから1つ以上のコマンドを受信してもよい。
【0179】
例えば、少なくともいくつかの監視された状態情報を1つ以上のポリシー管理サーバに提供した後に、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、提供された状態情報に基づいて、1つ以上のポリシー管理サーバから1つ以上のコマンドを受信してもよい(例えば、1つ以上のポリシー管理サーバは、提供された状態情報を受信し、提供された状態情報を1つ以上のモバイルデバイス管理ポリシーに鑑みて解析し、提供された状態情報および/または1つ以上のポリシーに基づいて1つ以上のコマンドを生成し、生成されたコマンドをコンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントに返送してもよい)。
【0180】
ステップ810において、モバイルデバイス管理エージェントによりモバイルコンピューティングデバイスに関する状態情報は監視される。例えば、ステップ810において、モバイルコンピューティングデバイスおよび/またはモバイルコンピューティングデバイス上で実行中のMDMエージェントは、前記で検討された実施例(例えば、
図6のステップ610に関して)においてMDMエージェントおよび/またはコンピューティングデバイスによりこのような状態情報が監視されてもよい様子と同様に、様々なタイプの状態情報の収集、維持、評価、解析および/または別様の監視を行なってもよい。例えば、状態情報の監視は、実施形態によっては、モバイルコンピューティングデバイス上に存在する1つ以上のアプリケーションを特定することを含んでもよい(例えば、前記の実施例でのように)。さらに/あるいは、状態情報の監視は、実施形態によっては、モバイルコンピューティングデバイスにより使用される1つ以上のネットワーク接続を特定することを含んでもよい。さらに/あるいは、状態情報の監視は、実施形態によっては、モバイルコンピューティングデバイスについての現在位置情報を判定することを含んでもよい。
【0181】
ステップ815において、モバイルコンピューティングデバイスの現在の使用モードが評価される。例えば、ステップ815では、モバイルコンピューティングデバイスの現在の使用モードの評価において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、監視された状態情報(例えば、ステップ810において監視された状態情報)に基づいて、コンピューティングデバイスが企業モードで使用されているかを判定してもよい。例えば、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中の1つ以上のアプリケーションが、単に非管理データ(例えば、個人的連絡先、個人メモ等のようなユーザのパーソナルデータ等の非企業データ)と相互作用しているだけというよりはむしろ、企業データ(例えば、1つ以上の企業リソースからから取得された情報)に対して現在、アクセス、編集、記憶および/または別様に相互作用している場合には、コンピューティングデバイスが企業モードで使用されていると判定されるであろう。
【0182】
実施形態によっては、(例えば、ステップ815でのデバイスの現在の使用モードの評価における)モバイルコンピューティングデバイスが企業モードで使用されていないとの判定に応じて、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、マルチモードアプリケーション(例えば、下記で検討されるデュアルモードアプリケーション)の少なくとも1つのモードを選択的に無効化する判定を行なってもよい。例えば、コンピューティングデバイスが企業モードで使用されていないとの判定に応じて、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、(例えば、アプリケーションが非管理モードで実行され、および/または実行継続されることを許可しつつ)デュアルモードアプリケーションの管理モードを選択的に無効化する判定を行なってもよい。
【0183】
実施形態によっては、モバイルコンピューティングデバイスの現在の使用モードの評価において(例えば、ステップ815において)、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のモバイルデバイス管理エージェントは、少なくともいくつかの監視された状態情報を1つ以上のポリシー管理サーバに提供してもよい。1つ以上のポリシー管理サーバは、例えば、このような状態情報を受信し、状態情報を解析し(1つ以上のモバイルデバイス管理ポリシーに鑑みて)、状態情報の分析に基づいて1つ以上のコマンドをモバイルデバイス管理エージェントおよび/またはコンピューティングデバイスに提供し戻すよう構成されてもよい。さらに/あるいは、少なくともいくつかの監視された状態情報を1つ以上のポリシー管理サーバへの提供した後に、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のモバイルデバイス管理エージェントは、管理情報を1つ以上のポリシー管理サーバから受信してもよい。例によっては、受信された管理情報は、1つ以上のコマンドを含んでもよく、これは一方、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のモバイルデバイス管理エージェントが、下記において検討されるようにデバイス上で実行中のまたはデバイス上で実行されるよう構成されるマルチモードアプリケーションの1つ以上のモードを無効化するべきかどうかを示す情報を含んでもよい。さらに/あるいは、1つ以上のポリシー管理サーバから受信された管理情報は、1つ以上のポリシー更新(これは例えば、マルチモードアプリケーションの1つ以上のモードの選択的無効化に使用される1つ以上の新たなおよび/または更新されたポリシーを特定してもよく、および/または、別様にマルチモードアプリケーションに適用されてもよい)を含んでもよい。
【0184】
ステップ820において、マルチモードアプリケーションの1つ以上のモードは、状態情報に基づいて選択的に無効化される。例えば、ステップ820において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、マルチモードアプリケーションの1つ以上のモードを選択的に無効化してもよい。例によっては、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、アプリケーションの1つ以上のモードを選択的に無効化してもよく、および/または、アプリケーションの1つ以上のモードがステップ815で行なわれた評価および/または判定に基づいて無効化されるようにしてもよい。さらに/あるいは、1つ以上のモバイルデバイス管理ポリシーは、アプリケーションの特定のモードが無効化されるべき特定の状況を定義してもよく、コンピューティングデバイスおよび/またはMDMエージェントは、状態情報に基づいてこれらの状況を検出し、引き続いてポリシーに従ってアプリケーションモードを無効化してもよい。
【0185】
少なくともいくつかの監視された状態情報が1つ以上のポリシー管理サーバに提供されるいくつかの例においては、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、ステップ820において、1つ以上のポリシー管理サーバから受信された管理情報(これは例えば、提供された状態情報の解析に基づいて1つ以上のポリシー管理サーバにより生成されてもよい)に基づいてマルチモードアプリケーションの1つ以上のモードを選択的に無効化してもよい。さらに、管理情報は、例えば、マルチモードアプリケーションの1つ以上の特定のモードが選択的に無効化されるべきことを特定する1つ以上のコマンドを含んでもよい。さらに/あるいは、管理情報は、例えば、1つ以上のポリシー更新を含んでもよい。
【0186】
1つ以上の配置において、マルチモードアプリケーションは、デュアルモードアプリケーションであってもよい。例えば、マルチモードアプリケーションは、企業データへのアクセスを提供するよう構成された管理モード、ならびに、非企業データへのアクセスを制限(例えば、代わりにパーソナルな非管理データのみへのアクセスを提供)するよう構成された非管理モードを有するデュアルモードアプリケーションであってもよい。例によっては、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントにより(例えば、ステップ815において)監視された状態情報に基づいて、管理モードを選択的に無効化してもよい(例えば、ステップ820において)。デュアルモードアプリケーションの管理モードがひとたび無効化されると、アプリケーションは、非管理モードでのみ実行および/または実行継続されてもよい(例えば、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントにより管理モードが有効化されるまで)。
【0187】
さらに/あるいは、マルチモードアプリケーションは、企業データへのアクセスの第1のレベルを提供するよう構成された第1のモード、および、レベルが前記アクセスの第1のレベルよりも高い、企業データへのアクセスの第2のレベルを提供するよう構成された第2のモードを有するデュアルモードアプリケーションであってもよい。例えば、マルチモードアプリケーションは、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントにより監視中の状態情報に基づいて選択的に無効化(例えば、ステップ820において)されてもよい、「セキュリティ保護」モードおよび「スーパーセキュリティ保護」モードを有するデュアルモードアプリケーションであってもよい。
【0188】
図9は、本開示の1つ以上の態様に従って、1つ以上のアプリケーションに1つ以上のモバイルデバイス管理ポリシーを適用する方法を例示するフローチャートを示す。1つ以上の実施形態において、
図9に例示する方法および/またはその1つ以上のステップは、コンピューティングデバイス(例えば、ジェネリックコンピューティングデバイス201)により実行されてもよい。他の実施形態において、
図9に示す方法および/またはその1つ以上のステップは、不揮発性コンピュータ読取可能メモリ等のコンピュータ読取可能媒体に記憶されたコンピュータ実行可能な命令に具体化されてもよい。
【0189】
図9に見られるように、この方法は、モバイルデバイス管理(MDM)エージェントが初期化されるステップ905で開始される。例えば、ステップ905において、コンピューティングデバイス(例えば、ラップトップコンピュータ、タブレットコンピュータ、スマートフォンまたは他のタイプのモバイルデバイス等のモバイルコンピューティングデバイス)は、ステップ505(前記において検討された)においてこのようなMDMエージェントが初期化される方法と同様に、MDMエージェントを初期化してもよい。1つ以上の配置において、MDMエージェントがコンピューティングデバイス上で初期化された後(例えば、ステップ905で)、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、前記において検討された実施例においてこのような情報が提供され、このようなコマンドが受信される方法と同様に、1つ以上のポリシー管理サーバ(これは例えば、デバイスの状態に影響を与える)に情報を提供および/または1つ以上のポリシー管理サーバから1つ以上のコマンドを受信してもよい。例えば、少なくともいくつかの監視された状態情報を1つ以上のポリシー管理サーバに提供した後に、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、提供された状態情報に基づいて、1つ以上のポリシー管理サーバから1つ以上のコマンドを受信してもよい(例えば、1つ以上のポリシー管理サーバは、提供された状態情報を受信し、提供された状態情報を1つ以上のモバイルデバイス管理ポリシーに鑑みて解析し、提供された状態情報および/または1つ以上のポリシーに基づいて1つ以上のコマンドを生成し、生成されたコマンドをコンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントに返送してもよい)。
【0190】
ステップ910において、モバイルコンピューティングデバイスに関する状態情報は、モバイルデバイス管理エージェントにより監視される。例えば、ステップ910において、モバイルコンピューティングデバイスおよび/またはモバイルコンピューティングデバイス上で実行中のMDMエージェントは、前記で検討された実施例(例えば、
図6のステップ610に関して)においてMDMエージェントおよび/またはコンピューティングデバイスによりこのような状態情報が監視される様子と同様に、様々なタイプの状態情報の収集、維持、評価、解析および/または別様の監視を行なってもよい。例えば、状態情報の監視は、実施形態によっては、モバイルコンピューティングデバイス上に存在する1つ以上のアプリケーションを特定することを含んでもよい(例えば、前記の実施例でのように)。さらに/あるいは、状態情報の監視は、実施形態によっては、モバイルコンピューティングデバイスにより使用される1つ以上のネットワーク接続を特定することを含んでもよい。さらに/あるいは、状態情報の監視は、実施形態によっては、モバイルコンピューティングデバイスについての現在位置情報を判定することを含んでもよい。1つ以上の配置において、状態情報の監視は、少なくともいくつかの監視された状態情報を1つ以上のポリシー管理サーバに提供することを含んでもよい。例えば、状態情報の監視において(例えばステップ910において)、モバイルコンピューティングデバイスおよび/またはモバイルコンピューティングデバイス上で実行中のMDMエージェントは、少なくともいくつかの監視された状態情報を1つ以上のポリシー管理サーバ(例えばこれは、前記で検討されたようにこのような状態情報を解析するよう構成されてもよい)に送信してもよい。
【0191】
ステップ915において、1つ以上のポリシーが、監視された状態情報に基づいて、モバイルコンピューティングデバイス上の少なくとも1つのアプリケーションに適用される。例えば、ステップ915において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、1つ以上のポリシーを、監視中の状態情報に基づいてデバイス上のアプリケーションに適用してもよい(例えば、ステップ910において)。1つ以上のモバイルデバイス管理ポリシーは、特定のアプリケーションの特定の機能が有効化、無効化および/または修正されるべき特定の状況を定義してもよく、コンピューティングデバイスおよび/またはMDMエージェントは、状態情報に基づいてこれらの状況を検出してもよく、引き続いてポリシーに従ってこれらの機能を有効化、無効化および/または修正してもよい。
【0192】
1つ以上の配置において、少なくとも1つのアプリケーションへの1つ以上のポリシーの適用は、1つ以上のポリシー管理サーバから管理情報を受信すること、および、管理情報に含まれる少なくとも1つのコマンドを実行することを含んでもよい。例えば、少なくとも1つのアプリケーションへの1つ以上のポリシーの適用において(例えば、ステップ915において)、モバイルコンピューティングデバイスおよび/またはモバイルコンピューティングデバイス上で実行中のMDMエージェントは、1つ以上のポリシー管理サーバからの1つ以上のコマンド(これは例えば、ステップ910においてそれらに提供および受信されるデバイス状態情報に基づいて1つ以上のポリシー管理サーバにより生成されてもよい)を含む管理情報を受信してもよい。さらに/あるいは、1つ以上のポリシー管理サーバからのこのようなコマンドの受信後に、モバイルコンピューティングデバイスおよび/またはモバイルコンピューティングデバイス上で実行中のMDMエージェントは、1つ以上のポリシーを適用および/または1つ以上の制限をポリシーに服するアプリケーションに別様に課するために、1つ以上の受信されたコマンドを実行してもよい。例えば、1つ以上のポリシー管理サーバから受信された1つ以上のコマンドは、アプリケーションの特定の機能(例えば、カットアンドペースト機能、セーブ機能等)が選択的に無効化されるべきであることを(デバイス状態情報により反映された現在の状況に鑑みて)特定してもよい。例によっては、管理情報はさらに/あるいは、例えば、少なくとも1つのアプリケーションに適用されるべき新たなおよび/または更新されたポリシーを含んでもよい1つ以上のポリシー更新を含んでもよい。
【0193】
例によっては、アプリケーション(例えば、ステップ915においてポリシーが適用されるアプリケーション)は、ラップ化アプリケーション(これは例えば、前記で検討したアプリケーション管理フレームワーク414等のアプリケーション管理フレームワークを使用してラップされた)であってもよい。このようなラップ化アプリケーションへのポリシーの適用において、コンピューティングデバイス上で実行中のMDMエージェントは、アプリケーションの特定の機能を選択的に有効化および/もしくは無効化する、ならびに/または、アプリケーションおよび/もしくはアプリケーションラッパーに対してコンフィグレーション変更を行なうために、アプリケーションラッパーおよび/またはアプリケーション管理フレームワークと通信してもよい。
【0194】
実施形態によっては、1つ以上のポリシーの適用は、監視された状態情報に基づいて少なくとも1つのアプリケーションを無効化することを含んでもよい。例えば、ステップ915において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、(例えば、ステップ910において監視された)状態情報に基づいてアプリケーションの1つ以上の機能(例えばデータセーブ機能、リモートアクセス機能等)を選択的に無効化してもよい。
【0195】
実施形態によっては、1つ以上のポリシーの適用は、少なくとも1つのアプリケーションを再構成することを含んでもよい。例えば、ステップ915において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、状態情報に基づいてアプリケーションを再構成してもよい(例えば、アプリケーションを異なるバックエンドまたはクラウドに、例えばデバイスの現在のネットワーク接続の状態および/または性状に基づいて接続することによって)。
【0196】
図10は、本発明の1つ以上の態様に従って、デバイス状態情報に基づいてセキュリティ保護ドキュメントコンテナを制御する方法を示すフローチャートである。1つ以上の実施形態において、
図10に例示する方法および/またはその1つ以上のステップは、コンピューティングデバイス(例えば、ジェネリックコンピューティングデバイス201)により実行されてもよい。他の実施形態において、
図10に示す方法および/またはその1つ以上のステップは、不揮発性コンピュータ読取可能メモリ等のコンピュータ読取可能媒体に記憶されたコンピュータ実行可能な命令に具体化されてもよい。
【0197】
図10に見られるように、この方法は、モバイルデバイス管理(MDM)エージェントが初期化されるステップ1005で開始される。例えば、ステップ1005において、コンピューティングデバイス(例えば、ラップトップコンピュータ、タブレットコンピュータ、スマートフォンまたは他のタイプのモバイルデバイス等のモバイルコンピューティングデバイス)は、ステップ505(前記において検討された)においてこのようなMDMエージェントが初期化される方法と同様に、MDMエージェントを初期化してもよい。
【0198】
1つ以上の配置において、MDMエージェントがコンピューティングデバイス上で初期化された後(例えば、ステップ1005で)、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、前記において検討された実施例においてこのような情報が提供され、このようなコマンドが受信される方法と同様に、1つ以上のポリシー管理サーバ(これは例えば、デバイスの状態に影響を与える)に情報を提供および/または1つ以上のポリシー管理サーバから1つ以上のコマンドを受信してもよい。例えば、少なくともいくつかの監視された状態情報を1つ以上のポリシー管理サーバに提供した後に、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、提供された状態情報に基づいて、1つ以上のポリシー管理サーバから1つ以上のコマンドを受信してもよい(例えば、1つ以上のポリシー管理サーバは、提供された状態情報を受信し、提供された状態情報を1つ以上のモバイルデバイス管理ポリシーに鑑みて解析し、提供された状態情報および/または1つ以上のポリシーに基づいて1つ以上のコマンドを生成し、生成されたコマンドをコンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントに返送してもよい)。
【0199】
ステップ1010において、モバイルコンピューティングデバイスに関する状態情報は、モバイルデバイス管理エージェントにより監視される。例えば、ステップ1010において、モバイルコンピューティングデバイスおよび/またはモバイルコンピューティングデバイス上で実行中のMDMエージェントは、前記で検討された実施例(例えば、
図6のステップ610に関して)においてMDMエージェントおよび/またはコンピューティングデバイスによりこのような状態情報が監視されてもよい方法と同様に、様々なタイプの状態情報の収集、維持、評価、解析および/または別様の監視を行なってもよい。例えば、状態情報の監視は、実施形態によっては、モバイルコンピューティングデバイス上に存在する1つ以上のアプリケーションを特定することを含んでもよい(例えば、前記の実施例でのように)。さらに/あるいは、状態情報の監視は、実施形態によっては、モバイルコンピューティングデバイスにより使用される1つ以上のネットワーク接続を特定することを含んでもよい。さらに/あるいは、状態情報の監視は、実施形態によっては、モバイルコンピューティングデバイスについての現在位置情報を判定することを含んでもよい。1つ以上の配置において、状態情報の監視は、少なくともいくつかの監視された状態情報を1つ以上のポリシー管理サーバに提供することを含んでもよい。例えば、状態情報の監視において(例えばステップ1010において)、モバイルコンピューティングデバイスおよび/またはモバイルコンピューティングデバイス上で実行中のMDMエージェントは、少なくともいくつかの監視された状態情報を1つ以上のポリシー管理サーバ(例えばこれは、前記で検討されたようにこのような状態情報を解析するよう構成されてもよい)に送信してもよい。
【0200】
ステップ1015において、セキュリティ保護ドキュメントコンテナが、監視された状態情報に基づいて制御される。例えば、ステップ1015において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、セキュリティ保護ドキュメントコンテナを監視中の状態情報に基づいて制御してもよい(例えば、ステップ1010において)。1つ以上の配置において、セキュリティ保護ドキュメントコンテナは、1つ以上の企業リソースからモバイルコンピューティングデバイスにより受信される企業データをセキュリティ保護された状態で記憶するよう構成されるコンピューティングデバイス上のデータリポジトリであってもよい。さらに/あるいは、1つ以上のモバイルデバイス管理ポリシーは、セキュリティ保護ドキュメントコンテナへのアクセスが制限、修正および/または別様に制御されるべき特定の状況を定義してもよく、コンピューティングデバイスおよび/またはMDMエージェントは、状態情報に基づいてこれらの状況を検出してもよく、引き続いてポリシーに従ってセキュリティ保護ドキュメントコンテナへのアクセスを制限、修正および/または別様に制御してもよい。他の例において、セキュリティ保護ドキュメントコンテナの他の態様(例えば、セキュリティ保護ドキュメントコンテナへのアクセス以外)は、1つ以上のモバイルデバイス管理ポリシーにより同様に制御されてもよい。
【0201】
1つ以上の配置において、セキュリティ保護ドキュメントコンテナの制御は、1つ以上のポリシー管理サーバから管理情報を受信すること、および、管理情報に含まれる少なくとも1つのコマンドを実行することを含んでもよい。例えば、セキュリティ保護ドキュメントコンテナの制御において(例えば、ステップ1015において)、モバイルコンピューティングデバイスおよび/またはモバイルコンピューティングデバイス上で実行中のMDMエージェントは、1つ以上のポリシー管理サーバからの1つ以上のコマンド(これは例えば、ステップ1010においてそれらに提供および受信されるデバイス状態情報に基づいて1つ以上のポリシー管理サーバにより生成されてもよい)を含む管理情報を受信してもよい。さらに/あるいは、1つ以上のポリシー管理サーバからのこのようなコマンドの受信後に、モバイルコンピューティングデバイスおよび/またはモバイルコンピューティングデバイス上で実行中のMDMエージェントは、1つ以上のポリシーを適用および/または1つ以上の制限をセキュリティ保護ドキュメントコンテナに別様に課するために、1つ以上の受信されたコマンドを実行してもよい。例えば、1つ以上のポリシー管理サーバから受信された1つ以上のコマンドは、特定のタイプのデータがセキュリティ保護ドキュメントコンテナ内でアクセス、記憶、修正および/または別様に相互作用されることができるまたはできないことを特定してもよい(例えば、デバイス状態情報により反映された現在の状況に鑑みて)。例によっては、管理情報はさらに/あるいは、例えば、少なくとも1つのアプリケーションに適用されるべき新たなおよび/または更新されたポリシーを含んでもよい1つ以上のポリシー更新を含んでもよい。
【0202】
実施形態によっては、セキュリティ保護ドキュメントコンテナの制御は、監視された状態情報に基づいてセキュリティ保護ドキュメントコンテナに記憶されたデータへのアクセスを制御することを含んでもよい。例えば、セキュリティ保護ドキュメントコンテナの制御において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、監視中の状態情報に基づいてセキュリティ保護ドキュメントコンテナに記憶されたデータへのアクセスを制御してもよい(例えば、ステップ1010において)。
【0203】
実施形態によっては、セキュリティ保護ドキュメントコンテナの制御は、監視された状態情報に基づいて、セキュリティ保護ドキュメントコンテナからデータを選択的にワイプすることを含んでもよい。例えば、セキュリティ保護ドキュメントコンテナの制御において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、監視中の状態情報に基づいてセキュリティ保護ドキュメントコンテナからデータを選択的にワイプしてもよい(例えば、ステップ1010において)。例によっては、セキュリティ保護ドキュメントコンテナからのデータの選択的ワイプは、セキュリティ保護ドキュメントコンテナ内の非管理のデータおよび/または非企業のデータを残しつつ(削除せずに)、管理されたデータおよび/または企業のデータをセキュリティ保護ドキュメントコンテナから削除することを含んでもよい。他の例では、セキュリティ保護ドキュメントコンテナ内に他のタイプのデータを残しつつ、(例えば、1つ以上のモバイルデバイス管理ポリシーに基づいて)異なるタイプのデータがセキュリティ保護ドキュメントコンテナから削除されてもよい。例によっては、セキュリティ保護ドキュメントコンテナからのデータの選択的ワイプは、下記に検討される実施例において例示されるように、1つ以上のモバイルデバイス管理ポリシーに基づいても、および/または、デバイス状態の変化に基づいてもよい(これは例えば、様々なポリシーを関係づけるおよび/またはデバイス状態における変化への様々なポリシーベース反応を起動してもよい)。
【0204】
ステップ1020において、企業データが受信される。例えば、ステップ1020において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、企業データを受信してもよい(例えば、1つ以上の企業データベースおよび/またはサーバ等の1つ以上の企業リソースから)。
【0205】
ステップ1025において、受信された企業データは、セキュリティ保護ドキュメントコンテナに記憶される。例えば、ステップ1025において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、企業データ(これは例えば、ステップ1020において受信されていてもよい)をセキュリティ保護ドキュメントコンテナに記憶してもよい。
【0206】
ステップ1030において、監視された状態情報に基づいてデバイス状態の変化が検出されたかどうかが判定される。例えば、ステップ1030において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、監視中の状態情報に基づいて(例えば、ステップ1030において)、デバイス状態の変化が検出されたかどうかを判定してもよい。デバイス状態の変化が検出されたかどうかの判定では、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、例えば、新たなアプリケーションがコンピューティングデバイスにインストールされたかおよび/または別様にコンピューティングデバイスに追加されたか、アプリケーションがコンピューティングデバイスから削除されたか、コンピューティングデバイスにより使用中のネットワーク接続が変更されたか、および/または、コンピューティングデバイスが使用されている位置が変更されたか、を判定してもよい。これらの実施例は、例によっては検出されてもよい状態情報の変化のタイプを例示するが、さらなるおよび/または代替的な状態情報の変化のタイプが他の例において同様に検出されてもよい。
【0207】
ステップ1030において、デバイス状態の変化が検出されなかったと判定された場合、ステップ1035において、状態情報の監視が継続されてもよい。例えば、ステップ1035において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、状態情報の監視を継続してもよい(例えば、ステップ1010において状態情報が監視されてもよい方法と同様に)。引き続いて、方法は終了してもよい。あるいは、方法はループ内で継続し、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントがデバイス状態における変化が検出されるかを周期的に再評価してもよいステップ1030に戻ってもよい。
【0208】
一方、ステップ1030において、デバイス状態の変化が検出されたと判定された場合、ステップ1040において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、セキュリティ保護ドキュメントコンテナからデータを選択的にワイプすることを判定する。例によっては、デバイス状態の変化は、1つ以上のポリシー管理サーバにより検出されてもよく(例えば、このようなサーバへMDMエージェントにより供給されたデバイス状態情報に基づいて)、ステップ1040において、ポリシー管理サーバ(これは例えば、デバイス状態情報を解析し、このような分析に基づいて引き続いてこのようなコマンドを生成するよう構成されてもよい)から受信された1つ以上のコマンドに基づいてセキュリティ保護ドキュメントコンテナからデータを選択的にワイプすることが判定されてもよい。引き続いて、ステップ1045において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、セキュリティ保護ドキュメントコンテナからデータをワイプしても、および/またはセキュリティ保護ドキュメントコンテナからデータがワイプされるようにしてもよい。例によっては、コンピューティングデバイスおよび/またはMDMエージェントは、他のデータをセキュリティ保護ドキュメントコンテナに残しつつ(例えば、他のデータを削除せず)、セキュリティ保護ドキュメントコンテナから企業データ(例えば、ステップ1020において受信され、ステップ1025においてセキュリティ保護ドキュメントコンテナに記憶された企業データ)をワイプしてもよい。他の例において、コンピューティングデバイスおよび/またはMDMエージェントは、他のデータ(例えば、下記特定の期間とは異なる期間に受信および/または記憶されたデータ)を残しつつ、セキュリティ保護ドキュメントコンテナから特定の期間(例えば、直近4時間以内)に受信および/または記憶されたデータをワイプしてもよい。さらに他の例において、コンピューティングデバイスおよび/またはMDMエージェントは、他のデータ(これは例えば、ワードプロセッシングアプリケーション、スプレッドシートアプリケーション等の他のアプリケーションに関連してもよい)を残しつつ、セキュリティ保護ドキュメントコンテナから特定のアプリケーション(例えば、ウェブブラウザ)に関連して受信および/または記憶されたデータをワイプしてもよい。
【0209】
1つ以上の配置において、(例えば、ステップ1045において)ワイプされたデータは、1つ以上のモバイルデバイス管理ポリシーに従って(例えば、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントにより)削除される。例えば、1つ以上のモバイルデバイス管理ポリシーは、特定のタイプのデータがセキュリティ保護ドキュメントコンテナから選択的にワイプされるべき特定の状況を定義してもよく、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、状態情報に基づいてこれらの状況を検出し、引き続いてポリシーに従ってセキュリティ保護ドキュメントコンテナからデータをワイプしてもよい。
【0210】
図11は、本発明の1つ以上の態様に従って、デバイス状態情報に基づいてモバイルデバイス管理ポリシー適用スキームを動的に修正する方法を示すフローチャートである。1つ以上の実施形態において、
図11に例示する方法および/またはその1つ以上のステップは、コンピューティングデバイス(例えば、ジェネリックコンピューティングデバイス201)により実行される。他の実施形態において、
図11に示す方法および/またはその1つ以上のステップは、不揮発性コンピュータ読取可能メモリ等のコンピュータ読取可能媒体に記憶されたコンピュータ実行可能な命令に具体化されてもよい。
【0211】
図11に見られるように、この方法は、モバイルデバイス管理(MDM)エージェントが初期化されるステップ1105で開始される。例えば、ステップ1105において、コンピューティングデバイス(例えば、ラップトップコンピュータ、タブレットコンピュータ、スマートフォンまたは他のタイプのモバイルデバイス等のモバイルコンピューティングデバイス)は、ステップ505(前記において検討された)においてこのようなMDMエージェントが初期化される方法と同様に、MDMエージェントを初期化する。
【0212】
1つ以上の配置において、MDMエージェントがコンピューティングデバイス上で初期化された後(例えば、ステップ1105で)、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、前記において検討された実施例においてこのような情報が提供され、またこのようなコマンドが受信される方法と同様に、1つ以上のポリシー管理サーバ(これは例えば、デバイスの状態に影響を与える)に情報を提供および/または1つ以上のポリシー管理サーバから1つ以上のコマンドを受信してもよい。例えば、少なくともいくつかの監視された状態情報を1つ以上のポリシー管理サーバに提供した後に、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、提供された状態情報に基づいて、1つ以上のポリシー管理サーバから1つ以上のコマンドを受信してもよい(例えば、1つ以上のポリシー管理サーバは、提供された状態情報を受信し、提供された状態情報を1つ以上のモバイルデバイス管理ポリシーに鑑みて解析し、提供された状態情報に基づいてならびに/もしくは1つ以上のポリシーに基づいて1つ以上のコマンドを生成し、生成されたコマンドをコンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントに返送してもよい)。
【0213】
ステップ1110において、モバイルコンピューティングデバイスに関する状態情報は、モバイルデバイス管理エージェントにより監視される。例えば、ステップ1110において、モバイルコンピューティングデバイスおよび/またはモバイルコンピューティングデバイス上で実行中のMDMエージェントは、(例えば、
図6のステップ610に関して)前記において検討された実施例においてこのような状態情報がMDMエージェントおよび/またはコンピューティングデバイスにより監視される方法と同様に、様々なタイプの状態情報を収集、維持、評価、解析および/または別様に監視してもよい。例えば、状態情報の監視は、実施形態によっては、モバイルコンピューティングデバイス上に存在する1つ以上のアプリケーションを特定することを含んでもよい(例えば、前記の実施例においてのように)。さらに/あるいは、状態情報の監視は、実施形態によっては、モバイルコンピューティングデバイスにより使用される1つ以上のネットワーク接続を特定することを含んでもよい。さらに/あるいは、状態情報の監視は、実施形態によっては、モバイルコンピューティングデバイスについての現在位置情報を判定することを含んでもよい。
【0214】
ステップ1115において、モバイルデバイス管理ポリシー適用スキームは、監視された状態情報に基づいて動的に修正される。例えば、ステップ1115において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、モバイルデバイス管理ポリシー適用スキームを(例えば、ステップ1110において監視された)状態情報に基づいて動的に修正してもよい。1つ以上の配置において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、どのようなポリシーがアクティブか(例えば、定義された、現在適用されるべきモバイルデバイス管理ポリシー)、どのようなポリシーが非アクティブか(例えば、定義された、しかし現在適用されるべきではないモバイルデバイス管理ポリシー)、および/または、モバイルデバイス管理ポリシーの定義および/または適用に関する他の要因および情報、を定義するモバイルデバイス管理ポリシー適用スキームを実装および/または別様に有してもよい。状態情報に基づいてモバイルデバイス管理ポリシー適用スキームを動的に修正することにより、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、現在のデバイスレベル考慮事項に基づいて適用中のポリシーおよび/またはポリシー適用スキームの他の態様を動的に変化させてもよい(例えば、コンピューティングデバイスおよび/またはMDMエージェントにより監視中の状態情報に反映されるように)。
【0215】
実施形態によっては、モバイルデバイス管理ポリシー適用スキームの動的修正は、監視された状態情報に基づいて1つ以上の非アクティブポリシーをアクティブ化することを含んでもよい。例えば、モバイルデバイス管理ポリシー適用スキームの動的修正において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、コンピューティングデバイスおよび/またはMDMエージェントにより監視中の状態情報に基づいて1つ以上の非アクティブポリシーをアクティブ化してもよい。1つ以上の非アクティブポリシーのアクティブ化において、コンピューティングデバイスおよび/またはMDMエージェントは、非アクティブポリシーの適用を開始するために、非アクティブポリシーに対応して1つ以上のフラグを設定および/または修正してもよく、および/または、これらのポリシーを適用することを開始してもよい。このように、状態情報の変化(これは例えば、デバイス上に存在するアプリケーションの変化、デバイスにより使用中のネットワーク接続の変化、および/または、デバイスの位置の変化に対応してもよい)は、ポリシー適用スキームの変化(これは例えば、1つ以上の非アクティブポリシーのアクティブ化を含んでもよい)となってもよい。
【0216】
実施形態によっては、モバイルデバイス管理ポリシー適用スキームの動的修正は、監視された状態情報に基づいて1つ以上のアクティブポリシーの非アクティブ化を含んでもよい。例えば、モバイルデバイス管理ポリシー適用スキームの動的修正において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、コンピューティングデバイスおよび/またはMDMエージェントにより監視中の状態情報に基づいて1つ以上のアクティブポリシーを非アクティブ化してもよい。1つ以上のアクティブポリシーの非アクティブ化において、コンピューティングデバイスおよび/またはMDMエージェントは、アクティブポリシーの適用を停止するために、アクティブポリシーに対応して1つ以上のフラグを設定および/または修正してもよく、および/または、これらのポリシーを適用することを停止してもよい。このように、状態情報の変化(これは例えば、デバイス上に存在するアプリケーションの変化、デバイスにより使用中のネットワーク接続の変化、および/または、デバイスの位置の変化に対応してもよい)は、ポリシー適用スキームの変化(これは例えば、1つ以上のアクティブポリシーの非アクティブ化を含んでもよい)となってもよい。
【0217】
実施形態によっては、モバイルデバイス管理ポリシー適用スキームの動的修正は、監視された状態情報に基づいて少なくとも1つのアクティブポリシーに関する1つ以上のパラメータを更新することを含んでもよい。例えば、モバイルデバイス管理ポリシー適用スキームの動的修正において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、コンピューティングデバイスおよび/またはMDMエージェントにより監視中の状態情報に基づいてアクティブポリシーの1つ以上のパラメータを更新してもよい。アクティブポリシーの1つ以上のパラメータの更新において、コンピューティングデバイスおよび/またはMDMエージェントは、(例えば、ポリシーが適用可能および/または起動される状況の定義において、異なる状況における反応作動および/またはモードの定義において等)ポリシーにより使用される1つ以上の値および/または他の設定を設定および/または修正してもよく、および/または、更新されたポリシーの適用を開始および/または継続してもよい。このように、状態情報の変化(これは例えば、デバイス上に存在するアプリケーションの変化、デバイスにより使用中のネットワーク接続の変化、および/または、デバイスの位置の変化に対応してもよい)は、ポリシー適用スキームの変化(これは例えば、ポリシーのパラメータの更新を含んでもよい)となってもよい。
【0218】
図12は、本発明の1つ以上の態様に従って、アプリケーションストアから受信されるモバイルデバイス管理ポリシーを適用する方法を示すフローチャートである。1つ以上の実施形態において、
図12に例示する方法および/またはその1つ以上のステップは、コンピューティングデバイス(例えば、ジェネリックコンピューティングデバイス201)により実行されてもよい。他の実施形態において、
図12に示す方法および/またはその1つ以上のステップは、不揮発性コンピュータ読取可能メモリ等のコンピュータ読取可能媒体に記憶されたコンピュータ実行可能な命令に具体化されてもよい。
【0219】
図12に見られるように、この方法は、モバイルデバイス管理(MDM)エージェントが初期化されるステップ1205で開始される。例えば、ステップ1205において、コンピューティングデバイス(例えば、ラップトップコンピュータ、タブレットコンピュータ、スマートフォンまたは他のタイプのモバイルデバイス等のモバイルコンピューティングデバイス)は、ステップ505(前記において検討された)においてこのようなMDMエージェントが初期化される方法と同様に、MDMエージェントを初期化してもよい。
【0220】
1つ以上の配置において、MDMエージェントがコンピューティングデバイス上で初期化された後(例えば、ステップ1205で)、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、前記において検討された実施例においてこのような情報が提供され、このようなコマンドが受信される方法と同様に、1つ以上のポリシー管理サーバ(これは例えば、デバイスの状態に影響を与える)に情報を提供および/または1つ以上のポリシー管理サーバから1つ以上のコマンドを受信してもよい。例えば、少なくともいくつかの監視された状態情報を1つ以上のポリシー管理サーバに提供した後に、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、提供された状態情報に基づいて、1つ以上のポリシー管理サーバから1つ以上のコマンドを受信してもよい(例えば、1つ以上のポリシー管理サーバは、提供された状態情報を受信し、提供された状態情報を1つ以上のモバイルデバイス管理ポリシーに鑑みて解析し、提供された状態情報および/または1つ以上のポリシーに基づいて1つ以上のコマンドを生成し、生成されたコマンドをコンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントに返送してもよい)。
【0221】
ステップ1210において、少なくとも1つのモバイルデバイス管理ポリシーが、アプリケーションストアから受信される。例えば、ステップ1210において、モバイルコンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、アプリケーションストアからモバイルデバイス管理ポリシーを受信してもよい。例によっては(例えば、ポリシーが受信される)アプリケーションストアは、企業アプリケーションを1つ以上のモバイルコンピューティングデバイスに提供するよう構成される企業アプリケーションストアであってもよい。企業アプリケーションを様々なデバイスに提供するよう構成されることに加えて、企業アプリケーションストアは、1つ以上のモバイルデバイス管理ポリシーおよび/またはポリシー更新を様々なデバイスに提供するよう構成されてもよい。
【0222】
ステップ1215において、モバイルコンピューティングデバイスに関する状態情報が、モバイルデバイス管理エージェントを介して監視される。例えば、ステップ1215において、モバイルコンピューティングデバイスおよび/またはモバイルコンピューティングデバイス上で実行中のMDMエージェントは、前記の実施例で検討された(例えば、
図6のステップ610に関して)においてMDMエージェントおよび/またはコンピューティングデバイスによりこのような状態情報が監視されてもよい様子と同様に、様々なタイプの状態情報の収集、維持、評価、解析および/または別様の監視を行なってもよい。例えば、状態情報の監視は、実施形態によっては、モバイルコンピューティングデバイス上に存在する1つ以上のアプリケーションを特定することを含んでもよい(例えば、前記の実施例でのように)。さらに/あるいは、状態情報の監視は、実施形態によっては、モバイルコンピューティングデバイスにより使用される1つ以上のネットワーク接続を特定することを含んでもよい。さらに/あるいは、状態情報の監視は、実施形態によっては、モバイルコンピューティングデバイスについての現在位置情報を判定することを含んでもよい。
【0223】
ステップ1220において、少なくとも1つのモバイルデバイス管理ポリシーは、監視された状態情報に基づいて適用される。例えば、ステップ1220において、モバイルコンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、ステップ1215において監視中の状態情報に基づいてアプリケーションストアから受信(例えば、ステップ1210において)されたポリシーを適用してもよい。アプリケーションストア(これは例えば、企業アプリケーションストアであってもよい)から受信されたモバイルデバイス管理ポリシーは、例えば、特定の機能および/またはアプリケーションが制御されるべき1つ以上の状況を定義してもよく、コンピューティングデバイスおよび/またはMDMエージェントは、状態情報に基づいてこれらの状況を検出し、引き続いてポリシーの適用においてこれらの機能および/またはアプリケーションを制御してもよい。
【0224】
実施形態によっては、少なくとも1つのモバイルデバイス管理ポリシーの適用は、監視された状態情報に基づいて、モバイルコンピューティングデバイスの1つ以上の機能を選択的に無効化することを含んでもよい。例えば、アプリケーションストアから受信されたモバイルデバイス管理ポリシーの適用において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、監視された状態情報に基づいてコンピューティングデバイスの1つ以上の機能を選択的に無効化してもよい。例えば、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、コンピューティングデバイスのカメラ機能、コンピューティングデバイスのローカル無線共有機能、および/または、現在の状況(例えば、状態情報により反映されるように)ならびに適用および強制中のポリシーに基づいたコンピューティングデバイスの他の機能を選択的に無効化してもよい。
【0225】
実施形態によっては、少なくとも1つのモバイルデバイス管理ポリシーの適用は、監視された状態情報に基づいて、1つ以上のアプリケーションを選択的に無効化することを含んでもよい。例えば、アプリケーションストアから受信されたモバイルデバイス管理ポリシーの適用において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、監視された状態情報に基づいてコンピューティングデバイス上の1つ以上のアプリケーションを選択的に無効化してもよい。アプリケーション無効化において、コンピューティングデバイスおよび/またはMDMエージェントは、例えば、アプリケーションが開かれるまたは別様に実行されるのを防止し、現在実行中の場合はアプリケーションを閉じてもよい。例によっては、コンピューティングデバイスおよび/またはMDMエージェントにより無効化された1つ以上のアプリケーションは、(例えば、ポリシーが受信された)企業アプリケーションストアからダウンロードされたおよび/または別様に取得された企業アプリケーションを含んでもよい。
【0226】
図13は、本発明の1つ以上の態様に従って、SSOクレデンシャルに基づいてモバイルデバイス管理ポリシーを適用する方法を示すフローチャートである。1つ以上の実施形態において、
図13に例示する方法および/またはその1つ以上のステップは、コンピューティングデバイス(例えば、ジェネリックコンピューティングデバイス201)により実行されてもよい。他の実施形態において、
図13に示す方法および/またはその1つ以上のステップは、不揮発性コンピュータ読取可能メモリ等のコンピュータ読取可能媒体に記憶されたコンピュータ実行可能な命令に具体化されてもよい。
【0227】
図13に見られるように、この方法は、モバイルデバイス管理(MDM)エージェントが初期化されるステップ1305で開始される。例えば、ステップ1305において、コンピューティングデバイス(例えば、ラップトップコンピュータ、タブレットコンピュータ、スマートフォンまたは他のタイプのモバイルデバイス等のモバイルコンピューティングデバイス)は、ステップ505(前記において検討された)においてこのようなMDMエージェントが初期化される方法と同様に、MDMエージェントを初期化してもよい。
【0228】
1つ以上の配置において、MDMエージェントがコンピューティングデバイス上で初期化された後(例えば、ステップ1305で)、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、前記において検討された実施例においてこのような情報が提供され、このようなコマンドが受信される方法と同様に、1つ以上のポリシー管理サーバ(これは例えば、デバイスの状態に影響を与える)に情報を提供および/または1つ以上のポリシー管理サーバから1つ以上のコマンドを受信してもよい。例えば、少なくともいくつかの監視された状態情報を1つ以上のポリシー管理サーバに提供した後に、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、提供された状態情報に基づいて、1つ以上のポリシー管理サーバから1つ以上のコマンドを受信してもよい(例えば、1つ以上のポリシー管理サーバは、提供された状態情報を受信し、提供された状態情報を1つ以上のモバイルデバイス管理ポリシーに鑑みて解析し、提供された状態情報および/または1つ以上のポリシーに基づいて1つ以上のコマンドを生成し、生成されたコマンドをコンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントに返送してもよい)。
【0229】
ステップ1310において、少なくとも1つのユーザアカウントに関するSSOクレデンシャルが受信される。例えば、ステップ1310において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、SSOクレデンシャルを受信してもよく、SSOクレデンシャルは、コンピューティングデバイスの特定のユーザおよび/または特定のユーザアカウント(これは例えば、コンピューティングデバイスおよび/または企業リソースならびに/もしくは他のネットワークリソース等の他のリソースに対するアクセスおよび/または使用において利用されてもよい)にリンクおよび/または別様に関連づけられてもよい。
【0230】
1つ以上の配置において、SSOクレデンシャルは、少なくとも2つの異なる企業リソース(様々な企業ウェブサイト、データベース、サーバ、他のリソース等)でのアクセスにおいて使用されるよう構成される認証クレデンシャルであってもよい。さらに/あるいは、SSOクレデンシャルは、ユーザが、コンピューティングデバイス上のユーザアカウントにログインする、コンピューティングデバイス上のアプリケーションにログインする、コンピューティングデバイスを介してアクセス中のウェブサイトにログインする、コンピューティングデバイス上に存在する認証プロンプトと相互作用する、および/または、他の方法のときに、受信されてもよい。
【0231】
ステップ1315において、モバイルコンピューティングデバイスに関する状態情報は、モバイルデバイス管理エージェントを介して監視される。例えば、ステップ1315において、モバイルコンピューティングデバイスおよび/またはモバイルコンピューティングデバイス上で実行中のMDMエージェントは、(例えば、
図6のステップ610に関して)前記において検討された実施例においてこのような状態情報がMDMエージェントおよび/またはコンピューティングデバイスにより監視される方法と同様に、様々なタイプの状態情報を収集、維持、評価、解析および/または別様に監視してもよい。例えば、状態情報の監視は、実施形態によっては、モバイルコンピューティングデバイス上に存在する1つ以上のアプリケーションを特定することを含んでもよい(例えば、前記の実施例においてのように)。さらに/あるいは、状態情報の監視は、実施形態によっては、モバイルコンピューティングデバイスにより使用される1つ以上のネットワーク接続を特定することを含んでもよい。さらに/あるいは、状態情報の監視は、実施形態によっては、モバイルコンピューティングデバイスについての現在位置情報を判定することを含んでもよい。1つ以上の配置において、状態情報の監視は、少なくともいくつかの監視された状態情報を1つ以上のポリシー管理サーバに提供することを含んでもよい。例えば、状態情報の監視において(例えばステップ1315において)、モバイルコンピューティングデバイスおよび/またはモバイルコンピューティングデバイス上で実行中のMDMエージェントは、少なくともいくつかの監視された状態情報を1つ以上のポリシー管理サーバ(例えばこれは、前記で検討されたようにこのような状態情報を解析するよう構成されてもよい)に送信してもよい。例によっては、少なくともいくつかの監視された状態情報を1つ以上のポリシー管理サーバに送信することに加えて、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、SSOクレデンシャルおよび/またはSSOクレデンシャルから導出されるユーザ情報もまた、1つ以上のポリシー管理サーバに送信してもよい。
【0232】
ステップ1320において、少なくとも1つのモバイルデバイス管理ポリシーは、監視された状態情報およびSSOクレデンシャルに基づいて適用(enforce)される。例えば、ステップ1320において、モバイルコンピューティングデバイスおよび/またはモバイルコンピューティングデバイス上で実行中のMDMエージェントは、ステップ1310において受信されたSSOクレデンシャルおよびステップ1315において監視された状態情報に基づいて、1つ以上のモバイルデバイス管理ポリシーを適用してもよい。特に、モバイルデバイス管理ポリシーによっては、例えば、特定のユーザおよび/またはユーザアカウントについて特定の機能および/またはアプリケーションが制御されるべき特定の状況を定義してもよく、コンピューティングデバイスおよび/またはMDMエージェントは、状態情報に基づいてこれらの状況を検出してもよく、引き続いて、監視された状態情報に基づいて、および、現在のユーザおよび/または現在のユーザアカウント(これは例えば、SSOクレデンシャルに基づいて判定されてもよい)についての識別情報に基づいて、関連するユーザおよび/またはユーザアカウントについてこれらの機能および/またはアプリケーションを制御してもよい。このように、異なるモバイルデバイス管理ポリシーおよび/またはモバイルデバイス管理ポリシーの異なるセットは、異なるユーザおよび/またはユーザアカウントについて選択および/または適用されてもよく、(例えば、ステップ1310において受信された)SSOクレデンシャルは、適用および/または強制されるべき適切なポリシーおよび/またはポリシーのセットの判定において使用されてもよい。
【0233】
1つ以上の配置において、少なくとも1つのモバイルデバイス管理ポリシーの適用は、1つ以上のポリシー管理サーバから管理情報を受信すること、および、管理情報に含まれる少なくとも1つのコマンドを実行することを含んでもよい。例えば、少なくとも1つのモバイルデバイス管理ポリシーの適用において(例えば、ステップ1320において)、モバイルコンピューティングデバイスおよび/またはモバイルコンピューティングデバイス上で実行中のMDMエージェントは、1つ以上のポリシー管理サーバからの1つ以上のコマンド(これは例えば、ステップ1315においてそれらに提供および受信されるデバイス状態情報に基づいて1つ以上のポリシー管理サーバにより生成されてもよい)を含む管理情報を受信してもよい。さらに/あるいは、1つ以上のポリシー管理サーバからのこのようなコマンドの受信後に、モバイルコンピューティングデバイスおよび/またはモバイルコンピューティングデバイス上で実行中のMDMエージェントは、少なくとも1つのモバイルデバイス管理ポリシーを適用するために1つ以上の受信されたコマンドを実行してもよい。コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントが、SSOクレデンシャルおよび/またはSSOクレデンシャルから導出されたユーザ情報を1つ以上のポリシー管理サーバに提供した(例えば、このようなサーバにデバイス状態情報を提供することに加えて)例においては、1つ以上のポリシー管理サーバは、デバイス状態情報および1つ以上のポリシーに基づいてだけでなく、SSOクレデンシャルおよび/またはSSOクレデンシャルから導出されたユーザ情報にも基づいて1つ以上のコマンドを生成してもよい。例えば、1つ以上のコマンドは、下記において検討されるいくつかの実施例に例示されているように、特定のユーザについて特定的に1つ以上のポリシー管理サーバにより生成されてもよい。例によっては、管理情報は、さらに/あるいは、1つ以上のポリシー更新を含んでもよく、これは例えば、少なくとも1つのアプリケーションに適用されるべき新たなおよび/または更新されたポリシーを含んでもよい。
【0234】
実施形態によっては、少なくとも1つのモバイルデバイス管理ポリシーの適用は、SSOクレデンシャルに基づいて、モバイルデバイス管理ポリシーの第1のセットが適用可能であるか判定し、引き続いて、監視された状態情報に基づいてモバイルデバイス管理ポリシーの第1のセットを適用することを含んでもよい。例えば、1つ以上のポリシーの適用において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、以前に受信されたSSOクレデンシャルに基づいて判定されたように、現在のユーザのアイデンティティおよび/またはユーザアカウントに基づいてポリシーのセットが適用可能か最初に判定してもよい。引き続いて、コンピューティングデバイスおよび/またはMDMエージェントは、前記で検討された実施例においてこのようなポリシーが適用されてもよい方法と同様に、監視された状態情報に基づいて、適用可能なポリシーを適用してもよい。例えば、単一ユーザは、1つのSSOクレデンシャルにリンクされた複数のユーザアカウントを有してもよい。例えば、複数の病院およびオフィスで従事する医師は、従事する各病院およびオフィスごとにユーザアカウントを有してもよく、これらの異なるアカウントの全ては、その医師に対応し、その医師により使用可能である1つのSSOクレデンシャルにリンクされてもよい。本開示の1つ以上の態様に従って、本実施例での医師は、自身が従事する異なる病院およびオフィスでコンピュータシステムにログインするために同じSSOクレデンシャルを使用してもよく、デバイスの現在位置およびユーザ認証の間に提供されるSSOクレデンシャルに応じて、1つ以上の異なるポリシーおよび/またはポリシーの異なるセットが、医師のコンピューティングデバイスの様々なアプリケーション、処理および/または他の機能に適用されてもよい(これは例えば、それによって、現在従事する病院の異なるリソースへのアクセスを、医師に提供してもよい)。
【0235】
実施形態によっては、少なくとも1つのモバイルデバイス管理ポリシーの適用は、SSOクレデンシャルに基づいて、モバイルデバイス管理ポリシーの第1のセットを取得すること、および、監視された状態情報に基づいてモバイルデバイス管理ポリシーの第1のセットを適用することを含んでもよい。例えば、1つ以上のポリシーの適用において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、SSOクレデンシャルに基づいて判定されたように、SSOクレデンシャル自身および/または現在のユーザのアイデンティティおよび/またはユーザアカウントに基づいて、モバイルデバイス管理ポリシーのセットを最初に取得してもよい。実施例によっては、モバイルデバイス管理ポリシーのセットは、例えば、ポリシーサーバ、アプリケーションストア(例えば、企業アプリケーションストア)および/または1つ以上の他のソースから取得されてもよい。引き続いて、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、前記で検討された実施例においてこのようなポリシーが適用されてもよい方法と同様に、監視された状態情報に基づいて、取得されたポリシーを適用してもよい。
【0236】
実施形態によっては、少なくとも1つのモバイルデバイス管理ポリシーの適用は、モバイルコンピューティングデバイスのアプリケーションおよび機能の少なくとも1つを選択的に無効化することを含んでもよい。例えば、1つ以上のポリシーの適用において、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、前記で検討された実施例においてこのようなアプリケーションおよび/または機能が選択的に無効化および/または別様に制御されてもよい方法と同様に、コンピューティングデバイスおよび/またはMDMエージェントにより監視中の状態情報に基づいて、コンピューティングデバイスの1つ以上のアプリケーションおよび/または1つ以上の機能を選択的に無効化してもよい。
【0237】
図14は、本発明の1つ以上の態様に従って、デバイスクラウドに1つ以上のモバイルデバイス管理ポリシーを適用する別の方法を示すフローチャートである。1つ以上の実施形態において、
図14に例示する方法および/またはその1つ以上のステップは、コンピューティングデバイス(例えば、ジェネリックコンピューティングデバイス201)により実行されてもよい。他の実施形態において、
図14に示す方法および/またはその1つ以上のステップは、不揮発性コンピュータ読取可能メモリ等のコンピュータ読取可能媒体に記憶されたコンピュータ実行可能な命令に具体化されてもよい。
【0238】
図14に見られるように、この方法は、第1のコンピューティングデバイスにおいてモバイルデバイス管理(MDM)エージェントが初期化されるステップ1405において開始される。例えば、ステップ1405において、コンピューティングデバイス(例えば、ラップトップコンピュータ、タブレットコンピュータ、スマートフォンまたは他のタイプのモバイルデバイス等のモバイルコンピューティングデバイス)は、ステップ505(前記において検討された)においてこのようなMDMエージェントが初期化される方法と同様に、MDMエージェントを初期化してもよい。
【0239】
1つ以上の配置において、MDMエージェントがコンピューティングデバイス上で初期化された後(例えば、ステップ1405で)、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、前記において検討された実施例においてこのような情報が提供され、このようなコマンドが受信される方法と同様に、1つ以上のポリシー管理サーバ(これは例えば、デバイスの状態に影響を与える)に情報を提供および/または1つ以上のポリシー管理サーバから1つ以上のコマンドを受信してもよい。例えば、少なくともいくつかの監視された状態情報を1つ以上のポリシー管理サーバに提供した後に、コンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、提供された状態情報に基づいて、1つ以上のポリシー管理サーバから1つ以上のコマンドを受信してもよい(例えば、1つ以上のポリシー管理サーバは、提供された状態情報を受信し、提供された状態情報を1つ以上のモバイルデバイス管理ポリシーに鑑みて解析し、提供された状態情報および/または1つ以上のポリシーに基づいて1つ以上のコマンドを生成し、生成されたコマンドをコンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントに返送してもよい)。
【0240】
ステップ1410において、第2のコンピューティングデバイスでデバイスクラウドを開始する要求が第1のコンピューティングデバイスにより受信される。例によっては、第1のコンピューティングデバイスは、例えば、第1のコンピューティングデバイスのユーザから第2のコンピューティングデバイスでデバイスクラウドを開始する要求を受信してもよい。他の例において、第1のコンピューティングデバイスは、第2のコンピューティングデバイス自身から第2のコンピューティングデバイスでデバイスクラウドを開始する要求を受信してもよい。さらに他の例において、第1のコンピューティングデバイスは、1つ以上の他のコンピューティングデバイスから第2のコンピューティングデバイスでデバイスクラウドを開始する要求を受信してもよい。
【0241】
ステップ1415において、第1のコンピューティングデバイスは、1つ以上のポリシーおよびデバイス状態情報に基づいて、デバイスクラウドが第2のコンピューティングデバイスで開始されることができるかを判定する。例えば、第1のコンピューティングデバイスは、1つ以上のモバイルデバイス管理ポリシー(これは例えば、デバイスクラウドが開始されてもよい特定の状況を定義してもよく、このような状況はこのようなデバイス状態情報に基づいて判定されてもよい)に鑑みて、第1のコンピューティングデバイスに関するデバイス状態情報および/または第2のコンピューティングデバイスに関するデバイス状態情報を解析および/または別様に評価してもよい。さらに、解析および/または別様に評価されたデバイス状態情報は、コンピューティングデバイス上に存在するアプリケーションについての情報、コンピューティングデバイスにより使用されるネットワーク接続および/またはコンピューティングデバイスに関する位置情報を含む、本開示で検討される任意および/または全てのタイプのデバイス状態情報を含んでもよい。
【0242】
実施形態によっては、デバイスクラウドが開始されることができるかについての判定は、1つ以上のポリシー管理サーバに状態情報を提供すること、および、1つ以上のポリシー管理サーバから管理情報を受信することを含んでもよい。例えば、デバイスクラウドが開始されることができるかについての判定において(例えば、ステップ1415において)、第1のコンピューティングデバイスおよび/またはコンピューティングデバイス上で実行中のMDMエージェントは、1つ以上のポリシー管理サーバへの接続および引き続いての状態情報の送信により、1つ以上のポリシー管理サーバに状態情報(これは例えば、ステップ1405においてロードされたMDMエージェントにより監視中の少なくともいくつかの状態情報を含んでもよい)を提供してもよい。1つ以上のポリシー管理サーバは、例えば、第1のコンピューティングデバイスおよび第2のコンピューティングデバイス間でデバイスクラウドが開始されることができるかについての判定に使用される1つ以上のポリシーを配布および/または別様に実装している企業により動作および/または制御されてもよい。さらに/あるいは、1つ以上のポリシー管理サーバは、状態情報(これは例えば、1つ以上のデバイス上の1つ以上のMDMエージェントから受信されてもよい)を解析し、管理情報(これは例えば、1つ以上のデバイス上の1つ以上のMDMエージェントに提供および引き続いて受信されてもよい)を生成するよう構成されてもよい。例えば、1つ以上のポリシー管理サーバへの状態情報の提供後に、第1のコンピューティングデバイスおよび/または第1のコンピューティングデバイス上で実行中のMDMエージェントは、1つ以上のポリシー管理サーバから管理情報を受信してもよく、このような管理情報は、提供された状態情報に基づいて1つ以上のポリシー管理サーバにより生成されてもよい。例によっては、管理情報は、第1のコンピューティングデバイスおよび/またはMDMエージェントにより実行される1つ以上のコマンドを含んでもよい。例えば、管理情報は、実行時に、第1のコンピューティングデバイスおよび/またはMDMエージェントに第2のコンピューティングデバイスとのデバイスクラウドを許可または禁止させる、および/または、デバイスクラウドに1つ以上の制限を課する1つ以上のコマンドを含んでもよい。他の例においては、管理情報は、1つ以上のポリシー更新を含んでもよい。例えば、管理情報は、第1のコンピューティングデバイスおよび/またはデバイスクラウドに適用される1つ以上の新たなおよび/または更新されたポリシーを反映する1つ以上のポリシー更新を含んでもよい。
【0243】
実施形態によっては、1つ以上のポリシー(これは例えば、デバイスクラウドが開始されることができるかの判定に使用される)のうちの少なくとも1つのポリシーが、ポリシー管理サーバから受信されてもよい。例えば、デバイスクラウドが第2のコンピューティングデバイスで開始されることができるかの判定の前に、第1のコンピューティングデバイスおよび/または第1のコンピューティングデバイス上で実行中のMDMエージェントは、ポリシー管理サーバから1つ以上のポリシーを受信してもよく、1つ以上の受信されたポリシーは、例えば、デバイスクラウドが特定のデバイスで開始されることが許可および/または禁止される特定の状況を定義してもよい。このようなポリシー管理サーバ(これは例えば、ポリシーを実装する企業により動作および/または制御されてもよい)からのこのようなポリシーの受信後に、第1のコンピューティングデバイスおよび/または第1のコンピューティングデバイス上で実行中のMDMエージェントはそして、デバイスクラウドが開始されることができるかの判定において、1つ以上の受信されたポリシーのうちの少なくとも1つのポリシーを使用してもよい(例えば、少なくとも1つのポリシーに鑑みてデバイス状態情報を評価することによって)。
【0244】
実施形態によっては、第1のコンピューティングデバイスは、第1のコンピューティングデバイスに関する状態情報を監視するよう構成されたモバイルデバイス管理エージェントを実行するよう構成されてもよく、デバイスクラウドが第2のコンピューティングデバイスで開始されることができるかの判定は、モバイルデバイス管理エージェントにより監視される少なくともいくつかの状態情報に基づいてもよい。例えば、第1のコンピューティングデバイスは、MDMエージェント(これは例えば、前記において検討されたように、ステップ1405において初期化されてもよい)を実行中でおよび/または実行するよう構成されてもよく、デバイスクラウドが第2のコンピューティングデバイスで開始されることができるかの判定において、MDMエージェントにより監視された少なくともいくつかの状態情報が評価されてもよい。例によっては、このような状態情報は、例えば、デバイスクラウドが開始されることができるかの判定において、第1のコンピューティングデバイス自身により評価されてもよい。他の例において、状態情報は、下記において検討されるように、1つ以上のポリシー管理サーバにより評価されてもよい。
【0245】
特に、1つ以上の配置において、モバイルデバイス管理エージェントは、少なくともいくつかの監視された状態情報を1つ以上のポリシー管理サーバ(これは例えば、状態情報を遠隔解析し、および/または、状態情報の解析に基づいて第1のコンピューティングデバイスに1つ以上のコマンドを提供し戻すよう構成されてもよい)に提供するよう構成されてもよい。さらに、モバイルデバイス管理エージェントは、1つ以上のポリシー管理サーバに提供された状態情報に基づいて1つ以上のポリシー管理サーバから1つ以上のコマンドを受信するようさらに構成されてもよい。例えば、1つ以上のポリシー管理サーバへの状態情報の提供後に、第1のコンピューティングデバイス上で実行中のモバイルデバイス管理エージェントは、第1のコンピューティングデバイスがデバイスクラウドを第2のコンピューティングデバイスで開始できるかを示す情報を含む1つ以上のコマンドを受信してもよい。すなわち、1つ以上のポリシー管理サーバは、第1のコンピューティングデバイスにより提供される状態情報を遠隔評価し、この状態情報に基づいて第1のコンピューティングデバイスがデバイスクラウドを第2のコンピューティングデバイスで開始できるかを、1つ以上のモバイルデバイス管理ポリシー(これは例えば、状態情報により反映されるように、特定のデバイスでデバイスクラウドが確立されてもよい状況を定義してもよい)に鑑みて判定し、引き続いてこの判定の結果(例えば、第1のコンピューティングデバイスがデバイスクラウドを第2のコンピューティングデバイスで開始できるか否かを示す)を含む情報を第1のコンピューティングデバイスに提供し戻してもよい。
【0246】
ステップ1415において、デバイスクラウドが第2のコンピューティングデバイスで開始できないと判定された場合、ステップ1420において、第1のコンピューティングデバイスは通知メッセージを生成する。例えば、ステップ1420において、第1のコンピューティングデバイスは、デバイスクラウドが開始されることができないことを示す通知メッセージを生成してもよく、および/または、生成された通知を表示させてもよい。
【0247】
一方、ステップ1415において、デバイスクラウドが第2のコンピューティングデバイスで開始できると判定された場合、ステップ1425において、第1のコンピューティングデバイスは、デバイスクラウドを開始するために第2のコンピューティングデバイスとの接続を確立する。例えば、ステップ1425において、第1のコンピューティングデバイスは、前記において検討された実施例(例えば、ステップ710に関して前記において検討されたように)においてデバイスクラウドを開始するためにこのような接続が確立されてもよい方法と同様に、デバイスクラウドを開始するために、第2のコンピューティングデバイスとの接続を確立してもよい。
【0248】
ステップ1430において、第1のコンピューティングデバイスは、1つ以上のポリシーおよびデバイス状態情報に基づいて第2のコンピューティングデバイスを構成してもよい。例えば、1つ以上のポリシーおよびデバイス状態情報に基づく第2のコンピューティングデバイスを構成することにおいて、第1のコンピューティングデバイスは、第2のコンピューティングデバイスにより共有および/またはアクセスされることができる情報のタイプへの特定の制限、デバイスクラウド中に第2のコンピューティングデバイスにより使用できるネットワーク接続のタイプへの特定の制限、および/または、他の特定のコンフィグレーション設定を課してもよい。1つ以上のポリシーおよび現在のデバイス状態情報に応じて、第1のコンピューティングデバイスにより、異なる制限および/または設定が第2のコンピューティングデバイスに課されてもよい。
【0249】
ステップ1435において、第1のコンピューティングデバイスは、1つ以上のポリシーのうちの少なくとも1つのポリシーをデバイスクラウドに適用してもよい。例えば、1つ以上のポリシーのうちの少なくとも1つのポリシーのデバイスクラウドへの適用において、第1のコンピューティングデバイスは、特定の役割を自身におよび/またはデバイスクラウド内の第2のコンピューティングデバイスに割り当ててもよい(前記において検討されたように)。
【0250】
実施形態によっては、少なくとも1つのポリシーの適用は、第1のコンピューティングデバイス上で実行中のアプリケーションの少なくとも一部が第2のコンピューティングデバイス上で実行できるようにすることを含んでもよい。例えば、1つ以上のポリシーの適用において、第1のコンピューティングデバイスは、第1のコンピューティングデバイス上で実行中の特定のアプリケーションの特定の機能および/または態様が第2のコンピューティングデバイス上で実行できるようにしてもよい。第1のコンピューティングデバイス上で実行中のアプリケーションがビデオカンファレンスアプリケーションである実施例において、1つ以上のポリシーの適用は、アプリケーションのカメラ機能および/または他のビデオキャプチャ機能が第2のコンピューティングデバイス上で実行されつつ、アプリケーションの他の機能は第1のコンピューティングデバイス上で実行できるよう、第1のコンピューティングデバイスを必要としてもよい。
【0251】
実施形態によっては、少なくとも1つのポリシーの適用は、第1のコンピューティングデバイス上で実行中のアプリケーションの少なくとも一部が第2のコンピューティングデバイス上で実行されることを制限することを含む。例えば、1つ以上のポリシーの適用において、第1のコンピューティングデバイスは、特定のアプリケーションの特定の機能および/または態様が第1のコンピューティングデバイスまたは第2のコンピューティングデバイス上で実行されるのを防止してもよい。第1のコンピューティングデバイス上で実行中のアプリケーションが機密記録管理アプリケーションである実施例において、1つ以上のポリシーの適用は、アプリケーションの記録閲覧機能が第2のコンピューティングデバイス上で実行できるようにしつつ、アプリケーションの記録編集機能が第2のコンピューティングデバイス上で実行されることを防止する(および/またはこのような編集機能が第1のコンピューティングデバイス上でのみ実行されるよう制限する)よう、第1のコンピューティングデバイスを必要としてもよい。
【0252】
本開示の様々な態様が、モバイルデバイス管理機能の提供に関して説明された。他の実施形態において、しかしながら、本明細書で検討された概念は、コンピューティングデバイスの任意の他のタイプ(例えば、デスクトップコンピュータ、サーバ、コンソール、セットトップボックス等)でも実装されることができる。本発明は構造的特徴および/または方法論的作動に特定的な言語において記述されてきたが、添付の特許請求の範囲に定義される本発明は、必ずしも前記の特定の特徴または作動に制限されないことが理解されよう。むしろ、前記の特定の特徴または作動は、続く特許請求の範囲のいくつかの実施態様例として記述される。
【0253】
本願は、2013年9月13日出願の「PROVIDING MOBILE DEVICE MANAGEMENT FUNCTIONALITIES」と題された米国特許出願第14/025,898号の優先権を主張し、当該出願は、その全体において参照により本願に組み込まれる。さらに、本願は、2013年8月8日出願の「PROVIDING MOBILE DEVICE MANAGEMENT FUNCTIONALITIES」と題された米国仮特許出願第61/863,629号の利益を主張し、当該出願は、その全体において参照により本願に組み込まれる。本願はまた、2013年3月29日出願の「SYSTEMS AND METHODS FOR ENTERPRISE MOBILITY MANAGEMENT」と題された米国仮特許出願第61/806,577号の利益を主張し、当該出願は、その全体において参照により本願に組み込まれる。
【0254】
〈サンプル実施形態〉
予備的な請求項1から20の組Aを以下に示す。
【0255】
1. モバイルコンピューティングデバイスに関する状態情報を、モバイルデバイス管理エージェントにより監視することと、
前記監視された状態情報に基づいて、前記モバイルコンピューティングデバイス上の少なくとも1つのアプリケーション上で1つ以上のポリシーを適用することとを備え、
前記状態情報を監視することは、少なくともいくつかの前記監視された状態情報を1つ以上のポリシー管理サーバに提供することを含み、
前記1つ以上のポリシーを前記少なくとも1つのアプリケーション上で適用することは、
前記1つ以上のポリシー管理サーバからの管理情報を受信することと、
前記受信した管理情報に含まれる少なくとも1つのコマンドを実行することとを含む、方法。
【0256】
2. 前記状態情報を監視することは、前記モバイルコンピューティングデバイス上に存在する1つ以上のアプリケーションを特定することを含む、請求項1に記載の方法。
【0257】
3. 前記状態情報を監視することは、前記モバイルコンピューティングデバイスにより使用される1つ以上のネットワーク接続を特定することを含む、請求項1に記載の方法。
【0258】
4. 前記状態情報を監視することは、前記モバイルコンピューティングデバイスについての現在位置情報を判定することを含む、請求項1に記載の方法。
【0259】
5. 前記1つ以上のポリシーを適用することは、前記監視された状態情報に基づいて前記少なくとも1つのアプリケーションを無効化することを含む、請求項1に記載の方法。
【0260】
6. 前記1つ以上のポリシーを適用することは、前記監視された状態情報に基づいて前記少なくとも1つのアプリケーションの1つ以上の機能を選択的に無効化することを含む、請求項1に記載の方法。
【0261】
7. 前記1つ以上のポリシーを適用することは、前記少なくとも1つのアプリケーションを再構成することを含む、請求項1に記載の方法。
【0262】
8. モバイルコンピューティングデバイスであって、
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサにより実行されたときに、前記モバイルコンピューティングデバイスに、
モバイルコンピューティングデバイスに関する状態情報を、モバイルデバイス管理エージェントを介して監視することと、
1つ以上のポリシーを前記監視された状態情報に基づいて、前記モバイルコンピューティングデバイス上の少なくとも1つのアプリケーション上で1つ以上のポリシーを適用することとを行なわせる、コンピュータ読取可能命令を記憶するメモリと、
を備え、
前記状態情報を監視することは、少なくともいくつかの前記監視された状態情報を1つ以上のポリシー管理サーバに提供することを含み、
前記1つ以上のポリシーを前記少なくとも1つのアプリケーション上で適用することは、
前記1つ以上のポリシー管理サーバからの管理情報を受信することと、
前記受信した管理情報に含まれる少なくとも1つのコマンドを実行することとを含む、モバイルコンピューティングデバイス。
【0263】
9. 前記状態情報を監視することは、前記モバイルコンピューティングデバイス上に存在する1つ以上のアプリケーションを特定することを含む、請求項8に記載のモバイルコンピューティングデバイス。
【0264】
10. 前記状態情報を監視することは、前記モバイルコンピューティングデバイスにより使用される1つ以上のネットワーク接続を特定することを含む、請求項8に記載のモバイルコンピューティングデバイス。
【0265】
11. 前記状態情報を監視することは、前記モバイルコンピューティングデバイスについての現在位置情報を判定することを含む、請求項8に記載のモバイルコンピューティングデバイス。
【0266】
12. 前記1つ以上のポリシーを適用することは、前記監視された状態情報に基づいて前記少なくとも1つのアプリケーションを無効化することを含む、請求項8に記載のモバイルコンピューティングデバイス。
【0267】
13. 前記1つ以上のポリシーを適用することは、前記監視された状態情報に基づいて前記少なくとも1つのアプリケーションの1つ以上の機能を選択的に無効化することを含む、請求項8に記載のモバイルコンピューティングデバイス。
【0268】
14. 前記1つ以上のポリシーを適用することは、前記少なくとも1つのアプリケーションを再構成することを含む、請求項8に記載のモバイルコンピューティングデバイス。
【0269】
15. 実行されたときに、モバイルコンピューティングデバイスに、
前記モバイルコンピューティングデバイスに関する状態情報を、モバイルデバイス管理エージェントを介して監視することと、
前記監視された状態情報に基づいて、前記モバイルコンピューティングデバイス上の少なくとも1つのアプリケーション上で1つ以上のポリシーを適用することとを行なわせる、記憶された命令を有する1つ以上の不揮発性コンピュータ読取可能媒体であって、
前記状態情報を監視することは、少なくともいくつかの前記監視された状態情報を1つ以上のポリシー管理サーバに提供することを含み、
前記1つ以上のポリシーを前記少なくとも1つのアプリケーション上で適用することは、
前記1つ以上のポリシー管理サーバからの管理情報を受信することと、
前記受信した管理情報に含まれる少なくとも1つのコマンドを実行することとを含む、1つ以上の不揮発性コンピュータ読取可能媒体。
【0270】
16. 前記状態情報を監視することは、前記モバイルコンピューティングデバイス上に存在する1つ以上のアプリケーションを特定することを含む、請求項15に記載の1つ以上の不揮発性コンピュータ読取可能媒体。
【0271】
17. 前記状態情報を監視することは、前記モバイルコンピューティングデバイスにより使用される1つ以上のネットワーク接続を特定することを含む、請求項15に記載の1つ以上の不揮発性コンピュータ読取可能媒体。
【0272】
18. 前記状態情報を監視することは、前記モバイルコンピューティングデバイスについての現在位置情報を判定することを含む、請求項15に記載の1つ以上の不揮発性コンピュータ読取可能媒体。
【0273】
19. 前記1つ以上のポリシーを適用することは、前記監視された状態情報に基づいて前記少なくとも1つのアプリケーションを無効化することを含む、請求項15に記載の1つ以上の不揮発性コンピュータ読取可能媒体。
【0274】
20. 前記1つ以上のポリシーを適用することは、前記監視された状態情報に基づいて前記少なくとも1つのアプリケーションの1つ以上の機能を選択的に無効化することを含む、請求項15に記載の1つ以上の不揮発性コンピュータ読取可能媒体。
【0275】
さらなる予備的な請求項1から20の組Bを示す。
【0276】
1. コンピューティングデバイスにより、管理されたブラウザをロードすることと、
前記コンピューティングデバイスにより、前記管理されたブラウザに1つ以上のモバイルデバイス管理ポリシーを適用することであって、1つ以上のポリシー管理サーバに状態情報を提供すること、および、前記1つ以上のポリシー管理サーバから管理情報を受信することを含む、適用することと、
前記管理されたブラウザ上で1つ以上の挙動制限を適用することと
を備え、
前記1つ以上のモバイルデバイス管理ポリシーのうちの少なくとも1つのポリシーが、前記コンピューティングデバイスの1つ以上の機能を制御するよう構成され、
前記1つ以上のモバイルデバイス管理ポリシーのうちの少なくとも1つのポリシーが、ポリシー管理サーバから受信される、方法。
【0277】
2. 前記管理情報は、コマンドおよびポリシー更新のうちの少なくとも1つを含む、請求項1に記載の方法。
【0278】
3. 前記管理されたブラウザに前記1つ以上のモバイルデバイス管理ポリシーを適用することは、
前記管理されたブラウザのユーザに関する識別情報に基づいて、1つ以上のポリシーのセットのうちのポリシーの第1のセットが、前記ユーザに適用可能であることを判定することと、
前記管理されたブラウザへの前記ポリシーの第1のセットの適用を判定することとを含む、請求項1に記載の方法。
【0279】
4. 前記管理されたブラウザ上で前記1つ以上の挙動制限を適用することは、
少なくとも1つのネットワークリソースへのアクセスを制限することを含む、請求項1に記載の方法。
【0280】
5. 前記管理されたブラウザ上で前記1つ以上の挙動制限を適用することは、
前記コンピューティングデバイスに関する位置情報に基づいて前記管理されたブラウザの少なくとも1つの機能を選択的に無効化することを含む、請求項1に記載の方法。
【0281】
6. 前記管理されたブラウザ上で前記1つ以上の挙動制限を適用することは、
前記コンピューティングデバイスに関するアプリケーションインベントリ情報に基づいて前記管理されたブラウザの少なくとも1つの機能を選択的に無効化することを含む、請求項1に記載の方法。
【0282】
7. 前記管理されたブラウザ上で前記1つ以上の挙動制限を適用することは、
前記管理されたブラウザに関する1つ以上のキャッシュを選択的にワイプすることを含む、請求項1に記載の方法。
【0283】
8. コンピューティングデバイスであって、
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサにより実行されたときに、前記コンピューティングデバイスに、
管理されたブラウザをロードすることと、
前記管理されたブラウザに1つ以上のモバイルデバイス管理ポリシーを適用することであって、1つ以上のポリシー管理サーバに状態情報を提供すること、および、前記1つ以上のポリシー管理サーバから管理情報を受信することを含む、適用することと、
前記管理されたブラウザ上で1つ以上の挙動制限を適用することと
を行なわせる、コンピュータ読取可能命令を記憶するメモリとを備え、
前記1つ以上のモバイルデバイス管理ポリシーのうちの少なくとも1つのポリシーが、前記コンピューティングデバイスの1つ以上の機能を制御するよう構成され、
前記1つ以上のモバイルデバイス管理ポリシーのうちの少なくとも1つのポリシーが、ポリシー管理サーバから受信される、コンピューティングデバイス。
【0284】
9. 前記管理情報は、コマンドおよびポリシー更新のうちの少なくとも1つを含む、請求項8に記載のコンピューティングデバイス。
【0285】
10. 前記管理されたブラウザに前記1つ以上のモバイルデバイス管理ポリシーを適用することは、
前記管理されたブラウザのユーザに関する識別情報に基づいて、1つ以上のポリシーのセットのうちのポリシーの第1のセットが、前記ユーザに適用可能であることを判定することと、
前記管理されたブラウザへの前記ポリシーの第1のセットの適用を判定することとを含む、請求項8に記載のコンピューティングデバイス。
【0286】
11. 前記管理されたブラウザ上で前記1つ以上の挙動制限を適用することは、
少なくとも1つのネットワークリソースへのアクセスを制限することを含む、請求項8に記載のコンピューティングデバイス。
【0287】
12. 前記管理されたブラウザ上で前記1つ以上の挙動制限を適用することは、
前記コンピューティングデバイスに関する位置情報に基づいて前記管理されたブラウザの少なくとも1つの機能を選択的に無効化することを含む、請求項8に記載のコンピューティングデバイス。
【0288】
13. 前記管理されたブラウザ上で前記1つ以上の挙動制限を適用することは、
前記コンピューティングデバイスに関するアプリケーションインベントリ情報に基づいて前記管理されたブラウザの少なくとも1つの機能を選択的に無効化することを含む、請求項8に記載のコンピューティングデバイス。
【0289】
14. 前記管理されたブラウザ上で前記1つ以上の挙動制限を適用することは、
前記管理されたブラウザに関する1つ以上のキャッシュを選択的にワイプすることを含む、請求項8に記載のコンピューティングデバイス。
【0290】
15. 実行されたときに、少なくとも1つのコンピューティングデバイスに、
管理されたブラウザをロードすることと、
前記管理されたブラウザに1つ以上のモバイルデバイス管理ポリシーを適用することであって、1つ以上のポリシー管理サーバに状態情報を提供すること、および、前記1つ以上のポリシー管理サーバから管理情報を受信することを含む、適用することと、
前記管理されたブラウザ上で1つ以上の挙動制限を適用することと
を行なわせる、記憶された命令を有する1つ以上の不揮発性コンピュータ読取可能媒体であって、
前記1つ以上のモバイルデバイス管理ポリシーのうちの少なくとも1つのポリシーが、前記少なくとも1つのコンピューティングデバイスの1つ以上の機能を制御するよう構成され、
前記1つ以上のモバイルデバイス管理ポリシーのうちの少なくとも1つのポリシーが、ポリシー管理サーバから受信される、1つ以上の不揮発性コンピュータ読取可能媒体。
【0291】
16. 前記管理情報は、コマンドおよびポリシー更新のうちの少なくとも1つを含む、請求項15に記載の1つ以上の不揮発性コンピュータ読取可能媒体。
【0292】
17. 前記管理されたブラウザに前記1つ以上のモバイルデバイス管理ポリシーを適用することは、
前記管理されたブラウザのユーザに関する識別情報に基づいて、1つ以上のポリシーのセットのうちのポリシーの第1のセットが、前記ユーザに適用可能であることを判定することと、
前記管理されたブラウザへの前記ポリシーの第1のセットの適用を判定することとを含む、請求項15に記載の1つ以上の不揮発性コンピュータ読取可能媒体。
【0293】
18. 前記管理されたブラウザ上で前記1つ以上の挙動制限を適用することは、
少なくとも1つのネットワークリソースへのアクセスを制限することを含む、請求項15に記載の1つ以上の不揮発性コンピュータ読取可能媒体。
【0294】
19. 前記管理されたブラウザ上で前記1つ以上の挙動制限を適用することは、
前記コンピューティングデバイスに関する位置情報に基づいて前記管理されたブラウザの少なくとも1つの機能を選択的に無効化することを含む、請求項15に記載の1つ以上の不揮発性コンピュータ読取可能媒体。
【0295】
20. 前記管理されたブラウザ上で前記1つ以上の挙動制限を適用することは、
前記コンピューティングデバイスに関するアプリケーションインベントリ情報に基づいて前記管理されたブラウザの少なくとも1つの機能を選択的に無効化することを含む、請求項15に記載の1つ以上の不揮発性コンピュータ読取可能媒体。
【0296】
さらなる予備的な請求項1から20の組Cを示す。
【0297】
1. 第1のコンピューティングデバイスにより、第2のコンピューティングデバイスでデバイスクラウドを開始する要求を受信することと、
前記第1のコンピューティングデバイスにより、1つ以上のポリシーおよびデバイス状態情報に基づいて、前記第2のコンピューティングデバイスで前記デバイスクラウドが開始可能かを判定することであって、1つ以上のポリシー管理サーバに状態情報を提供すること、および、管理情報を前記1つ以上のポリシー管理サーバから受信することを含む、判定することと、
前記第2のコンピューティングデバイスで前記デバイスクラウドが開始可能との判定に応じて、前記第1のコンピューティングデバイスにより、前記デバイスクラウドを開始するために前記第2のコンピューティングデバイスへの接続を確立することとを備え、
前記1つ以上のポリシーのうちの少なくとも1つのポリシーが、ポリシー管理サーバから受信される、方法。
【0298】
2. 前記第2のコンピューティングデバイスで前記デバイスクラウドが開始不可能との判定に応じて、前記第1のコンピューティングデバイスにより、通知メッセージを生成することをさらに備える、請求項1に記載の方法。
【0299】
3. 前記第1のコンピューティングデバイスは、前記第1のコンピューティングデバイスに関する状態情報を監視するよう構成されたモバイルデバイス管理エージェントを実行するよう構成され、
前記第2のコンピューティングデバイスで前記デバイスクラウドが開始可能かを判定することは、前記モバイルデバイス管理エージェントにより監視される前記状態情報のうちの少なくともいくつかに基づく、請求項1に記載の方法。
【0300】
4. 前記管理情報は、1つ以上のコマンドを含む、請求項1に記載の方法。
【0301】
5. 前記管理情報は、1つ以上のポリシー更新を含む、請求項1に記載の方法。
【0302】
6. 前記第1のコンピューティングデバイスにより、前記1つ以上のポリシーおよび前記デバイス状態情報に基づいて前記第2のコンピューティングデバイスを構成することをさらに備える、請求項1に記載の方法。
【0303】
7. 前記第1のコンピューティングデバイスにより、前記デバイスクラウド上に前記1つ以上のポリシーのうちの少なくとも1つのポリシーを適用することをさらに備える、請求項1に記載の方法。
【0304】
8. 前記少なくとも1つのポリシーを適用することは、前記第1のコンピューティングデバイス上で実行されているアプリケーションの少なくとも一部分が、前記第2のコンピューティングデバイス上で実行できるようにすることを含む、請求項7に記載の方法。
【0305】
9. 前記少なくとも1つのポリシーを適用することは、前記第1のコンピューティングデバイス上で実行されているアプリケーションの少なくとも一部分が、前記第2のコンピューティングデバイス上で実行されるのを制限することを含む、請求項7に記載の方法。
【0306】
10. 第1のコンピューティングデバイスであって、
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサにより実行されたときに、前記第1のコンピューティングデバイスに、
第2のコンピューティングデバイスでデバイスクラウドを開始する要求を受信することと、
1つ以上のポリシーおよびデバイス状態情報に基づいて、前記第2のコンピューティングデバイスで前記デバイスクラウドが開始可能かを判定することであって、1つ以上のポリシー管理サーバに状態情報を提供すること、および、管理情報を前記1つ以上のポリシー管理サーバから受信することを含む、判定することと、
前記第2のコンピューティングデバイスで前記デバイスクラウドが開始可能との判定に応じて、前記デバイスクラウドを開始するために前記第2のコンピューティングデバイスへの接続を確立することとを行なわせる、コンピュータ読取可能命令を記憶するメモリとを備え、
前記1つ以上のポリシーのうちの少なくとも1つのポリシーが、ポリシー管理サーバから受信される、第1のコンピューティングデバイス。
【0307】
11. 前記メモリがさらなるコンピュータ読取可能命令を記憶し、この命令は、前記少なくとも1つのプロセッサにより実行されたときに、前記第1のコンピューティングデバイスにさらに、
前記第2のコンピューティングデバイスで前記デバイスクラウドが開始不可能との判定に応じて、通知メッセージを生成させる、請求項10に記載のコンピューティングデバイス。
【0308】
12. 前記第1のコンピューティングデバイスは、前記第1のコンピューティングデバイスに関する状態情報を監視するよう構成されたモバイルデバイス管理エージェントを実行するよう構成され、
前記第2のコンピューティングデバイスで前記デバイスクラウドが開始可能かを判定することは、前記モバイルデバイス管理エージェントにより監視される前記状態情報のうちの少なくともいくつかに基づく、請求項10に記載のコンピューティングデバイス。
【0309】
13. 前記管理情報は、1つ以上のコマンドを含む、請求項10に記載のコンピューティングデバイス。
【0310】
14. 前記管理情報は、1つ以上のポリシー更新を含む、請求項10に記載のコンピューティングデバイス。
【0311】
15. 前記メモリがさらなるコンピュータ読取可能命令を記憶し、この命令は、前記少なくとも1つのプロセッサにより実行されたときに、前記第1のコンピューティングデバイスにさらに、
前記1つ以上のポリシーおよび前記デバイス状態情報に基づいて前記第2のコンピューティングデバイスを構成させる、請求項10に記載のコンピューティングデバイス。
【0312】
16. 前記メモリがさらなるコンピュータ読取可能命令を記憶し、この命令は、前記少なくとも1つのプロセッサにより実行されたときに、前記第1のコンピューティングデバイスにさらに、
前記デバイスクラウド上に前記1つ以上のポリシーのうちの少なくとも1つのポリシーを適用させる、請求項10に記載のコンピューティングデバイス。
【0313】
17. 前記少なくとも1つのポリシーを適用することは、前記第1のコンピューティングデバイス上で実行されているアプリケーションの少なくとも一部分が、前記第2のコンピューティングデバイス上で実行できるようにすることを含む、請求項16に記載のコンピューティングデバイス。
【0314】
18. 前記少なくとも1つのポリシーを適用することは、前記第1のコンピューティングデバイス上で実行されているアプリケーションの少なくとも一部分が、前記第2のコンピューティングデバイス上で実行されるのを制限することを含む、請求項16に記載のコンピューティングデバイス。
【0315】
19. 実行されたときに、第1のコンピューティングデバイスに、
第2のコンピューティングデバイスでデバイスクラウドを開始する要求を受信することと、
1つ以上のポリシーおよびデバイス状態情報に基づいて、前記第2のコンピューティングデバイスで前記デバイスクラウドが開始可能かを判定することであって、1つ以上のポリシー管理サーバに状態情報を提供すること、および、管理情報を前記1つ以上のポリシー管理サーバから受信することを含む、判定することと、
前記第2のコンピューティングデバイスで前記デバイスクラウドが開始可能との判定に応じて、前記デバイスクラウドを開始するために前記第2のコンピューティングデバイスへの接続を確立することとを行なわせる、記憶された命令を有する1つ以上の不揮発性コンピュータ読取可能媒体であって、
前記1つ以上のポリシーのうちの少なくとも1つのポリシーが、ポリシー管理サーバから受信される、1つ以上の不揮発性コンピュータ読取可能媒体。
【0316】
20. 記憶された、さらなるコンピュータ読取可能命令を有し、この命令は、実行されたときに、前記第1のコンピューティングデバイスにさらに、
前記第2のコンピューティングデバイスで前記デバイスクラウドが開始不可能との判定に応じて、通知メッセージを生成させる、請求項19に記載の1つ以上の不揮発性コンピュータ読取可能媒体。
【0317】
さらなる予備的な請求項1から20の組Dを示す。
【0318】
1. モバイルコンピューティングデバイスに関する状態情報を、モバイルデバイス管理エージェントにより監視することと、
前記監視された状態情報のうちの少なくともいくつかを1つ以上のポリシー管理サーバに、前記モバイルデバイス管理エージェントにより提供することと、
前記1つ以上のポリシー管理サーバから管理情報を受信することと、
前記1つ以上のポリシー管理サーバから受信した前記管理情報に基づいて、マルチモードアプリケーションのうちの1つ以上のモードを選択的に無効化することとを備える、方法。
【0319】
2. 前記状態情報を監視することは、前記モバイルコンピューティングデバイス上に存在する1つ以上のアプリケーションを特定することを含む、請求項1に記載の方法。
【0320】
3. 前記状態情報を監視することは、前記モバイルコンピューティングデバイスにより使用される1つ以上のネットワーク接続を特定することを含む、請求項1に記載の方法。
【0321】
4. 前記状態情報を監視することは、前記モバイルコンピューティングデバイスについての現在位置情報を判定することを含む、請求項1に記載の方法。
【0322】
5. 前記マルチモードアプリケーションは、企業データへのアクセスを提供するよう構成された管理モード、および、非企業データへのアクセスを制限するよう構成された非管理モードを有するデュアルモードアプリケーションである、請求項1に記載の方法。
【0323】
6. 前記マルチモードアプリケーションは、企業データへのアクセスの第1のレベルを提供するよう構成された第1のモード、および、アクセスの前記第1のレベルよりも高い、企業データへのアクセスの第2のレベルを提供するよう構成された第2のモードを有するデュアルモードアプリケーションである、請求項1に記載の方法。
【0324】
7. 前記マルチモードアプリケーションの前記1つ以上のモードを選択的に無効化する前に、
前記監視された状態情報に基づいて、前記モバイルコンピューティングデバイスが企業モードで使用されていないことを判定することと、
前記モバイルコンピューティングデバイスが前記企業モードで使用されないことの判定に応じて、前記マルチモードアプリケーションの少なくとも1つのモードを選択的に無効化することを判定することとをさらに備える、請求項1に記載の方法。
【0325】
8. モバイルコンピューティングデバイスであって、
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサにより実行されたときに、前記モバイルコンピューティングデバイスに、
前記モバイルコンピューティングデバイスに関する状態情報を、モバイルデバイス管理エージェントを介して監視することと、
前記監視された状態情報のうちの少なくともいくつかを1つ以上のポリシー管理サーバに、前記モバイルデバイス管理エージェントにより提供することと、
前記1つ以上のポリシー管理サーバから管理情報を受信することと、
前記1つ以上のポリシー管理サーバから受信した前記管理情報に基づいて、マルチモードアプリケーションのうちの1つ以上のモードを選択的に無効化することとを行なわせる、コンピュータ読取可能命令を記憶するメモリとを備える、モバイルコンピューティングデバイス。
【0326】
9. 前記状態情報を監視することは、前記モバイルコンピューティングデバイス上に存在する1つ以上のアプリケーションを特定することを含む、請求項8に記載のモバイルコンピューティングデバイス。
【0327】
10. 前記状態情報を監視することは、前記モバイルコンピューティングデバイスにより使用される1つ以上のネットワーク接続を特定することを含む、請求項8に記載のモバイルコンピューティングデバイス。
【0328】
11. 前記状態情報を監視することは、前記モバイルコンピューティングデバイスについての現在位置情報を判定することを含む、請求項8に記載のモバイルコンピューティングデバイス。
【0329】
12. 前記マルチモードアプリケーションは、企業データへのアクセスを提供するよう構成された管理モード、および、非企業データへのアクセスを制限するよう構成された非管理モードを有するデュアルモードアプリケーションである、請求項8に記載のモバイルコンピューティングデバイス。
【0330】
13. 前記マルチモードアプリケーションは、企業データへのアクセスの第1のレベルを提供するよう構成された第1のモード、および、アクセスの前記第1のレベルよりも高い、企業データへのアクセスの第2のレベルを提供するよう構成された第2のモードを有するデュアルモードアプリケーションである、請求項8に記載のモバイルコンピューティングデバイス。
【0331】
14. 前記メモリがさらなるコンピュータ読取可能命令を記憶し、この命令は、前記少なくとも1つのプロセッサにより実行されたときに、前記コンピューティングデバイスにさらに、
前記マルチモードアプリケーションの前記1つ以上のモードを選択的に無効化する前に、
前記監視された状態情報に基づいて、前記モバイルコンピューティングデバイスが企業モードで使用されていないことを判定することと、
前記モバイルコンピューティングデバイスが前記企業モードで使用されないことの判定に応じて、前記マルチモードアプリケーションの少なくとも1つのモードを選択的に無効化することを判定することと、を行なわせる、請求項8に記載のモバイルコンピューティングデバイス。
【0332】
15. 実行されたときに、モバイルコンピューティングデバイスに、
前記モバイルコンピューティングデバイスに関する状態情報を、モバイルデバイス管理エージェントを介して監視することと、
前記監視された状態情報のうちの少なくともいくつかを1つ以上のポリシー管理サーバに、前記モバイルデバイス管理エージェントにより提供することと、
前記1つ以上のポリシー管理サーバから管理情報を受信することと、
前記1つ以上のポリシー管理サーバから受信した前記管理情報に基づいて、マルチモードアプリケーションのうちの1つ以上のモードを選択的に無効化することとを行なわせる、記憶された命令を有する1つ以上の不揮発性コンピュータ読取可能媒体。
【0333】
16. 前記状態情報を監視することは、前記モバイルコンピューティングデバイス上に存在する1つ以上のアプリケーションを特定することを含む、請求項15に記載の1つ以上の不揮発性コンピュータ読取可能媒体。
【0334】
17. 前記状態情報を監視することは、前記モバイルコンピューティングデバイスにより使用される1つ以上のネットワーク接続を特定することを含む、請求項15に記載の1つ以上の不揮発性コンピュータ読取可能媒体。
【0335】
18. 前記状態情報を監視することは、前記モバイルコンピューティングデバイスについての現在位置情報を判定することを含む、請求項15に記載の1つ以上の不揮発性コンピュータ読取可能媒体。
【0336】
19. 前記マルチモードアプリケーションは、企業データへのアクセスを提供するよう構成された管理モード、および、非企業データへのアクセスを制限するよう構成された非管理モードを有するデュアルモードアプリケーションである、請求項15に記載の1つ以上の不揮発性コンピュータ読取可能媒体。
【0337】
20. 前記マルチモードアプリケーションは、企業データへのアクセスの第1のレベルを提供するよう構成された第1のモード、および、アクセスの前記第1のレベルよりも高い、企業データへのアクセスの第2のレベルを提供するよう構成された第2のモードを有するデュアルモードアプリケーションである、請求項15に記載の1つ以上の不揮発性コンピュータ読取可能媒体。
【0338】
さらなる予備的な請求項1から20の組Eを示す。
【0339】
1. モバイルコンピューティングデバイスに関する状態情報を、モバイルデバイス管理エージェントにより監視することと、
前記監視された状態情報に基づいて、セキュリティ保護ドキュメントコンテナを制御することとを備え、
前記状態情報を監視することは、少なくともいくつかの前記監視された状態情報を1つ以上のポリシー管理サーバに提供することを含み、
前記セキュリティ保護ドキュメントコンテナを制御することは、
前記1つ以上のポリシー管理サーバから管理情報を受信することと、
前記受信した管理情報に含まれる少なくとも1つのコマンドを実行することとを含む、方法。
【0340】
2. 前記セキュリティ保護ドキュメントコンテナは、1つ以上の企業リソースから前記モバイルコンピューティングデバイスにより受信される企業データをセキュリティ保護された状態で記憶するよう構成される、請求項1に記載の方法。
【0341】
3. 前記状態情報を監視することは、前記モバイルコンピューティングデバイス上に存在する1つ以上のアプリケーションを特定することを含む、請求項1に記載の方法。
【0342】
4. 前記状態情報を監視することは、前記モバイルコンピューティングデバイスにより使用される1つ以上のネットワーク接続を特定することを含む、請求項1に記載の方法。
【0343】
5. 前記状態情報を監視することは、前記モバイルコンピューティングデバイスについての現在位置情報を判定することを含む、請求項1に記載の方法。
【0344】
6. 前記セキュリティ保護ドキュメントコンテナを制御することは、前記監視された状態情報に基づいて、前記セキュリティ保護ドキュメントコンテナに記憶されたデータへのアクセスを制御することを含む、請求項1に記載の方法。
【0345】
7. 前記セキュリティ保護ドキュメントコンテナを制御することは、前記監視された状態情報に基づいて、前記セキュリティ保護ドキュメントコンテナからデータを選択的にワイプすることを含む、請求項1に記載の方法。
【0346】
8. 前記モバイルコンピューティングデバイスにおいて、企業データを受信することと、
前記セキュリティ保護ドキュメントコンテナに前記企業データを記憶することと、
前記監視された状態情報に基づいて、デバイス状態における変化を検出することと、
前記デバイス状態における変化の検出に基づいて、前記セキュリティ保護ドキュメントコンテナからデータを選択的にワイプすることを判定することとを含む、請求項1に記載の方法。
【0347】
9. モバイルコンピューティングデバイスであって、
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサにより実行されたときに、前記モバイルコンピューティングデバイスに、
モバイルコンピューティングデバイスに関する状態情報を、モバイルデバイス管理エージェントにより監視することと、
前記監視された状態情報に基づいて、セキュリティ保護ドキュメントコンテナを制御することとを行なわせる、コンピュータ読取可能命令を記憶するメモリとを備え、
前記状態情報を監視することは、少なくともいくつかの前記監視された状態情報を1つ以上のポリシー管理サーバに提供することを含み、
前記セキュリティ保護ドキュメントコンテナを制御することは、
前記1つ以上のポリシー管理サーバから管理情報を受信することと、
前記受信した管理情報に含まれる少なくとも1つのコマンドを実行することとを含む、モバイルコンピューティングデバイス。
【0348】
10. 前記セキュリティ保護ドキュメントコンテナは、1つ以上の企業リソースから前記モバイルコンピューティングデバイスにより受信される企業データをセキュリティ保護された状態で記憶するよう構成される、請求項9に記載のモバイルコンピューティングデバイス。
【0349】
11. 前記状態情報を監視することは、前記モバイルコンピューティングデバイス上に存在する1つ以上のアプリケーションを特定することを含む、請求項9に記載のモバイルコンピューティングデバイス。
【0350】
12. 前記状態情報を監視することは、前記モバイルコンピューティングデバイスにより使用される1つ以上のネットワーク接続を特定することを含む、請求項9に記載のモバイルコンピューティングデバイス。
【0351】
13. 前記状態情報を監視することは、前記モバイルコンピューティングデバイスについての現在位置情報を判定することを含む、請求項9に記載のモバイルコンピューティングデバイス。
【0352】
14. 前記セキュリティ保護ドキュメントコンテナを制御することは、前記監視された状態情報に基づいて、前記セキュリティ保護ドキュメントコンテナに記憶されたデータへのアクセスを制御することを含む、請求項9に記載のモバイルコンピューティングデバイス。
【0353】
15. 前記セキュリティ保護ドキュメントコンテナを制御することは、前記監視された状態情報に基づいて、前記セキュリティ保護ドキュメントコンテナからデータを選択的にワイプすることを含む、請求項9に記載のモバイルコンピューティングデバイス。
【0354】
16. 前記メモリがさらなるコンピュータ読取可能命令を記憶し、この命令は、前記少なくとも1つのプロセッサにより実行されたときに、前記モバイルコンピューティングデバイスにさらに、
企業データを受信することと、
前記セキュリティ保護ドキュメントコンテナに前記企業データを記憶することと、
前記監視された状態情報に基づいて、デバイス状態における変化を検出することと、
前記デバイス状態における変化の検出に基づいて、前記セキュリティ保護ドキュメントコンテナからデータを選択的にワイプすることを判定することとを行なわせる、請求項9に記載のモバイルコンピューティングデバイス。
【0355】
17. 実行されたときに、モバイルコンピューティングデバイスに、
前記モバイルコンピューティングデバイスに関する状態情報を、モバイルデバイス管理エージェントを介して監視することと、
前記監視された状態情報に基づいて、セキュリティ保護ドキュメントコンテナを制御することとを行なわせる、記憶された命令を有する1つ以上の不揮発性コンピュータ読取可能媒体であって、
前記状態情報を監視することは、少なくともいくつかの前記監視された状態情報を1つ以上のポリシー管理サーバに提供することを含み、
前記セキュリティ保護ドキュメントコンテナを制御することは、
前記1つ以上のポリシー管理サーバから管理情報を受信することと、
前記受信した管理情報に含まれる少なくとも1つのコマンドを実行することとを含む、1つ以上の不揮発性コンピュータ読取可能媒体。
【0356】
18. 前記セキュリティ保護ドキュメントコンテナを制御することは、前記監視された状態情報に基づいて、前記セキュリティ保護ドキュメントコンテナに記憶されたデータへのアクセスを制御することを含む、請求項17に記載の1つ以上の不揮発性コンピュータ読取可能媒体。
【0357】
19. 前記セキュリティ保護ドキュメントコンテナを制御することは、前記監視された状態情報に基づいて、前記セキュリティ保護ドキュメントコンテナからデータを選択的にワイプすることを含む、請求項17に記載の1つ以上の不揮発性コンピュータ読取可能媒体。
【0358】
20. 記憶されたさらなる命令を有し、この命令は、実行されたときに、前記モバイルコンピューティングデバイスにさらに、
企業データを受信することと、
前記セキュリティ保護ドキュメントコンテナに前記企業データを記憶することと、
前記監視された状態情報に基づいて、デバイス状態における変化を検出することと、
前記デバイス状態における変化の検出に基づいて、前記セキュリティ保護ドキュメントコンテナからデータを選択的にワイプすることを判定することとを行なわせる、請求項17に記載の1つ以上の不揮発性コンピュータ読取可能媒体。
【0359】
さらなる予備的な請求項1から20の組Fを示す。
【0360】
1. モバイルコンピューティングデバイスにより、少なくとも1つのユーザアカウントに関するSSOクレデンシャルを受信することと、
モバイルデバイス管理エージェントを介して、前記モバイルコンピューティングデバイスに関する状態情報を監視することと、
前記監視された状態情報および前記SSOクレデンシャルに基づいて、少なくとも1つのモバイルデバイス管理ポリシーを適用することとを備え、
前記状態情報を監視することは、少なくともいくつかの前記監視された状態情報を1つ以上のポリシー管理サーバに提供することを含み、
前記少なくとも1つのモバイルデバイス管理ポリシーを適用することは、
前記1つ以上のポリシー管理サーバから管理情報を受信することと、
前記管理情報に含まれる少なくとも1つのコマンドを実行することと
を含む、方法。
【0361】
2. 前記SSOクレデンシャルは、少なくとも2つの異なる企業リソースへのアクセスにおいて使用されるよう構成される認証クレデンシャルである、請求項1に記載の方法。
【0362】
3. 前記状態情報を監視することは、前記モバイルコンピューティングデバイス上に存在する1つ以上のアプリケーションを特定することを含む、請求項1に記載の方法。
【0363】
4. 前記状態情報を監視することは、前記モバイルコンピューティングデバイスにより使用される1つ以上のネットワーク接続を特定することを含む、請求項1に記載の方法。
【0364】
5. 前記状態情報を監視することは、前記モバイルコンピューティングデバイスについての現在位置情報を判定することを含む、請求項1に記載の方法。
【0365】
6. 前記少なくとも1つのモバイルデバイス管理ポリシーを適用することは、
前記SSOクレデンシャルに基づいて、モバイルデバイス管理ポリシーの第1のセットが適用可能であることを判定することと、
前記監視された状態情報に基づいて、モバイルデバイス管理ポリシーの前記第1のセットを適用することとを含む、請求項1に記載の方法。
【0366】
7. 前記少なくとも1つのモバイルデバイス管理ポリシーを適用することは、
前記SSOクレデンシャルに基づいて、モバイルデバイス管理ポリシーの第1のセットを取得することと、
前記監視された状態情報に基づいて、モバイルデバイス管理ポリシーの前記第1のセットを適用することとを含む、請求項1に記載の方法。
【0367】
8. 前記少なくとも1つのモバイルデバイス管理ポリシーを適用することは、前記モバイルコンピューティングデバイスのアプリケーションおよび機能のうちの少なくとも1つを選択的に無効化することを含む、請求項1に記載の方法。
【0368】
9. モバイルコンピューティングデバイスであって、
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサにより実行されたときに、前記モバイルコンピューティングデバイスに、
少なくとも1つのユーザアカウントに関するSSOクレデンシャルを受信することと、
モバイルデバイス管理エージェントを介して、前記モバイルコンピューティングデバイスに関する状態情報を監視することと、
前記監視された状態情報および前記SSOクレデンシャルに基づいて、少なくとも1つのモバイルデバイス管理ポリシーを適用することとを行なわせる、コンピュータ読取可能命令を記憶するメモリとを備え、
前記状態情報を監視することは、少なくともいくつかの前記監視された状態情報を1つ以上のポリシー管理サーバに提供することを含み、
前記少なくとも1つのモバイルデバイス管理ポリシーを適用することは、
前記1つ以上のポリシー管理サーバから管理情報を受信することと、
前記管理情報に含まれる少なくとも1つのコマンドを実行することとを含む、モバイルコンピューティングデバイス。
【0369】
10. 前記SSOクレデンシャルは、少なくとも2つの異なる企業リソースへのアクセスにおいて使用されるよう構成される認証クレデンシャルである、請求項9に記載のモバイルコンピューティングデバイス。
【0370】
11. 前記状態情報を監視することは、前記モバイルコンピューティングデバイス上に存在する1つ以上のアプリケーションを特定することを含む、請求項9に記載のモバイルコンピューティングデバイス。
【0371】
12. 前記状態情報を監視することは、前記モバイルコンピューティングデバイスにより使用される1つ以上のネットワーク接続を特定することを含む、請求項9に記載のモバイルコンピューティングデバイス。
【0372】
13. 前記状態情報を監視することは、前記モバイルコンピューティングデバイスについての現在位置情報を判定することを含む、請求項9に記載のモバイルコンピューティングデバイス。
【0373】
14. 前記少なくとも1つのモバイルデバイス管理ポリシーを適用することは、
前記SSOクレデンシャルに基づいて、モバイルデバイス管理ポリシーの第1のセットが適用可能であることを判定することと、
前記監視された状態情報に基づいて、モバイルデバイス管理ポリシーの前記第1のセットを適用することとを含む、請求項9に記載のモバイルコンピューティングデバイス。
【0374】
15. 前記少なくとも1つのモバイルデバイス管理ポリシーを適用することは、
前記SSOクレデンシャルに基づいて、モバイルデバイス管理ポリシーの第1のセットを取得することと、
前記監視された状態情報に基づいて、モバイルデバイス管理ポリシーの前記第1のセットを適用することとを含む、請求項9に記載のモバイルコンピューティングデバイス。
【0375】
16. 前記少なくとも1つのモバイルデバイス管理ポリシーを適用することは、前記モバイルコンピューティングデバイスのアプリケーションおよび機能のうちの少なくとも1つを選択的に無効化することを含む、請求項9に記載のモバイルコンピューティングデバイス。
【0376】
17. 実行されたときに、モバイルコンピューティングデバイスに、
少なくとも1つのユーザアカウントに関するSSOクレデンシャルを受信することと、
モバイルデバイス管理エージェントを介して、前記モバイルコンピューティングデバイスに関する状態情報を監視することと、
前記監視された状態情報および前記SSOクレデンシャルに基づいて、少なくとも1つのモバイルデバイス管理ポリシーを適用することとを行なわせる、記憶された命令を有する1つ以上の不揮発性コンピュータ読取可能媒体であって、
前記状態情報を監視することは、少なくともいくつかの前記監視された状態情報を1つ以上のポリシー管理サーバに提供することを含み、
前記少なくとも1つのモバイルデバイス管理ポリシーを適用することは、
前記1つ以上のポリシー管理サーバから管理情報を受信することと、
前記管理情報に含まれる少なくとも1つのコマンドを実行することとを含む、1つ以上の不揮発性コンピュータ読取可能媒体。
【0377】
18. 前記SSOクレデンシャルは、少なくとも2つの異なる企業リソースへのアクセスにおいて使用されるよう構成される認証クレデンシャルである、請求項17に記載の1つ以上の不揮発性コンピュータ読取可能媒体。
【0378】
19. 前記少なくとも1つのモバイルデバイス管理ポリシーを適用することは、
前記SSOクレデンシャルに基づいて、モバイルデバイス管理ポリシーの第1のセットが適用可能であることを判定することと、
前記監視された状態情報に基づいて、モバイルデバイス管理ポリシーの前記第1のセットを適用することとを含む、請求項17に記載の1つ以上の不揮発性コンピュータ読取可能媒体。
【0379】
20. 前記少なくとも1つのモバイルデバイス管理ポリシーを適用することは、
前記SSOクレデンシャルに基づいて、モバイルデバイス管理ポリシーの第1のセットを取得することと、
前記監視された状態情報に基づいて、モバイルデバイス管理ポリシーの前記第1のセットを適用することとを含む、請求項17に記載の1つ以上の不揮発性コンピュータ読取可能媒体。