Workspace ONE Access は、管理者が仮想アプリケーションとデスクトップを管理するのに役立つ Citrix マルチサイトの集約およびキーワード フィルタリング機能をサポートします。Workspace ONE Access でこれらの機能を構成するには、Workspace ONE Access コンソールで Citrix 仮想アプリケーションのコレクションを設定する前に、追加の前提条件を満たす必要があります。

Citrix マルチサイトの集約機能は、複数のサイトからアプリケーションとデスクトップのリソースを集約および重複解除し、エンド ユーザーに重複するアプリケーションとデスクトップが表示されないようにします。StoreFront でマルチサイト集約が構成されている場合は、必要な前提条件タスクを完了した後に、Workspace ONE Access の仮想アプリケーションのコレクションに対応する設定([マルチサイトの集約を有効にする])を選択できます。

Citrix キーワード フィルタリング機能を使用すると、管理者はキーワードを使用してリソースの表示と起動を制御できます。StoreFront でキーワード フィルタリングが構成されている場合は、必要な前提条件タスクを完了した後に、Workspace ONE Access の仮想アプリケーションのコレクションに対応する設定([キーワード フィルタリング])を選択できます。

重要: Workspace ONE Access Connector 22.09 以降のバージョンでのみ、Citrix マルチサイトの集約およびキーワード フィルタリングがサポートされています。

マルチサイトの集約およびキーワード フィルタリングの前提条件

マルチサイトの集約およびキーワード フィルタリングの両方で、仮想アプリケーション サービスが実行されている Workspace ONE Access Connector サーバは、StoreFront サーバとのリモート PowerShell 接続を確立する必要があります。一部の Citrix 環境では、StoreFront サーバでリモートで実行できる PowerShell コマンドが制限されます。これらの環境では、仮想アプリケーション サービスを実行しているユーザーのみがリモート セッションを作成でき、マルチサイトの集約とキーワード フィルタリングに関連する StoreFront コマンドのみを実行できる PowerShell セッション構成ファイルを作成できます。

シナリオに適用される前提条件を満たす必要があります。仮想アプリケーションのコレクションを作成する前に、前提条件を満たす必要があります。

Citrix 環境で、StoreFront でリモートで実行できる PowerShell コマンドに制限がない場合は、次の前提条件を満たす必要があります。

  • Workspace ONE Access Connector 22.09 以降をインストールします。
  • Workspace ONE Access Connector インストーラの [Citrix 構成] ページで [Citrix StoreFront の制限付き PowerShell セッションを有効にする] オプションの選択を解除します。

Citrix 環境で、StoreFront でリモートで実行できる PowerShell コマンドに制限がある場合は、次の前提条件を満たす必要があります。

  • Workspace ONE Access Connector 22.09 以降をインストールします。
  • StoreFront サーバで、制限付きの PowerShell セッションのセッション構成ファイルを作成します。制限付きリモート PowerShell セッションのセッション構成ファイルの設定を参照してください。
  • ファイルを編集し、マルチサイトの集約とキーワード フィルタリングに必要なコマンドを追加します。セッション構成ファイルへのコマンドの追加を参照してください。
  • Workspace ONE Access Connector インストーラの [Citrix 構成] ページで [Citrix StoreFront の制限付き PowerShell セッションを有効にする] オプションを選択し、作成したセッション構成ファイルの名前を入力します。Workspace ONE Access Connector インストーラで [制限付きの PowerShell セッション] オプションを選択するを参照してください。
  • (オプション) キーワード フィルタリングに必要な StoreFront モジュールを仮想アプリケーション サービスでロードしない場合は、Workspace ONE Access Connector インストーラの [Citrix 構成] ページで [StoreFront モジュールの Citrix 自動ロードを無効にする] オプションを選択します。このオプションを選択すると、仮想アプリケーション サービスはモジュールをロードせず、必要なコマンドは制限付きの PowerShell セッション構成の設定を介して実行されます。

制限付きリモート PowerShell セッションのセッション構成ファイルの設定

Citrix 環境で StoreFront でリモートで実行できる PowerShell コマンドに制限がある場合は、セッション構成ファイルを作成して、仮想アプリケーション サービスの制限付き PowerShell セッションを設定します。この構成では、仮想アプリケーション サービスを実行しているユーザーのみがリモート セッションを作成でき、マルチサイトの集約とキーワード フィルタリングに関連する StoreFront コマンドのみを実行できます。

  1. StoreFront サーバにログインします。
  2. 仮想アプリケーション サービスを実行するドメイン ユーザーとして PowerShell ウィンドウを開きます。
    重要: 仮想アプリケーション サービスの実行に使用するのと同じドメイン ユーザー アカウントを使用していることを確認します。ドメイン ユーザーは、Citrix PSSnapin をロードできる Citrix サーバの読み取り専用管理者である必要もあります。
  3. 次のコマンドを実行します。
    1. New-PSSessionConfigurationFile -VisibleCmdlets Get-STFStoreService,Get-STFStoreFarm,Get-STFUserFarmMapping,Get-STFEquivalentFarmset,'Write-Host' -LanguageMode RestrictedLanguage -SessionType RestrictedRemoteServer -Path .\filename.pssc

      filenameWorkspaceONE などの構成ファイルの名前に置き換えます。名前には英数字のみを使用します。

    2. Register-PSSessionConfiguration -Path filename.pssc -Name configurationName

      configurationNameWorkspaceONE などの構成の名前に置き換えます。filename に指定したのと同じ名前(拡張子を除く)を使用します。名前には英数字のみを使用します。

    3. Set-PSSessionConfiguration -Name configurationName -ShowSecurityDescriptorUI
    4. 表示される [権限] ダイアログ ボックスで、PowerShell セッションの作成を許可するドメイン ユーザーを選択し、[許可] 列の [実行(呼び出し)] チェックボックスを選択して、ユーザーに実行権限を付与します。
      重要: 仮想アプリケーション サービスの実行に使用するのと同じドメイン ユーザー アカウントを選択していることを確認します。ドメイン ユーザーは、Citrix PSSnapin をロードできる Citrix サーバの読み取り専用管理者である必要もあります。

      例:

      [権限] ダイアログ ボックスで、Administrator という名前のユーザーが選択され、[権限] セクションの [許可] 列で [実行(呼び出し)] が選択されています。

    セッション構成ファイルは、C:\Windows\System32\WindowsPowerShell\v1.0\SessionConfig ディレクトリに作成されます。

