Session Recording

安装、升级和卸载

注意:

要通过负载平衡配置服务器高可用性,请参阅在现有部署中配置负载平衡在 Azure 中部署和负载平衡会话录制

本文档中包含以下几个主要章节的内容:

安装核对清单

要安装会话录制组件,您需要使用以下文件:

  • Broker_PowerShellSnapIn_x64.msi

  • SessionRecordingAdministrationx64.msi

  • SessionRecordingAgentx64.msi

  • SessionRecordingPlayer.msi

  • SessionRecordingWebPlayer.msi

开始安装之前,请完成此列表:

步骤
  在开始安装之前安装必备项。请参阅系统要求使用 Citrix 脚本安装 Windows 角色和功能必备项
  请选择您希望安装各个会话录制组件的计算机。同时,请确保每台计算机都满足将要安装在其上的一个或多个组件的硬件和软件要求。
  使用您的 Citrix 帐户凭据访问 Citrix Virtual Apps and Desktops™ 下载页面并下载产品文件。解压缩该文件。
  要使用 TLS 协议在会话录制组件之间进行通信,请在您的环境中安装正确的证书。
  安装会话录制组件所需的任何修补程序。修补程序可从 Citrix 支持 获取。
  配置 Director 以创建和激活会话录制策略。有关详细信息,请参阅 配置 Director 以使用会话录制服务器

注意:

  • 建议您根据录制策略将已发布的应用程序划分为单独的交付组。如果应用程序位于同一交付组中,则已发布应用程序的会话共享可能会与活动策略冲突。会话录制会将活动策略与用户打开的第一个已发布应用程序进行匹配。从版本 7.18 开始,您可以使用动态会话录制功能在会话期间随时开始或停止录制会话。有关详细信息,请参阅 动态会话录制
  • 如果您计划使用 Machine Creation Services™ (MCS) 或 Citrix Provisioning,请准备一个唯一的 QMId。不遵守此规定可能会导致录制数据丢失。
  • SQL 服务器要求您启用 TCP/IP,SQL 服务器浏览器服务正在运行,并使用 Windows 身份验证。
  • 要使用 HTTPS,请为 TLS/HTTPS 配置服务器证书。
  • 确保 Local Users and Groups > Groups > Users 下的用户具有对 C:\windows\Temp 文件夹的写入权限。

使用 Citrix 脚本安装 Windows 角色和功能必备项

为了使会话录制正常工作,请使用以下 Citrix 脚本安装必要的 Windows 角色和功能必备项, 在安装会话录制之前:

  • InstallPrereqsforSessionRecordingAdministration.ps1

     <#
     .Synopsis
         Installs Prereqs for Session Recording Administration
     .Description
         Supports Windows Server 2022, Windows Server 2019 and Windows Server 2016.
         Install below windows feature on this machine:
         -Application Development
         -Security - Windows Authentication
         -Management Tools - IIS 6 Management Compatibility
             IIS 6 Metabase Compatibility
             IIS 6 WMI Compatibility
             IIS 6 Scripting Tools
             IIS 6 Management Console
         -Microsoft Message Queuing (MSMQ), with Active Directory integration disabled, and MSMQ HTTP support enabled.
     #>
     function AddFeatures($featurename)
     {
         try
         {
             $feature=Get-WindowsFeature | ? {$_.DisplayName -eq $featurename -or $_.Name -eq $featurename}
             Add-WindowsFeature $feature
         }
         catch
         {
             Write-Host "Addition of Windows feature $featurename failed"
             Exit 1
         }
         Write-Host "Addition of Windows feature $featurename succeeded"
     }
    
     $system= gwmi win32_operatingSystem | select name
    
     if (-not (($system -Like '*Microsoft Windows Server 2022*') -or ($system -Like '*Microsoft Windows Server 2019*') -or ($system -Like '*Microsoft Windows Server 2016*')))
     {
         Write-Host("This is not a supported server platform. Installation aborted.")
         Exit
     }
    
     # Start to install Windows feature
     Import-Module ServerManager
    
     AddFeatures('Web-Asp-Net45') #ASP.NET 4.5
     AddFeatures('Web-Mgmt-Console') #IIS Management Console
     AddFeatures('Web-Windows-Auth') # Windows Authentication
     AddFeatures('Web-Metabase') #IIS 6 Metabase Compatibility
     AddFeatures('Web-WMI') #IIS 6 WMI Compatibility
     AddFeatures('Web-Lgcy-Scripting')#IIS 6 Scripting Tools
     AddFeatures('Web-Lgcy-Mgmt-Console') #IIS 6 Management Console
     AddFeatures('MSMQ-HTTP-Support') #MSMQ HTTP Support
     AddFeatures('web-websockets') #IIS Web Sockets
     AddFeatures('NET-WCF-HTTP-Activation45') #http activate
     <!--NeedCopy-->
    
  • InstallPrereqsforSessionRecordingAgent.ps1

     <#
     .Synopsis
         Installs Prereqs for Session Recording Agent
     .Description
         Supports  Windows Server 2022, Windows Server 2019, Windows Server 2016, windows 11, and Windows 10.
         Install below windows feature on this machine:
         -Microsoft Message Queuing (MSMQ), with Active Directory integration disabled, and MSMQ HTTP support enabled.
     #>
     function AddFeatures($featurename)
     {
         try
         {
             $feature=Get-WindowsFeature | ? {$_.DisplayName -eq $featurename -or $_.Name -eq $featurename}
             Add-WindowsFeature $feature
         }
         catch
         {
             Write-Host "Addition of Windows feature $featurename failed"
             Exit 1
         }
         Write-Host "Addition of Windows feature $featurename succeeded"
     }
    
     # Start to install Windows feature
     $system= gwmi win32_operatingSystem | select name
    
     if (-not (($system -Like '*Microsoft Windows Server 2022*') -or ($system -Like '*Microsoft Windows Server 2019*') -or ($system -Like '*Microsoft Windows Server 2016*') -or ($system -Like '*Microsoft Windows 11*') -or ($system -Like '*Microsoft Windows 10*')))
     {
         Write-Host("This is not a supported platform. Installation aborted.")
         Exit
     }
    
     if ($system -Like '*Microsoft Windows Server*')
     {
         Import-Module ServerManager
         AddFeatures('MSMQ') #Message Queuing
         AddFeatures('MSMQ-HTTP-Support')#MSMQ HTTP Support
     }
     else
     {
         try
         {
             dism /online /enable-feature /featurename:MSMQ-HTTP /all
         }
         catch
         {
             Write-Host "Addition of Windows feature MSMQ HTTP Support failed"
             Exit 1
         }
         write-Host "Addition of Windows feature MSMQ HTTP Support succeeded"
     }
     <!--NeedCopy-->
    

