(57)【要約】  本明細書に記載される実施形態は、企業ネットワークに接続されたデバイスのためのデバイスコンプライアンスを管理することを対象とされる。たとえば、モバイルデバイスマネジャは、企業のデータおよび／またはセキュリティポリシとのコンプライアンスを遵守するために、コンフィギュレーション設定を実施するコンピューティングデバイスにコンフィギュレーション設定を提供し得る。モバイルデバイスマネジャは、コンピューティングデバイスによって実施された各デバイスのコンフィギュレーション設定のローカルリファレンスも維持する。その後、モバイルデバイスマネジャが、コンピューティングデバイスがまだコンプライアンスを遵守しているか否かに関する判定を実行するとき、モバイルデバイスマネジャは、コンピューティングデバイスにその設定について明示的に照会するのではなく、単にローカルリファレンスを参照して、コンピューティングデバイスの設定を判定する必要がある。前述した技法は、セキュリティベースラインのコンプライアンスの判定、ＩｏＴデバイスのコンプライアンスの判定、および企業のネットワークを利用する企業のビジネスパートナによって利用されるデバイスなどの他のタイプのデバイスのコンプライアンスの判定に拡張され得る。
2021531573.tif 000002
【特許請求の範囲】
【請求項１】
サーバによって実施される方法であって、
前記サーバとコンピューティングデバイスとを通信可能に結合するネットワークを介してアクセス可能な前記コンピューティングデバイスのためのコンフィギュレーション設定を判定するステップと、
前記コンフィギュレーション設定を、前記ネットワークを介して、前記コンピューティングデバイスに送信するステップと、
前記サーバに前記コンフィギュレーション設定へのリファレンスを維持するステップと、
前記コンピューティングデバイスによって前記コンフィギュレーション設定が実施されたというアクノレッジメントを、前記コンピューティングデバイスから、前記ネットワークを介して受信するステップと、
前記アクノレッジメントの受信に応答して、前記コンピューティングデバイスを、コンプライアンスルールとのコンプライアンスを遵守しているものとして指定するステップとを備える、方法。
【請求項２】
前記コンフィギュレーション設定への前記リファレンスを、トリガイベントの検出に応答して、前記コンプライアンスルールと比較することによって、前記コンピューティングデバイスが前記コンプライアンスルールとのコンプライアンスを遵守し続けているか否かを判定するステップと、
前記コンピューティングデバイスが前記ネットワークを介してアクセス可能なリソースにアクセスすることを阻止し、前記コンピューティングデバイスがもはやコンプライアンスを遵守していないと判定することに応じて、前記コンプライアンスルールとのコンプライアンスを遵守していないとして前記コンピューティングデバイスを指定するステップと、
前記コンピューティングデバイスがコンプライアンスを遵守し続けているとの判定に応じて、前記コンピューティングデバイスがコンプライアンスを遵守しているという指定を維持するステップとをさらに備える、請求項１に記載の方法。
【請求項３】
前記リソースは、
前記ネットワークを介してアクセス可能な電子メールサーバ、
前記ネットワークを介してアクセス可能なデータリポジトリ、または、
前記ネットワークを介してアクセス可能なアプリケーションサーバのうちの少なくとも１つを備える、請求項２に記載の方法。
【請求項４】
前記コンピューティングデバイスがもはやコンプライアンスを遵守していないと判定することに応じて、前記コンプライアンスルールとのコンプライアンスを遵守している新しいコンフィギュレーション設定を、前記ネットワークを介して前記コンピューティングデバイスに送信するステップをさらに備える、請求項２に記載の方法。
【請求項５】
前記トリガイベントは、
所定の期間の満了、
前記コンピューティングデバイスの第２のコンフィギュレーション設定が変化したことを示す、前記コンピューティングデバイスから受信したインジケーション、または、
ユーザが前記コンピューティングデバイスにログインしたことを示すインジケーションのうちの少なくとも１つを備える、請求項２に記載の方法。
【請求項６】
前記コンフィギュレーション設定は、
前記コンピューティングデバイスによって実施される暗号化設定、
前記コンピューティングデバイスによって実施されるセキュリティ設定、または、
前記コンピューティングデバイスにインストールする必要のあるアプリケーションまたはオペレーティングシステムのうちの少なくとも１つの最小バージョンのうちの少なくとも１つを指定する、請求項１に記載の方法。
【請求項７】
前記コンピューティングデバイスのための前記コンフィギュレーション設定を判定する前記ステップは、
前記コンピューティングデバイスにログインしたユーザを識別するステップと、
前記ユーザおよび前記コンピューティングデバイスに関連付けられたコンフィギュレーション設定を判定するステップとを備える、請求項１に記載の方法。
【請求項８】
サーバであって、
少なくとも１つのプロセッサ回路と、
前記少なくとも１つのプロセッサ回路によって実行されるように構成されたプログラムコードを格納する少なくとも１つのメモリとを備え、前記プログラムコードは、
前記サーバとコンピューティングデバイスとを通信可能に結合するネットワークを介してアクセス可能な前記コンピューティングデバイスのためのコンフィギュレーション設定を判定し、
前記ネットワークを介して、前記コンフィギュレーション設定を前記コンピューティングデバイスに送信し、
前記サーバに前記コンフィギュレーション設定へのリファレンスを維持し、
前記コンピューティングデバイスによって前記コンフィギュレーション設定が実施されたというアクノレッジメントを、前記ネットワークを介して、前記コンピューティングデバイスから受信し、
前記アクノレッジメントの受信に応答して、コンプライアンスルールとのコンプライアンスを遵守しているものとして前記コンピューティングデバイスを指定するように構成されたコンプライアンスエンジンを備える、サーバ。
【請求項９】
前記コンプライアンスエンジンはさらに、
前記コンフィギュレーション設定への前記リファレンスを、トリガイベントの検出に応答して、前記コンプライアンスルールと比較することによって、前記コンピューティングデバイスが前記コンプライアンスルールとのコンプライアンスを遵守し続けているか否かを判定し、
前記コンピューティングデバイスが前記ネットワークを介してアクセス可能なリソースにアクセスすることを阻止し、前記コンピューティングデバイスがもはやコンプライアンスを遵守していないと判定することに応じて、前記コンプライアンスルールとのコンプライアンスを遵守していないとして前記コンピューティングデバイスを指定し、
前記コンピューティングデバイスがコンプライアンスを遵守し続けているとの判定に応じて、前記コンピューティングデバイスがコンプライアンスを遵守しているという指定を維持するように構成される、請求項８に記載のサーバ。
【請求項１０】
前記リソースは、
前記ネットワークを介してアクセス可能な電子メールサーバ、
前記ネットワークを介してアクセス可能なデータリポジトリ、または、
前記ネットワークを介してアクセス可能なアプリケーションサーバのうちの少なくとも１つを備える、請求項９に記載のサーバ。
【請求項１１】
前記コンプライアンスエンジンはさらに、
前記コンピューティングデバイスがもはやコンプライアンスを遵守していないとの判定に応じて、前記コンプライアンスルールとのコンプライアンスを遵守している新しいコンフィギュレーション設定を、前記ネットワークを介して前記コンピューティングデバイスに送信するように構成される、請求項９に記載のサーバ。
【請求項１２】
前記トリガイベントは、
所定の期間の満了、
前記コンピューティングデバイスの第２のコンフィギュレーション設定が変化したことを示す、前記コンピューティングデバイスから受信したインジケーション、または、
ユーザが前記コンピューティングデバイスにログインしたことを示すインジケーションのうちの少なくとも１つを備える、請求項９に記載のサーバ。
【請求項１３】
前記コンフィギュレーション設定は、
前記コンピューティングデバイスによって実施される暗号化設定、
前記コンピューティングデバイスによって実施されるセキュリティ設定、または、
前記コンピューティングデバイスにインストールする必要のあるアプリケーションまたはオペレーティングシステムのうちの少なくとも１つの最小バージョンのうちの少なくとも１つを指定する、請求項８に記載のサーバ。
【請求項１４】
前記コンプライアンスエンジンは、
前記コンピューティングデバイスにログインしたユーザを識別するステップと、
前記ユーザおよび前記コンピューティングデバイスに関連付けられたコンフィギュレーション設定を判定するステップと
によって、前記コンピューティングデバイスのための前記コンフィギュレーション設定を判定するように構成される、請求項８に記載のサーバ。
【請求項１５】
少なくとも１つのプロセッサによって実行されると、方法を実行する、記録されたプログラム命令を有するコンピュータ可読記憶媒体であって、前記方法は、
サーバとコンピューティングデバイスとを通信可能に結合するネットワークを介してアクセス可能な前記コンピューティングデバイスのためのコンフィギュレーション設定を判定するステップと、
前記ネットワークを介して、前記コンフィギュレーション設定を前記コンピューティングデバイスに送信するステップと、
前記サーバに前記コンフィギュレーション設定へのリファレンスを維持するステップと、
前記コンピューティングデバイスによって前記コンフィギュレーション設定が実施されたというアクノレッジメントを、前記ネットワークを介して、前記コンピューティングデバイスから受信するステップと、
前記アクノレッジメントの受信に応答して、コンプライアンスルールとのコンプライアンスを遵守しているものとして前記コンピューティングデバイスを指定するステップとを備える、コンピュータ可読記憶媒体。
【発明の詳細な説明】
【背景技術】
【０００１】
[0001]モバイルデバイス管理（ＭＤＭ）は、従業員の生産性を維持し、企業ポリシに違反しないようにする手法である。多くの組織は、ＭＤＭ製品／サービスを使用して従業員の活動を管理している。ＭＤＭは主に、企業データの分離、電子メールの保護、デバイス上の企業文書の保護、企業ポリシの適用、およびラップトップや様々なカテゴリのハンドヘルドを含むモバイルデバイスの統合および管理を取り扱う。ＭＤＭは、組織のネットワーク内のすべてのモバイルデバイスのデータおよびコンフィギュレーション設定を制御および保護することにより、サポートコストおよびビジネスリスクを低減できる。
【発明の概要】
【課題を解決するための手段】
【０００２】
[0002]この概要は、以下の詳細な説明にさらに記載される概念の選択を、簡略化形式で紹介するために提供される。この概要は、主張された主題の主要な特徴または本質的な特徴を特定することは意図されず、主張された主題の範囲を制限するために使用されることも意図されていない。
【０００３】
[0003]本明細書に記載される実施形態は、ネットワーク、たとえば、企業ネットワークに接続されたデバイスのデバイスコンプライアンスを管理することを対象とされる。たとえば、モバイルデバイスマネジャは、企業のポリシ（たとえば、データおよび／またはセキュリティポリシ）とのコンプライアンスを遵守するために、コンフィギュレーション設定を実施するコンピューティングデバイスにコンフィギュレーション設定を提供し得る。モバイルデバイスマネジャは、コンピューティングデバイスによって実施された各デバイスのコンフィギュレーション設定のローカルリファレンスも維持する。その後、モバイルデバイスマネジャが、コンピューティングデバイスがコンプライアンスを遵守し続けているか否かの判定を実行する場合、モバイルデバイスマネジャは、その設定をコンピューティングデバイスに明示的に照会するのではなく、ローカルリファレンスを参照して、コンピューティングデバイスの設定を判定する必要がある。前述した技法は、セキュリティベースラインのコンプライアンスの判定、モノのインターネット（ＩｏＴ）デバイスのコンプライアンスの判定、および企業のネットワークを利用する企業のビジネスパートナによって利用されるデバイスのような他のタイプのデバイスのコンプライアンスの判定に拡張され得る。
【０００４】
[0004]本発明のさらなる特徴および利点、ならびに本発明の様々な実施形態の構造および動作は、添付の図面を参照して以下に詳細に記載される。本発明は、本明細書に記載される特定の実施形態に限定されないことに留意されたい。そのような実施形態は、例示の目的でのみ本明細書に提示される。追加の実施形態は、本明細書に含まれる教示に基づいて、当業者に明らかになるであろう。
【０００５】
[0005]本明細書に組み込まれ、明細書の一部を形成する添付の図面は、実施形態を例示し、さらに、説明とともに、実施形態の原理を説明し、当業者が、実施形態を作成および使用することを可能にすることに役立つ。
【図面の簡単な説明】
【０００６】
【図１】[0006]例示的な実施形態にしたがって、デバイスコンプライアンスを管理するためのシステムのブロック図である。
【図２】[0007]例示的な実施形態にしたがって、図１のシステムのさらに詳細な例であるデバイスコンプライアンスを管理するためのシステムのブロック図である。
【図３】[0008]例示的な実施形態にしたがって、デバイスコンプライアンスを管理するための例示的な方法のフローチャートである。
【図４】[0009]例示的な実施形態にしたがって、デバイスコンプライアンスを管理するためのシステムのブロック図である。
【図５】[0010]例示的な実施形態にしたがって、コンピューティングデバイスがコンプライアンスルールとのコンプライアンスを遵守し続けているか否かを判定するための例示的な方法のフローチャートである。
【図６】[0011]実施形態にしたがって、コンピューティングデバイスがコンプライアンスルールとのコンプライアンスを遵守し続けているか否かを判定するためのシステムのブロック図である。
【図７】[0012]実施形態が実施され得る例示的なユーザデバイスのブロック図である。
【図８】[0013]実施形態を実施するために使用され得る例示的なコンピューティングデバイスのブロック図である。
【発明を実施するための形態】
【０００７】
[0014]本発明の特徴および利点は、同様の参照文字が全体を通して対応する要素を識別する図面とあわせて解釈される場合、以下に記載される詳細な説明からより明らかになるであろう。図面において、同様の参照番号は、一般に、同一、機能的に類似した、および／または、構造的に類似した要素を示す。要素が最初に表れる図面は、対応する参照番号の左端の数字によって示される。
Ｉ．はじめに
[0015]本明細書および添付の図面は、本発明の特徴を組み込んだ１つまたは複数の実施形態を開示する。本発明の範囲は、開示された実施形態に限定されない。開示された実施形態は、単に本発明を例示しており、開示された実施形態の変更版もまた、本発明に包含される。本発明の実施形態は、本明細書に添付された特許請求の範囲によって定義される。
【０００８】
[0016]本明細書における「１つの実施形態」、「実施形態」、「例示的な実施形態」などへの言及は、記載された実施形態が、特定の特徴、構造、または特性を含み得るが、すべての実施形態が、特定の特徴、構造、または特性を必ずしも含むとは限らないことを示す。さらに、そのような句は、必ずしも同じ実施形態を称するとは限らない。さらに、特定の特徴、構造、または特性が、実施形態に関連して記載される場合、明示的に記載されているか否かに関わらず、他の実施形態に関連してそのような特徴、構造、または特性を達成することは当業者の知識の範囲内であると具申される。
【０００９】
[0017]多くの例示的な実施形態が以下に記載される。本明細書において提供されるセクション／サブセクションの見出しは、限定することは意図されていないことに留意されたい。実施形態は、本文書全体を通して記載され、任意のタイプの実施形態が、任意のセクション／サブセクションの下に含まれ得る。さらに、任意のセクション／サブセクションに開示される実施形態は、任意の方式で、同じセクション／サブセクションおよび／または異なるセクション／サブセクションに記載される任意の他の実施形態と組み合わされ得る。
ＩＩ．デバイスコンプライアンスを管理するためのシステムおよび方法
[0018]本明細書に記載される実施形態は、ネットワーク、たとえば、企業ネットワークに接続されているデバイスのデバイスコンプライアンスを管理することを対象とされる。たとえば、サーバにおけるモバイルデバイスマネジャは、企業のポリシ（たとえば、データおよび／またはセキュリティポリシ）とのコンプライアンスを遵守するために、コンフィギュレーション設定を実施するコンピューティングデバイスに、コンフィギュレーション設定を提供し得る。モバイルデバイスマネジャは、コンピューティングデバイスによって実施された各デバイスのコンフィギュレーション設定のローカルリファレンスも維持する。その後、モバイルデバイスマネジャが、コンピューティングデバイスがコンプライアンスを遵守し続けているか否かの判定を実行する場合、モバイルデバイスマネジャは、その設定をコンピューティングデバイスに明示的に照会するのではなく、ローカルリファレンスを参照して、コンピューティングデバイスの設定を判定する必要がある。前述した技法は、セキュリティベースラインのコンプライアンスの判定、モノのインターネット（ＩｏＴ）デバイスのコンプライアンスの判定、および企業のネットワークを利用する企業のビジネスパートナによって利用されるデバイスのような他のタイプのデバイスのコンプライアンスの判定に拡張され得る。
【００１０】
[0019]前述した技法は、モバイルデバイスマネジャとコンピューティングデバイスとの間の信頼（すなわち、デバイス信頼）を確立し、デバイスは、コンフィギュレーション設定を維持し、そのような設定が変化された場合にモバイルデバイスマネジャに通知することが期待される。したがって、ローカルリファレンスは、常に特定のデバイスのコンフィギュレーション設定を反映しているため、モバイルデバイスマネジャは、デバイスに照会することなく、デバイスのコンフィギュレーション設定を判定できる。そのような技法は、設定についてデバイスに照会するよりも信頼性が高くなる。なぜなら、照会と、デバイスによって提供される照会への応答との両方が、誤り（たとえば、送信誤り）の影響を受けやすいためである。
【００１１】
[0020]さらに、コンプライアンスチェックは、そのコンフィギュレーション設定についてコンピューティングデバイスに照会する必要なしに実行されるので、有利なことに、企業のネットワークを横切るネットワークトラフィックが減少し、それによってネットワーク帯域幅を解放する。さらに、コンピューティングデバイスはもはや、モバイルデバイスマネジャからの多数のコンフィギュレーション照会に応答する必要がなくなるので、コンピューティングデバイスによって、より少量のコンピューティングリソースしか利用されず、そのような技術によって、より低い電力消費が達成される。
【００１２】
[0021]さらに、前述した技法は、他の技術、すなわちモバイルデバイス管理に改良を提供する。つまり、上述した照会不要な技法では、デバイスがネットワークを介してコンフィギュレーション設定照会に応答するのを待つ必要がなく、コンフィギュレーション設定のローカルリファレンスを参照してデバイスの設定を判定するので、コンプライアンスチェックがはるかに高速になる。
【００１３】
[0022]図１は、実施形態にしたがって、デバイスコンプライアンスを管理するためのシステム１００のブロック図である。図１に示されるように、システム１００は、企業ネットワーク１１０を介して通信可能に結合された、サーバ１０２、１つまたは複数のコンピューティングデバイス１０４、および１つまたは複数のデータストア１０８を含む。データストア１０８は、１つまたは複数の物理的メモリおよび／またはストレージデバイスを備え得る。データストア１０８は、本明細書に記載される、および／または本開示の利益を有する当業者によって理解されるであろう、任意のタイプの物理的メモリおよび／またはストレージデバイスであり得る。企業ネットワーク１１０は、１つまたは複数の企業の所在地にある企業デバイス（たとえば、コンピューティングデバイス１０４）を他の企業デバイスに相互接続し、企業デバイスが、コンピューティングリソースにアクセスし、および／または、コンピューティングリソースを共有できるようにする目的で、企業によって確立されたプライベートコンピュータネットワークを備える。
【００１４】
[0023]コンピューティングデバイス１０４は、企業のメンバ（たとえば、従業員）によって利用されるか、そうでなければアクセス可能なデバイスを表すことが意図される。本明細書で使用される場合、「企業」という用語は、会社、非営利組織、および政府機関を含む、多種多様な組織タイプのいずれかを広く称する。コンピューティングデバイス１０４のユーザは、本明細書では「企業ユーザ」または単に「ユーザ」と称され得る。コンピューティングデバイス１０４の各々は、たとえば、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、ネットブック、スマートフォンなどを備え得るが、これらに限定されない。コンピューティングデバイス１０４の追加の例は、図７および図８を参照して以下に記載される。
【００１５】
[0024]データストア１０８は、コンピューティングデバイス１０４のための１つまたは複数のコンフィギュレーション１１２を格納するように構成される。コンフィギュレーション１１４の各々は、コンピューティングデバイス１０４の特定のコンピューティングデバイスおよび／またはコンピューティングデバイス１０４の各々の特定のユーザのための１つまたは複数のコンフィギュレーション設定を指定し得る。したがって、コンピューティングデバイス１０４の各々は、コンフィギュレーション１１４の２つ以上に関連付けられ得る。たとえば、コンフィギュレーション１１４のうちの第１のコンフィギュレーションは、特定のコンピューティングデバイスの第１のユーザに関連付けられ得、コンフィギュレーション１１４のうちの第２のコンフィギュレーションは、特定のコンピューティングデバイスの第２のユーザに関連付けられ得る。コンフィギュレーションと、コンフィギュレーションが対応する特定のコンピューティングデバイスの特定のユーザは、本明細書では、ユーザデバイスペアと称される。コンフィギュレーション設定の例は、コンピューティングデバイス１０４によって実施される暗号化設定、コンピューティングデバイス１０４によって実施されるセキュリティ設定、アプリケーションの少なくとも１つの最小バージョン、または、コンピューティングデバイス１０４にインストールされる必要のあるオペレーティングシステムなどを含むが、これらに限定されない。暗号化設定は、コンピューティングデバイス１０４に含まれるストレージデバイスが、（たとえば、ＢｉｔＬｏｋｅｒＴＭなどであるがこれに限定されない暗号化プログラムを介して）暗号化されるか否かを指定し得る。セキュリティ設定は、コード署名が、コンピューティングデバイス１０４によって実施されるべきか否かに関わらず、トラステッドプラットフォームモジュール（ＴＰＭ）がコンピューティングデバイス１０４などによって実施されるべきであるか否かに関わらず、コンピューティングデバイス１０４によって実施されるパスワードポリシ（たとえば、パスワードの長さを最小１０文字、１２文字などに設定する）を指定し得る。上述したコンフィギュレーション設定は純粋に例示的であり、他のコンフィギュレーション設定が使用され得ることに留意されたい。
【００１６】
[0025]サーバ１０２は、企業によって指定されたポリシ（たとえば、データおよび／またはセキュリティポリシ）に関してコンピューティングデバイス１０４のコンプライアンスを管理するように構成され得る。サーバ１０２は、モバイルデバイスマネジャとも称され得る。ポリシは、１つまたは複数のコンプライアンスルールにしたがって指定され得る。たとえば、サーバ１０２は、コンプライアンスエンジン１１２を備え得る。コンプライアンスエンジン１１２は、コンピューティングデバイス１０４のうちの特定のコンピューティングデバイスに提供されるコンフィギュレーション１１４を判定し、判定されたコンフィギュレーションをそれに提供し得る。判定されたコンフィギュレーションは、コンプライアンスルールとのコンプライアンスを遵守し得る。コンプライアンスルールは、企業の管理者（たとえば、ＩＴ管理者、または、企業ユーザに代わってコンピューティングデバイス１０４の展開、維持、および／または設定を担当し得る企業内の他の人）によって指定され得る。コンピューティングデバイス１０４の各々は、コンフィギュレーション１１４によって指定されたコンフィギュレーション設定を実施し、サーバ１０２にアクノレッジメントを提供するように構成される。アクノレッジメントは、コンピューティングデバイスがコンフィギュレーション設定を実施したことを示す。コンプライアンスエンジン１１２は、アクノレッジメントを受信すると、受信されたアクノレッジメントから、コンピューティングデバイスを、コンプライアンスルールとのコンプライアンスを遵守しているものとして指定する。
【００１７】
[0026]コンプライアンスエンジン１１２は、コンピューティングデバイス１０４の各々によって実施されたコンフィギュレーション設定のローカルリファレンスを維持するようにさらに構成され得る。コンプライアンスエンジン１１２は、コンピューティングデバイス１０４の特定のコンピューティングデバイスが、このリファレンスを使用してコンプライアンスルールとのコンプライアンスを遵守し続けているか否かを判定するように構成され得る。そうすることにより、コンプライアンスエンジン１１２は、そのコンフィギュレーション設定についてコンピューティングデバイス１０４に照会する必要がなく、単にリファレンスにアクセスして、コンピューティングデバイス１０４によって実施されたコンフィギュレーション設定を判定する必要がある。
【００１８】
[0027]図１のシステム１００は、実施形態において、様々な手法で実施され得る。たとえば、図２は、例示的な実施形態にしたがうシステム２００の詳細なブロック図を示す。システム２００は、システム１００の例である。図２に示されるように、システム２００は、サーバ２０２、コンピューティングデバイス２０４、データストア２０８、サードパーティコンピュティングデバイス２１８、およびモノのインターネット（ＩｏＴ）デバイス２２０を含み、これらの各々は、企業ネットワーク２１０を介して通信可能に結合される。サーバ２０２、コンピューティングデバイス２０４、データストア２０８、および企業ネットワーク２１０は、図１を参照してそれぞれ上述したように、サーバ１０２、コンピューティングデバイス１０４、データストア２０８、および企業ネットワーク１１０の例である。
【００１９】
[0028]データストア２０８は、複数の異なるタイプのデバイスのための複数の異なるコンフィギュレーションを格納するように構成される。たとえば、図２に示されるように、データストア２０８は、デバイスコンフィギュレーション２２２、サードパーティコンフィギュレーション２２８、および相手先ブランド供給（ＯＥＭ）コンフィギュレーション２２６を格納し得る。デバイスコンフィギュレーション２２２は、コンピューティングデバイス２０４および／またはコンピューティングデバイス２０４の特定のユーザのための１つまたは複数のコンフィギュレーション設定を指定し得る。ＯＥＭコンフィギュレーション２２６は、ＩｏＴデバイス２２０のコンフィギュレーション設定を指定し得、サードパーティコンフィギュレーション２２８は、サードパーティコンピュティングデバイス２１８のコンフィギュレーション設定を指定し得る。データストア２０８はまた、ソフトウェア開発者（たとえば、オペレーティングシステム（ＯＳ）開発者）が、そのようなデバイスを安全に保つために推奨する（コンピューティングデバイス２０４、サードパーティコンピュティングデバイス２１８、および／またはＩｏＴデバイス２２０などの）デバイスのコンフィギュレーション設定を指定し得るセキュリティベースライン２２４を格納し得る。デバイスコンフィギュレーション２２２、サードパーティコンフィギュレーション２２８、ＯＥＭコンフィギュレーション２２６、およびセキュリティベースライン２２４の各々は、ファイル（たとえば、ＸＭＬファイル、テキストファイルなど）として格納され得る。デバイスコンフィギュレーション２２２、サードパーティコンフィギュレーション２２８、ＯＥＭコンフィギュレーション２２６、およびセキュリティベースライン２２４に関する追加の詳細が以下に記載される。
【００２０】
[0029]デバイスコンフィギュレーション２２２は、企業によって維持され、企業の従業員に支給されるコンピューティングデバイスであるコンピューティングデバイス２０４のコンフィギュレーション設定を指定し得る。デバイスコンフィギュレーション２２２は、企業の管理者によって（たとえば、グラフィカルユーザインターフェース（ＧＵＩ）を介して）指定され得る。デバイスコンフィギュレーション２２２は、サーバ２０２によって維持される１つまたは複数のコンプライアンスルール２１４にしたがって指定される。コンプライアンスルール２１４はまた、（たとえば、ＧＵＩを介して）企業の管理者によっても指定され得る。コンプライアンスルール２１４は、企業によって指定されたポリシとのコンプライアンスを遵守するために、企業ネットワーク２１０に接続されたデバイス（たとえば、コンピューティングデバイス２０４、サードパーティコンピュティングデバイス２１８、およびＩｏＴデバイス２２０）によって利用されるべきコンフィギュレーション設定を指定し得る。
【００２１】
[0030]サーバ２０２は、コンピューティングデバイス２０４に提供されるデバイスコンフィギュレーション２２２を判定し、判定されたコンフィギュレーションをそれに提供するように構成され得る。たとえば、ユーザが最初に、新たに支給されたコンピューティングデバイスにログインするとき、サーバ２０２は、そのコンピューティングデバイスおよび／またはユーザに関連付けられたデバイスコンフィギュレーション２２２を検索し、デバイスコンフィギュレーション２２２をコンピューティングデバイスに提供し得る。図２に示されるように、コンピューティングデバイス２０４の各々は、受信されたデバイスコンフィギュレーションによって指定されたコンフィギュレーション設定を実施するように構成されているエージェント２１６を実行するように構成され得る。設定を実施した後、エージェント２１６は、コンプライアンスエンジン２１２にアクノレッジメントを提供し得る。アクノレッジメントは、コンピューティングデバイス２０４がコンフィギュレーション設定を実施したことを示す。コンプライアンスエンジン２１２は、アクノレッジメントを受信すると、コンピューティングデバイスを、コンプライアンスルール２１４とのコンプライアンスを遵守しているものとして指定する。
【００２２】
[0031]サーバ２０４は、特定のユーザデバイスペアリングがコンプライアンスを遵守しているか否かに関する各ユーザデバイスペアリングの指定を含むコンプライアンスレコード２３２を維持し得る。たとえば、コンプライアンスレコード２３２は、複数のエントリを備えるデータ構造（たとえば、テーブル）を備え得、各エントリは、特定のユーザデバイスペア、およびそのユーザデバイスペアがコンプライアンスを遵守しているか否かに関するインジケーションを指定する。サーバ２０２は、各ユーザデバイスペアリングに対して実施されたコンフィギュレーション設定のローカルコンフィギュレーションリファレンス２３０を維持するようにさらに構成され得る。コンフィギュレーションリファレンス２３０は、複数のエントリを備えるデータ構造（たとえば、テーブル）を備え得、各エントリは、特定のユーザデバイスペアおよびそのペアによって実施されたコンフィギュレーション設定を指定する。上述したコンフィギュレーションリファレンス２３０および／またはコンプライアンスレコード２３２の構造および／または構成は、純粋に例示的なものであり、他の構造および／または構成が使用され得ることに留意されたい。
【００２３】
[0032]コンプライアンスエンジン２１２は、コンピューティングデバイス２０４が、リファレンス２３０を使用してコンプライアンスルールとのコンプライアンスを遵守し続けているか否かを判定するように構成され得る。そうすることにより、コンプライアンスエンジン２１２は、コンフィギュレーション設定についてコンピューティングデバイス２０４に照会する必要なく、単にリファレンス２３０にアクセスして、コンピューティングデバイス２０４によって実施されたコンフィギュレーション設定を判定する必要がある。コンプライアンスエンジン２１２は、トリガイベントを検出したときにコンピューティングデバイス２０４がコンプライアンスを遵守し続けているか否かを判定し得る。
【００２４】
[0033]実施形態によれば、トリガイベントは、所定の期間の満了である。そのような実施形態によれば、コンプライアンスエンジン２１２は、コンプライアンスルール２１４を、コンピューティングデバイス２０４のコンフィギュレーション設定と定期的に比較し得る。時間が経過すると、コンプライアンスルール２１４は、企業の管理者によって変更され得る。したがって、コンプライアンスエンジン２１２は、リファレンス２３０を使用することによって、コンピューティングデバイス２０４によって実施されたコンフィギュレーション設定が、コンプライアンスルール２１４とのコンプライアンスを遵守しているか否かを定期的に判定し得る。たとえば、コンプライアンスエンジン２１２は、リファレンス２３０を使用してコンピューティングデバイス２０４によって利用されるコンフィギュレーション設定を検索し、コンフィギュレーション設定をコンプライアンスルール２１４と比較して、コンフィギュレーション設定がコンプライアンスを遵守しているか否かを判定し得る。コンプライアンス設定が、コンプライアンスルール２１４とのコンプライアンスを遵守していない場合、コンプライアンスエンジン２１２は、コンピューティングデバイス２０４がもはやコンプライアンスを遵守していないと判定し得る。コンプライアンス設定が、コンプライアンスルール２１４とのコンプライアンスを遵守している場合、コンプライアンスエンジン２１２は、コンピューティングデバイス２０４がコンプライアンスを遵守し続けていると判定し得る。
【００２５】
[0034]別の実施形態によれば、トリガイベントは、コンフィギュレーション設定が変化したことを示す、コンピューティングデバイス２０４からのインジケーションである。たとえば、コンピューティングデバイス２０４のうちの特定のコンピューティングデバイスのユーザ、および／またはコンピューティングデバイス２０４で実行しているアプリケーションは、コンフィギュレーション設定を変更し得る。エージェント２１６は、コンフィギュレーション設定が変化されたことに応じて、コンプライアンスエンジン２１２に通知を提供するように構成され得る。この通知は、どの設定が変化されたのかを指定し得る。コンプライアンスエンジン２１２は、特定のコンピューティングデバイスからの通知を受信すると、変化された設定により、特定のコンピューティングデバイスが、コンプライアンスルール２１４とのコンプライアンスをもはや遵守していないか否かを判定する。たとえば、コンプライアンスエンジン２１２は、通知に示されるコンフィギュレーション設定をコンプライアンスルール２１４と比較して、変化された設定が、コンプライアンスルール２１４とのコンプライアンスを遵守しているか否かを判定し得る。コンフィギュレーション設定がコンプライアンスルール２１４とのコンプライアンスを遵守している場合、コンプライアンスエンジン２１２は、特定のコンピューティングデバイスがコンプライアンスを遵守し続けていると判定し得る。
【００２６】
[0035]コンフィギュレーション設定がコンプライアンスルール２１４とのコンプライアンスを遵守していない場合、コンプライアンスエンジン２１２は、特定のコンピューティングデバイスがもはやコンプライアンスを遵守していないと判定し、コンプライアンスレコード２３２内のコンピューティングデバイスの指定を更新して、コンピューティングデバイスがもはやコンプライアンスを遵守していないことを示す。コンプライアンスエンジン２１２はまた、そのようなコンピューティングデバイスが、企業ネットワーク２１０を介してアクセス可能なリソースにアクセスすることを阻止し得る。そのようなリソースは、電子メールサーバ、データリポジトリ、アプリケーションサーバなどを含むが、これらに限定されない。そのようなリソースへのアクセスは、コンピューティングデバイス２０４が、コンプライアンスルール２１４とのコンプライアンスを遵守するまで阻止され得る。たとえば、コンプライアンスエンジン２１２は、コンプライアンスルール２１４とのコンプライアンスを遵守している新しいコンフィギュレーション設定を送信し得る。エージェント２１６は、新しいコンフィギュレーション設定を実施すると、アクノレッジメントをコンプライアンスエンジン２１２に送信し得る。コンプライアンスエンジン２１２は、アクノレッジメントを受信すると、コンピューティングデバイス２０４を、コンプライアンスを遵守しているものとして指定し、それに応じてコンプライアンスレコード２３２を更新し得る。
【００２７】
[0036]実施形態によれば、エージェント２１６は、サーバ２０２によって提供されるコンフィギュレーション設定を維持するように構成される。たとえば、コンピューティングデバイスにおいて実行しているユーザまたはアプリケーションが、コンフィギュレーション設定を変化させるよう試みる事象では、エージェント２１６は、変化の発生を阻止し、および／または変化をロールバックし得る。エージェント２１６がコンフィギュレーション設定を阻止および／またはロールバックすることができない事象では、エージェント２１６は、変化された設定を示す通知を、コンプライアンスエンジン２１２に送信し得る。
【００２８】
[0037]さらなる実施形態によれば、トリガイベントは、ユーザが、コンピューティングデバイス（たとえば、コンピューティングデバイス２０４）を介して企業ネットワーク２１０にログインしたことを示すインジケーションである。たとえば、コンピューティングデバイスは、コンピューティングデバイスにログインするユーザに応じて、サーバ２０２に通知を提供するように構成され得る。コンプライアンスエンジン２１２は、通知を受信すると、リファレンス２３０を使用して、ログインしたユーザのために（すなわち、ユーザデバイスペアのために）コンピューティングデバイス２０４によって利用されるコンフィギュレーション設定を検索し、コンフィギュレーション設定をコンプライアンスルール２１４と比較して、コンフィギュレーション設定がコンプライアンスを遵守しているか否かを判定し得る。コンプライアンス設定が、コンプライアンスルール２１４とのコンプライアンスを遵守していない場合、コンプライアンスエンジン２１２は、コンピューティングデバイス２０４がもはやコンプライアンスを遵守していないと判定し得る。コンプライアンス設定が、コンプライアンスルール２１４とのコンプライアンスを遵守している場合、コンプライアンスエンジン２１２は、コンピューティングデバイス２０４がコンプライアンスを遵守し続けていると判定し得る。前述したことにより、コンプライアンスエンジン２１２は、ユーザが特定のデバイスにログオンするたびに、コンフィギュレーション設定を常にプッシュダウンする必要なしに、ユーザデバイスペアにコンプライアンスを適用することができる。これにより、コンプライアンスが、ユーザごとに評価されている場合、マルチユーザ環境でのコンプライアンスが即座に実行される。たとえば、異なるユーザがデバイスにログインするとき、コンプライアンスエンジン２１２は、サーバ２０２によって格納されたコンフィギュレーション設定へのリファレンス２３０にアクセスすることによって、そのユーザデバイスペアに対してすでに実施されているコンフィギュレーション設定を単に判定し、デバイスによってすでに実施されているコンフィギュレーション設定と、コンプライアンスルール２１４との間に相違があるか否かを判定し得る。相違がない場合、デバイスは、コンプライアンスレコード２３２に、コンプライアンスを遵守しているとして即座に指定される。前述したことは、サーバ２０２がその現在のコンフィギュレーション設定についてデバイスに再照会する必要なしに達成される。対照的に、以前の技法では、ユーザがログオンするたびに、サーバがユーザ固有の設定をデバイスにプッシュダウンし、その後その設定についてデバイスに照会する必要があった。サーバは、その後、デバイスから受け取った設定をコンプライアンスルールと比較した後、デバイスをコンプライアンスを遵守しているとして指定する必要がある。前述した技法は、デバイスによってすでに実施されている既存の設定が、コンプライアンスルール２１４とのコンプライアンスを遵守している場合、この前後の通信を完全に排除する。
【００２９】
[0038]相違がある場合、コンプライアンスエンジン２１２は、そのようなコンピューティングデバイス２０４のコンプライアンスレコード２３２の指定を更新して、そのようなデバイスがもはやコンプライアンスを遵守していないことを示し得る。コンプライアンスエンジン２１２はまた、そのようなコンピューティングデバイス２０４が、企業ネットワーク２１０を介してアクセス可能なリソースにアクセスすることを阻止し得る。そのようなリソースは、電子メールサーバ、データリポジトリ、アプリケーションサーバなどを含むが、これらに限定されない。そのようなリソースへのアクセスは、コンピューティングデバイス２０４がコンプライアンスルール２１４とのコンプライアンスを遵守するまで阻止され得る。たとえば、コンプライアンスエンジン２１２は、コンプライアンスルール２１４とのコンプライアンスを遵守している新しいコンフィギュレーション設定を送信し得る。エージェント２１６は、新しいコンフィギュレーション設定を実施すると、アクノレッジメントをコンプライアンスエンジン２１２に送信し得る。コンプライアンスエンジン２１２は、アクノレッジメントを受信すると、それに応じてコンプライアンスレコード２３２を更新することによって、コンピューティングデバイス２０４を、コンプライアンスを遵守しているとして指定し得る。
【００３０】
[0039]前述したことにより、コンプライアンスエンジン２１２は、有利なことに、その設定についてデバイスに再照会する必要なく、コンピューティングデバイス２０４からアクノレッジメントを受信したときにコンプライアンスを判定することが可能となる。これにより、コンプライアンス非遵守ユーザが、一時的にネットワークリソースにアクセスすることを阻止する。以前の技法では、サーバがコンピューティングデバイスにコンフィギュレーション設定を照会し、その設定をコンプライアンスルールと比較している間、ユーザは引き続きネットワークリソースにアクセスできたであろう。本明細書に開示される技法は、エージェント２１６からアクノレッジメントを受信すると即座にコンプライアンスをチェックすることによってこれを阻止する。さらに、これらの技法は、コンプライアンス遵守ユーザが、別のコンプライアンス非遵守ユーザによって使用されているデバイスにログオンしたときのユーザ体感を向上させる。以前の技法では、コンプライアンス遵守ユーザが、デバイスにログオンすると、サーバが、デバイスにコンフィギュレーション設定を照会している間、デバイスはコンプライアンス非遵守としてマークされたであろう。本明細書に開示される技法は、新しいユーザがデバイスにログオンすると即座にリファレンス２３０を使用してコンプライアンスをチェックすることによってこの問題を排除する。
【００３１】
[0040]さらに別の実施形態によれば、トリガイベントは、コンプライアンスルール２１４が変化したことを示すインジケーションである。たとえば、管理者がコンプライアンスルール２１４に変化を加えると、コンプライアンスエンジン２１２は、この変化を示すインジケーションを受信し得る。コンプライアンスエンジン２１２は、インジケーションを受信すると、リファレンス２３０を使用してコンピューティングデバイス２０４によって利用されるコンフィギュレーション設定を検索し、コンフィギュレーション設定をコンプライアンスルール２１４と比較して、コンフィギュレーション設定がコンプライアンスを遵守しているか否かを判定し得る。コンフィギュレーション設定がコンプライアンスルール２１４とのコンプライアンスを遵守している場合、コンプライアンスエンジン２１２は、特定のコンピューティングデバイスがコンプライアンスを遵守し続けていると判定し得る。
【００３２】
[0041]コンフィギュレーション設定がコンプライアンスルール２１４とのコンプライアンスを遵守していない場合、コンプライアンスエンジン２１２は、特定のコンピューティングデバイスがもはやコンプライアンスを遵守していないと判定し、コンプライアンスレコード２３２内のコンピューティングデバイスの指定を更新して、コンピューティングデバイスがもはやコンプライアンスを遵守しなくなったことを示し得る。コンプライアンスエンジン２１２はまた、そのようなコンピューティングデバイスがコンプライアンスを遵守するようになるまで、そのようなコンピューティングデバイスが企業ネットワーク２１０を介してアクセス可能なリソースにアクセスすることを阻止し得る。
【００３３】
[0042]セキュリティベースライン２２４は、各ＯＳリリースの一部としてオペレーティングシステム（ＯＳ）開発者によって定期的に公開およびリリースされ得、多くの企業のコンプライアンス基準の一部である。従来のシナリオでは、企業は、コンピューティングデバイスに再照会し、ＯＳの更新ごとに、組織内のすべてのユーザデバイスペアのコンプライアンスを再評価する必要がある。これは企業にとって非常にコストのかかるプロセスであり、ＯＳの迅速な採用を妨げる。そのような問題を克服するために、新しいＯＳ更新のために新しいセキュリティベースライン２２４がリリースされると、コンプライアンスエンジン２１２は、新しいＯＳバージョン／アップデートについてセキュリティベースライン２２４についてデータストア２０８に照会する（または、独自の企業固有のベースラインを使用する）ことができ、新しいＯＳバージョン／アップデートが、デバイスのユーザを、コンプライアンスを遵守させているか否かを評価し得る。たとえば、コンプライアンスエンジン２１２は、リファレンス２３０を使用して各ユーザデバイスペアによって利用されるコンフィギュレーション設定を検索し、コンフィギュレーション設定をセキュリティベースライン２２４と比較して、コンフィギュレーション設定がコンプライアンスを遵守しているか否かを判定し得る。コンフィギュレーション設定が、セキュリティベースライン２２４とのコンプライアンスを遵守していない場合、コンプライアンスエンジン２１２は、ユーザデバイスペアがコンプライアンスを遵守していないと判定する。それに応じて、コンプライアンスエンジン２１２は、ユーザデバイスペアをコンプライアンス非遵守として指定し、企業リソースへのアクセスを阻止し、および／または、関連付けられたコンピューティングデバイスに、更新されたコンフィギュレーション設定を提供し得る。コンプライアンス設定が、セキュリティベースライン２２４に準拠している場合、コンプライアンスエンジン２１２は、ユーザデバイスペアがコンプライアンスを遵守していると判定する。前述した技法により、各ユーザが特定のデバイスにログインする必要なく、コンプライアンスが即座に評価される。
【００３４】
[0043]ＩｏＴデバイス２２０は、デフォルトで安全であるとして分類され得、そのようなデバイスの製造業者（ＯＥＭとも称される）によって構成されたデフォルトコンフィギュレーションを有し得る。ＩｏＴデバイス２２０の例は、ビデオ会議システム、プリンタ、スピーカ、暖房、換気および空調（ＨＶＡＣ）システムなどを含むが、これらに限定されない。そのようなデバイスのコンフィギュレーションは、データストア２０８（ＯＥＭコンフィギュレーション２２６として示される）に格納され得る。ＩｏＴデバイス２２０のコンフィギュレーション設定は、一般に、エンドユーザによって変更可能ではなく、および／または（たとえば、ソフトウェアおよび／またはハードウェアの更新を介して）ＯＥＭによってのみ変更可能である。ＩｏＴデバイス２２０がコンプライアンスを遵守しているか否かを判定するために、コンプライアンスエンジン２１２は、ＯＥＭコンフィギュレーション２２６についてデータストア２０８に照会し、企業によって利用されるＩｏＴデバイス２２０の各々のＯＥＭコンフィギュレーション２２６を、コンプライアンスルール２１４と比較して、ＯＥＭコンフィギュレーション２２６がコンプライアンスを遵守しているか否かを判定する。ＩｏＴデバイス２２０がコンプライアンスを遵守していない場合、組織は、ＩｏＴデバイス２２０がコンプライアンスを遵守できるように、そのようなデバイスのコンフィギュレーション設定を更新するように製造業者に通知し得る。ＩｏＴデバイス２２０がコンプライアンスルールとのコンプライアンスを遵守している場合、コンプライアンスエンジン２１２は、そのようなデバイスを、コンプライアンスレコード２３２に、コンプライアンスを遵守しているものとして指定し得る。
【００３５】
[0044]ＯＥＭが、デバイスのコンフィギュレーション設定を更新によって変化させる事象では、ＯＥＭは、更新されたＯＥＭコンフィギュレーション２２６を企業に提供し得、コンプライアンスエンジン２１２は、コンプライアンスを再評価し得る。これは、有利なことに、コンプライアンスエンジン２１２が、各デバイスにそのコンフィギュレーションを個別に照会することによって、ＩｏＴデバイス２２０の各々を評価する必要なく、ＯＥＭコンフィギュレーション２２６を使用してＩｏＴデバイス２２０をバッチ処理することを可能にする。
【００３６】
[0045]コンフィギュレーション設定はまた、サードパーティのエンティティによって提供され得る。たとえば、図２に示されるように、サードパーティコンフィギュレーション２２８は、サードパーティコンピュティングデバイス２１８のコンフィギュレーション設定を指定する。これは、企業のビジネスパートナに関連付けられたデバイスであり得る。たとえば、そのようなパートナの従業員は、ビジネス目的で企業を訪問する場合がある。サードパーティコンピュティングデバイス２１８は、サードパーティコンフィギュレーション２２８を使用してコンプライアンスについてチェックされ得る。サードパーティは、サードパーティの従業員が企業のサイトに到着する前に、サードパーティコンフィギュレーション２２８を企業に提供することができ、コンプライアンスエンジン２１２は、到着前に、サードパーティコンピュティングデバイス２１８が、コンプライアンスルール２１４とのコンプライアンスを遵守しているか否かを判定し得る。サードパーティコンピュティングデバイス２１８がコンプライアンスを遵守していない場合、企業は、デバイスのコンフィギュレーションを変化させる必要があることをサードパーティに通知し、必要なコンフィギュレーション設定を通知し得る。サードパーティは、それに応じてコンフィギュレーション設定を更新し、更新されたサードパーティコンフィギュレーション２２８を企業に提供し得る。コンプライアンスエンジン２１８は、その後、更新されたサードパーティコンフィギュレーション２２８を使用してコンプライアンスを再評価し、サードパーティコンピュティングデバイス２１８が現在コンプライアンスを遵守しているか否かをサードパーティに通知し得る。これは、有利なことに、サードパーティコンピュティングデバイス２１８が企業ネットワーク２１０へ接続した後に、企業がデバイスを管理し、コンプライアンスを評価するのを待つ必要なく、サードパーティコンピュティングデバイス２１８が到着すると即座に、企業ネットワーク２１０およびそのリソースへのアクセスを有することを可能にする。
【００３７】
[0046]したがって、デバイスは、多くの手法でコンプライアンスのために管理され得る。たとえば、図３は、例示的な実施形態にしたがって、デバイスコンプライアンスを管理するためにサーバによって実施される例示的な方法のフローチャート３００を示す。次に、フローチャート３００の方法を、図４のシステム４００を参照して説明するが、この方法はその実施に限定されない。図４は、別の実施形態にしたがって、デバイスコンプライアンスを管理するためのシステム４００のブロック図である。図４に示されるように、システム４００は、サーバ４０２、１つまたは複数のコンピューティングデバイス４０４、および１つまたは複数のデータストア４０８を含む。サーバ４０２、コンピューティングデバイス４０４、およびデータストア４０８は、企業ネットワーク４１０を介して通信可能に結合される。サーバ４０２、コンピューティングデバイス４０４、データストア４０８、および企業ネットワーク４１０は、図２を参照して上述したサーバ２０２、コンピューティングデバイス２０４、データストア２０８、および企業ネットワーク２１０の例である。図４にさらに示されるように。サーバ４０２は、コンプライアンスエンジン４１２、１つまたは複数のコンプライアンスルール４１４、コンフィギュレーションリファレンス４３０、およびコンプライアンスレコード４３２を備える。コンピューティングデバイス４０４は各々、エージェント４１６を備え、データストア４０８は、コンフィギュレーション４２０を備える。コンプライアンスエンジン４１２、コンプライアンスルール４１４、コンフィギュレーションリファレンス４３０、コンプライアンスレコード４３２、およびエージェント４１６は、それぞれ、図２を参照して上述したコンプライアンスエンジン２１２、コンプライアンスルール２１４、コンフィギュレーションリファレンス２３０、コンプライアンスレコード２３２、およびエージェント２１６の例である。コンフィギュレーション４２０は、図２を参照して上述したように、デバイスコンフィギュレーション２２２、セキュリティベースライン２２４、ＯＥＭコンフィギュレーション２２６、および／またはサードパーティコンフィギュレーション２２８の例である。他の構造的および動作的な実施形態は、フローチャート３００および図４システム４００に関する議論に基づいて、当業者に明らかであろう。
【００３８】
[0047]図３に示されるように、フローチャート３００の方法は、ステップ３０２で始まり、ここでは、サーバとコンピューティングデバイスとを通信可能に結合するネットワークを介してアクセス可能なコンピューティングデバイスのためのコンフィギュレーション設定が判定される。たとえば、図４を参照して示すように、サーバ４０２は、企業ネットワーク４１０を介してアクセス可能であるコンピューティングデバイス４０４のコンフィギュレーション設定を判定する。
【００３９】
[0048]１つまたは複数の実施形態によれば、コンフィギュレーション設定は、コンピューティングデバイスによって実施される暗号化設定、コンピューティングデバイスによって実施されるセキュリティ設定、またはコンピューティングデバイスにインストールする必要のあるアプリケーションまたはオペレーティングシステムのうちの少なくとも１つの最小バージョンのうちの少なくとも１つを指定する。
【００４０】
[0049]１つまたは複数の実施形態によれば、コンピューティングデバイスのためのコンフィギュレーション設定は、コンピューティングデバイスにログインしたユーザを識別し、ユーザおよびコンピューティングデバイスに関連付けられたコンフィギュレーション設定を判定することによって判定される。たとえば、企業の管理者は、コンピューティングデバイス４０４の各コンピューティングデバイスに対して、および／または、コンピューティングデバイス４０４の特定のコンピューティングデバイスの各ユーザに対して、異なる手法でコンフィギュレーション設定を構成し得る。管理者は、そのような設定が、関連付けられたコンプライアンスルール４１４とのコンプライアンスを遵守していることを確認し得る。そのようなコンフィギュレーション設定は、コンフィギュレーション４２０としてデータストア４０８に格納され得る。ユーザが、最初に、新たに支給されたコンピューティングデバイスにログインするとき、サーバ４０２は、そのコンピューティングデバイスおよびユーザ（すなわち、ユーザデバイスペア）に関連付けられたデータストア４０８からコンフィギュレーションを判定し、（コンフィギュレーション４０１のような）コンフィギュレーションを検索し得る。
【００４１】
[0050]ステップ３０４において、コンフィギュレーション設定は、ネットワークを介してコンピューティングデバイスに送信される。たとえば、図４を参照して示すように、サーバ４０２は、ネットワーク４１０を介してコンフィギュレーション４０１をコンピューティングデバイス４０４に送信する。
【００４２】
[0051]ステップ３０６において、コンフィギュレーション設定へのリファレンスがサーバにおいて維持される。たとえば、図４を参照して示すように、サーバ４０２は、コンピューティングデバイス４０４に送信されるコンフィギュレーション（すなわち、コンフィギュレーション４０１）のローカルコンフィギュレーションリファレンス４３０を維持する。リファレンス４３０は、特定のユーザデバイスペアに提供されるコンフィギュレーション設定をマッピングするデータ構造（たとえば、テーブル）を備え得る。たとえば、データ構造は、どのコンフィギュレーション設定が提供され、特定のユーザデバイスペアによって実施されるかを指定し得る。
【００４３】
[0052]ステップ３０８において、コンフィギュレーション設定が実施されたとのアクノレッジメントが、ネットワークを介してコンピューティングデバイスから受信される。たとえば、図４を参照して示すように、エージェント４１６は、アクノレッジメント４０３を、企業ネットワーク４１０を介してサーバ４０２に送信する。アクノレッジメント４０３は、エージェント４１６が、コンピューティングデバイス４０４においてコンフィギュレーション４０１によって指定されたコンフィギュレーション設定を実施したことを示す。
【００４４】
[0053]ステップ３１０において、コンピューティングデバイスは、アクノレッジメントの受信に応答して、コンプライアンスルールとのコンプライアンスを遵守しているものとして指定される。たとえば、図４を参照して示すように、コンプライアンスエンジン４１２は、コンピューティングデバイス４０４に対応するエントリコンプライアンスレコード４３２を更新して、コンピューティングデバイス４０４が、コンプライアンスを遵守していることを示し得る。
【００４５】
[0054]図５は、例示的な実施形態にしたがって、コンピューティングデバイスがコンプライアンスルールとのコンプライアンスを遵守しているか否かを判定するための例示的な方法のフローチャート５００を示す。次に、フローチャート５００の方法を、図６のシステム６００を参照して説明するが、この方法は、その実施に限定されない。図６は、実施形態にしたがって、コンピューティングデバイスがコンプライアンスルールとのコンプライアンスを遵守しているか否かを判定するためのシステム６００のブロック図である。図６に示されるように、システム６００は、サーバ６０２、１つまたは複数のコンピューティングデバイス６０４、および１つまたは複数のデータストア６０８を含む。サーバ６０２、コンピューティングデバイス６０４、およびデータストア６０８は、企業ネットワーク６１０を介して通信可能に結合される。サーバ６０２、コンピューティングデバイス６０４、データストア６０８、および企業ネットワーク６１０は、図４を参照して上述したように、サーバ４０２、コンピューティングデバイス４０４、データストア４０８、および企業ネットワーク４１０の例である。図６にさらに示されるように、サーバ６０２は、コンプライアンスエンジン６１２、１つまたは複数のコンプライアンスルール６１４、コンフィギュレーションリファレンス６３０、およびコンプライアンスレコード６３２を備える。コンピューティングデバイス６０４は、エージェント６１６を備え、データストア６０８は、コンフィギュレーション６２０を備える。コンプライアンスエンジン６１２、コンプライアンスルール６１４、コンフィギュレーションリファレンス６３０、およびコンプライアンスレコード６３２、ならびにエージェント６１６は、図４を参照してそれぞれ上述したように、コンプライアンスエンジン４１２、コンプライアンスルール４１４、コンフィギュレーションリファレンス４３０、およびコンプライアンスレコード４３２、ならびにエージェント４１６の例である。コンフィギュレーション６２０は、図４を参照して上述したように、コンフィギュレーション４２０の例である。他の構造的および動作的な実施形態は、フローチャート５００および図６のシステム６００に関する議論に基づいて、当業者に明らかであろう。
【００４６】
[0055]図５に示すように、フローチャート５００の方法は、ステップ５０２で始まり、コンフィギュレーション設定へのリファレンスを、トリガイベントの検出に応答してコンプライアンスルールと比較することによって、コンピューティングデバイスがコンプライアンスルールとのコンプライアンスを遵守し続けているか否かについて判定が行われる。たとえば、図６を参照して示すように、コンプライアンスエンジン６１２は、トリガイベントの検出に応じて、コンフィギュレーションリファレンス２３０をコンプライアンスルール２１４と比較することによって、コンピューティングデバイス６０４がコンプライアンスルール６１４とのコンプライアンスを遵守し続けているか否かを判定する。コンピューティングデバイスがもはやコンプライアンスを遵守していないと判定することに応じて、フローはステップ５０４に続く。遵守している場合、フローはステップ５０６に続く。
【００４７】
[0056]１つまたは複数の実施形態によれば、トリガイベントは、所定の期間の満了、コンピューティングデバイスの第２のコンフィギュレーション設定が変化したことを示す、コンピューティングデバイスから受信したインジケーション、または、ユーザがコンピューティングデバイスにログインしたことを示すインジケーションのうちの少なくとも１つを備える。たとえば、図６を参照して示すように、コンプライアンスエンジン６１２は、タイマを維持することができ、タイマは、満了すると、コンプライアンスエンジン６１２に対して、コンフィギュレーションリファレンス６０６によって示されるように、コンピューティングデバイス６０４のコンフィギュレーション設定を、コンプライアンスルール６１４と比較させる。別の例では、エージェント６１６は、コンピューティングデバイス６０４の第２のコンフィギュレーション設定が変化したことを示すインジケーション６０１を、ネットワーク６１０を介してコンプライアンスエンジン６１２に提供し得る。別の例では、コンピューティングデバイス６０４の特定のコンピューティングデバイスは、ユーザが、ネットワーク６１０にログオンしたこと、および／または、コンピューティングデバイスが、企業ネットワーク６１０を介してサーバ６０２にログオンしたことを示すインジケーション６０３を提供し得る。
【００４８】
[0057]ステップ５０４において、コンピューティングデバイスは、ネットワークを介してアクセス可能なリソースにアクセスすることを阻止され、コンピューティングデバイスは、コンプライアンスルールとのコンプライアンスを遵守していないものとして指定される。たとえば、図６を参照して示すように、コンプライアンスエンジン６１２は、コンピューティングデバイス６０４が、企業ネットワーク６１０を介してアクセス可能なリソースにアクセスすることを阻止し、コンピューティングデバイス６０４を、コンプライアンスルール６１４とのコンプライアンスを遵守していないとして指定する。たとえば、コンプライアンスエンジン６１２は、企業ネットワーク６１０のリソースへのアクセスを無効にするコマンド６０７をコンピューティングデバイス６０４に送信し得る。コンプライアンスエンジン６１２はまた、コンピューティングデバイス６０４がもはやコンプライアンスを遵守していないことを示すために、コンピューティングデバイス６０４に対応するコンプライアンスレコード６３２のエントリを更新する。
【００４９】
[0058]１つまたは複数の実施形態によれば、コンプライアンスルールとのコンプライアンスを遵守している新しいコンフィギュレーション設定は、コンピューティングデバイスがもはやコンプライアンスを遵守していないとの判定に応じて、ネットワークを介してコンピューティングデバイスへ送信される。たとえば、図６を参照して示すように、管理者は、コンフィギュレーション４２０を、コンプライアンスルール４１４とのコンプライアンスを遵守するように更新し得る。コンプライアンスエンジン６１２は、更新されたコンフィギュレーションを検索し得、および／または、更新されたコンフィギュレーション（コンフィギュレーション４０５として示される）を、指定した新しいコンフィギュレーション設定を実施する企業ネットワーク６１０を介してエージェント６１６に送信し得る。
【００５０】
[0059]ステップ５０６において、コンピューティングデバイスがコンプライアンスを遵守しているという指定が維持される。たとえば、図６を参照して示すように、コンプライアンスエンジン６１２は、コンピューティングデバイス６０４がコンプライアンスルール６１４とのコンプライアンスを遵守しているというコンプライアンスレコード６３２内の指定を維持する。
ＩＩＩ．例示的なモバイルおよび固定デバイスの実施形態
[0060]図１〜図６を参照して記載されたデバイスコンプライアンス管理の実施形態を含む、上述したシステムおよび方法は、ハードウェア、またはソフトウェアおよび／またはファームウェアのうちの一方または両方と組み合わされたハードウェアで実施され得る。たとえば、コンプライアンスエンジン１１２、エージェント１１６、コンプライアンスエンジン２１２、コンプライアンスルール２１４、コンフィギュレーションリファレンス２３０、コンプライアンスレコード２３２、エージェント２１６、コンプライアンスエンジン４１２、コンプライアンスルール４１４、コンフィギュレーションリファレンス４３０、コンプライアンスレコード４３２、エージェント４１６、および／またはそこに記載される構成要素の各々、ならびにフローチャート３００および／またはフローチャート５００は各々、１つまたは複数のプロセッサで実行され、コンピュータ可読記憶媒体に格納されるように構成されたコンピュータプログラムコード／命令として実施される。あるいは、コンプライアンスエンジン１１２、エージェント１１６、コンプライアンスエンジン２１２、コンプライアンスルール２１４、コンフィギュレーションリファレンス２３０、コンプライアンスレコード２３２、エージェント２１６、コンプライアンスエンジン４１２、コンプライアンスルール４１４、コンフィギュレーションリファレンス４３０、コンプライアンスレコード４３２、エージェント４１６、および／またはそこに記載されている構成要素の各々、ならびにフローチャート３００および／またはフローチャート５００は、ハードウェア論理／電気回路として実施され得る。実施形態では、コンプライアンスエンジン１１２、エージェント１１６、コンプライアンスエンジン２１２、コンプライアンスルール２１４、コンフィギュレーションリファレンス２３０、コンプライアンスレコード２３２、エージェント２１６、コンプライアンスエンジン４１２、コンプライアンスルール４１４、コンフィギュレーションリファレンス４３０、コンプライアンスレコード４３２、エージェント４１６、および／またはそこに記載されている構成要素の各々、ならびにフローチャート３００および／またはフローチャート５００は、１つまたは複数のＳｏＣ（システムオンチップ）において実施され得る。ＳｏＣは、プロセッサ（たとえば、中央処理装置（ＣＰＵ）、マイクロコントローラ、マイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）など）、メモリ、１つまたは複数の通信インターフェース、および／またはさらなる回路のうちの１つまたは複数を含む集積回路チップを含み得、オプションで、受信したプログラムコードを実行し、および／または、機能を実行するための組込ファームウェアを含み得る。
【００５１】
[0061]図７は、一般に構成要素７０２として示される、様々なオプションのハードウェアおよびソフトウェア構成要素を含む例示的なモバイルデバイス７００のブロック図を示す。コンピューティングデバイス１０４、コンピューティングデバイス２０４、サードパーティコンピュティングデバイス２１８、ＩｏＴデバイス２２０、コンピューティングデバイス４０４、コンピューティングデバイス６０４、サーバ１０２、サーバ４０２、サーバ６０２、コンプライアンスエンジン１１２、エージェント１１６、コンプライアンスエンジン２１２、コンプライアンスルール２１４、コンフィギュレーションリファレンス２３０、コンプライアンスレコード２３２、エージェント２１６、コンプライアンスエンジン４１２、コンプライアンスルール４１４、コンフィギュレーションリファレンス４３０、コンプライアンスレコード４３２、エージェント４１６、および／またはそこに記載されている構成要素の各々、ならびにフローチャート３００および／またはフローチャート５００の特徴／要素の任意の数および組合せは、当業者によって知られているように、モバイルデバイスの実施形態、ならびに、追加のおよび／または代替の特徴／要素に含まれる構成要素７０２として実施され得る。例示を容易にするために、すべての接続が示されている訳ではないが、任意の構成要素７０２が他の任意の構成要素７０２と通信できることに留意されたい。モバイルデバイス７００は、本明細書の他の場所で記載または言及されているか、または他の方法で知られている様々なモバイルデバイス（たとえば、セル電話、スマートフォン、ハンドヘルドコンピュータ、パーソナルデジタルアシスタント（ＰＤＡ）など）のいずれかであり得、セルラまたは衛星ネットワークのような１つまたは複数の通信ネットワーク７０４を介して１つまたは複数のモバイルデバイスとの、またはローカルエリアネットワークまたは広域ネットワークとのワイヤレス双方向通信を可能にすることができる。
【００５２】
[0062]例示されたモバイルデバイス７００は、信号符号化、画像処理、データ処理、入力／出力処理、電力制御、および／または他の機能などのタスクを実行するためのプロセッサ回路７１０と称されるコントローラまたはプロセッサを含むことができる。プロセッサ回路７１０は、１つまたは複数の物理的ハードウェア電気回路デバイス要素において実施される電気および／または光回路、および／または、中央処理装置（ＣＰＵ）、マイクロコントローラ、マイクロプロセッサ、および／または他の物理的ハードウェアプロセッサ回路として集積された回路デバイス（半導体材料チップまたはダイ）である。プロセッサ回路７１０は、１つまたは複数のアプリケーション７１４、オペレーティングシステム７１２、メモリ７２０に格納された任意のプログラムコードなどのように、コンピュータ可読媒体に格納されたプログラムコードを実行し得る。オペレーティングシステム７１２は、構成要素７０２の割当および使用を制御し、１つまたは複数のアプリケーションプログラム７１４（別名、アプリケーション、「アプリ」など）をサポートし得る。アプリケーションプログラム７１４は、一般的なモバイルコンピューティングアプリケーション（たとえば、電子メールアプリケーション、カレンダ、連絡先マネジャ、ウェブブラウザ、メッセージングアプリケーション）および任意の他のコンピューティングアプリケーション（たとえば、ワードプロセシングアプリケーション、マッピングアプリケーション、メディアプレーヤアプリケーション）を含むことができる。
【００５３】
[0063]例示されるように、モバイルデバイス７００は、メモリ７２０を含むことができる。メモリ７２０は、非リムーバブルメモリ７２２および／またはリムーバブルメモリ７２４を含むことができる。非リムーバブルメモリ７２２は、ＲＡＭ、ＲＯＭ、フラッシュメモリ、ハードディスク、または他のよく知られたメモリストレージ技術を含むことができる。リムーバブルメモリ７２４は、フラッシュメモリ、または、ＧＳＭ通信システムにおいてよく知られている加入者識別情報モジュール（ＳＩＭ）カード、または「スマートカード」などの他のよく知られたメモリストレージ技術を含むことができる。メモリ７２０は、オペレーティングシステム７１２およびアプリケーション７１４を実行するためのデータおよび／またはコードを格納するために使用することができる。例示的なデータには、１つまたは複数のワイヤまたはワイヤレスのネットワークを介して１つまたは複数のネットワークサーバまたは他のデバイスとの間で送受信されるＷｅｂページ、テキスト、画像、サウンドファイル、ビデオデータ、または他のデータセットを含むことができる。メモリ７２０は、国際モバイル加入者識別情報（ＩＭＳＩ）などの加入者識別子、および国際モバイル機器識別子（ＩＭＥＩ）などの機器識別子を格納するために使用することができる。そのような識別子は、ユーザと機器とを識別するために、ネットワークサーバへ送信することができる。
【００５４】
[0064]多くのプログラムが、メモリ７２０に格納され得る。これらのプログラムは、オペレーティングシステム７１２、１つまたは複数のアプリケーションプログラム７１４、および他のプログラムモジュールおよびプログラムデータを含む。そのようなアプリケーションプログラムまたはプログラムモジュールの例は、たとえば、図１〜図６を参照して記載されたデバイスコンプライアンス管理の実施形態を含む、上述したシステムを実施するためのコンピュータプログラムロジック（たとえば、コンピュータプログラムコードまたは命令）を含み得る。
【００５５】
[0065]モバイルデバイス７００は、タッチスクリーン７３２、マイクロフォン７３４、カメラ７３６、物理的キーボード７３８および／またはトラックボール７４０などの１つまたは複数の入力デバイス７３０と、スピーカ７５２およびディスプレイ７５４などの１つまたは複数の出力デバイス７５０とをサポートすることができる。
【００５６】
[0066]他の可能な出力デバイス（図示せず）は、圧電または他の触覚出力デバイスを含むことができる。いくつかのデバイスは、複数の入力／出力機能を提供できる。たとえば、タッチスクリーン７３２およびディスプレイ７５４は、単一の入力／出力デバイスに組み合わせることができる。入力デバイス７３０は、ナチュラルユーザインターフェース（ＮＵＩ）を含むことができる。
【００５７】
[0067]ワイヤレスモデム７６０は、アンテナ（図示せず）に結合することができ、当技術分野でよく理解されているように、プロセッサ回路７１０と外部デバイスとの間の双方向通信をサポートすることができる。モデム７６０は、一般的に図示されており、モバイル通信ネットワーク７０４および／または他の無線ベースのモデム（たとえば、Ｂｌｕｅｔｏｏｔｈ７６４および／またはＷｉ−Ｆｉ７６２）と通信するためのセルラモデム７６６を含むことができる。セルラモデム７６６は、ＧＳＭ、３Ｇ、４Ｇ、５Ｇなどの任意の適切な通信規格または技術にしたがって、通話（およびオプションでデータの送信）を可能にするように構成され得る。ワイヤレスモデム７６０の少なくとも１つは、通常、たとえば、単一のセルラネットワーク内、複数のセルラネットワーク間、またはモバイルデバイスと公衆交換電話網（ＰＳＴＮ）との間のデータおよび音声通信のためのＧＳＭネットワークのような、１つまたは複数のセルラネットワークとの通信のために構成される。
【００５８】
[0068]モバイルデバイス７００は、少なくとも１つの入力／出力ポート７８０と、電源７８２と、全地球測位システム（ＧＰＳ）受信機などの衛星ナビゲーションシステム受信機７８４と、加速度計７８６と、および／または、ＵＳＢポート、ＩＥＥＥ１３９４（ファイヤワイヤ）ポート、および／またはＲＳ−２３２ポートであり得る物理的コネクタ７９０とをさらに含むことができる。例示される構成要素７０２は、いずれかの構成要素は存在できず、当技術分野で認識されるように他の構成要素がさらに存在できるので、必須ではなく、すなわち包括的ではない。
【００５９】
[0069]さらに、図８は、コンピューティングデバイス１０４、コンピューティングデバイス２０４、サードパーティコンピュティングデバイス２１８、ＩｏＴデバイス２２０、コンピューティングデバイス４０４、コンピューティングデバイス６０４、サーバ１０２、サーバ４０２、サーバ６０２、コンプライアンスエンジン１１２、エージェント１１６、コンプライアンスエンジン２１２、コンプライアンスルール２１４、コンフィギュレーションリファレンス２３０、コンプライアンスレコード２３２、エージェント２１６、コンプライアンスエンジン４１２、コンプライアンスルール４１４、コンフィギュレーションリファレンス４３０、コンプライアンスレコード４３２、エージェント４１６、および／または、本明細書に記載されている構成要素の各々、ならびにフローチャート３００および／またはフローチャート５００を含む、実施形態が実施され得るコンピューティングデバイス８００の例示的な実施を示す。本明細書において提供されるコンピューティングデバイス８００の記載は、例示の目的で提供されており、限定することは意図されない。実施形態は、当業者に知られているように、さらなるタイプのコンピュータシステムにおいて実施され得る。
【００６０】
[0070]図８に示されるように、コンピューティングデバイス８００は、プロセッサ回路８０２と称される１つまたは複数のプロセッサと、システムメモリ８０４と、システムメモリ８０４を含む様々なシステム構成要素をプロセッサ回路８０２に結合するバス８０６とを含む。プロセッサ回路８０２は、１つまたは複数の物理的ハードウェア電気回路デバイス要素において実施される電気および／または光回路、および／または、中央処理装置（ＣＰＵ）、マイクロコントローラ、マイクロプロセッサ、および／または他の物理的ハードウェアプロセッサ回路として集積された回路デバイス（半導体材料チップまたはダイ）である。プロセッサ回路８０２は、オペレーティングシステム８３０のプログラムコード、アプリケーションプログラム８３２、他のプログラム８３４などのようなコンピュータ可読媒体に格納されたプログラムコードを実行し得る。バス８０６は、メモリバスまたはメモリコントローラ、周辺バス、加速グラフィックスポート、および様々なバスアーキテクチャのいずれかを使用するプロセッサまたはローカルバスを含む、いくつかのタイプのバス構造のいずれかの１つまたは複数を表す。システムメモリ８０４は、読取専用メモリ（ＲＯＭ）８０８およびランダムアクセスメモリ（ＲＡＭ）８１０を含む。基本入力／出力システム８１２（ＢＩＯＳ）は、ＲＯＭ８０８に格納される。
【００６１】
[0071]コンピューティングデバイス８００はまた、以下のドライブ、ハードディスクとの読み書きのためのハードディスクドライブ８１４、リムーバブル磁気ディスク８１８との読み書きのための磁気ディスクドライブ８１６、およびＣＤ  ＲＯＭ、ＤＶＤ  ＲＯＭ、または他の光学媒体のようなリムーバブル光ディスク８２２との読み書きのための光ディスクドライブ８２０のうちの１つまたは複数を有する。ハードディスクドライブ８１４、磁気ディスクドライブ８１６、および光ディスクドライブ８２０は、それぞれ、ハードディスクドライブインターフェース８２４、磁気ディスクドライブインターフェース８２６、および光学ドライブインターフェース８２８によってバス８０６に接続される。ドライブおよびそれらの関連するコンピュータ可読媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、およびコンピュータの他のデータの不揮発性ストレージを提供する。ハードディスク、リムーバブル磁気ディスク、およびリムーバブル光ディスクが記載されているが、フラッシュメモリカード、デジタルビデオディスク、ＲＡＭ、ＲＯＭ、および他のハードウェア記憶媒体のように、他のタイプのハードウェアベースのコンピュータ可読記憶媒体もデータを格納するために使用することができる。
【００６２】
[0072]多くのプログラムモジュールが、ハードディスク、磁気ディスク、光ディスク、ＲＯＭ、またはＲＡＭに格納され得る。これらのプログラムは、オペレーティングシステム８３０、１つまたは複数のアプリケーションプログラム８３２、他のプログラム８３４、およびプログラムデータ８３６を含む。アプリケーションプログラム８３２または他のプログラム８３４は、たとえば、図１〜図６を参照して記載されたデバイスコンプライアンス管理の実施形態を含む、上述したシステムを実施するためのコンピュータプログラムロジック（たとえば、コンピュータプログラムコードまたは命令）を含み得る。
【００６３】
[0073]ユーザは、キーボード８３８およびポインティングデバイス８４０のような入力デバイスを介して、コマンドおよび情報をコンピューティングデバイス８００に入力し得る。他の入力デバイス（図示せず）は、マイクロフォン、ジョイスティック、ゲームパッド、衛星アンテナ、スキャナ、タッチスクリーンおよび／またはタッチパッド、音声入力を受け取るための音声認識システム、ジェスチャ入力を受け取るためのジェスチャ認識システムなどを含み得る。これらおよび他の入力デバイスは、バス８０６に結合されたシリアルポートインターフェース８４２を介してプロセッサ回路８０２に接続されることが多いが、パラレルポート、ゲームポート、またはユニバーサルシリアルバス（ＵＳＢ）のような他のインターフェースによって接続され得る。
【００６４】
[0074]表示画面８４４はまた、ビデオアダプタ８４６のようなインターフェースを介してバス８０６に接続される。表示画面８４４は、コンピューティングデバイス８００の外部にあるか、またはコンピューティングデバイス８００に組み込まれ得る。表示画面８４４は、情報を表示できるのみならず、ユーザコマンドおよび／または他の情報を（たとえば、タッチ、指ジェスチャ、仮想キーボードなどによって）受け取るためのユーザインターフェースであり得る。表示画面８４４に加えて、コンピューティングデバイス８００は、スピーカおよびプリンタなどの他の周辺出力デバイス（図示せず）を含み得る。
【００６５】
[0075]コンピューティングデバイス８００は、アダプタまたはネットワークインターフェース８５０、モデム８５２、またはネットワークを介した通信を確立するための他の手段を介してネットワーク８４８（たとえば、インターネット）に接続される。内部または外部であり得るモデム８５２は、図８に示されるように、シリアルポートインターフェース８４２を介してバス８０６に接続され得るか、または、パラレルインターフェースを含む別のインターフェースタイプを使用してバス８０６に接続され得る。
【００６６】
[0076]本明細書で使用される場合、「コンピュータプログラム媒体」、「コンピュータ可読媒体」、および「コンピュータ可読記憶媒体」という用語は、一般に、ハードディスクドライブ８１４や、リムーバブル磁気ディスク８１８や、リムーバブル光ディスク８２２や、ＲＡＭ、ＲＯＭ、フラッシュメモリカード、デジタルビデオディスク、ｚｉｐディスク、ＭＥＭ、ナノテクノロジベースのストレージデバイスのような他の物理的ハードウェア媒体や、さらなるタイプの物理的／有形ハードウェア記憶媒体（図８のシステムメモリ８０４を含む）に関連付けられたハードディスクのような物理的ハードウェア媒体を称するために使用される。そのようなコンピュータ可読記憶媒体は、通信媒体と区別され、通信媒体と重複しない（通信媒体を含まない）。通信媒体は、通常、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータを、搬送波のような変調データ信号で具現化する。「変調データ信号」という用語は、信号内の情報を符号化するような手法で設定または変化されたその特性の１つまたは複数を有する信号を意味する。例として、限定されないが、通信媒体は、音響、ＲＦ、赤外線および他のワイヤレス媒体などのワイヤレス媒体、ならびにワイヤ媒体を含む。実施形態はまた、そのような通信媒体を対象とされる。
【００６７】
[0077]上述したように、コンピュータプログラムおよびモジュール（アプリケーションプログラム８３２および他のプログラム８３４を含む）は、ハードディスク、磁気ディスク、光ディスク、ＲＯＭ、ＲＡＭ、または他のハードウェア記憶媒体に記憶され得る。そのようなコンピュータプログラムはまた、ネットワークインターフェース８５０、シリアルポートインターフェース８５２、または任意の他のインターフェースタイプを介して受信され得る。そのようなコンピュータプログラムは、アプリケーションによって実行またはロードされると、コンピューティングデバイス８００が、本明細書で論じられる実施形態の特徴を実施することを可能にする。したがって、そのようなコンピュータプログラムは、コンピューティングデバイス８００のコントローラを表す。
【００６８】
[0078]実施形態はまた、任意のコンピュータ可読媒体に格納されたコンピュータコードまたは命令を備えるコンピュータプログラム製品を対象とされる。そのようなコンピュータプログラム製品は、ハードディスクドライブ、光ディスクドライブ、メモリデバイスパッケージ、ポータブルメモリスティック、メモリカード、および他のタイプの物理的ストレージハードウェアを含む。
ＩＶ．追加の例示的な実施形態
[0079]サーバによって実施される方法が本明細書に記載される。この方法は、サーバとコンピューティングデバイスとを通信可能に結合するネットワークを介してアクセス可能なコンピューティングデバイスのためのコンフィギュレーション設定を判定することと、
コンフィギュレーション設定を、ネットワークを介して、コンピューティングデバイスに送信することと、サーバにコンフィギュレーション設定へのリファレンスを維持することと、コンピューティングデバイスによってコンフィギュレーション設定が実施されたというアクノレッジメントを、コンピューティングデバイスから、ネットワークを介して受信することと、アクノレッジメントの受信に応答して、コンピューティングデバイスを、コンプライアンスを遵守しているものとして指定することとを含む。
【００６９】
[0080]この方法の実施形態では、この方法はさらに、コンフィギュレーション設定へのリファレンスを、トリガイベントの検出に応答して、コンプライアンスルールと比較することによって、コンピューティングデバイスがコンプライアンスルールとのコンプライアンスを遵守し続けているか否かを判定することと、コンピューティングデバイスがネットワークを介してアクセス可能なリソースにアクセスすることを阻止し、コンピューティングデバイスがもはやコンプライアンスを遵守していないと判定することに応じて、コンプライアンスルールとのコンプライアンスを遵守していないとしてコンピューティングデバイスを指定することと、コンピューティングデバイスがコンプライアンスを遵守し続けているとの判定に応じて、コンピューティングデバイスがコンプライアンスを遵守しているという指定を維持することとを備える。
【００７０】
[0081]この方法の実施形態では、リソースは、ネットワークを介してアクセス可能な電子メールサーバ、ネットワークを介してアクセス可能なデータリポジトリ、または、ネットワークを介してアクセス可能なアプリケーションサーバのうちの少なくとも１つを備える。
【００７１】
[0082]この方法の実施形態では、この方法はさらに、コンピューティングデバイスがもはやコンプライアンスを遵守していないと判定することに応じて、コンプライアンスルールとのコンプライアンスを遵守している新しいコンフィギュレーション設定を、ネットワークを介してコンピューティングデバイスに送信することを備える。
【００７２】
[0083]この方法の実施形態では、トリガイベントは、所定の期間の満了、コンピューティングデバイスの第２のコンフィギュレーション設定が変化したことを示す、コンピューティングデバイスから受信したインジケーション、または、ユーザがコンピューティングデバイスにログインしたことを示すインジケーションのうちの少なくとも１つを備える。
【００７３】
[0084]この方法の実施形態では、コンフィギュレーション設定は、コンピューティングデバイスによって実施される暗号化設定、コンピューティングデバイスによって実施されるセキュリティ設定、または、コンピューティングデバイスにインストールする必要のあるアプリケーションまたはオペレーティングシステムのうちの少なくとも１つの最小バージョンのうちの少なくとも１つを指定する。
【００７４】
[0085]この方法の実施形態では、コンピューティングデバイスのためのコンフィギュレーション設定を判定することは、コンピューティングデバイスにログインしたユーザを識別することと、ユーザおよびコンピューティングデバイスに関連付けられたコンフィギュレーション設定を判定することとを備える。
【００７５】
[0086]サーバもまた本明細書に記載される。サーバは、少なくとも１つのプロセッサ回路と、少なくとも１つのプロセッサ回路によって実行されるように構成されたプログラムコードを格納する少なくとも１つのメモリとを含み、プログラムコードは、サーバとコンピューティングデバイスとを通信可能に結合するネットワークを介してアクセス可能なコンピューティングデバイスのためのコンフィギュレーション設定を判定し、ネットワークを介して、コンフィギュレーション設定をコンピューティングデバイスに送信し、サーバにコンフィギュレーション設定へのリファレンスを維持し、コンピューティングデバイスによってコンフィギュレーション設定が実施されたというアクノレッジメントを、ネットワークを介して、コンピューティングデバイスから受信し、アクノレッジメントの受信に応答して、コンプライアンスルールとのコンプライアンスを遵守しているものとしてコンピューティングデバイスを指定するように構成されたコンプライアンスエンジンを備える。
【００７６】
[0087]サーバの実施形態では、コンプライアンスエンジンはさらに、コンフィギュレーション設定へのリファレンスを、トリガイベントの検出に応答して、コンプライアンスルールと比較することによって、コンピューティングデバイスがコンプライアンスルールとのコンプライアンスを遵守し続けているか否かを判定し、コンピューティングデバイスがネットワークを介してアクセス可能なリソースにアクセスすることを阻止し、コンピューティングデバイスがもはやコンプライアンスを遵守していないと判定することに応じて、コンプライアンスルールとのコンプライアンスを遵守していないとしてコンピューティングデバイスを指定し、コンピューティングデバイスがコンプライアンスを遵守し続けているとの判定に応じて、コンピューティングデバイスがコンプライアンスを遵守しているという指定を維持するように構成される。
【００７７】
[0088]サーバの実施形態では、リソースは、ネットワークを介してアクセス可能な電子メールサーバ、ネットワークを介してアクセス可能なデータリポジトリ、または、ネットワークを介してアクセス可能なアプリケーションサーバのうちの少なくとも１つを備える。
【００７８】
[0089]サーバの実施形態では、コンプライアンスエンジンはさらに、コンピューティングデバイスがもはやコンプライアンスを遵守していないとの判定に応じて、コンプライアンスルールとのコンプライアンスを遵守している新しいコンフィギュレーション設定を、ネットワークを介してコンピューティングデバイスに送信するように構成される。
【００７９】
[0090]サーバの実施形態では、トリガイベントは、所定の期間の満了、コンピューティングデバイスの第２のコンフィギュレーション設定が変化したことを示す、コンピューティングデバイスから受信したインジケーション、または、ユーザがコンピューティングデバイスにログインしたことを示すインジケーションのうちの少なくとも１つを備える。
【００８０】
[0091]サーバの実施形態では、コンフィギュレーション設定は、コンピューティングデバイスによって実施される暗号化設定、コンピューティングデバイスによって実施されるセキュリティ設定、または、コンピューティングデバイスにインストールする必要のあるアプリケーションまたはオペレーティングシステムのうちの少なくとも１つの最小バージョンのうちの少なくとも１つを指定する。
【００８１】
[0092]サーバの実施形態では、コンプライアンスエンジンはさらに、コンピューティングデバイスのためのコンフィギュレーション設定を判定するように構成され、コンピューティングデバイスにログインしたユーザを識別することと、ユーザおよびコンピューティングデバイスに関連付けられたコンフィギュレーション設定を判定することとを備える。
【００８２】
[0093]少なくとも１つのプロセッサによって実行されると、方法を実行する、記録されたプログラム命令を有するコンピュータ可読記憶媒体がさらに、本明細書に記載される。この方法は、サーバとコンピューティングデバイスとを通信可能に結合するネットワークを介してアクセス可能なコンピューティングデバイスのためのコンフィギュレーション設定を判定することと、ネットワークを介して、コンフィギュレーション設定をコンピューティングデバイスに送信することと、サーバにコンフィギュレーション設定へのリファレンスを維持することと、コンピューティングデバイスによってコンフィギュレーション設定が実施されたというアクノレッジメントを、ネットワークを介して、コンピューティングデバイスから受信することと、アクノレッジメントの受信に応答して、コンプライアンスルールとのコンプライアンスを遵守しているものとしてコンピューティングデバイスを指定することとを含む。
【００８３】
[0094]コンピュータ可読記憶媒体の実施形態では、この方法はさらに、コンフィギュレーション設定へのリファレンスを、トリガイベントの検出に応答して、コンプライアンスルールと比較することによって、コンピューティングデバイスがコンプライアンスルールとのコンプライアンスを遵守し続けているか否かを判定することと、コンピューティングデバイスがネットワークを介してアクセス可能なリソースにアクセスすることを阻止し、コンピューティングデバイスがもはやコンプライアンスを遵守していないと判定することに応じて、コンプライアンスルールとのコンプライアンスを遵守していないとしてコンピューティングデバイスを指定することと、コンピューティングデバイスがコンプライアンスを遵守し続けているとの判定に応じて、コンピューティングデバイスがコンプライアンスを遵守しているという指定を維持することとを備える。
【００８４】
[0095]コンピュータ可読記憶媒体の実施形態では、リソースは、ネットワークを介してアクセス可能な電子メールサーバ、ネットワークを介してアクセス可能なデータリポジトリ、または、ネットワークを介してアクセス可能なアプリケーションサーバのうちの少なくとも１つを備える。
【００８５】
[0096]コンピュータ可読記憶媒体の実施形態では、この方法はさらに、コンピューティングデバイスがもはやコンプライアンスを遵守していないとの判定に応じて、コンプライアンスルールとのコンプライアンスを遵守している新しいコンフィギュレーション設定を、ネットワークを介してコンピューティングデバイスに送信することを備える。
【００８６】
[0097]コンピュータ可読記憶媒体の実施形態では、トリガイベントは、所定の期間の満了、コンピューティングデバイスの第２のコンフィギュレーション設定が変化したことを示す、コンピューティングデバイスから受信したインジケーション、または、ユーザがコンピューティングデバイスにログインしたことを示すインジケーションのうちの少なくとも１つを備える。
【００８７】
[0098]コンピュータ可読記憶媒体の実施形態では、コンフィギュレーション設定は、コンピューティングデバイスによって実施される暗号化設定、コンピューティングデバイスによって実施されるセキュリティ設定、または、コンピューティングデバイスにインストールする必要のあるアプリケーションまたはオペレーティングシステムのうちの少なくとも１つの最小バージョンのうちの少なくとも１つを指定する。
【００８８】
[0099]コンピュータ可読記憶媒体の実施形態では、コンピューティングデバイスのためのコンフィギュレーション設定を判定することは、コンピューティングデバイスにログインしたユーザを識別することと、ユーザおよびコンピューティングデバイスに関連付けられたコンフィギュレーション設定を判定することとを備える。
Ｖ．結論
[0100]様々な実施形態が上述されたが、それらは単なる例として提示されたものであり、限定ではないことを理解されたい。当業者には、実施形態の主旨および範囲から逸脱することなく、その中で形態および詳細の様々な変化がなされ得ることが明らかであろう。したがって、実施形態の広さおよび範囲は、上述された例示的な実施形態のいずれによっても制限されるべきではなく、以下の特許請求の範囲およびそれらの均等物にしたがってのみ定義されるべきである。
【図１】
2021531573.tif 000003
【図２】
2021531573.tif 000004
【図３】
2021531573.tif 000005
【図４】
2021531573.tif 000006
【図５】
2021531573.tif 000007
【図６】
2021531573.tif 000008
【図７】
2021531573.tif 000009
【図８】
2021531573.tif 000010
【国際調査報告】
2021531573.tif 000011
2021531573.tif 000012