Profile Management

アプリケーションへのアクセスを制御する

アプリのアクセス制御機能を使用すると、ルールを使用してアプリケーションへのアクセスを制御できます。この機能を使用すると、アプリケーションとイメージの管理を効率化できます。たとえば、異なる部門に同一のマシンを提供しながら、それぞれの固有のアプリケーション要件を満たし、イメージの数を減らすことができます。

この記事では、アプリのアクセス制御を有効にし、制御ルールを構成するプロセスについて説明します。また、この機能を使用して仮想環境でのイメージ管理を簡素化する例も示します。

注:

この機能は、Active Directory (AD) 環境と非ドメイン参加 (NDJ) 環境の両方に適用されます。

概要

アプリのアクセス制御機能を使用すると、非表示ルールを構成することで、ユーザー、マシン、プロセスからアプリケーションを非表示にできます。

非表示ルールは次の2つの部分で構成されます。

  • 非表示にするオブジェクト。 アプリケーションに対して非表示にするファイル、フォルダー、およびレジストリエントリ。

    たとえば、アプリケーションを非表示にするには、ファイル、フォルダー、レジストリエントリなど、そのアプリケーションに関連付けられているすべてのオブジェクトを指定する必要があります。

  • 割り当て。 アプリケーションを非表示にするユーザー、マシン、およびプロセス。

割り当ての種類

非表示ルールにおける割り当ては、プロセス、ユーザー、マシンの3つのカテゴリに分類されます。具体的な割り当ての種類は次のとおりです。

カテゴリ 種類
プロセス 該当なし
ユーザー
  • ADおよびAzure Active Directory (AAD) ユーザー
  • ADおよびAADユーザーグループ
マシン

  • AD、AAD、およびNDJマシン
  • ADマシンのグループ(組織単位(OU)でグループ化)
  • NDJマシンのグループ(マシンカタログでグループ化)

注:

  • アプリケーションアクセス制御のコンテキストでは、OUはマシンのみのコンテナとして使用され、ユーザー用ではありません。結果として、OU割り当てはOU内のマシンからのみアプリを非表示にし、OU内のユーザーからは非表示にしません。
  • NDJマシンは、Citrix®が作成し、電源管理するマシンに限定されます。

非表示ルールに複数の割り当てが構成されている場合は、以下の考慮事項に注意してください。

  • これらの割り当てが同じカテゴリ(たとえば、ユーザーAとユーザーグループB)である場合、アプリケーションはそれらの割り当てで指定されたすべてのオブジェクト(ユーザーAとユーザーグループB内のすべてのユーザー)から非表示になります。
  • これらの割り当てが異なるカテゴリ(たとえば、ユーザーAとマシンX)である場合、アプリケーションはそれらのすべての割り当てで指定された条件が満たされたとき(ユーザーAがマシンXにサインインしたとき)に非表示になります。
  • これらの割り当てがプロセスカテゴリである場合、アプリケーションはそれらの割り当てで指定されたすべてのプロセスから非表示になります。

注:

ルールに割り当てが構成されていない場合、ルールで指定されたアプリケーションは非表示になります。

ワークフロー

アプリケーションアクセス制御機能を使用すると、Profile Managementは、提供されたルールに基づいて、ユーザー、マシン、およびプロセスからアプリケーションを非表示にできます。大まかに言えば、アプリケーションアクセス制御を実装するワークフローは次のとおりです。

  1. 非表示ルールを作成および生成します。使用できるツールは2つあります。

  2. GPOを使用して、環境内のマシンに非表示ルールを適用します。詳細については、「GPOを使用してアプリケーションアクセス制御を有効にする」を参照してください。

Rule Generator を使用してルールを作成、管理、展開する

このセクションでは、PowerShellベースのRule Generatorを使用してルールを作成、管理、展開する方法について説明します。