要安装 Windows 角色和功能必备项,请完成以下步骤:

  1. 在您计划安装会话录制管理组件的计算机上,请执行以下操作:

    1. 请务必确认,在 PowerShell 环境中,脚本的执行策略必须被设定为 RemoteSignedUnrestricted

      Set-ExecutionPolicy RemoteSigned
      <!--NeedCopy-->
      
    2. 以管理员身份启动命令提示符并运行 powershell.exe -file InstallPrereqsforSessionRecordingAdministration.ps1 命令。

      该脚本会显示已成功添加的功能,然后停止运行。

    3. 脚本运行后,请确保执行策略已根据您的公司策略设置为适当的值。

  2. 在您计划安装会话录制代理组件的计算机上:

    1. 请务必确认在 PowerShell 环境中,系统所使用的执行策略已被明确设置为 RemoteSignedUnrestricted

      Set-ExecutionPolicy RemoteSigned
      <!--NeedCopy-->
      
    2. 以管理员身份启动命令提示符并运行 powershell.exe -file InstallPrereqsforSessionRecordingAgent.ps1 命令。

      该脚本会显示已成功添加的功能,然后停止运行。

    3. 脚本运行后,请确保执行策略已根据公司策略设置为适当的值。

Install the Session Recording administration components

注意:

从 2110 开始,在 Windows Server 2016(其中 TLS 1.0 已禁用)上安装会话录制管理组件之前,请完成以下步骤:

  1. 安装适用于 SQL 服务器的微软 OLE DB 驱动程序。
  2. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319 注册表项下,添加 SchUseStrongCrypto DWORD(32 位)值并将值数据设置为 1。

  3. 重新启动。

我们建议将会话录制管理、会话录制代理和会话录制播放器组件安装在单独的服务器上。

会话录制管理组件包括会话录制数据库、会话录制服务器和会话录制策略控制台。您可以选择要在服务器上安装的组件。

注意:

从 2110 开始,在禁用 TLS 1.0 的 Windows Server 2016 上安装 Session Recording 管理组件之前,请完成以下步骤:

  1. 安装 微软 适用于 SQL Server 的 OLE DB 驱动程序。
  2. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319 注册表项下,添加 SchUseStrongCrypto DWORD (32 位) 值并将值数据设置为 1。

  3. 重新启动 Windows 服务器 2016。
  1. Install Broker_PowerShellSnapIn_x64.msi.

    重要:

    要使用 Session Recording 策略控制台,请手动安装 Broker PowerShell 管理单元 (Broker_PowerShellSnapIn_x64.msi)。在 Citrix Virtual Apps and Desktops ISO (\layout\image-full\x64\Citrix Desktop Delivery Controller) 上找到该管理单元,并按照说明进行安装。不遵守此规定可能会导致错误。

  2. 以管理员身份启动 Windows 命令提示符,然后运行 msiexec /i SessionRecordingAdministrationx64.msi 命令或双击 .msi 文件。

  3. 在安装 UI 上,单击“下一步”并接受许可协议。

  4. 在“会话录制管理设置”屏幕上,选择要安装的会话录制管理组件。

    会话录制管理设置屏幕

    注意:

    将所有 Session Recording 管理组件安装在单个服务器上适用于概念验证。但是,对于大型生产环境,我们建议您将 Session Recording 策略控制台安装在单独的服务器上,并将 Session Recording 服务器、Session Recording 管理员日志记录和 Session Recording 数据库安装在另一个单独的服务器上。Session Recording 管理员日志记录是 Session Recording 服务器的一个可选子功能。在选择 Session Recording 管理员日志记录之前,请先选择 Session Recording 服务器。

安装会话录制管理组件

注意:

