エンドポイント構成マージ

このセクションの内容

エンドポイント構成マージ

エンドポイント構成マージは Application Control エージェントを使用して、1つのエンドポイントに保存された複数の AAMP 構成ファイルを1つの構成に組み合わせます。グループ、ユーザ、カスタム ルール タイプ、および他のルール タイプと、各構成からのアプリケーションおよびポリシー ライブラリは、マージされた構成に追加されます。

マージを実行するには、個別の構成をエンドポイントのディレクトリに追加し、マニフェスト ファイルでマージされる構成を指定します。エージェントはマージ ディレクトリを監視し、マニフェスト ファイルがディレクトリに追加されるときに、自動的に構成をマージします。

エンドポイント構成マージでは、さまざまなビジネスの領域が構成の特定の領域で独立して機能することができます。これをマージして、1つの構成を作成することができます。

System Center Configuration Manager 統合は、エンドポイント構成マージではサポートされません。

コンポーネントのマージ

基本コンポーネント

すべてのマージには基本構成が必要です。これは、マージの最初の構成であり、その上に他の構成が追加されます。マージされた構成は、メッセージ設定、監査、既定の設定などのグローバル属性を基本構成から取得します。

このため、マージされない設定が基本で定義されている必要があります。

既定では、基本構成は AAMP ファイルとして設定されます。これは、ライブ構成がエンドポイントに保存されるときに作成されます。

%PROGRAMDATA%\AppSense\Application Manager\Configuration\configuration.aamp

ただし、マージの構成は基本構成として設定できます。

最低バージョンの AAMP ファイルのみをマージに含めることができます。

コンポーネント構成

マージされた構成は、基本構成と、1つ以上のコンポーネント構成から成り立っています。コンポーネント構成は、マージ中に基本構成に追加される AAMP ファイルです。マージの一部として、コンポーネント構成を MergeConfigs ディレクトリに保存する必要があります。

MergeConfigs ディレクトリ

このディレクトリは、マージ用にコンポーネント構成が保存され、有効なマニフェストファイルが検出されるときにマージがトリガされる場所です。

エンドポイントで AMAgentService を起動すると、MergeConfigs ディレクトリが作成されます。

%PROGRAMDATA%\AppSense\Application Manager\MergeConfigs

このディレクトリは保護され、管理者のみが書き込めます。これにより、エンドユーザがマージ構成に影響を及ぼせないことが保証されます。

ManifestGen ツール

Application Control には、構成とスニペットをマージするときに役立つコマンドライン ツールがあります。ManifestGen ツールは、構成マージを定義およびトリガするために使用される XML マニフェスト ファイルを作成します。XML ファイルには、マージされる AAMP ファイルの詳細が含まれ、システム configuration.aamp またはコンポーネント構成がマージで基本として使用されるかどうかを指定できます。

ツールを簡単に使用できるようにするには、その場所を [詳細システム プロパティ] > [環境変数] > [パス] に追加します。

%PROGRAMFILES%\AppSense\Application Manager\Console

マニフェスト

マニフェストはマージされる構成の詳細を含む XML ファイルであり、基本構成が含まれるかどうかを示します。マニフェストが MergeConfigs ディレクトリで検出されると、マニフェストがマージを開始します。エージェントで検出される場合に、マージが開始します。

マニフェストは、ManifestGen コマンドライン ツールを使用して作成されます。

以下の表は、マニフェスト XML ファイルを構成する属性とタグを示します。

属性/タグ 説明
MergeManifest 構成のルート ノード。
MergeFiles マージに含まれる AAMP ファイルのリストに関するコンテナ タグ。
FileEntry Name マージに含まれる構成を特定します。ファイルをマージに含めるには、MergeConfigs ディレクトリに存在する必要があります。
UseSystemBase マニフェストに存在しない場合は、既定で、UseSystemBase が「true」に設定されています。「true」または「false」に設定し、既定の Configuration.aamp をマージに含めるか除外するかを指示できます。これは %ProgramData%\AppSense\Application Manager\Configuration\configuration.aamp にあるライブ Configuration.aamp ファイルです。

「true」に設定する場合、マニフェストが配布されるときに、基本構成が既にエンドポイントに存在する必要があります。そうでない場合、マージが失敗します。

「false」に設定されている場合、BaseConfig 属性で定義されていないかぎり、MergeFiles リストの最初の構成が基本構成として使用されます。

WaitForConfigs マニフェスト .xml が MergeConfigs ディレクトリで検出され、一部の名前付き構成が存在しないときの動作を決定します。次の値を設定できます。

