(57)【要約】  デバイスにインストールされるソフトウェアに対してポリシーを適用する。ソフトウェアのポリシールールを受信するデバイスのグループを識別する。指定されたグループに属するデバイスを識別する。指定されたグループの中のデバイスに割り当てられる一組のポリシールールを識別する。当該デバイスに割り当てられるポリシールールは、１つまたは複数のポリシードキュメントにまとめられる。１つまたは複数のポリシードキュメントを受信する。受信したポリシードキュメントを、デバイスに関連するデータストアに格納する。受信したポリシードキュメントが指定する一組のポリシールールをソフトウェアに適用する。当該適用に応じて、フィードバックをポリシー権限部に提供する。フィードバックは、一組のポリシールールがソフトウェアに適用されるかどうかを示す。
2010517175.tif 000002
【特許請求の範囲】
【請求項１】
デバイスにインストールされるソフトウェアにポリシールールを適用するコンピューター化された方法であって、前記ソフトウェアは、既存の一組のソフトウェアコンフィギュレーションによって設定されており、前記コンピューター化された方法は、
前記ソフトウェアのポリシールールを受信するデバイスのグループを指定するステップと、
前記指定されたグループに属する前記デバイスを識別するステップと、
前記指定されたグループの前記デバイスに割り当てられる一組のポリシールールを識別するステップと、
前記デバイスに割り当てられる前記一組のポリシールールを１つまたは複数のポリシードキュメントにまとめるステップと、
前記１つまたは複数のポリシードキュメントを受信するステップと、
前記受信したポリシードキュメントを前記デバイスに関連するデータストアに格納するステップと、
前記受信したポリシードキュメントによって、指定される前記一組のポリシールールを前記ソフトウェアに適用するステップと、
前記適用するステップに応じてポリシー権限部にフィードバックを提供するステップであって、前記フィードバックは、前記一組のポリシールールが前記ソフトウェアに適用されるかどうかを示している、ステップと
を含むことを特徴とするコンピューター化された方法。
【請求項２】
前記指定するステップの前に前記ポリシー権限部との第１の接続を確立するステップと、前記ポリシー権限部から前記１つまたは複数のポリシードキュメントを取り込んだ後に前記第１の接続を終了するステップとを更に含むことを特徴とする請求項１記載のコンピューター化された方法。
【請求項３】
前記受信したポリシードキュメントに含まれる前記一組のポリシールールを、コンフリクトの判定のために前記ソフトウェアに関連する前記既存の一組のソフトウェアコンフィギュレーションと比較するステップを更に含み、前記比較によってコンフリクトが存在すると判定された後に、前記受信したポリシードキュメントに含まれる前記一組のポリシールールを適用することを特徴とする請求項１記載のコンピューター化された方法。
【請求項４】
前記適用するステップは、前記比較によってコンフリクトが存在すると判定された後に、前記ソフトウェアに関連する前記既存の一組のソフトウェアコンフィギュレーションを適用するステップを含むことを特徴とする請求項３記載のコンピューター化された方法。
【請求項５】
前記適用するステップは、前記受信したポリシードキュメントに含まれる前記一組のポリシールールのうちの、一部もしくは全体を適用するか、またはいずれも適用しないステップを含むことを特徴とする請求項１記載のコンピューター化された方法。
【請求項６】
前記フィードバックを提供するステップは、前記ポリシー権限部に報告を行うステップを含み、前記報告は、前記ポリシードキュメントは前記デバイスによって受信されるかどうか、前記一組のポリシールールは前記ソフトウェアにうまく適用されるかどうか、及び、前記一組のポリシールールは前記ソフトウェアを設定するルールに従っているかどうか、のうちの少なくとも１つを示す情報を含んでいることを特徴とする請求項１記載のコンピューター化された方法。
【請求項７】
前記ポリシー権限部との第２の接続を確立するステップをさらに含み、前記フィードバックを提供するステップは、前記第２の接続を介して前記ポリシー権限部にフィードバックを提供するステップを含むことを特徴とする請求項１記載のコンピューター化された方法。
【請求項８】
前記受信するステップは、
前記第１の接続を通じて前記ポリシードキュメントに対する前記ポリシー権限部を定期的に監視するステップまたは前記ポリシードキュメントが利用可能であることを示す前記ポリシー権限部からの通知を受信するステップ、
のうちの１つまたは複数を含むことを特徴とする請求項２記載のコンピューター化された方法。
【請求項９】
１つまたは複数のコンピューター読み取り可能な媒体は、請求項１記載の方法を実行するコンピューター実行可能命令を含むことを特徴とする請求項１記載のコンピューター化された方法。
【請求項１０】
デバイスにインストールされるソフトウェア（２１０）にポリシールールを適用するシステムであって、前記ソフトウェアは、既存の一組のソフトウェアコンフィギュレーションで設定されていて、前記システムは、
プロセッサー（２０６）であって、
前記ソフトウェア（２１０）のポリシールールを受信するデバイスのグループを指定するコンピューター実行可能構成要素と、
前記指定されたグループに属する前記デバイスを識別するコンピューター実行可能構成要素と、
前記指定されたグループのターゲットデバイスに割り当てられる一組のポリシールールを識別するコンピューター実行可能構成要素と、
前記ターゲットデバイスに割り当てられた前記一組のポリシールールを１つまたは複数のポリシードキュメントにまとめるコンピューター実行可能構成要素と、
前記１つまたは複数のポリシードキュメントを受信するコンピューター実行可能構成要素と、
前記受信したポリシードキュメントによって指定される前記一組のポリシールールを前記ソフトウェア（２１０）に適用するコンピューター実行可能構成要素と、
前記適用に応じて前記ポリシー権限部（１０４）にフィードバックを提供するコンピューター実行可能構成要素であって、前記フィードバックの提供は、前記一組のポリシールールが前記ソフトウェアに適用されるかどうかを示す、コンピューター実行可能構成要素と
を実行するよう構成されるプロセッサーと、
前記受信したポリシードキュメント（１０２）を格納するメモリ領域（２０２）と
を備えたことを特徴とするシステム。
【請求項１１】
前記指定の前に、前記ポリシー権限部との第１の接続を確立するインターフェースを更に備え、前記インターフェースは、前記ポリシー権限部から前記ポリシードキュメントを受信した後に前記第１の接続を終了するよう構成されることを特徴とする請求項１０記載のシステム。
【請求項１２】
前記プロセッサーは、前記受信したポリシードキュメントに含まれる前記一組のポリシールールを前記デバイスの前記ソフトウェアに関連する既存の一組のソフトウェアコンフィギュレーションと比較し、前記比較の後に、前記受信したポリシードキュメントに含まれる前記一組のポリシールールを適用するよう構成されることを特徴とする請求項１０記載のシステム。
【請求項１３】
前記プロセッサーは、前記一組のポリシールールのうちの、一部もしくは全体を適用するか、またはいずれも適用しないことを特徴とする請求項１２記載のシステム。
【請求項１４】
前記フィードバックは、前記ポリシー権限部への報告を含み、前記ポリシー権限部への報告は、前記ポリシードキュメントは前記デバイスによって受信されるかどうか、前記一組のポリシールールは前記ソフトウェアにうまく適用されるかどうか、及び、前記一組のポリシールールは前記ソフトウェアを設定するルールに従っているかどうか、のうちの少なくとも１つを示す情報を含むことを特徴とする請求項１０記載のシステム。
【請求項１５】
インターフェースは、前記ポリシー権限部との第２の接続を更に確立し、前記フィードバックの提供は、第２の接続を介して前記ポリシー権限部にフィードバックを提供すること含むことを特徴とする請求項１０記載のシステム。
【請求項１６】
デバイスにインストールされるソフトウェアにソフトウェアコンフィギュレーションを適用するコンピューター実行可能構成要素を有する１つまたは複数のコンピューター読み取り可能な記録媒体であって、前記コンピューター実行可能構成要素は、
前記ソフトウェアのポリシールールを受信するデバイスのグループを指定するポリシージェネレータ（１１６）であって、前記グループに属しているデバイスを識別する、ポリシージェネレータと、
各グループの前記ターゲットデバイス（１０６）に割り当てられるポリシールールを識別する関連構成要素（１１８）であって、前記ターゲットデバイスに割り当てられる前記ポリシールールを１つまたは複数のポリシードキュメントにまとめる、関連構成要素と、
ポリシー権限部から前記１つまたは複数のポリシードキュメントを受信するクライアントリクエスタ（２２０）と、
前記受信されたポリシードキュメントによって指定される前記一組のポリシールールを前記ソフトウェアに適用する策定エンジン（２１２）と、
前記ポリシー権限部に、インターフェース構成要素を介してフィードバックを提供するレポータ（２０４）であって、前記フィードバックは、前記一組のポリシールールが前記デバイスにインストールされた前記ソフトウェアに適用されるかどうかを示す、レポータと、
前記受信したポリシードキュメントを前記デバイス（１０６）に格納するデータストア（２０２）と
を含むことを特徴とするコンピューター読み取り可能な記録媒体。
【請求項１７】
前記策定エンジンによって適用される前記ポリシールールに応じて前記ソフトウェアとの関係を識別する設定プロバイダを更に含むことを特徴とする請求項１６記載のコンピューター読み取り可能な記録媒体は、
【請求項１８】
前記インターフェース構成要素は、前記ポリシー権限部との第２の接続を更に確立するよう構成され、前記レポータは、前記第２の接続を介して前記ポリシー権限部へフィードバックを提供することを特徴とする請求項１６記載のコンピューター読み取り可能な記録媒体。
【請求項１９】
前記インターフェースは、前記ポリシージェネレータの前にポリシー権限部との第１の接続を確立し、前記インターフェース構成要素は、前記クライアントリクエスタが前記ポリシー権限部から前記ポリシードキュメントを受信した後に前記第１の接続を終了することを特徴とする請求項１６記載のコンピューター読み取り可能な記録媒体。
【請求項２０】
前記第１の接続を介して前記ポリシードキュメントに対する前記ポリシー権限部を定期的に監視する通知受信器を更に含むことを特徴とする請求項１９記載のコンピューター読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、システム管理ポリシーの認証、配布、及び策定に関する。
【背景技術】
【０００２】
分散コンピューターネットワークでは、ソフトウェアは、ネットワークに接続されたデバイスにインストールされている。ユーザーは自分のコンピューターで動作するソフトウェアについて精通するようになるにつれて、ソフトウェアコンフィギュレーションを変更して、ソフトウェアを独自のものにする、保護する、などする。例えば、あるユーザーは、特定のソフトウェアのためのグラフィカルユーザーインターフェース（ＧＵＩ）のアピアランスを変更することを所望するかもしれない。一方、別のユーザーは、スクリーンセーバープログラムのための特定のタイマーをセットすることを所望するかもしれない。３番目のユーザーは、メディアプレーヤーツールバーなどを隠してメディアプレーヤーアピアランスモードを設定することを所望するかもしれない。
【０００３】
各ユーザーのセンス即ち好みに合うようにソフトウェアを独自のものにする、即ちカスタマイズすることができるが、ネットワーク管理者は、一般的に、同一または一定のコンフィギュレーションを用いてネットワーク上のデバイスの各々にインストールされている全てのソフトウェアを設定することを所望する。一定のコンフィギュレーションは、ソフトウェアの配置をより便利にするだけでなく、トラブルシューティング作業及びメンテナンス作業をより簡単にする。
【０００４】
一般的に、ネットワークアドミニストレータ、情報テクノロジ（ＩＴ）マネージャなど（「ＩＴ管理者」と総称する）は、ＩＴ管理者の意図及び目的を含む管理ポリシーを生成する。デバイスまたはシステムの１つひとつは、自身を調整してポリシーに従う責任がある。現在、ＩＴ管理者は、コンピューターが１５分間使われなかった後にスクリーンセーバープログラムを起動することなどの、コンピューターに配置されるポリシールールを生成することができる。ＩＴ管理者は、ポリシー権限部（policy authority）内にポリシーを置くことができる。ポリシー権限部のうちのいくつかの実施形態を、サーバーと称することができる。ポリシー権限部は、ポリシーが受信されることを示すコンピューターに、定期的に通知をブロードキャストする。コンピューターは、このコンピューターで実行されるポリシーについてのポリシー権限部とアクティブの接続状態にあることが必要である。
【０００５】
別の実行例では、ポリシー権限部は、ポリシーがダウンロードされることを示すコンピューターのリスニング構成要素に通知することができる。一旦アクティブな接続でポリシー権限部とつながると、コンピューターは、ポリシーをダウンロードして、コンピューターのメモリ領域内にポリシー権限部とのアクティブ接続の有無にかかわらず実行されるべき当該ポリシーを保存する。
【０００６】
これらの実行例は、ソフトウェアコンフィギュレーションを管理しているポリシーの配置などの特定のタスクを実行するのに十分だったが、欠点がある。例えば、ネットワーク内で管理されるべきいくつかのデバイスは、複雑であり、ポリシー表現またはポリシールールのためのカスタマイズされたフォーマットまたはカスタマイズされた構文を必要とする場合がある。従って、特別なポリシー一式が必要とされる場合がある。
【０００７】
別の不足事項には、ポリシーが配置された後に、同じターゲットデバイスについての類似のポリシーがコンフリクトを起こすかどうかを判定する能力をＩＴ管理者が欠いていることが含まれる。例えば、ＩＴ管理スタッフＡが、１５分後に起動されるスクリーンセーバープログラムを設定するポリシーを生成するが、同時に、別のＩＴ管理スタッフＢが、スクリーンセーバー起動時間について２０分間の異なったポリシーを生成しようとすると仮定する。配置時に、ＩＴ管理スタッフＡは、ＩＴ管理スタッフＢによって生成された異なるポリシーとコンフリクトがあるかもしれないことがわからないかもしれない。ターゲットデバイスに対して、ソフトウェアは両方からのポリシーを単に採用して、コンフィギュレーションを変更し続ける。あるいは、例えばルールが受信された時間などに基づくハードコードされたルールは、ＩＴ管理スタッフＡによって生成されたポリシーがＩＴ管理スタッフＢによるポリシーを無効にすることを選択することができる。
【０００８】
更に、既存のポリシーは不可欠であり、既存のポリシーの各々は、ポリシーのターゲットデバイスが実行することになっている一組の命令である。既存のポリシー配置フレームワークはまた、ポリシーのターゲットデバイスがポリシー権限部またはＩＴ管理スタッフにそのポリシーの遵守を報告することができるフィードバックループを欠いている。
【発明の概要】
【０００９】
本発明の実施形態は、ソフトウェアコンフィギュレーションを管理するためのポリシールールまたは実行可能な表現のためのスキーマを定義することによって既存のシステムまたは実行例を改善する。本発明の実施形態は、更に、ルールがターゲットデバイスに配置される前に、コンフリクトするポリシールール同士のコンフリクト検出を確立する。更に、本発明の態様は、ポリシールールが適用された後に、ソフトウェアのステータスまたは状態を示すターゲットデバイスの各々からの応答を受信する。
【００１０】
更に、本発明の態様は、それらに関連するスキーマを有するポリシーの各々が、ターゲットデバイスの有効終了状態を記述するポリシーの実施における宣言型パラダイムを提供し、ターゲットデバイスはその状態に至る方法を決定する。この宣言型特徴は、少なくとも、所望の終了状態に至らせる手段にポリシーの表現を変更する必要なしに時間とともに進行することができるようにし、より簡単にマシン処理される形でポリシーを表すことを可能にしてコンフリクトの検出能力／解消能力を向上させる。更に、本発明の様々な態様は、ターゲットデバイスにフィードバックを提供して、そのポリシーの順守をポリシー権限部に報告する。更に、本発明の実施形態は、プロキシサーバーを用いることによってポリシードキュメントの配置の拡張性を向上させる。プロキシサーバーは、ポリシー要求などの、ターゲットデバイスに対するタスクを実行することができる。
【００１１】
本発明の代替の態様によれば、スキーマまたはドキュメントフォーマットは、ソフトウェアコンフィギュレーション及び／または設定及び／または状態を設定する目的及び／またはルール間の一定の関係または標準の関係を定義する。本発明の実施形態はまた、ポリシードキュメントが適用される前に、ソフトウェア状態の表現を向上させる。
【００１２】
本概要は、以下の発明の詳細な説明でさらに説明されている選択した概念を簡略化した形式で紹介するために提供するものである。本概要は、特許請求の範囲に記載されている主題事項の重要な特徴または本質的な特徴を特定することを目的とするものでも、特許請求の範囲に記載されている主題事項の範囲の決定に際して、補助として使用することを目的とするものでもない。
【００１３】
他の特徴については、以下で一部が明らかになり、一部が指摘される。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施形態による分散コンピューターネットワーク内のターゲットデバイスにインストールされるソフトウェアのポリシールールを管理するシステムの例示的な実施形態を示すブロック図である。
【図２】本発明の実施形態によるターゲットデバイスのソフトウェアにポリシールールを適用する例示的な構成要素を示すブロック図である。
【図３】本発明の実施形態によるポリシー生成ユーザーインターフェースを示す例示的なグラフィカルスクリーンショットを示す図である。
【図４】本発明の実施形態によるターゲットデバイスにインストールされるソフトウェアのポリシールールを管理するオペレーションを示す例示的なフローチャートである。
【図５Ａ】本発明の実施形態による生成された例示的なＸＭＬポリシードキュメントを示す図である。
【図５Ｂ】本発明の実施形態によるターゲットデバイスのポリシーのアプリケーションの一部として、管理されるターゲットデバイスで生成された例示的なドキュメントを示す図である。
【００１５】
（付録Ａ）本発明の実施形態において適用可能なデータ型の例示的な定義を示す。
（付録Ｂ）本発明の実施形態によるポリシードキュメントに現れるポリシールールの定義において用いられるスカラー型に関する例示的な演算子のリストを示す。
（付録Ｃ）本発明の実施形態によるポリシールールの定義において用いられるアグリゲート型に関する１つまたは複数の例示的な演算子を示す。
（付録Ｄ）本発明の実施形態によるポリシードキュメントにおいて用いられる例示的な一組の動作タイプを示す。
【００１６】
対応する参照文字（符号及び数字）は、図面の全体にわたって対応する部分を示す。
【発明を実施するための形態】
【００１７】
本発明の実施形態は、コンピューターネットワークを介して利用可能な１つまたは複数のターゲットデバイスにインストールされるソフトウェアについてのコンフィギュレーション及び状態の効率的な管理のためのプラットフォームを確立する。現在の技術のように特定の場所に格納されたパッチまたは単なるデータへのポリシーの適用に限定するよりはむしろ、本発明の実施形態は、ネットワーク化された環境の全体にわたってポリシーを適用するための共通のプラットフォームまたはスキーマを提供する。よって、多くの異種で非協働のシステムは、包括的なポリシーによる管理の解決法を提供するのにもはや必要とされていない。更に、本発明の態様は、コンフリクトの解消方法及び／または検出能力を提供してポリシードキュメントにおけるルール同士のコンフリクトを解消し、ポリシールールが適用される前後に、ターゲットデバイスのステータスまたは状態に関してターゲットデバイスからの適切な報告またはフィードバックを可能にする。
【００１８】
ここで図１を参照すると、ブロック図は、本発明の実施形態による分散コンピューターネットワークのターゲットデバイスにインストールされるポリシードキュメント１０２を用いてソフトウェアのコンフィギュレーションを管理するシステム１００を示す。システム１００は、１つまたは複数のターゲットデバイス１０６にサービスを提供するポリシー権限部１０４を含む。ポリシー権限部１０４は、コンピューター、サーバーコンピューター、コンピューターデバイス、コンピューターのクラスタ、コンピューターデバイスのクラスタ、または、処理ユニットもしくはプロセッサー１０８などの処理ユニットのクラスタであってもよい。限定でなく単純化するために、以下に示すポリシー権限部１０４は、サーバーで現される。ポリシー権限部は、本発明の範囲から逸脱することなく、ターゲットデバイス１０６などの他の管理されたデバイスで実施または現されてもよいことを理解されたい。ポリシー権限部１０４はまた、メモリ領域またはデータストア１１０に関連付けられるかまたは接続される。例えば、データストア１１０は、データベース、メモリ記憶領域、及び／またはメモリ記憶ユニットのグループを含んでいてもよい。代替実施形態では、データストア１１０は、有線ネットワーク接続または無線ネットワーク接続などの様々なネットワーク手段によって接続される。別の例では、例えば有線ネットワークまたは直接配線接続など、並びに、音響、ＲＦ、赤外線、及び他の無線媒体のような無線媒体などの通信媒体には、一般的に、コンピューター読み取り可能な命令、データ構造、プログラムモジュール、またはその他のデータを、搬送波または他の搬送メカニズムなどの変調データ信号として具体化したものであり、また、任意の情報通信媒体を含む。当業者は、変調データ信号であって、情報を信号にエンコードするような方法で、その１つまたは複数の特徴が設定または変更された変調データ信号に精通している。上記のうちの任意の組合せも、コンピューター読み取り可能な媒体の範囲に含まれる。
【００１９】
本発明の態様を、出発点として図３を用いて説明することができる。図３は、本発明の実施形態によるポリシー生成ユーザーインターフェース（例えば、ユーザーインターフェース１１２）を示す例示的なグラフィカルスクリーンショット３００である。グラフィカルスクリーンショット３００の内容は、例えば、スクリプトベースのインターフェースまたはテキストベースのインターフェースなどの他の手段によって示されてもよいことを理解されたい。グラフィカルスクリーンショット３００は、管理者識別入力のためのフィールド３０２を含む。例えば、管理者はフィールド３０２内に自分の名前を入力して、誰がポリシードキュメント１０２を生成しているかを特定することができる。グラフィカルスクリーンショット３００はまた、ポリシールールについての詳細のためのフィールド３０４を含む。上記のスクリーンセーバー期間をセットする単純化した例を用いて、ユーザー１１４はソフトウェアのための一組のポリシールールを定義することができる。一実施形態において、ソフトウェアは、例えば、スクリーンセーバープログラム、アプリケーションの集合またはアプリケーションの構成要素、オペレーティングシステムなどのアプリケーションをフィールド３０４に含む。ルールは、一組のポリシールールを定義するための演算子、オペランド、及び他の値と複合的であるかもしれない。代替実施形態において、ユーザー１１４は、付録Ａに示したようなポリシードキュメント１０２に含まれるデータを記述する１つまたは複数の定義済みのデータ型、付録Ｂに示すポリシードキュメントに現れるポリシールール定義において用いられるスカラー型に関する１つまたは複数の例示的な演算子、付録Ｃのポリシールールの定義において用いられるアグリゲート型に関する１つまたは複数の例示的な演算子、または付録Ｄの１つまたは複数の例示的な動作型を用いることができる。別の代替実施形態では、ユーザー１１４は、ＸＭＬフォーマットもしくは他のフォーマットまたはスキーマでルールを構成し、そのポリシールールをポリシー権限部１０４によって実行および評価してもよい。様々なソフトウェアに対する汎用アプリケーションのための実行可能な表現を生成するかまたは定義するための他のフォーマットまたはスキーマを、本発明の範囲から逸脱することなく用いることができる。例えば、図５Ａは、本発明の実施形態によるＸＭＬ形式のポリシードキュメントの相対的に単純化した例を示す。
【００２０】
図３の例を更に参照すると、グラフィカルスクリーンショット３００はまた、ターゲット選択セクション３０６を含み、ターゲット選択セクション３０６において、ユーザー１１４は、一組のターゲットデバイスを定義または選択することができる。例えば、既存の選択３０８に示すように、以下のターゲットグループ、即ち、「グループ１」、「ビルディングＫ」、「ビルディング１５」、「全て」、及び「会計」を利用できる。グループの各々は、ターゲットデバイスのそのメンバシップ情報を定義する。例えば、「グループ１」は、ＩＴ管理者に関連するターゲットデバイスを含むことができる。一方、「会計」グループは、会計部門の全てのターゲットデバイスを含むことができる。代替実施形態において、グラフィカルスクリーンショット３００は、グループ内の各メンバまたは各グループに関する追加の情報を与える追加のオペレーションを含むことができる。例えば、ユーザー１１４は、一般的なマウス入力デバイスの右側のボタンを用いて、各グループまたはグループ内の各メンバについて追加の詳細を見ることができる。更なる実施形態において、グラフィカルスクリーンショット３００は、ユーザー１１４がターゲットデバイス１０６に対して追加のグループを生成できるようにするボタン３１０を含む。
【００２１】
グラフィカルスクリーンショット３００はまた、フィールド３１２内に１つまたは複数の配信オプションを含む。例えば、ユーザー１１４は、選択された一組のターゲットデバイスへのポリシードキュメントの即時配信もしくは優先配信、または選択された一組のターゲットデバイスへのポリシードキュメントの計画的配信を選択することができる。一実施形態において、即時配信オプションまたは優先配信オプションが選択されるとき、ポリシードキュメントが取り込まれることを示す選択された一組のターゲットデバイスに対して通知を発行することができる。本実施形態において、計画的配信が選択されるとき、ポリシー権限部１０４は、インターフェース１２８を介してポリシードキュメント１０２を提供することができ、または、ポリシードキュメント１０２をコンテンツ配布データストアに一時的に格納し、計画された期間でコンフリクトの解消後に取り込むことができる。他の配信オプションを、本発明の範囲を逸脱することなく提供することができる。
【００２２】
グラフィカルスクリーンショット３００は、一組のコンフリクト解消設定セクション３１４を含み、ユーザー１１４は、一組のコンフリクト解消設定セクション３１４で、ポリシールール同士の間のコンフリクトを解消するための設定をセットすることができる。例えば、ＩＴ管理スタッフメンバーは、１５分のアイドル期間後にスクリーンセーバープログラムを起動するルールをセットしようとし、一方、他のＩＴ管理スタッフメンバーは、１０分のアイドルタイム後にスクリーンセーバープログラムを起動するルールをセットしようとすると仮定する。既存の技術の下で、これらのルールは、いずれのスタッフメンバーもコンフリクトがあったことを知らないうちに、定義されているように実行される。本発明の実施形態は、連合するコンフリクト検出／解消を利用可能にして、セクション３１４で示すようにコンフリクト検出及びコンフリクト解消の両方を提供する。例えば、図３は、ポリシー権限部１０４またはポリシー権限部１０４の構成要素が、生成されたポリシードキュメントと２００６年１２月１４日にＩＤ「ＡＡ」を持つ管理者によって生成された既存のルール「ルール１２０」との間でコンフリクトを検出したことを示す。ユーザー１１４は、ボタン３１６をクリックすることによって付加的な情報即ち追加の情報を得ることができる。
【００２３】
セクション３１４において記載されているように、ユーザー１１４はまた、１つまたは複数の例示的なコンフリクト解消設定を選択することができる。即ち、以前に生成されたルールを無効にすること、以前に生成されたルールに従うこと、またはカスタマイズされたルールを実行すること、である。コンフリクトを解消する他のオプションを、本発明の範囲を逸脱することなく利用できることを理解されたい。例えば、図４は、他のコンフリクト解消設定を説明しており、以下で詳細に説明される。ボックス３１８で、コンフリクトを解消するためのカスタマイズされたルールを定義する入力フィールドをユーザー１１４に提供する。このように、本発明の態様は、ポリシーがターゲットに割り当てられるときに自動的なコンフリクト検出を提供し、ターゲットの新しく割り当てられたポリシーが既存のものと衝突するとすぐに管理者が知ることができるようにする。更に、管理者は、コンフリクトがシステムによって自動的に、またはユーザー１１４により自己の判断で解消されるかどうか、およびその方法を判定するのに柔軟性を有する。更に、本発明の実施形態は、１つまたは複数のポリシールールのための実行の順番または優先度を定めることができる。
【００２４】
また、図３のグラフィカルスクリーンショット３００は、本発明の実施形態を用いるための１つまたは複数の選択可能なオペレーションを示すが、上記で検討したオペレーションを表現する他の手段が用いられてもよいことを理解されたい。例えば、自由な形式のテンプレートを用いることができ、自由な形式のテンプレートにおいてオペレーションが選択されることになっており、オペレーションが選択された後に、対応するタグがリアルタイムでポリシードキュメント案に自動的に挿入されてもよい。本例では、ユーザー１１４は、「ターゲット選択」などのいかなる動作も（例えば、入力デバイスを用いて）選択することができ、対応するタグを、リアルタイムでポリシードキュメント案に挿入することができる。更なる代替実施形態において、ドロップダウンメニュまたは他のダイナミックＧＵＩ技術を用いて、本発明の実施形態によるポリシードキュメントの生成を促進することができる。
【００２５】
再び図１を参照すると、図３において上記で示したように、ポリシードキュメント１０２は、ユーザー１１４の命令及び選択に応じて生成される。一例では、ポリシードキュメントの集合を、バッチ処理などの自動的な手段を介してポリシー権限部１０４に提供することができる。別の実施形態では、図３に示したグラフィカルスクリーンショット３００はポリシージェネレータ１１６によって提供され、ポリシージェネレータ１１６は、ユーザー１１４からの命令即ち入力を受信してポリシードキュメントを生成する。関連構成要素１１８は、選択された一組のターゲットデバイス１０６をユーザー１１４からの命令に基づくポリシードキュメント１０２に関連付ける。関連構成要素１１８はまた、一組のターゲット情報１３０をポリシードキュメント１０２に関連付ける。一実施形態において、選択された一組のターゲットデバイスに関する情報は、ターゲットデバイスにインストールされるソフトウェアに関する情報及び選択された一組のターゲットデバイスのソフトウェアの各部分の特徴に関する情報を含む。例えば、当該情報には、ソフトウェアがレガシーシステム等に基づくかどうかが含まれる。
【００２６】
一旦、選択された一組のターゲットデバイス１０６がポリシードキュメント１０２に関連付けられると、ルール評価器１２２は、ポリシードキュメント１０２に含まれる一組のポリシールールを、ターゲットデバイスに関するソフトウェアの他のポリシールールと比較する。例えば、再び図３を参照すると、ルール評価器１２２は、選択された一組のターゲットデバイスに適用される既存のポリシードキュメントまたは継続中のポリシードキュメントとポリシードキュメント１０２を比較する。例えば、ルール評価器１２２は、ポリシードキュメント１０２を、（例えば、ユーザーから、または、オペレーティングシステム、ポリシー権限部１０４、クライアント１０６もしくは他の自動化された資源で予め設定された）第２の命令によって生成される既存のポリシードキュメントまたは継続中のポリシードキュメントと比較する。別の実施形態では、検出構成要素１２４は、ポリシードキュメントのコンテンツを走査し、ポリシードキュメントの各々のポリシールール同士を比較して、ポリシードキュメント内の２つのポリシールールの間にコンフリクトがあるかどうかを判定する。別の代替実施形態において、ポリシードキュメント１０２は、コンフリクトを解消するために、ユーザー１１４によってまたはポリシー権限部１０４の構成要素によって変更されてもよい。例えば、図３はコンフリクト解消選択に基づいてコンフリクトを解消する少なくとも１つの方法を検討する。
【００２７】
一旦、ポリシードキュメント１０２が認証されると、ポリシードキュメント１０２はルール評価器１２２によって比較されて、ポリシードキュメント１０２は、ポリシー権限部１０４によって、選択された一組のターゲットデバイス１０６に利用できるようにされる。インターフェース１２６は、ポリシー権限部１０４からポリシードキュメント１０２を受信し、選択された一組のターゲットデバイス１０６は、インターフェース１２６を介してポリシー権限部１０４からポリシードキュメント１０２を取り込み、またはポリシードキュメント１０２を取り込む前にまず通知を受信する。一実施形態において、インターフェース１２６は、例えばポリシー権限部１０４とターゲットデバイス１０６との間のゲートウェイとして動作するなど、処理状態を把握していなくてもよく、ポリシードキュメント１０２を格納しない。例えば、ポリシー権限部１０４は、ターゲットデバイスに通知を送信するための通知構成要素１３４を含む。また別の実施形態において、ポリシー権限部１０４は、（図２において更に検討される）選択された一組のターゲットデバイス１０６に通知するためのオペレーションの一部を実行するプロキシサーバー１２６を含むことができる。また別の実施形態において、ポリシージェネレータ１１６、関連構成要素１１８、ルール評価器１２２、及び検出構成要素１２４は、１つまたは複数のコンピューター読み取り可能な媒体において具体化されるコンピューター実行可能構成要素である。
【００２８】
ここで図２を参照すると、ブロック図は、本発明の一実施形態によるターゲットデバイス１０６に関連する例示的な構成要素を示す。ターゲットデバイス１０６は、ローカルメモリ領域の集合２０２を含む。ローカルメモリ領域の集合２０２は、サーバー１０４から送信されるポリシードキュメント１０２、ポリシードキュメントのキャッシュ、及びコンフィギュレーション設定を格納しているデータストア（例えば、コンフィギュレーションストア）を格納するための記憶領域を含む。ターゲットデバイス１０６はまた、コンピューター実行可能命令、コード、実行可能な表現等を実行するプロセッサー２０６を含む。ターゲットデバイス１０６はまた、サーバーからの通知またはポリシードキュメントの入手可能性を定期的に監視する通知受信器２０８即ちリスナを含む。一例では、通知受信器２０８は、ポリシードキュメント１０２のために例えば１０日ごと等の、所定時間にサーバーとコンタクトすることができる。即時配信が要求される図３の上記した例において、通知受信器２０８は、ポリシードキュメント２０２のために定期的にサーバーを監視することができる。一旦、ポリシードキュメント１０２がターゲットデバイス１０６に利用可能となると、ポリシードキュメント１０２は、ターゲットデバイス１０６に関連するメモリ領域２０２にローカルに格納される。一実施形態において、ターゲットデバイス１０６は、サーバー１０４からポリシードキュメントを取り込むときにサーバー１０４との第１の接続を確立することができ、ポリシードキュメント１０２の取り込みを完了した後に第１の接続を終了することができる。
【００２９】
一旦、ポリシードキュメント１０２がターゲットデバイス１０６にローカルに格納されると、ターゲットデバイス１０６は、ソフトウェア２１０のソフトウェア状態に基づいてポリシールールを評価する。例えば、ソフトウェアコンフィギュレーションは、スクリーンセーバータイマー値、またはテキスト編集ソフトウェア用の「ワードラップを有効にする」ための値などの設定可能なパラメータを含む。別の例では、ソフトウェアの状態は、様々なローカルメモリまたはデータ記憶領域に様々な形で格納される。これらの設定状態は、設定可能なパラメータである状態またはアプリケーションウインドウの最後のウィンドウサイズ及び位置のような他の状態を含むことができる。単純化するために、このような記憶装置の全ての形が、単一のソフトウェア設定ストア（例えば、メモリ領域２０２）として示される。このように、ターゲットデバイス１０６は、現在のソフトウェア状態でポリシールールを精査しまたは調べて、ソフトウェア２１０がポリシードキュメント１０２に定義されているルールに従っているかどうかを判定する。代替実施形態では、（以下に更に詳細に検討されることになっている）１つまたは複数の設定プロバイダ２１８を用いて、メモリ領域２０２から現在のソフトウェア状態を取り込み、およびセットする。
【００３０】
本発明の代替実施形態は、ターゲットデバイス１０６のソフトウェア２１０に、ポリシードキュメントに含まれるポリシールールを適用する策定エンジン２１２を含む。例えば、策定エンジン２１２は、ポリシールールを処理する１つまたは複数のコンピューター実行可能構成要素を含む。一例では、図５Ｂは、本発明の実施形態によるターゲットデバイスの策定エンジン２１２によってポリシーの策定の一部として管理されるターゲットデバイスで生成される例示的なドキュメントを示す。別の実施形態では、管理インターフェース２１４は、ユーザー１１４によって用いられる策定エンジン２１２のためのアプリケーションプログラミングインターフェース（ＡＰＩ）を見えるようにするかまたは提供して、管理されるターゲットデバイスのポリシードキュメントをローカルに生成する。このように、ターゲットデバイス１０６は、ポリシー権限部１０４からポリシーを受信することができ、またはターゲットデバイス１０６は、ユーザー１１４からターゲットデバイス１０６のポリシーを受信することができる。取り込まれた全てのポリシーは、資源に関係なくメモリ領域２０２に格納される。
【００３１】
更なる実施形態において、ターゲットデバイス１０６はまた、ポリシードキュメント１０２に含まれるポリシールールの実施のステータスまたは適用のステータスに関連する情報をポリシー権限部１０４またはプロキシサーバー１２６に報告するレポータ２０４を含む。本発明の実施形態は、分散コンピューターネットワーク内でターゲットデバイス１０６にインストールされるソフトウェアの準拠状態の簡単な監査を（例えば、変更通知部２１６を介して）可能にする共通の報告システムを確立することによって、既存の技術の欠点を克服する。
【００３２】
あるいは、本発明の実施形態は、ソフトウェアコンフィギュレーションをソフトウェア２１０に適切に適用する、少なくとも１つの設定プロバイダ２１８をターゲットデバイス１０６が含むことができるようにする。例えば、設定プロバイダ２１８は、ポリシードキュメント１０２のポリシールールを精査して、ソフトウェア２１０の設定がどこにあるかを判定する。このように、設定プロバイダ２１８は、ポリシードキュメント１０２のポリシールールにソフトウェア２１０を適合させるために、ソフトウェア２１０のどの部分が設定されるかについて判定する。設定プロバイダ２１８は次に、設定パラメータ位置などの判定した情報を準備し、ＸＭＬフォーマットまたは他の実行可能な表現フォーマットでソフトウェアコンフィギュレーション値を用いて、その情報をドキュメントに変換する。別の実施形態において、設定プロバイダ２１８は、策定エンジン２１２とメモリ領域２０２との間のインターフェースまたは媒介の働きをすることができ、本発明のスキーマによる共通の形式へ、および共通の形式から、メモリ領域２０２内のデータを翻訳することができる。
【００３３】
別の実施形態において、ターゲットデバイス１０６は、モバイル機器または携帯用機器（図示せず）を含んでもよく、図１のプロキシサーバー１２６は、図２の上記のオペレーションの一部を実行することができる。例えば、携帯用機器またはモバイル機器の処理及び／または記憶の制限のために、プロキシサーバー１２６は、携帯用機器またはモバイル機器のポリシードキュメント１０２を要求することができる。プロキシサーバー１２６は、携帯用機器またはモバイル機器に代わってポリシードキュメント１０２を取り込み、携帯用機器またはモバイル機器の策定エンジン２１２は、ポリシールールを実行する。レポータ２０４は、ポリシー権限部１０４にソフトウェアのステータス即ち状態を報告する。本発明のまた別の態様において、ターゲットデバイス１０６は、ポリシー権限部１０４からポリシードキュメントを能動的に要求するためのクライアントリクエスタ２１８を含むことができる。
【００３４】
本発明の他の一態様において、レポータ２０４、通知受信器２０８、策定エンジン２１２、管理部２１４、変更通知部２１６、設定プロバイダ２１８、またはクライアントリクエスタ２２０は、ターゲットデバイス１０６に結合されたコンピューター実行可能構成要素として、１つまたは複数のコンピューター読み取り可能な媒体において具体化されてもよい。更なる実施形態において、ポリシー権限部１０４は、同一のハードウェアのターゲットデバイス１０６で物理的に具体化されてもよく、または（図２の破線で示すように）ターゲットデバイス１０６と同一のハードウェアに共に常駐していてもよい。
【００３５】
ここで図４を参照すると、例示的なフローチャートは、本発明の実施形態によるデバイスにインストールされるソフトウェアにソフトウェアコンフィギュレーションを適用するオペレーションを示す。例えば、受信器２２２、レポータ２０４、通知受信器２０８、策定エンジン２１２、設定プロバイダ２１８、及び管理インターフェース２１４は、図４で説明されているオペレーションのうちの少なくとも１つまたは複数を実行する。ポリシー権限部１０４とターゲットデバイス１０６とがネットワークを介して接続または結合される一実施形態において、符号４０２で、第１の接続をポリシー権限部（例えばポリシー権限部１０４）と確立する。接続は、インターフェース構成要素（例えば、インターフェース１２８）を通じてネットワークを介してなど、即時とすることができる。
【００３６】
ポリシー権限部１０４及びターゲットデバイス１０６が１つの単一のユニットで具体化される代替実施形態では、１つまたは複数のポリシードキュメントは、コンピューター読み取り可能な媒体（例えば、メモリ領域）に格納されており、ターゲットデバイスに利用可能である。更なる代替実施形態において、ターゲットデバイスに関連する全てのポリシードキュメントのまとまりまたは集合は、コンピューター読み取り可能な媒体（例えば、ＣＤ−ＲＯＭまたはＤＶＤ−ＲＯＭ）に格納され、コンピューター読み取り可能な媒体が次にターゲットデバイスに配信されると、ターゲットデバイスに利用可能またはアクセス可能にされる。
【００３７】
符号４０４において、ポリシー権限部１０４は、ポリシードキュメントを受信するターゲットデバイスまたはターゲットデバイスのグループを指定する。例えば、図３で上記に示したように、ユーザー１１４は、ポリシードキュメントを受信するターゲットデバイスまたはターゲットデバイスのグループを指定する命令を与えることができる。指定された各グループに対して、ポリシー権限部１０４は、符号４０６で、グループに属しているターゲットデバイスを列挙または識別する。符号４０８で、ポリシー権限部１０４は、各グループのターゲットデバイスに割り当てられた一組のポリシールールを列挙または識別する。符号４１０で、ポリシールールは、１つまたは複数のポリシードキュメントにまとめられる。
【００３８】
即時接続のシナリオでは、デバイス（例えば、ターゲットデバイス１０６）は、符号４１２においてネットワークを介して第１の接続を通じてポリシー権限部１０４からポリシードキュメント１０２を受信する。一実施形態において、受信器２２２は、ターゲットデバイスのポリシードキュメントを受信する。別の実施形態では、受信器２２２は、インターフェース１２８の一部であってもよい。別の実施形態では、ポリシードキュメントは、コンピューター読み取り可能な媒体に格納され、ターゲットデバイスは、コンピューター読み取り可能な媒体を介してポリシードキュメントを受信する。
【００３９】
符号４１４において、ポリシードキュメント１０２は、デバイスに関連するデータストア（例えば、データストア２０２）に格納される。ポリシードキュメント１０２において指定された一組のポリシールールは、符号４１６でデバイスにインストールされているソフトウェア（例えば、ソフトウェア２１０）に適用される。例えば、一組のポリシールールがスクリーンセーバー用の時間の長さを定義すると仮定すると、このポリシールールはソフトウェアに適用されることになる。レポータ（例えば、レポータ２０４）は、符号４１８において、一組のポリシールールがうまくソフトウェアに適用されるかどうか示すフィードバックをポリシー権限部１０４へ提供する。
【００４０】
遅延型の接続が用いられる別の実施形態において、フィードバックは、別のコンピューター読み取り可能な媒体に格納され、コンピューター読み取り可能な媒体は、ポリシー権限部１０４を動作／管理するＩＴ管理部に（例えば、メール配信を介して）送信される。
【００４１】
代替実施形態では、インターフェース１２８は、ポリシードキュメントをポリシー権限部から取り込んだ後にポリシー権限部１０４との第１の接続を終了する。また別の実施形態では、ＡＰＩを提供してソフトウェア２１０の関数及びパラメータを識別する管理インターフェース２１４は、追加のコンフィギュレーションまたは変更のための追加のＵＩを、デバイスのユーザーに提供する。例えば、管理者がデバイスに配備されて、デバイス２０６をトラブルシューティングすることを所望すると仮定する。管理インターフェース２１４を用いて、管理者は問題を診断またはトラブルシューティングすることができ、およびソフトウェアコンフィギュレーションがソフトウェアに適用される方法を精査することができる。
【００４２】
オペレーションにおいて、図面（例えば、図２）において示したようなコンピューター実行可能命令を実行するデバイスなどのコンピューターを用いて、本発明の態様を実施することができる。
【００４３】
本明細書で図示および説明された本発明の様々な実施形態において、オペレーションの実行または実施の順序は、特に定めがない限り本質的でない。即ち、特に定めがない限り、オペレーションはいかなる順番で実施されてもよく、本発明の実施形態は本明細書で開示されたオペレーションに比べてそれ以上の、またはそれより少ないオペレーションを含むことができる。例えば、特定のオペレーションを別のオペレーションの前に、同時に、または後に実行または実施することは、本発明の態様の範囲内であると考えられる。
【００４４】
本発明の実施形態は、コンピューター実行可能命令で実装することができる。コンピューター実行可能命令は、１つまたは複数のコンピューター実行可能構成要素、またはコンピューター実行可能モジュールで構成されてもよい。本発明の態様は、このような構成要素またはモジュールの任意の数及び任意の構成で実装されてもよい。例えば、本発明の態様は、図において示され本明細書で説明された特定のコンピューター実行可能命令または特定の構成要素もしくはモジュールに限定されない。本発明の別の態様は、本明細書において図示され説明されたより多くの機能または少ない機能を有する異なったコンピューター実行可能命令またはコンピューター実行可能構成要素を含んでもよい。
【００４５】
本発明またはその実施形態の要素を提示する際、「１つの」、「その」、および「前記」という冠詞は、その要素が１つまたは複数存在することを意味することが意図されている。「備える」、「含む」、および「有する」という用語は、包括的であることを意図しており、記載されている要素の他にさらなる要素が存在することがあることを意味している。
【００４６】
本発明の態様を詳細に記載したが、本発明の態様の範囲から逸脱することなく添付の請求項に定義されるように、修正および変更することが可能であることは理解されるであろう。さまざまな変更が、本発明の態様の範囲から逸脱することなく、上記の構成、生産物および方法でなされることが可能であるので、上記の記載に含まれ、添付の図面に示される全ての事が説明のためのものであると解釈されるべきであり、限定の意味で解釈されるべきではないことが意図される。
【００４７】
2010517175.tif 000003
【００４８】
付録Ｂ
下記の表において、Ｐは、可変なプロパティの値（設定値）を表し、ｖはスカラーリテラル値を表し、Ｖはアグリゲートリレラル値を表す。
【００４９】
2010517175.tif 000004
【００５０】
2010517175.tif 000005
【００５１】
2010517175.tif 000006
【００５２】
１．「互換タイプ」を、形式上定義することが必要である。
【００５３】
２．一実施形態において、集合は、Ｐ．カウント＝＝ｖ．カウント及びＰの中の全てのｉについてＰ［ｉ］＜ｖ［ｉ］を用いて定められてもよい。
【００５４】
３．式は左から右に評価され、代替実施形態において、式のうちのいくつかまたは全てはポリシードキュメントにおいて評価されなくてもよい。
【００５５】
４．〜のうちの１つは、列挙のものによって利用可能であるより細かい程度に値を制限することができる。例えば、開発者は、列挙を「低、中間、高、非常に高い」と定義してもよいが、管理目的ごとの許容値は、「低及び中間」である。従って、管理者のポリシーは、Ｐ．は（{低、中間}のうちの１つであるといったようなアサーションとして表される。〜のうちの１つは、列挙以外の他のスカラー型とともに用いられてもよい点に注意する。例えば、開発者は、設定が０と１００との間の整数値（int）であるが、管理者は、〜のうちの１つを用いて、設定を例えば１０、４２、５０、及び８５に制限することができる。
【００５６】
５．１つの代替実施形態において、コンフリクトの検出は、アサーション式の静的解析として用いられてもよい。
【００５７】
６．アグリゲート一致（）演算子は、アグリゲートの全ての要素がパターンに一致しなければならない、という言い方によって、スカラー文字列型のアグリゲートのために定義され得る。
【００５８】
付録Ｃ
代替実施形態では、ポリシールールの定義において用いられるアグリゲート型に関する例示的な演算子は以下で表される。
【００５９】
2010517175.tif 000007
【００６０】
付録Ｄ
本発明の実施形態によるポリシードキュメントに含まれるべき例示的な動作
【００６１】
2010517175.tif 000008
【００６２】
2010517175.tif 000009
【図１】
2010517175.tif 000010
【図２】
2010517175.tif 000011
【図３】
2010517175.tif 000012
【図４】
2010517175.tif 000013
【図５Ａ】
2010517175.tif 000014
【図５Ｂ】
2010517175.tif 000015
【国際調査報告】
2010517175.tif 000016
2010517175.tif 000017