セッション構成ファイルへのコマンドの追加

作成したセッション構成ファイルを編集して、マルチサイトの集約とキーワード フィルタリングに必要なコマンドを追加します。

  1. StoreFront サーバで、次のディレクトリに移動します。

    C:\Windows\System32\WindowsPowerShell\v1.0\SessionConfig

  2. filename.pssc ファイルを開いて編集します。
  3. VisibleCmdlets リストに次のコマンドを追加します。

    'Get-ItemProperty', 'Select-Object', 'Format-List'

  4. ファイルの末尾に次のコマンドを追加します。
    AliasDefinitions = @{ Name = 'Select' ; Value = 'Microsoft.PowerShell.Utility\Select-Object'}
     
    FunctionDefinitions =@{
     'Name' = 'Get-DSResourceFilterKeyword'
     'Options' = 'ReadOnly'
     'ScriptBlock' = {
                       param(
                         [Parameter(Mandatory=$true)]
                         [long]$SiteId,
                         [Parameter(Mandatory=$true)]
                         [string]$VirtualPath
                       )
                       $path = "C:\inetpub\wwwroot\$VirtualPath\web.config"
                       $xpath = "/configuration/citrix.deliveryservices/wing/resources/settingsGroup/enumeration/filterByKeywords"
                       $xml = Select-Xml -path $path -xpath $xpath
                       $includeKeywords = $null
                       if ( $xml.Node.include ) {
                         GetKeywords -KeywordsString $xml.Node.include
                       }
                       $excludeKeywords = $null
                       if ( $xml.Node.exclude ) {
                         $excludeKeywords = GetKeywords -KeywordsString $xml.Node.exclude
                       }
                       $returnObject = new-object PSObject
                       $returnObject | Add-Member -MemberType NoteProperty -Name "Include" -Value $includeKeywords -PassThru `
                                     | Add-Member -MemberType NoteProperty -Name "Exclude" -Value $excludeKeywords
                       return $returnObject
                     };
     },@{
     'Name' = 'GetKeywords'
     'Options' = 'ReadOnly'
     'ScriptBlock' = {
                       param(
                         [Parameter(Mandatory=$true)]
                         [string]$KeywordsString
                       )
                       $set = @()
                       $res = $KeywordsString -split ";"
                       foreach ($kw in $res)
                       {
                         $kw = if ($kw) {$kw.trim()} else {$null}
                         if ($kw)
                         {
                           $set += $kw
                         }
                       }
                       return $set
                     }
     },@{
     'Name' = 'Get-STFStoreFarm'
      'Options' = 'ReadOnly'
      'ScriptBlock' = {
                        $Global:FormatEnumerationLimit = -1
                        Citrix.StoreFront.Stores\Get-STFStoreFarm @Args
                      }
    },@{
    'Name' = 'Get-STFEquivalentFarmset'
      'Options' = 'ReadOnly'
      'ScriptBlock' = {
                        $Global:FormatEnumerationLimit = -1
                        Citrix.StoreFront.Stores.MultiSite\Get-STFEquivalentFarmset @Args
                      }
      }
     
    }
  5. 次のコマンドを実行して、Windows サービスを再起動します。

    Get-Service -Name WinRM | Restart-Service

Workspace ONE Access Connector インストーラで [制限付きの PowerShell セッション] オプションを選択する

セッション構成ファイルを設定したら、Workspace ONE Access Connector インストーラで制限付き PowerShell セッション オプションを選択し、セッション構成ファイル名を指定します。

  1. Workspace ONE Access Connector インストーラを実行します。
  2. [Citrix 構成] ページで、[Citrix StoreFront の制限付き PowerShell セッションを有効にする] オプションを選択します。
  3. 作成したセッション構成ファイルの名前を入力します。

    拡張子を付けずにファイル名を入力し、名前に含まれる余分な文字は使用しないでください。たとえば、ファイル システムの名前が WorkspaceONEsjk1p2.pssc の場合は、WorkspaceONE と入力します。

マルチサイトの集約およびキーワード フィルタリングの有効化

前提条件を満たしたら、Citrix 統合用の仮想アプリケーションのコレクションを作成し、マルチサイトの集約およびキーワード フィルタリング機能を有効にできます。

  • マルチサイトの集約を有効にするには、Citrix 仮想アプリケーションのコレクションで [マルチサイトの集約を有効にする] オプションを選択します。
    [マルチサイトの集約を有効にする] オプションは、ウィザードの [サーバ ファームの追加] セクションにあります。
  • キーワード フィルタリングを有効にするには、Citrix 仮想アプリケーションのコレクションで [キーワード フィルタリング] オプションを選択します。
    「キーワード フィルタリング オプションは、ウィザードの [構成] ページにあります。」

仮想アプリケーションのコレクションの作成方法の詳細については、「Workspace ONE Access での Citrix サーバ ファームの構成」を参照してください。