True - マニフェストに存在しない場合の既定の設定。マニフェストで参照されているすべての構成が存在するまで、マージが無期限に待機し、その後にマージが完了します。マニフェストと構成を配布し、ディレクトリに追加される順序がわからない場合には、この方法が最適です。たとえば、MSI を使用している場合です。

False - 存在しない構成を参照するマニフェストが MergeConfigs ディレクトリで検出された場合には、マニフェストが失敗します。

MSI などのインストーラを使用して、構成とマニフェストをエンドポイントにプッシュする場合は、構成とマニフェストの追加順序を保証できないため、これを「true」に設定することをお勧めします。

SystemBase Configuration.aamp ファイルを使用している場合には適用されません。マニフェスト マージがトリガされ、Configuration.aamp が存在しない場合は、マージが失敗します。基本を待機しません。

チェックサム

(Optional)

AAMP ファイルに固有の MD5チェックサム。マニフェストに含まれる場合、MergeConfigs フォルダの AAMP ファイルのチェックサムはマージに含まれるチェックサムと同じでなければなりません。

基本構成はチェックサムによって参照されません。

マニフェストの作成

  1. マージする構成を MergeConfigs ディレクトリに保存します。

    %PROGRAMDATA%\AppSense\Application Manager\MergeConfigs

  2. コマンドライン インターフェイスを開きます。
  3. cd %programdata%\AppSense\Application Manager と入力して、ディレクトリを変更します。
  4. manifestgen "C:\ProgramData\AppSense\Application Manager\MergeConfigs\*.aamp" と入力します。

MergeConfigs フォルダで manifestgen を実行する場合、マニフェストが作成されるとすぐに、エージェントがマニフェストを取得し、ただちにマージを開始します。

成功すると、merge_manifest.xml ファイルが次の場所に作成されます。

%PROGRAMDATA%\AppSense\Application Manager

マニフェストは、マージをトリガし、構成を作成するために使用できます。

merge_manifest.xml が出力でディレクトリに存在する場合は、ツールが失敗し、新しいマニフェストは作成されません。現在のマニフェストは上書きされません。

追加のコマンド

サフィックス 説明と使用
-o

出力ファイル - マージされた構成が生成される場所を指定します。例:

manifestGen "C:\ProgramData\AppSense\Application Manager\MergeConfigs\*.aamp" -o C:\Configs

C ドライブの Configs フォルダにマージされた構成を作成するマニフェストを作成します。

-b

基本構成 - 基本構成を特定し、システムベース構成を除外します。例:

manifestGen "C:\ProgramData\AppSense\Application Manager\MergeConfigs\*.aamp" -b Config1.aamp

基本構成として設定された Config1.aamp とマージされた構成を作成するマニフェストを作成します。

-nc チェックサム エントリなし - 既定では、マニフェストのリストにある各構成には MD5チェックサムがあり、構成を一意に識別できます。マニフェストのチェックサムが構成のマニフェストと一致しない場合、マージが失敗します。ManifestGen ツールで -nc サフィックスを使用すると、マニフェストのリストにはチェックサムがありません。つまり、構成ファイル名が正しい場合、チェックサム値に関係なく、マージが成功します。例:

manifestgen "C:\ProgramData\AppSense\Application Manager\MergeConfigs\*.aamp" -nc

-nw マニフェストが MergeConfigs ディレクトリに追加されるときの既定の動作では、マニフェストのすべての構成が存在するまで無期限に待機し、その後にマージを実行します。ただし、基本構成とレイヤがないときにはマージは待機せず、ただちに失敗します。

-nw サフィックスを使用すると、マニフェストが MergeConfigs ディレクトリに追加されるときに、リストの構成が存在しない場合、マージが失敗します。例:

manifestgen "C:\ProgramData\AppSense\Application Manager\MergeConfigs\*.aamp" -nw

マニフェストのリストに5つの構成があり、マニフェストが MergeConfigs ディレクトリに追加されるときに4つしか存在しない場合、マージが失敗します。

MSI などのインストーラを使用して、構成とマニフェストをエンドポイントにプッシュする場合は、構成とマニフェストの追加順序を保証できないため、このサフィックスを使用しないことをお勧めします。

マニフェストの編集

マニフェスト ファイルを作成した後は、ファイルを編集し、基本構成やマージの発生順序などの属性を変更することができます。

マニフェストはテキスト エディタで編集および作成できますが、merge_manifest.xml ファイルが正しい形式であることを保証できるため、ManifestGen ツールを使用することをお勧めします。たとえば、ファイル名に「&」が使用されている場合、ManifestGen ツールはこの文字をエスケープし、有効な XML ファイルであることを確認します。

コマンドの例:

manifestgen "C:\ProgramData\AppSense\Application Manager\MergeConfigs\*.aamp" -b mergeconfigs\config3.aamp