会话录制数据库和 Microsoft SQL Server 通常有三种部署类型:

  • 部署 1:在同一台计算机上安装会话录制服务器和会话录制数据库,并在远程计算机上安装 Microsoft SQL Server。(推荐)
  • 部署 2:在同一台计算机上安装会话录制服务器、会话录制数据库和 Microsoft SQL Server。
  • 部署 3:在一台计算机上安装会话录制服务器,并在另一台计算机上安装会话录制数据库和 Microsoft SQL Server。(不推荐)
  1. 在“数据库和服务器配置”页面上,指定会话录制数据库的实例名称和数据库名称以及会话录制服务器的计算机帐户。单击“下一步”。

    • 实例名称:如果数据库实例不是命名实例,则只能使用 SQL Server 的计算机名称。如果已命名实例,请使用 computer-name\instance-name 作为数据库实例名称。要确定您正在使用的服务器实例名称,请在 SQL Server 上运行 select @@servername。返回值为确切的数据库实例名称。如果您的 SQL Server 侦听的端口不是默认端口 1433,请通过在实例名称后附加逗号来设置自定义侦听器端口。例如,在“实例名称”文本框中键入 DXSBC-SRD-1,2433,其中逗号后面的 2433 表示自定义侦听器端口。

    • 数据库名称:在“数据库名称”文本框中键入自定义数据库名称,或使用文本框中预设的默认数据库名称。单击“测试连接”以测试与 SQL Server 实例的连接以及数据库名称的有效性。

      重要提示:

      自定义数据库名称只能包含 A-Z、a-z、0–9 和下划线,且不能超过 123 个字符。

      • 您必须拥有数据库的 securityadmindbcreator 服务器角色权限。如果您没有这些权限,可以:
        • 请数据库管理员分配安装所需的权限。安装完成后,securityadmindbcreator 服务器角色权限不再需要,可以安全删除。
        • 或者,在 msi 安装过程中,将弹出一个对话框,提示您输入具有 securityadmindbcreator 服务器角色权限的数据库管理员的凭据。键入正确的凭据,然后单击“确定”以继续安装。

        安装会创建会话录制数据库,并将会话录制服务器的计算机帐户添加为 db_owner

    • 会话录制服务器计算机帐户

      • 部署 1 和 2:在会话录制服务器计算机帐户文本框中键入 localhost

      • 部署 3:键入托管会话录制服务器的计算机名称,格式为 domain\computer-name。会话录制服务器计算机帐户是用于访问会话录制数据库的用户帐户。

      注意:

      当在会话录制服务器计算机帐户文本框中设置了域名时,安装会话录制管理组件可能会失败,并显示错误代码 1603。作为一种解决方法,请在会话录制服务器计算机帐户文本框中键入 localhost 或 NetBIOS 域名\计算机名称。要获取 NetBIOS 域名,请在安装了会话录制服务器的计算机上,在 PowerShell 中运行 $env:userdomain 或在命令提示符中运行 echo %UserDomain%

  2. 按照说明进行操作,以完成安装。

安装会话录制服务器

  1. 选择会话录制服务器会话录制管理员日志记录

    注意:

    • 会话录制管理员日志记录是会话录制服务器的一个可选子功能。在选择会话录制管理员日志记录之前,请先选择会话录制服务器。
    • 我们建议您将会话录制管理员日志记录与会话录制服务器同时安装。如果您不希望启用管理员日志记录功能,可以在后续页面上禁用它。
  2. 数据库和服务器配置页面上,指定设置。

    • 实例名称:在实例名称文本框中键入 SQL Server 的名称。如果您使用的是命名实例,请键入 computer-name\instance-name;否则,仅键入 computer-name。如果您的 SQL Server 侦听的端口不是默认端口 1433,请通过在实例名称后附加逗号来设置自定义侦听器端口。例如,在实例名称文本框中键入 DXSBC-SRD-1,2433,其中逗号后的 2433 表示自定义侦听器端口。
    • 数据库名称:在数据库名称文本框中键入自定义数据库名称,或使用文本框中预设的默认数据库名称 CitrixSessionRecording。 您必须拥有数据库的 securityadmindbcreator 服务器角色权限。如果您没有这些权限,可以执行以下操作:
      • 要求数据库管理员分配安装权限。安装完成后,securityadmindbcreator 服务器角色权限不再需要,可以安全删除。
      • 或者,在 msi 安装过程中,对话框会提示输入具有 securityadmindbcreator 服务器角色权限的数据库管理员凭据。键入正确的凭据,然后单击 OK 继续安装。
    • 键入正确的实例名称和数据库名称后,单击 Test connection 以测试与 Session Recording 数据库的连接。

    • 键入 Session Recording 服务器计算机帐户,然后单击 Next
  3. 管理日志记录配置 页面上,指定管理日志记录功能的配置。

    • 日志记录数据库安装在 SQL Server 实例上:此文本框不可编辑。管理日志记录数据库的 SQL Server 实例名称会自动从您在 Database and Server Configuration 页面上键入的实例名称中获取。
    • 日志记录数据库名称:在此文本框中为管理员日志记录数据库键入自定义数据库名称,或者使用文本框中预设的默认数据库名称 CitrixSessionRecordingLogging

      注意:

      管理员日志记录数据库名称必须与在上一 数据库和服务器配置 页面上的 数据库名称 文本框中设置的 Session Recording 数据库名称不同。

    • 使用默认数据库名称:选择此选项将使用默认日志记录数据库名称。
    • 启用日志记录服务:默认情况下,管理日志记录功能处于启用状态。您可以通过清除此复选框来禁用它。
    • 启用强制阻止:默认情况下,强制阻止处于启用状态。如果日志记录失败,正常功能可能会被阻止。您可以通过清除此复选框来禁用强制阻止。
  4. 单击 Next 并完成安装。

