配置用户访问

注意:

单击新增功能了解与产品名变更有关的信息。

配置对通过 XenApp Services URL 进行连接的支持

可以通过执行配置 XenApp Services 支持任务配置通过 XenApp Services URL 对应用商店进行访问。使用运行 Citrix Desktop Lock 的已加入域的桌面设备和重用 PC 的用户,以及使用无法升级的旧版 Citrix 客户端的用户,可以使用应用商店的 XenApp Services URL 直接访问应用商店。创建新应用商店时,将默认启用 XenApp Services URL。

重要:

在多服务器部署中,请一次仅使用一台服务器以更改服务器组的配置。确保 Citrix StoreFront 管理控制台未在部署中的任何其他服务器上运行。完成后,请将对配置所做的更改传播到服务器组,以便更新部署中的其他服务器。

  1. 在 Windows 开始屏幕或应用程序屏幕中,找到并单击 Citrix StoreFront 磁贴。

  2. 在 Citrix StoreFront 管理控制台的左侧窗格中选择应用商店节点,然后在结果窗格中选择一个应用商店。在操作窗格中,单击配置 XenApp Services 支持

  3. 选中或取消选中启用 XenApp Services 支持复选框,以允许或禁止用户通过显示的 XenApp Services URL 访问应用商店。

    应用商店的 XenApp Services URL 的格式为 http[s]://<serveraddress>/Citrix/<storename>/PNAgent/config.xml*,其中 serveraddress 为 StoreFront 部署的服务器或负载平衡环境的完全限定的域名,storename 为创建应用商店时为其指定的名称。

  4. 如果启用 XenApp Services 支持,则可以选择在 StoreFront 部署中为具有 Citrix 联机插件的用户指定默认应用商店。

    指定默认应用商店后,用户可以通过 StoreFront 部署的服务器 URL 或负载平衡 URL(而非特定应用商店的 XenApp Services URL)配置 Citrix 联机插件。

禁用或启用工作区控制重新连接

工作区控制功能使应用程序能够随用户在设备之间移动。例如,可以使医院的临床医生在不同的工作站之间移动,无需在每个设备上重新启动自己的应用程序。

StoreFront 包含一项用于在适用于 Citrix Workspace 应用程序的 Store Service 中禁用工作区控制重新连接的配置。可以使用 StoreFront 控制台或 PowerShell 管理此功能。

使用 StoreFront 管理控制台

  1. 在 Windows 开始屏幕或“应用程序”屏幕中,找到并单击 Citrix StoreFront 磁贴。
  2. 在 Citrix StoreFront 管理控制台的左侧窗格中选择应用商店节点,然后在操作窗格中单击配置应用商店设置
  3. 选择高级设置并选中或取消选中允许重新连接会话

使用 PowerShell

关闭管理控制台,然后运行以下代码段以导入 StoreFront PowerShell 模块:

$dsInstallProp = Get-ItemProperty `
-Path HKLM:\SOFTWARE\Citrix\DeliveryServicesManagement -Name InstallDir
$dsInstallDir = $dsInstallProp.InstallDir
& $dsInstallDir\..\Scripts\ImportModules.ps1

然后,使用 PowerShell 命令 Set-DSAllowSessionReconnect 打开或关闭工作区控制重新连接功能。

语法

Set-DSAllowSessionReconnect [[-SiteId] <Int64>] [[-VirtualPath] <String> ] [[-IsAllowed] <Boolean>]

例如,要为 /Citrix/Store 中的某个应用商店关闭工作区控制重新连接,请使用以下命令配置此应用商店:

Set-DSAllowSessionReconnect -SiteId 1 -VirtualPath /Citrix/Store -IsAllowed $false

配置用户订阅

可以通过执行“用户订阅”任务选择以下选项之一:

  • 要求用户在使用之前订阅应用程序(自助服务应用商店)。
  • 允许用户在连接到应用商店时接收所有应用程序(强制性应用商店)。

在 StoreFront 内部禁用用户对某个应用商店的订阅还会阻止在 Citrix Workspace 应用程序中向用户显示“收藏夹”选项卡。禁用订阅不会删除应用商店订阅数据。重新启用对应用商店的订阅将允许用户在下次登录时查看“收藏夹”中订阅的应用程序。

  1. 在 Windows 开始屏幕或应用程序屏幕中,找到并单击 Citrix StoreFront 磁贴。
  2. 在 Citrix StoreFront 管理控制台的左侧窗格中选择应用商店节点,然后在结果窗格中选择一个应用商店。在操作窗格中,单击配置应用商店设置 > 用户订阅以关闭或打开用户订阅功能。
  3. 选择启用用户订阅(自助服务应用商店) 以确保用户订阅应用程序以便使用。以前指定的任何订阅仍可用。
  4. 选择禁用用户订阅(强制性应用商店) 以使在用户未订阅的情况下为用户发布的所有应用程序在主屏幕上可用。其订阅不会被删除,如果您重新启用该功能,可以将其恢复。

本地化后的图片

在 StoreFront 3.5 或更高版本中,可以使用以下 PowerShell 脚本配置应用商店的用户订阅:

$StoreObject = Get-STFStoreService -SiteID 1 -VirtualPath "/citrix/<yourstore>"
Set-STFStoreService -StoreService $StoreObject -LockedDown $True -Confirm:$False

有关 Get-STFStoreService 的详细信息,请参阅 https://developer-docs.citrix.com/projects/storefront-powershell-sdk/en/latest/Get-STFStoreService/

管理应用商店的订阅数据

使用 PowerShell cmdlet 管理应用商店的订阅数据。

注意:

使用 StoreFront 管理控制台或 PowerShell 可管理 StoreFront。请勿同时使用这两种方法。使用 PowerShell 更改 StoreFront 配置之前,请始终关闭 StoreFront 管理控制台。Citrix 还建议您在进行更改之前备份现有订阅数据,以便能够回滚到前一个状态。

清除订阅数据

您的部署中的每个应用商店都存在一个包含订阅数据的文件夹和数据存储。

  1. 在 StoreFront 服务器上停止 Citrix Subscriptions Store 服务。如果 Citrix Subscriptions Store 服务正在运行,则无法删除任何应用商店的订阅数据。
  2. 找到 StoreFront 服务器上的订阅应用商店文件夹:C:\Windows\ServiceProfiles\NetworkService\AppData\Roaming\Citrix\SubscriptionsStore\1__Citrix_<StoreName>
  3. 删除订阅应用商店文件夹的内容,但不删除文件夹本身。
  4. 在 StoreFront 服务器上重新启动 Citrix Subscriptions Store 服务。

在 StoreFront 3.5 或更高版本中,可以使用以下 PowerShell 脚本清除应用商店的订阅数据。以具有停止或启动服务以及删除文件权限的管理员身份运行此 PowerShell 函数。此 PowerShell 函数可实现与手动执行上述步骤相同的结果。

Citrix Subscriptions Store 服务必须正在服务器上运行,才能成功运行 cmdlet。

function Remove-SubscriptionData

{
        [CmdletBinding()]

        [Parameter(Mandatory=$False)][String]$Store = "Store"

        $SubsService = "Citrix Subscriptions Store"

        # Path to Subscription Data in StoreFront version 2.6 or later

        $SubsPath = "C:\Windows\ServiceProfiles\NetworkService\AppData\Roaming\Citrix\SubscriptionsStore\1__Citrix_$Store*"

        Stop-Service -displayname $SubsService

        Remove-Item $SubsPath -Force -Verbose

        Start-Service -displayname $SubsService

        Get-Service -displayname $SubsService
}

    Remove-SubscriptionData -Store "YourStore"

导出订阅数据

可以使用以下 PowerShell cmdlet 获取制表符分隔的 .txt 文件格式的应用商店订阅数据的备份。

$StoreObject = Get-STFStoreService -SiteID 1 -VirtualPath "/citrix/<yourstore>"

Export-STFStoreSubscriptions -StoreService $StoreObject -FilePath "$env:USERPROFILE\Desktop\Subscriptions.txt"

如果要管理多服务器部署,可以在 StoreFront 服务器组内的任意服务器上运行此 PowerShell cmdlet。服务器组中的每台服务器都会维持与其对等服务器相同的订阅数据的同步副本。如果您认为自己遇到 StoreFront 服务器之间的订阅同步问题,请从组中的所有服务器中导出数据并进行比较以查看差异。

还原订阅数据

使用 Restore-STFStoreSubscriptions 可覆盖您的现有订阅数据。可以使用之前通过 Export-STFStoreSubscriptions 创建的制表符分隔的 .txt 文件备份还原应用商店的订阅数据。

$StoreObject = Get-STFStoreService -SiteID 1 -VirtualPath "/citrix/<yourstore>"

Restore-STFStoreSubscriptions -StoreService $StoreObject -FilePath "$env:USERPROFILE\Desktop\Subscriptions.txt"

有关 Restore-STFStoreSubscriptions 的详细信息,请参阅 https://developer-docs.citrix.com/projects/storefront-powershell-sdk/en/latest/Restore-STFStoreSubscriptions/

还原单个 StoreFront 服务器上的数据

在单服务器部署中,不需要关闭 Subscriptions Store 服务。也不需要在还原订阅数据之前清除现有订阅数据。

还原 StoreFront 服务器组中的数据

要将订阅数据还原到服务器组,需要执行以下操作。

包含三台 StoreFront 服务器的示例服务器组部署。

  • StoreFrontA
  • StoreFrontB
  • StoreFrontC
  1. 备份三台服务器中的任意服务器的现有订阅数据。
  2. 停止服务器 StoreFrontB 和 C 上的 Subscriptions Store 服务。此操作将阻止服务器在 StoreFrontA 更新期间发送或接收订阅数据。
  3. 清理服务器 StoreFrontB 和 C 中的订阅数据。这可以防止还原的订阅数据出现不一致的情况。
  4. 使用 Restore-STFStoreSubscriptions cmdlet 还原 StoreFrontA 上的数据。不需要停止 Subscriptions Store 服务,也不需要清理 StoreFrontA 上的订阅数据(这些数据在还原操作期间被覆盖)。
  5. 重新启动服务器 StoreFrontB 和 StoreFrontC 上的 Subscriptions Store 服务。这些服务器之后可以从 StoreFrontA 接收数据的副本。
  6. 等待所有服务器之间发生同步。所需的时间取决于 StoreFrontA 上存在的记录数量。如果所有服务器都位于本地网络连接中,同步通常会快速发生。跨广域网连接的订阅同步可能需要较长时间。
  7. 从 StoreFrontB 和 C 中导出数据以确认同步已完成,或者查看应用商店订阅计数器。

导入订阅数据

如果应用商店中没有订阅数据,请使用 Import-STFStoreSubscriptions。此 cmdlet 还允许您将订阅数据从一个应用商店传输到另一个应用商店,或者将订阅数据导入到新预配的 StoreFront 服务器。

$StoreObject = Get-STFStoreService -SiteID 1 -VirtualPath "/citrix/<yourstore>"

Import-STFStoreSubscriptions -StoreService $StoreObject -FilePath "$env:USERPROFILE\Desktop\Subscriptions.txt"

有关 Import-STFStoreSubscriptions 的详细信息,请参阅 https://developer-docs.citrix.com/projects/storefront-powershell-sdk/en/latest/Import-STFStoreSubscriptions/

订阅数据文件详细信息

订阅数据文件为文本文件,每个用户订阅在其中占一行。每行均为以制表符分隔的值序列:

<user-identifier> <resource-id> <subscription-id> <subscription-status> <property-name> <property-value> <property-name> <property-value> ...

其中:

  • <user-identifier> - 必选。标识用户的字符序列。此标识符是用户的 Windows 安全标识符。
  • <resource-id> - 必选。标识所订阅资源的字符序列。
  • <subscription-id> - 必选。唯一标识订阅的字符序列。此值未使用(尽管数据文件中必须存在一个值)。
  • <subscription-status> - 必选。订阅的状态:已订阅或已取消订阅。
  • <property-name><property-value> - 可选。零对或多对属性名称/值对的序列。它们表示与 StoreFront 客户端(通常为 Citrix Workspace 应用程序)的订阅相关联的属性。具有多个值并且以名称相同的多个名称/值对表示的属性(例如,“… MyProp A MyProp B …”表示具有值 A、B 的属性 MyProp)。

示例

S-0-0-00-0000000000-0000000000-0000000000-0000 XenApp.Excel 21EC2020-3AEA-4069-A2DD-08002B30309D Subscribed dazzle:position 1

StoreFront 服务器磁盘上订阅数据的大小

StoreFront 服务器磁盘上订阅数据的大小

导入和导出 .txt 文件的大小

导入和导出 .txt 文件的大小

应用商店订阅计数器

可以使用 Microsoft Windows 性能监视器计数器(开始 > 运行 > perfmon)显示(例如)服务器上的订阅记录总数或 StoreFront 服务器组之间同步的记录数量。

使用 PowerShell 查看订阅计数器

Get-Counter -Counter "\Citrix Subscription Store(1__citrix_store)\Subscription Entries Count (including unpurged deleted records)"

Get-Counter -Counter "\Citrix Subscription Store Synchronization\Subscriptions Store Synchronizing"

Get-Counter -Counter "\Citrix Subscription Store Synchronization\Number Subscriptions Synchronized"

Get-Counter -Counter "\Citrix Subscription Store Synchronization\Number Subscriptions Transferred"
上一步

配置用户访问