Skip to main content

2026 年 3 月 23 日

在 Omnissa Access 中配置 Citrix 多站点聚合和关键字筛选

Omnissa Access 支持 Citrix 多站点聚合和关键字筛选功能,这两项功能可帮助管理员管理虚拟应用程序和桌面。要在 Omnissa Access 中配置这两项功能,您必须先完成其他必备条件,然后再在 Omnissa Access 控制台中设置 Citrix 虚拟应用程序集合。

Citrix 多站点聚合功能可聚合多个站点中的应用程序和桌面资源并进行去重,以便最终用户看不到重复的应用程序和桌面。如果在 StoreFront 中配置了多站点聚合,则在完成要求的必备任务后,您可以在 Omnissa Access 中为虚拟应用程序集合选择相应的启用多站点聚合设置。

Citrix 关键字筛选功能允许管理员通过使用关键字来控制资源显示和启动。如果在 StoreFront 中配置了关键字筛选,则在完成要求的必备任务后,您可以在 Omnissa Access 中为虚拟应用程序集合选择相应的关键字筛选设置。

**重要信息:**只有 Omnissa Access Connector 22.09 及更高版本才支持 Citrix 多站点聚合和关键字筛选。

多站点聚合功能要求

Omnissa Access 对多站点聚合具有以下要求:

  • 每个虚拟应用程序集合只能配置一个多站点环境。

  • 虚拟应用程序集合可以是多站点集合,也可以是非多站点集合。如果选择启用多站点聚合选项,请不要添加任何 Citrix XML 服务器。仅输入 StoreFront URL。

  • 同步时仅使用默认聚合组。

  • 确保没有多站点 StoreFront 服务器共享 Delivery Controller。

  • Omnissa Access 假定 Delivery Controller 发布具有相同授权的相同资源。如果未发布,则应用程序启动可能会失败。

  • 对于非聚合 Delivery Controller,请创建单独的虚拟应用程序集合。

  • 创建其他 Delivery Controller 时,请遵循以下准则:

    • 如果手动创建 Delivery Controller,请不要在脚本中提供资源的 UUID。让系统自动生成 UUID。

      例如,使用以下命令: New-BrokerApplication -AdminAddress "ctx1.example.com" -CommandLineExecutable "C:\Program Files\Windows NT\Accessories\wordpad.exe" -DesktopGroup 1 -Name "WordPad2" -UserFilterEnabled 1

      不要使用以下命令: New-BrokerApplication -AdminAddress "ctx1.example.com" -CommandLineExecutable "C:\Program Files\Windows NT\Accessories\wordpad.exe" -DesktopGroup 1 -Name "WordPad2" -UserFilterEnabled 1 -UUID 6b151d87-b878-4e7c-bdee-86729e54213f

      如果省略 UUID,将同时自动生成 UUID 和 UID,并将与原始资源不同。 Omnissa Access 支持这种场景。但是,如果输入原始资源的 UUID,UUID 将匹配,但生成的 UID 将与原始资源的 UID 不同。Omnissa Access 不支持这种场景。

    • 如果通过复制另一个 Delivery Controller 来创建 Delivery Controller,则不需要更改任何内容。UUID 和 UID 与原始资源相同,Omnissa Access 支持这种场景。

    请参阅以下支持和不支持的场景示例。

    多个 Delivery Controller 中资源支持的场景

    控制器 1(相同资源): UUID 和 UID

    控制器 2(相同资源): UUID 和 UID

    控制器 3(相同资源): UUID 和 UID

    在此示例中,控制器 2 是从控制器 1 复制的,而控制器 3 是手动创建的。

    多个 Delivery Controller 中资源不支持的场景

    控制器 1(相同资源): UUID 和 UID

    控制器 2(相同资源): UUID 和 UID

    在此示例中,UUID 匹配,但 UID 不匹配,因此不支持这种场景。

多站点聚合和关键字筛选的必备条件

对于多站点聚合和关键字筛选,运行虚拟应用程序服务的 Omnissa Access Connector 服务器必须与 StoreFront 服务器建立远程 PowerShell 连接。某些 Citrix 环境会限制可在 StoreFront 服务器上远程执行的 PowerShell 命令。对于这些环境,您可以创建一个 PowerShell 会话配置文件,以便仅允许运行虚拟应用程序服务的用户创建远程会话,并且仅允许运行与多站点聚合和关键字筛选相关的 StoreFront 命令。