注意:

会话录制服务器的默认安装使用 HTTPS/TLS 来保护通信安全。如果会话录制服务器的默认 Internet Information Services (IIS) 站点中未配置 TLS,请使用 HTTP。为此,请在 IIS 管理控制台中取消选择 SSL。导航到会话录制 Broker 站点,打开 SSL 设置,然后清除“要求 SSL”复选框。

安装会话录制代理程序

在要录制会话的 VDA 或 VDI 计算机上安装会话录制代理。

  1. 会话录制代理配置页面上:如果您已提前安装会话录制服务器,请键入安装会话录制服务器的计算机的名称。键入连接到会话录制服务器的协议和端口信息。如果您尚未安装会话录制,则以后可以在会话录制代理属性中更改此类信息。
  2. 请按照提供的说明完成安装过程。

注意:

当 机器创建服务 (MCS) 或 Citrix 预配服务 (PVS) 创建安装了 Microsoft 消息队列 (MSMQ) 的 VDA 时,这些 VDA 在某些情况下可能具有相同的 QMId。这种情况可能会导致各种问题,例如:

  • 即使接受了录制协议,会话也可能不会被录制。
  • 会话录制服务器可能无法接收会话注销信号,因此会话可能始终处于实时状态。

作为一种变通方法,为每个 VDA 创建一个唯一的 QMId,它因部署方法而异。

对于使用 PVS 7.7 或更高版本以及 MCS 7.9 或更高版本在静态桌面模式下创建的单会话操作系统 VDA,无需执行额外操作。

对于使用 MCS 或 PVS 创建的多会话操作系统 VDA 以及配置为在用户注销时丢弃所有更改的单会话操作系统 VDA,请使用 GenRandomQMID.ps1 脚本在系统启动时更改 QMId。更改电源管理策略以确保在用户登录之前有足够的 VDA 正在运行。

要使用 GenRandomQMID.ps1 脚本,请执行以下操作:

1. Make sure that the execution policy is set to RemoteSigned or Unrestricted in PowerShell.

Set-ExecutionPolicy RemoteSigned

2. 创建一个计划任务,将触发器设置为系统启动时,并使用 SYSTEM 帐户在 PVS 或 MCS 主映像计算机上运行。

3. 将命令添加为启动任务。

powershell .exe -file C:\\GenRandomQMID.ps1

以下是 GenRandomQMID.ps1 脚本的简要说明:

  1. 从注册表中删除当前的 QMId
  2. SysPrep = 1 添加到 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSMQ\Parameters
  3. Stop related services, including CitrixSmAudAgent and MSMQ.
  4. 要生成随机 QMId,请启动之前停止的服务。

Example GENRANDOMQMID.PS1:

# Remove old QMId from registry and set SysPrep flag for MSMQ

Remove-Itemproperty -Path >HKLM:Software\Microsoft\MSMQ\Parameters\MachineCache -Name QMId -Force

Set-ItemProperty -Path HKLM:Software\Microsoft\MSMQ\Parameters -Name >"SysPrep" -Type DWord -Value 1

# Get dependent services

$depServices = Get-Service -name MSMQ -dependentservices | Select -Property Name

# Restart MSMQ to get a new QMId

Restart-Service -force MSMQ

# Start dependent services

if ($depServices -ne $null) {

    foreach ($depService in $depServices) {

        $startMode = Get-WmiObject win32_service -filter "NAME = '$($depService.Name)'" | Select -Property StartMode

        if ($startMode.StartMode -eq "Auto") {

            Start-Service $depService.Name
        }
}

}
<!--NeedCopy-->

安装会话录制播放器和 Web 播放器

在会话录制服务器或域中的工作站上安装会话录制播放器。仅在会话录制服务器上安装 Web 播放器。

双击 SessionRecordingPlayer.msiSessionRecordingWebPlayer.msi,然后按照说明完成安装。

自动化安装过程

Session Recording 支持带选项的静默安装。编写使用静默安装的脚本并运行相关命令。

实现会话录制管理组件的自动化部署和安装

使用单个命令安装全套 Session Recording 管理组件

例如,以下任一命令都将安装全套 Session Recording 管理组件并创建日志文件以捕获安装信息。

msiexec /i "c:\SessionRecordingAdministrationx64.msi" ADDLOCAL="SsRecServer,PolicyConsole,SsRecLogging,StorageDatabase" DATABASEINSTANCE="WNBIO-SRD-1" DATABASENAME="CitrixSessionRecording" LOGGINGDATABASENAME="CitrixSessionRecordingLogging" DATABASEUSER="localhost" /q /l*vx "yourinstallationlog"
<!--NeedCopy-->
msiexec /i "SessionRecordingAdministrationx64.msi" ADDLOCAL="SsRecServer,PolicyConsole,SsRecLogging,StorageDatabase" DATABASEINSTANCE="CloudSQL" DATABASENAME="CitrixSessionRecording" LOGGINGDATABASENAME="CitrixSessionRecordingLogging" AZURESQLSERVICESUPPORT="1" AZUREUSERNAME="CloudSQLAdminName" AZUREPASSWORD="CloudSQLAdminPassword" /q /l*vx "c:\WithLogging.log"
<!--NeedCopy-->