開始する前に、ツールを実行するマシンが次の要件を満たしていることを確認してください。

  • Windows 10または11、あるいはWindows Server 2016、2019、2022で実行されます。
  • (AD環境のみ) ユーザーとマシンと同じドメインにあります。

一般的な手順は次のとおりです。

  1. Windows PowerShellを管理者として実行します。
  2. プロファイル管理インストールパッケージ内の\toolフォルダーにアクセスし、CPM_App_Access_Control_Config.ps1を実行します。
  3. 画面の指示に従って、非表示ルールを作成、管理、生成します。
    1. マシンにインストールされている各アプリケーションとその状態を表示します。

      • 未構成。アプリケーションに対してルールは構成されていません。
      • 構成済み。アプリケーションに対して1つ以上のルールが構成されていますが、それらのいずれもマシンに適用されていません。
      • 構成済みで適用済み。アプリケーションに対して1つ以上のルールが構成されており、少なくとも1つのルールがマシンに適用されています。

      アプリケーションリスト(/en-us/profile-management/2402-ltsr/media/app-access-control-tool-app-list.png)

    2. アプリケーションリストから、非表示にするアプリケーションをインデックスを入力して選択します。そのアプリケーションに関連付けられているすべてのファイル、フォルダー、およびレジストリエントリが表示されます。

      追加の選択(/en-us/profile-management/2402-ltsr/media/app-access-control-tool-add-extra.png)

    3. 選択したアプリケーションの追加のファイル、フォルダー、またはレジストリエントリを非表示にするには、対応するアクションタイプを選択し、その名前とパスを入力してオブジェクトを追加します。さらに追加するには、この手順を繰り返します。

      考慮事項:

      • パス内のシステム環境変数(%windir%など)はサポートされていますが、ユーザー環境変数(%appdata%など)はサポートされていません。
      • ファイルとフォルダーでは、ワイルドカード *? がサポートされています。文字列に複数のアスタリスク (‘*’) がある場合、2つのアスタリスク間の文字は無視されます。たとえば、文字列 c:\users\Finance*Manangement* では、文字 *Management* は単一のアスタリスク (*) として扱われます。

      注:

      特定のファイル、フォルダー、およびレジストリエントリに関連付けることで、アプリケーションを手動で定義することもできます。

    4. ルールの割り当てを構成します。詳細には、割り当てタイプを指定し、アプリケーションを非表示にする特定のオブジェクトを入力します。詳細については、次の表を参照してください。

      割り当てを選択

      注:

      ルールに割り当てを構成しない場合、ルールで指定されたアプリは非表示になります。

      割り当てタイプ 説明
      ADユーザー、ユーザーグループ、またはOU ADドメイン名を縦棒 (|) で区切って入力します。
      ADマシン DNSホスト名を縦棒 (|) で区切って入力します。
      NDJマシンカタログ カタログ名を縦棒 (|) で区切って入力します。例: Machine_catalog_name1\|Machine_catalog_name2
      NDJマシン

      WEM WebコンソールでAAD/NDJオブジェクトセレクターを使用してマシン名を収集し、それらの名前を縦棒 (|) で区切って入力します。例: Machine_name1\|Machine_name2。すべてのドメイン非参加マシンを追加するには、NDJ*と入力します。
      NDJマシン名では、ワイルドカード*?がサポートされています。
      注: 文字列に複数のアスタリスク (*) がある場合、2つのアスタリスク間の文字は無視されます。たとえば、文字列ResearchDep*Virtual*TeamMachine*では、文字*Virtual*は単一のアスタリスク (*) として扱われます。
      Azure ADユーザー WEM WebコンソールでAAD/NDJオブジェクトセレクターを使用してユーザーのSIDと名前を収集し、sid1\name1\|sid2\name2の形式で入力します。例:/azuread/989c2938-6527-4133-bab1-f3860dd15098\Tester1\|/azuread/82bdde32-d5d9-4d64-b0ff-9876d4488d05\Tester2
      Azure ADグループ WEM WebコンソールでAAD/NDJオブジェクトセレクターを使用してグループのSIDと名前を収集し、sid1\name1\|sid2\name2の形式で入力します。例:/azuread/989c2938-6527-4133-bab1-f3860dd15098\TestGroup1\|/azuread/82bdde32-d5d9-4d64-b0ff-9876d4488d05\TestGroup2
  4. 手順3を繰り返し、他のアプリケーションの非表示ルールを作成します。
  5. 画面の指示に従って、構成したルールの生データを生成し、将来の使用のために.txtファイルに保存します。
  6. ルールが期待どおりに機能するかどうかをテストするには、画面の指示に従って、このマシンまたはマシンのグループに展開します。

    注:

    このツールを本番環境にルールを展開するために使用することはお勧めしません。