システム基本構成が含まれず、config3.aamp が基本構成として設定されているマニフェストを作成します。

<MergeManifest UseSystemBase="false" WaitForConfigs="true">

<MergeFiles>

<FileEntry Name="config3.aamp" BaseConfig="true" Checksum="e899e0f9a5afee4eb502072a61c2eo" />

<FileEntry Name="config2.aamp" Checksum="e899e0f9a5afef5e4eb502072ac2e0" />

<FileEntry Name="config1.aamp" Checksum="b50576a6d743cf361c37b64bcaca75" />

</MergeFiles>

</MergeManifest>
マニフェストを編集するには、テキスト エディタでマニフェストを開き、必要な変更を行って、ファイルを保存します。

この例では、UseSystemBase が「true」に設定され、BaseConfig-"true" コマンドが config3.aamp から削除されました。マージの順序も変更されました。

<MergeManifest UseSystemBase="true" WaitForConfigs="true">

<MergeFiles>

<FileEntry Name="config1.aamp" Checksum="b50576a6d743cf361c37b64bcaca75" />

<FileEntry Name="config2.aamp" Checksum="e899e0f9a5afef5e4eb502072ac2e0" />

<FileEntry Name="config3.aamp" Checksum="e899e0f9a5afee4eb502072a61c2eo" />

</MergeFiles>

</MergeManifest>
マージされるときには、システム基本 configuration.aamp ファイルが基本構成としてマージに含まれます。コンポーネント構成が基本にマージされる順序は逆になります。

同じマニフェストで構成に BaseConfig="true" および UseSystemBase="true" を設定すると、競合が生じ、マージが失敗します。

空のマニフェスト

空のマニフェストを MergeConfigs ディレクトリに追加すると、そのディレクトリ内のすべての AAMP 構成が自動的にマージされます。アルファベット順ですべての構成がマージされ、次の場所にある configuration.aamp として基本を設定します。

%ProgramData%\AppSense\Application Manager\Configuration

この AAMP が存在しない場合、マージは失敗します。

空のマニフェストを作成するには、テキスト エディタで新しいファイルを開き、ゼロバイトのファイルを作成し、merge_manifest.xml として保存します。

完全に空ではないものの、マージされる AAMP ファイルの詳細を含まないマニフェストを使用すると、同じマージを実行することができます。

<MergeManifest UseSystemBase="true" WaitForConfigs="true"

</MergeManifest>

これは空のマニフェストと同じ結果を実現しますが、UseSystemBase 属性を使用できます。これを「false」に設定する場合、マージでは、MergeConfigs ディレクトリでアルファベット順の先頭である構成が基本として使用されます。

マージの構成

マニフェストを作成し、エンドポイントにマージ用の構成が配置されると、マージをトリガし、新しい構成を作成できます。

マージするすべての構成を含む merge_manifest.xml が MergeConfigs ディレクトリで検出されると、マージがトリガされます。

マニフェストに MergeConfigs ディレクトリにない構成のリストがある場合、すべての構成が存在するまで、マージが延期されます。

-nw タグを使用すると、すべての構成が存在しない場合にマージが失敗するマニフェストを作成できます。

マージの成功

マニフェストが正しく、リストの構成が MergeConfigs ディレクトリに存在しない場合、merged_configuration.aamp が作成され、エンドポイントでライブ構成として使用されます。

新しい構成 (merged_configuration.aamp) のほかに、成功したマニフェストのコピー (last_merge_manifest.xml) がフォルダに追加され、マージのレコードとマニフェストのバックアップを提供します。元の merge_manifest.xml ファイルは、マージが完了したときに削除されます。

configuration.aamp ファイルはマージ中に変更されず、 更新されないかぎり、エージェントによって使用されません。あるいは、Merged_Configuration.aamp は存在しません。

マージの失敗

マージ中にエラーが発生する場合は、失敗し、新しい構成ファイルは作成されません。次の場合には、マージが失敗することがあります。

  • マニフェストで指定されたチェックサムが実際の構成のチェックサムと一致せず、WaitForConfigs が「false」に設定されている。
  • マニフェストに -nw コマンドが含まれ、マニフェストのリストにある1つ以上の構成が追加されるときに MergeConfigs ディレクトリに存在しない。
  • フレンドリ名がマージされる2つの構成で同じである。
  • UseSystemBase が「true」に設定され、マージがトリガされるときに基本 Configuration.aamp が存在しない。
  • マニフェストが無効である。
  • 1つ以上の構成が破損している。

マージが失敗した後には、merge_manifest.xml ファイルが削除され、失敗したマニフェスト (failed_merge_manifest.xml) のコピーがディレクトリに追加されます。