注意:

SessionRecordingAdministrationx64.msi 文件位于 思杰虚拟应用和桌面 ISO 的 \layout\image-full\x64\Session Recording 路径下。

其中:

  • ADDLOCAL 提供可供您选择的功能。您可以选择多个选项。SsRecServer 是会话录制服务器。PolicyConsole 是会话录制策略控制台。SsRecLogging 是管理员日志记录功能。StorageDatabase 是会话录制数据库。会话录制管理员日志记录是会话录制服务器的一个可选子功能。在选择会话录制管理员日志记录之前,请先选择会话录制服务器。
  • DATABASEINSTANCE 是会话录制数据库的实例名称。例如,.\SQLEXPRESS,computer-name\SQLEXPRESS,computer-nametcp:srt-sql-support.public.ca7b16b60789.database.windows.net,3342(如果您使用的是 Azure SQL 托管实例)。
  • DATABASENAME 是会话录制数据库的数据库名称。
  • LOGGINGDATABASENAME 是管理员日志记录数据库的名称。
  • AZURESQLSERVICESUPPORT 用于确定是否支持云 SQL。若要使用云 SQL,请将其设置为 1
  • DATABASEUSER 是会话录制服务器的计算机帐户。
  • AZUREUSERNAME is the cloud SQL admin name.
  • AZUREPASSWORD is the cloud SQL admin password.
  • /q 指定静默模式。
  • /l*v 指定详细日志记录。
  • yourinstallationlog is the location of your installation log file.

创建用于部署会话录制服务器的主映像

您可能已经从现有部署中拥有会话录制数据库和管理日志记录数据库。对于此类情况,在使用 SessionRecordingAdministrationx64.msi 安装会话录制管理组件时,现在可以放弃数据库检查。您可以轻松创建主映像,以便在许多其他计算机上部署会话录制服务器。在使用主映像在目标计算机上部署服务器后,在每台计算机上运行命令以连接到现有的会话录制数据库和管理日志记录数据库。此主映像支持简化了部署,并最大限度地减少了人为错误的潜在影响。它仅适用于全新安装,并包含以下步骤:

  1. 启动命令提示符并运行类似于以下内容的命令:

    msiexec /i "SessionRecordingAdministrationx64.msi" ADDLOCAL="SsRecServer,PolicyConsole,SsRecLogging,StorageDatabase" DATABASEINSTANCE="sqlnotexists" DATABASENAME="CitrixSessionRecording2" LOGGINGDATABASENAME="CitrixSessionRecordingLogging2" DATABASEUSER="localhost" /q /l*vx "c:\WithLogging.log" IGNOREDBCHECK="True"
    <!--NeedCopy-->
    

    此命令旨在安装会话录制管理组件,但其功能不包括配置和测试与会话录制数据库以及管理日志数据库的连接。

    Set the IGNOREDBCHECK parameter to True and use random values for DATABASEINSTANCE, DATABASENAME, and LOGGINGDATABASENAME.

  2. 在您正在操作的计算机上创建主映像。

  3. 将主映像部署到其他计算机以部署会话录制服务器。

  4. 在每台计算机上,运行类似于以下内容的命令:

    .\SsRecUtils.exe -modifydbconnectionpara DATABASEINSTANCE DATABASENAME LOGGINGDATABASENAME
    
    iisreset /noforce
    <!--NeedCopy-->
    

    这些命令将之前安装的会话录制服务器连接到现有的会话录制数据库和管理日志数据库。

    The SsRecUtils.exe file is stored in \Citrix\SessionRecording\Server\bin\. Set the DATABASEINSTANCE, DATABASENAME, and LOGGINGDATABASENAME parameters as needed.

卸载会话录制管理组件时,请务必保留数据库

KEEPDB 设置为 True 后,以下命令在卸载会话录制管理组件时保留会话录制数据库和管理日志数据库:

msiexec /x "SessionRecordingAdministrationx64.msi" KEEPDB="True"
<!--NeedCopy-->

自动化安装会话录制播放器和 Web 播放器

例如,以下命令分别安装会话录制播放器和 Web 播放器。

msiexec /i "c:\SessionRecordingPlayer.msi" /q /l*\vx "yourinstallationlog"
<!--NeedCopy-->
msiexec /i "c:\SessionRecordingWebPlayer.msi" /q /l*vx "yourinstallationlog"
<!--NeedCopy-->

注意:

SessionRecordingPlayer.msi 文件位于 Citrix 虚拟应用和桌面 ISO 的 \layout\image-full\x86\Session Recording 下。

SessionRecordingWebPlayer.msi 文件位于 Citrix 虚拟应用和桌面 ISO 的 \layout\image-full\x64\Session Recording 下。

其中:

  • /q 指定静默模式。
  • /l*v 指定详细日志记录。
  • yourinstallationlog 是您的安装日志文件所存储的位置。

自动化安装会话录音代理程序

例如,以下命令将安装会话录音代理程序,并创建一个日志文件,用于捕获安装过程中的相关信息。

msiexec /i SessionRecordingAgentx64.msi /q /l*vx yourinstallationlog SESSIONRECORDINGSERVERNAME=yourservername
SESSIONRECORDINGBROKERPROTOCOL=yourbrokerprotocol SESSIONRECORDINGBROKERPORT=yourbrokerport
<!--NeedCopy-->