完成适用于您的方案的必备任务。必须先完成必备任务,然后才能创建虚拟应用程序集合。

如果您的 Citrix 环境对可在 StoreFront 上远程执行的 PowerShell 命令没有任何限制,请完成以下必备任务:

  • 安装 Omnissa Access Connector 22.09 或更高版本。
  • 在 Omnissa Access Connector 安装程序的“Citrix 配置”页面上,取消选择启用 Citrix StoreFront 受限 PowerShell 会话选项。

如果您的 Citrix 环境对可在 StoreFront 上远程执行的 PowerShell 命令具有一些限制,请完成以下必备任务:

  • 安装 Omnissa Access Connector 22.09 或更高版本。
  • 在 StoreFront 服务器中,为受限 PowerShell 会话创建会话配置文件。请参阅为受限远程 PowerShell 会话设置会话配置文件
  • 编辑该文件并添加多站点聚合和关键字筛选所需的命令。请参阅向会话配置文件添加命令
  • 在 Omnissa Access Connector 安装程序的“Citrix 配置”页面上,选择启用 Citrix StoreFront 受限 PowerShell 会话选项,然后输入您创建的会话配置文件的名称。请参阅在 Omnissa Access Connector 安装程序中选择受限 PowerShell 会话选项
  • 如果您不希望虚拟应用程序服务加载关键字筛选所需的 StoreFront 模块,请在 Omnissa Access Connector 安装程序的“Citrix 配置”页面上选择禁止 Citrix 自动加载 StoreFront 模块选项。选择此选项后,虚拟应用程序服务便不会加载这些模块,并且所需命令将通过受限 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

      filename 替换为配置文件的名称,例如 WorkspaceONE。该名称只能使用字母数字字符。

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

      configurationName 替换为配置文件的名称,例如 WorkspaceONE。使用为 filename 指定的相同名称,但不要包含扩展名。该名称只能使用字母数字字符。

    3. Set-PSSessionConfiguration -Name configurationName -ShowSecurityDescriptorUI

    4. 在显示的“权限”对话框中,选择将允许创建 PowerShell 会话的域用户,然后选中允许列中的执行 (调用) 复选框以授予用户执行权限。

      **重要信息:**确保您选择的域用户帐户与用于运行虚拟应用程序服务的帐户相同。该域用户还必须是能够加载 Citrix PSSnapin 的 Citrix 服务器只读管理员。

      例如:

      在“权限”对话框中,选择了名为“管理员”的用户,并且在“权限”部分,选中了“允许”列中的“执行 (调用)”。

    系统将在 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

在 Omnissa Access Connector 安装程序中选择受限 PowerShell 会话选项

设置会话配置文件后,在 Omnissa Access Connector 安装程序中选择受限 PowerShell 会话选项,并指定会话配置文件名称。

  1. 运行 Omnissa Access Connector 安装程序。

  2. 在“Citrix 配置”页面上,选择启用 Citrix StoreFront 受限 PowerShell 会话选项。

  3. 输入您创建的会话配置文件的名称。

    输入的文件名应不包含扩展名,也不包含名称中的额外字符。例如,如果文件系统中的名称为 WorkspaceONEsjk1p2.pssc,请输入 WorkspaceONE

启用多站点聚合和关键字筛选

完成必备任务后,您可以为 Citrix 集成创建虚拟应用程序集合,并启用多站点聚合和关键字筛选功能。

  • 要启用多站点聚合,请在 Citrix 虚拟应用程序集合中选择启用多站点聚合选项。

    “启用多站点聚合”选项位于向导的“添加服务器场”部分中。

  • 要启用关键字筛选,请在 Citrix 虚拟应用程序集合中选择关键字筛选选项。

    “关键字筛选”选项位于向导的“配置”页面中。

有关创建虚拟应用程序集合的更多信息,请参阅在 Omnissa Access 中配置 Citrix 服务器场

此页面对您有帮助吗?

对本主题提供反馈

本主题对您有帮助吗?

请勿填写任何个人信息或机密信息。

正在生成链接…