GPOを使用してアプリのアクセス制御を有効にする

非表示ルールを作成して生成した後、GPOを使用して環境内のマシンに適用できます。

GPOを使用して制御ルールをマシンに適用するには、次の手順に従います。

  1. グループポリシー管理エディターを開きます。
  2. ポリシー > 管理用テンプレート: ポリシー定義 (ADMX ファイル) > Citrix コンポーネント > Profile Management > アプリのアクセス制御にアクセスします。
  3. アプリのアクセス制御をダブルクリックします。
  4. 表示されるポリシーウィンドウで、有効を選択します。
  5. 生成されたルールを保存した.txtファイルを開き、内容をコピーして、アプリのアクセス制御ルールフィールドに貼り付けます。
  6. OKをクリックします。

この機能の構成の優先順位は次のとおりです。

  1. この設定がGPO、Studio、またはWEMを使用していない場合、.iniファイルの値が使用されます。
  2. この設定がどこにも構成されていない場合、この機能は無効になります。

このセクションでは、イメージのアプリのアクセス制御を実装するための例を説明します。

要件

この例の要件は次のとおりです。

  • 単一のイメージを使用して、営業、人事、エンジニアリング部門の仮想マシンを作成します。
  • 次のアプリケーションへのアクセスを制御します。
    • Microsoft Excel: 人事部門のユーザーには表示されません。
    • Visual Studio Code: 営業部門または人事部門のユーザーには表示されません。

ソリューション

インストールされているアプリケーションへのアクセスを制御するために、Profile Management をインストールします。

テンプレートマシンのインストール

イメージをキャプチャするためのテンプレートマシンをインストールします。手順は次のとおりです。

  1. 新しいマシンを、ユーザーおよびマシンと同じ AD ドメインに参加させます。
  2. マシンに次のソフトウェアをインストールします。
    • 必要に応じて、Windows 10または11、またはWindows Server 2016、2019、または2022
    • Profile Management バージョン 2303 以降
    • 必要なすべてのアプリケーション

隠しルールを作成および生成する

  1. テンプレートマシンで、ルールジェネレーターツールを使用して隠しルールを作成および生成します。

    • ルール1:人事部門のユーザーからMicrosoft Excelを非表示にする(アプリケーション:Microsoft Excel、割り当て:HRユーザーグループ)
    • ルール2:営業部門または人事部門のユーザーからVisual Studio Codeを非表示にする(アプリケーション:Visual Studio Code、割り当て:営業ユーザーグループおよびHRユーザーグループ)
  2. 2つのルールの生データを生成し、.txtファイルに保存します。

ツールの使用方法の詳細については、「ルールジェネレーターを使用してルールを作成、生成、および展開する」を参照してください。

これで、テンプレートマシンからイメージをキャプチャできます。

GPOを使用してアプリのアクセス制御を有効にする

仮想マシンが作成されたら、GPOを使用してアプリのアクセス制御を一元的に有効にし、生成されたルールをマシンに適用します。詳細については、「GPOを使用してアプリのアクセス制御を有効にする」を参照してください。

アプリケーションへのアクセスを制御する