注意:

SessionRecordingAgentx64.msi 文件位于 Citrix 虚拟应用和桌面 ISO 的 \layout\image-full\x64\Session Recording 下。

其中:

  • yourservername 是托管会话录制服务器的计算机的 NetBIOS 名称或 FQDN。如果未指定,此值默认为 localhost
  • yourbrokerprotocol 是会话录制代理用于与会话录制代理通信的 HTTP 或 HTTPS。如果未指定,此值默认为 HTTPS。
  • yourbrokerport 是会话录制代理用于与会话录制代理通信的端口号。如果未指定,此值默认为零,这会指示会话录制代理使用所选协议的默认端口号:HTTP 为 80,HTTPS 为 443。
  • /q 指定静默模式。
  • /l*v 指定详细日志记录。
  • yourinstallationlog 是您的安装日志文件所存储的位置。

升级会话录制组件

您可以将某些部署升级到更高版本,而无需首先设置新计算机或站点。您可以将会话录制从 7.15 LTSR 的最新 CU 以及任何更高版本升级到最新版本的会话录制。

注意:

将会话录制管理从 7.6 升级到 7.13 或更高版本并选择修改以添加管理员日志记录服务时,SQL Server 实例名称不会显示在管理员日志记录配置页面上。单击下一步时,将显示以下错误消息:数据库连接测试失败。请输入正确的数据库实例名称。 作为一种解决方法,请为 localhost 用户向以下 SmartAuditor Server 注册表文件夹添加读取权限:HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\SmartAuditor\Server

无法从技术预览版进行升级。

系统要求、准备工作和限制条件

  • 您可以使用会话录制安装程序的图形界面或命令行来升级会话录制组件。
  • 在执行任何升级活动之前,请备份 SQL Server 实例中名为 CitrixSessionRecording 的数据库。这样,如果在数据库升级后发现任何问题,您可以将其还原。
  • 除了是域用户之外,您还必须是正在升级会话录制组件的计算机上的本地管理员。
  • 如果会话录制服务器和会话录制数据库未安装在同一台服务器上,您必须具有数据库角色权限才能升级会话录制数据库。否则,您可以:
    • 请数据库管理员分配用于升级的 securityadmindbcreator 服务器角色权限。升级完成后,securityadmindbcreator 服务器角色权限不再是必需的,可以安全删除。
    • 或者,使用 SessionRecordingAdministrationx64.msi 文件进行升级。在 msi 升级期间,将显示一个对话框,提示输入具有 securityadmindbcreator 服务器角色权限的数据库管理员的凭据。键入正确的凭据,然后单击确定以继续升级。
  • 会话录制代理 7.6.0 及更高版本与最新版本的会话录制服务器兼容。但是,某些新功能和错误修复可能不会生效。
  • 在会话录制服务器升级期间启动的任何会话都不会被录制。
  • 会话录制代理属性中的图形调整选项在全新安装或升级后默认启用,以保持与桌面合成重定向模式兼容。您可以在全新安装或升级后手动禁用此选项。
  • 在您将会话录音从不支持此功能的早期版本升级后,管理员日志记录功能不会安装。要添加此功能,请在升级后修改安装。
  • 如果在升级过程启动时存在正在进行的实时录制会话,则录制会话很可能无法完整完成。
  • 查看以下升级顺序,以便您可以规划和缓解潜在的服务中断。

升级顺序

  1. 当会话录音数据库和会话录音服务器安装在不同的服务器上时,请在会话录音服务器上手动停止会话录音存储管理器服务。然后首先升级会话录音数据库。
  2. 通过 Internet Information Services (IIS) 管理器,确保会话录音代理正在运行。升级会话录音服务器。如果会话录音数据库和会话录音服务器安装在同一服务器上,则会话录音数据库也会升级。
  3. 当会话录音服务器的升级完成后,会话录音服务将自动恢复联机状态。
  4. 升级会话录音代理(在主映像上)。
  5. 与会话录音服务器同时或在其之后升级会话录音策略控制台。
  6. 升级会话录音播放器。

在云 SQL 数据库服务上部署会话录音数据库

本节介绍如何在 Azure SQL 托管实例、AWS RDS 和 Azure VM 上的 SQL Server 上部署会话录音数据库。

在 Azure SQL 托管实例或 AWS RDS 上部署会话录音数据库

提示:

您还可以运行类似于以下内容的单个命令,以在 Azure SQL 托管实例或 AWS RDS 上部署会话录音数据库。有关详细信息,请参阅本文中前面的 自动化安装 部分。