マージ エラーの詳細は、Windows イベント ビューア ([Windows ログ] > [アプリケーション] を選択) を使用して確認できます。イベントは失敗の理由と、マージが失敗した原因の構成を示します。

マージの動作

以下の表は、マージされる構成属性の一覧を示し、動作について説明します。

構成属性 マージ 動作
ルール (グループ、ユーザ、スクリプト、カスタム、デバイス、およびプロセス) Yes マージされた構成には、各個別の構成のすべてのルールが含まれます。同じアプリケーションに影響する2つのルールが同じトリガに存在する場合、並列で実行されます。個別のルールの内容はマージされません。
アプリケーション グループ Yes マージされた構成は、構成レイヤからのすべてのアプリケーション グループを含んでいます。アプリケーション グループは基本構成以外でも一意であり、すべて最終のマージされた構成にマージされます。
URM ポリシー Yes マージされた構成は、構成レイヤからのすべての URM ポリシーを含んでいます。URM ポリシーは基本構成以外でも一意であり、すべて最終のマージされた構成にマージされます。
監査 いいえ 基本のイベントはマージされた構成で使用されますが、コンポーネント構成は無視されます。
技術キー いいえ マージされた構成は、基本構成から技術キーを継承します。マージのコンポーネント構成の設定は破棄されます。このため、マージ構成で必要な技術キーを基本構成に追加することが重要です。
既定のオプション いいえ マージされた構成は、[ユーザ権限管理を有効にする] などの既定のオプションを基本構成から継承します。マージのコンポーネント構成の設定は破棄されます。このため、マージ構成で必要な既定のキーを基本構成に追加することが重要です。
メッセージ設定 いいえ マージされた構成は、ユーザが項目を自己昇格するときに表示されるメッセージなど、基本構成から設定を継承します。マージのコンポーネント構成の設定は破棄されます。
アーカイブ設定 いいえ マージされた構成は、アーカイブの有効化など、基本構成からアーカイブ設定を継承します。マージのコンポーネント構成の設定は破棄されます。
権限検出モード構成 いいえ マージされた構成は、非表示のアプリケーションとファイルなど、基本構成から権限検出モード設定を継承します。マージのコンポーネント構成の設定は破棄されます。
URL リダイレクト設定 いいえ マージされた構成は、構成された接続タイプや IP 範囲など、基本構成から URL 設定を継承します。マージのコンポーネント構成の設定は破棄されます。
監査イベント フィルタリング設定 いいえ マージされた構成は、基本構成から監査イベント フィルタリング設定を継承します。マージのコンポーネント構成の設定は破棄されます。

ライブ構成ルール

ライブ構成がエンドポイントで開くか保存されると、次の場所が参照されます。
%ProgramData%\AppSense\Application Manager\Configuration\configuration.aamp

構成のマージを許可するには、ライブ構成は次の場所も参照することができます。

%ProgramData%\AppSense\Application Manager\Configuration\Merged_Configuration.aamp

エージェントは %ProgramData%\AppSense\Application Manager\Configuration ディレクトリの新しい構成を監視します。変更が検出されると、エージェントが次の手順を使用して新しい構成を読み込みます。

  1. Merged_Configuration.aamp
  2. configuration.aamp

Merged_Configuration.aampがディレクトリに存在する場合は、ライブ構成になります。削除されると、エージェントはメモリ内バージョンを使用し続けます。エージェントが再起動するまで、configuration.aamp ファイルに切り替わりません。

ライブ構成更新動作

BaseConfigMergeBehavior 技術キーを使用すると、Management Center または他の配布方法によって、Configuration.aamp ファイルがエンドポイントにプッシュされるときに、どのようにライブ構成に影響するのかを定義できます。

BaseConfigMergeBehavior 技術キーを定義すると、ライブ構成動作を変更できます。

  • 再マージ - エンドポイントでエージェントによって構成が検出されると、last_merge_manifest.xml に基づいてマージがトリガされ、新しい configuration.aamp が含まれます。マージにより、新しい Merged_Configuration.aamp が作成され、現在のライブ構成が置換されます。last_merge_manifest.xml が存在している必要があります。そうでない場合、マージは失敗します。
  • 置換 - エンドポイントでエージェントによって構成が検出されると、Merged_Configuration.aamp がライブ構成として置換されます。新しい Configuration.aamp が正常に配布された後、Merged_Configuration.aamp がディレクトリから削除されます。

エンドポイント構成マージ監査イベント

構成エンドポイント マージの新しい監査イベントが Application Control に追加されました。Windows イベント ビューア ([Windows ログ] > [アプリケーション] を選択) で表示すると、マージが失敗した原因など、イベントの詳細情報が表示されます。

関連トピック