msiexec /i "SessionRecordingAdministrationx64.msi" ADDLOCAL="SsRecServer,PolicyConsole,SsRecLogging,StorageDatabase" DATABASEINSTANCE="CloudSQL" DATABASENAME="CitrixSessionRecording" LOGGINGDATABASENAME="CitrixSessionRecordingLogging" AZURESQLSERVICESUPPORT="1" AZUREUSERNAME="CloudSQLAdminName" AZUREPASSWORD="CloudSQLAdminPassword" /q /l*vx "c:\WithLogging.log"
<!--NeedCopy-->
  1. 创建 Azure SQL 托管实例或通过亚马逊 RDS 控制台创建 SQL Server 实例。

  2. (仅适用于 Azure SQL)记录属性面板中显示的 Server 字符串。这些字符串是会话录制数据库的实例名称。有关示例,请参阅以下屏幕截图。

    示例服务器字符串

  3. (仅适用于 AWS RDS)记录 EndpointPort 信息。我们将其用作数据库的实例名称,格式为 <Endpoint, Port>

    AWS RDS 实例的组成结构

  4. Run SessionRecordingAdministrationx64.msi to install the Session Recording database.

    选中 Enable cloud SQL 复选框,然后填写云 SQL 管理员名称和密码。进行其他所需的配置。

    填写云 SQL 管理员凭据

    注意:

    如果您更改云 SQL 管理员密码,则必须在 会话录制服务器属性 中更新密码。当您打开 会话录制服务器属性 时,将显示错误消息。单击 确定 继续,选择 云数据库 选项卡,然后键入新的云 SQL 管理员密码。重新启动 Citrix 会话录制分析服务、Citrix 会话录制存储管理器服务和 IIS 服务。

    不支持 Azure AD 身份验证。

    更新云 SQL 管理员密码

将本地数据库迁移到云 SQL 托管实例

  1. 根据 https://docs.microsoft.com/zh-cn/data-migration/https://docs.aws.amazon.com/prescriptive-guidance/latest/patterns/migrate-an-on-premises-microsoft-sql-server-database-to-amazon-rds-for-sql-server.html 迁移您的本地数据库。

  2. 为使会话录制在迁移后正常工作,请在会话录制服务器上运行 SsRecUtils.exe

    C:\Program Files\Citrix\SessionRecording\Server\bin\SsRecUtils.exe -modifyazuredbconnectionpara {Database Instance} {Session Recording Database Name} {Session Recording Logging Database Name} {AzureAdminName}{AzureAdminPassword} iisreset /noforce

  3. 在会话录音服务器上,重新启动 Citrix 会话录音分析服务、Citrix 会话录音存储管理器服务和 IIS 服务。

将生产数据库从 Azure SQL 托管实例迁移到本地数据库

  1. 根据 https://docs.microsoft.com/zh-cn/data-migration/ 迁移数据库。

  2. 为使会话录音在迁移后正常工作,请在会话录音服务器上运行 SsRecUtils.exe

    C:\Program Files\Citrix\SessionRecording\Server\bin\SsRecUtils.exe -modifydbconnectionpara {Database Instance} {Session Recording Database Name} {Session Recording Logging Database Name} iisreset /noforce

  3. 在会话录音服务器上,重新启动 Citrix 会话录音分析服务、Citrix 会话录音存储管理器服务和 IIS 服务。

在 Azure VM 上的 SQL Server 上部署会话录音数据库

在 Azure VM 上的 SQL Server 上,您可以部署会话录音数据库。

  1. 获取并配置一个 Azure SQL 虚拟机。
  2. 配置 VM 并将其添加到安装会话录音组件的域中。
  3. 在安装会话录音数据库期间,使用 VM 的 FQDN 作为实例名称。 注意: 当您使用 SessionRecordingAdministrationx64.msi 进行安装时,请清除 Enable cloud SQL 复选框。
  4. 请按照提供的说明完成安装过程。

如何卸载会话录音

要从服务器或工作站中删除会话录音组件,请使用 Windows 控制面板中提供的卸载或删除程序选项。 要删除会话录音数据库,您必须拥有与安装时相同的 securityadmindbcreator SQL Server 角色权限。

出于安全原因,卸载组件后不会删除管理员日志记录数据库。

与 思杰安全分析™ 集成

您可以将会话录制服务器配置为将用户事件发送到 Citrix Analytics for Security,Citrix Analytics for Security 会处理这些用户事件,以提供有关用户行为的可操作见解。

先决条件

开始之前,请满足以下先决条件:

  • 会话录制服务器可以连接到以下地址:

  • 会话录制部署已打开端口 443 以用于出站 Internet 连接。网络上的任何代理服务器都必须允许此通信与 Citrix Analytics for Security 进行。

  • 如果您使用的是 Citrix Virtual Apps™ and Desktops 7 1912 LTSR,则支持的会话录制版本为 2103 或更高版本。

将您的会话录制服务器连接到 思杰安全分析

  1. 登录到 Citrix 云。

  2. 找到 Citrix 安全分析,然后单击 管理

  3. 在顶部栏中,单击 设置 > 数据源

  4. 虚拟应用和桌面 - 会话录制 站点卡片上,单击 连接会话录制服务器

    会话录制连接(/zh-cn/session-recording/2204/media/sr-connect-new-tenant.png)

  5. Connect Session Recording Server 页面上,查看清单,并选择所有强制性要求。如果您未选择强制性要求,则 Download File 选项将被禁用。

    会话录制清单(/zh-cn/session-recording/2204/media/sr-checklist.png)

  6. 如果您的网络中有代理服务器,请在会话录制服务器的 SsRecStorageManager.exe.config 文件中输入代理地址。

    配置文件位于 <Session Recording server installation path>\bin\SsRecStorageManager.exe.config

    例如:C:\Program Files\Citrix\SessionRecording\Server\Bin\SsRecStorageManager.exe.config

    配置文件路径(/zh-cn/session-recording/2204/media/sr-config-file-path.png)

  7. 请点击 下载文件 按钮,以便将名为 SessionRecordingConfigurationFile.json 的会话录制配置文件下载到您的本地计算机上。

    注意:

    该文件包含敏感信息。请将文件保存在安全的位置。

  8. 将文件复制到您要连接到 Citrix Analytics for Security 的会话录制服务器。

    如果您的部署中有多个会话录制服务器,则必须将文件复制到您要连接的每个服务器,并按照步骤配置每个服务器。

  9. 在会话录制服务器上,运行以下命令导入设置:

    <Session Recording server installation path>\bin\SsRecUtils.exe -Import_SRCasConfigurations <configuration file path>
    <!--NeedCopy-->
    

    例如:

    C:\Program Files\Citrix\SessionRecording\Server\bin\ SsRecUtils.exe -Import_SRCasConfigurations C:\Users\administrator \Downloads\SessionRecordingConfigurationFile.json
    <!--NeedCopy-->
    
  10. 重新启动以下服务:

    • Citrix 会话录制分析服务

    • Citrix 会话录制存储管理器

  11. 配置成功后,请转到 Citrix Analytics for Security 查看连接的会话录制服务器。单击 启用数据处理 以允许 Citrix Analytics for Security 处理数据。

    注意:

    如果您使用的是会话录制服务器版本 2103 或 2104,则必须首先启动 Virtual Apps and Desktops 会话才能在 Citrix Analytics for Security 上查看连接的会话录制服务器。否则,连接的会话录制服务器将无法显示。此要求不适用于会话录制服务器版本 2106 及更高版本。

查看已连接的部署

服务器部署仅在配置成功后才会显示在会话录制站点卡上。站点卡显示已与 Citrix Analytics for Security 建立连接的已配置服务器数量。

如果即使配置成功后仍未看到您的会话录制服务器,请参阅故障排除部分:已配置的会话录制服务器无法连接

会话录制部署

在站点卡上,单击部署数量以查看与 Citrix Analytics for Security 连接的服务器组。例如,单击 1 个会话录制部署 以查看连接的服务器或服务器组。每个会话录制服务器都由一个基本 URL 和一个 ServerGroupID 表示。

SR 部署详细信息

查看收到的事件

站点卡显示已连接的会话录制部署以及在过去一小时内(默认时间选择)从这些部署收到的事件。您还可以选择 1 周 (1 W) 并查看数据。单击收到的事件数量以在自助服务搜索页面上查看事件。

启用数据处理后,站点卡可能会显示“未收到数据”状态。此状态出现的原因有两个:

  1. 如果您是首次开启数据处理,事件需要一些时间才能到达 Citrix Analytics 中的事件中心。当 Citrix Analytics 收到事件后,状态将变为 数据处理已开启。如果一段时间后状态未更改,请刷新“数据源”页面。

  2. Citrix Analytics 在过去一小时内未从数据源接收到任何事件。

添加会话录制服务器

要添加会话录制服务器,请执行以下操作之一:

  • 在“已连接的会话录制部署”页面上,单击“连接到会话录制服务器”。

    连接部署

  • 在“Virtual Apps and Desktops - 会话录制”站点卡片上,单击垂直省略号 (⋮),然后选择“连接会话录制服务器”。

    会话录制连接

请按照以下步骤下载配置文件并配置会话录制服务器。

删除会话录制服务器

要删除会话录制服务器:

  1. 在 Citrix Analytics for Security 中,转到“已连接的会话录制部署”页面,然后选择要删除的服务器部署。

  2. 单击垂直省略号 (⋮) 并选择“从 Analytics 中删除会话录制服务器”。

    删除会话录制服务器

  3. 在您已从 Citrix Analytics 中删除的会话录制服务器上,运行以下命令:

    <Session Recording server installation path>\bin\SsRecUtils.exe -Remove_SRCasConfigurations
    <!--NeedCopy-->
    

    例如:

    C:\Program Files\Citrix\SessionRecording\Server\bin\ SsRecUtils.exe -Remove_SRCasConfigurations
    <!--NeedCopy-->
    

在数据源上启用或禁用数据处理

您可以随时停止特定数据源(Director 和 Workspace 应用程序)的数据处理。在数据源站点卡上,单击垂直省略号 (⋮),然后选择 Turn off data processing。Citrix Analytics 将停止处理该数据源的数据。您也可以从 Virtual Apps and Desktops 站点卡停止数据处理。此选项适用于 Director 和 Workspace 应用程序这两个数据源。 要再次启用数据处理,请单击 Turn On Data Processing

配置的会话录制服务器无法连接

您的会话录制服务器在配置后无法连接到 Citrix Analytics。因此,您在 Session Recording 站点卡上看不到已配置的服务器。

要解决此问题,请执行以下操作:

  1. 在您配置的会话录制服务器上,运行以下 PowerShell 命令以检查客户端计算机标识 (CMID):

    Get-WmiObject -class SoftwareLicensingService | select Clientmachineid
    <!--NeedCopy-->
    
  2. 如果 CMID 为空,请在指定路径中添加以下注册表文件:

    注册表名称 注册表路径 密钥类型
    AuditorUniqueID Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\SmartAuditor\Server\ 字符串 输入您的 UUID。
    EnableCASUseAuditorUniqueID Computer/HKEY_LOCAL_MACHINE/SOFTWARE/Citrix/SmartAuditor/Server/ 注册表双字 1
  3. 重新启动以下服务:

    • Citrix 会话录制分析服务

    • Citrix 会话录制存储管理器