配置事件检测策略
Session Recording 支持集中配置事件检测策略。可以在 Session Recording 策略控制台中创建策略以记录各种事件。
可以检测的事件
Session Recording 检测目标事件并标记录制件中的这些事件,以便以后搜索和播放。您可以从大量录制件中搜索感兴趣的事件,并且可以在播放过程中定位这些事件。
系统定义的事件
Session Recording 可以检测和记录录制的会话期间发生的系统定义的以下事件:
-
插入 USB 大容量存储设备
-
应用程序启动和结束
-
应用程序故障
-
应用程序安装和卸载
-
会话内的文件重命名、创建、删除和移动操作
-
文件在会话主机 (VDA) 与客户端设备(包括映射的客户端驱动器和重定向的常规大容量存储设备)之间传输
-
Web 浏览活动
-
最上面的窗口事件
-
剪贴板活动
-
Windows 注册表修改
-
用户帐户修改
-
RDP 连接
-
性能数据(与录制的会话相关的数据点)
-
弹出窗口事件
-
印刷活动
例如:
- Web 播放器中仅限事件的录制文件中的事件:
- Web 播放器中的屏幕录制文件中的事件:
-
Session Recording Player 中的事件:
有关 Session Recording Player 中的更多事件,请参阅本文后面的事件描述。
注意:
当存在检测 Web 浏览活动和最上面的窗口事件的活动策略时,由 PowerBuilder 构建的应用程序可能会意外退出。为避免此问题,请使用 PowerBuilder 2019 R3 来构建您的应用程序。
插入 USB 大容量存储设备
Session Recording 可以检测安装了适用于 Windows 或适用于 Mac 的 Citrix Workspace 应用程序的客户端中映射的客户端驱动器映射 (CDM) 或重定向的通用 USB 大容量存储设备的插入。Session Recording 标记录制件中的这些事件。
注意:
要使用插入的 USB 大容量存储设备并检测插入事件,请在 Citrix Studio 中将客户端 USB 设备重定向策略设置为允许。
当前只能检测 USB 大容量存储设备(USB 类别 08)的插入。
应用程序启动和结束
Session Recording 支持对应用程序启动和结束进行检测。向应用程序监视列表中添加进程时,所添加的进程及其子进程驱动的应用程序将受到监视。还可以捕获在 Session Recording 运行之前启动的父进程的子进程。
默认情况下,Session Recording 将向应用程序监视列表中添加进程名称 cmd.exe
、powershell.exe
和 wsl.exe
。如果为事件检测策略选择记录应用程序启动事件和记录应用程序结束事件,则无论您是否手动将其进程名称添加到应用程序监视列表,都会记录命令提示符、PowerShell 以及适用于 Linux 的 Windows 子系统 (WSL) 应用程序的启动和结束。默认进程名称在应用程序监视列表中不可见。
此外,Session Recording 还为记录的每个应用程序启动事件提供了完整的命令行。
应用程序故障
如果您在创建事件检测策略时选择 Log app failures(记录应用程序故障),Session Recording 将检测应用程序退出和无响应的应用程序。Log app failures rule(记录应用程序故障规则)适用于所有应用程序。
应用程序安装和卸载
Log app installs and uninstalls(记录应用安装和卸载)规则适用于所有应用程序。
用户帐户修改
Session Recording 可以检测帐户的创建、启用、禁用、删除、名称更改和密码修改尝试。
RDP 连接
Session Recording 可以检测从托管录制的会话的 VDA 启动的 RDP 连接。
会话内部的文件重命名、创建、删除和移动操作,以及会话主机 (VDA) 与客户端设备之间的文件传输
Session Recording 可以检测您在文件监视列表中指定的目标文件和文件夹执行的重命名、创建、删除和移动操作。Session Recording 还可以检测会话主机 (VDA) 与客户端设备(包括映射的客户端驱动器和重定向的常规大容量存储设备)之间的文件传输。无论您是否指定文件监视列表,选择记录敏感文件事件选项都会触发文件传输的检测功能。
注意:
要启用文件拖放并捕获拖放事件,请在 Citrix Studio 中将拖放策略设置为已启用。
Web 浏览活动
Session Recording 可以在支持的浏览器上检测用户活动,并标记录制文件中的事件。将记录浏览器名称、URL 和页面标题。有关示例,请参阅下面的屏幕截图。
将光标移离具有焦点的 Web 页面时,您浏览此 Web 页面时会标记而不显示浏览器名称。此功能可用于估计用户在 Web 页面上停留的时间。有关示例,请参阅下面的屏幕截图。
支持的浏览器列表:
- Google Chrome
- Microsoft Edge Chromium
- Mozilla Firefox
注意:
此功能需要 Session Recording 1906 或更高版本。
最上面的窗口事件
当应用程序的窗口位于所有其他窗口的上面时,Session Recording 可以检测事件。将记录进程名称、标题和进程编号。
剪贴板活动
Session Recording 可以使用剪贴板检测文本、图像和文件的复制操作。将记录文件副本的进程名称和文件路径。将记录文本副本的进程名称和标题。将记录图像副本的进程名称。
注意: 默认情况下不记录复制的文本的内容。要记录文本内容,请转到 Session Recording Agent 并将 HKEY_LOCAL_MACHINE\SOFTWARE\
Citrix\SmartAuditor\Agent\CaptureClipboardContent
设置为 1
(默认值为 0
)。
Windows 注册表修改
自版本 2109 起,Session Recording 可以在录制会话时检测和记录以下注册表修改:
注册表修改 | 对应的事件 |
---|---|
添加注册表项 | 注册表创建 |
添加值 | 注册表设置值 |
重命名注册表项 | 注册表重命名 |
重命名值 | 注册表删除值和注册表设置值 |
更改现有值 | 注册表设置值 |
删除注册表项 | 注册表删除 |
删除值 | 注册表删除值 |
例如:
要启用此注册表监视功能,请为事件检测策略选择记录注册表修改选项。
性能数据(与录制的会话相关的数据点)
创建事件检测策略时,请选择 Log performance data(记录性能数据)以启用会话数据叠加功能。此功能引入了在 Web 播放器中播放会话期间的屏幕叠加。它是一个半透明的叠加层,您可以对其进行重新定位和隐藏。叠加层包含与录制的会话相关的以下数据点:
- 往返时间
- 网络(发送)
- 网络(接收)
- CPU 使用率
- 内存使用率
弹出窗口事件
当用户打开或关闭机密文件或访问文件夹时,可能会出现一个弹出窗口,显示提示或要求输入密码。Session Recording 现在可以在录制会话时监视此类弹出窗口事件。不会监视 Web 浏览器中的弹出窗口。
录制弹出窗口事件的属性,包括进程名称和提示的内容。
打印活动(预览版)
Session Recording 监视录制的会话期间发生的打印活动,并将打印活动标记为录制文件中的事件,以供日后搜索和播放。
注意:
这是一项预览版功能。它适用于 Session Recording 版本 2407 及更高版本。预览版功能可能未完全本地化,建议在非生产环境中使用。Citrix 技术支持不对在预览功能中发现的问题提供支持。
自定义事件
Session Recording Agent 提供 IUserApi COM 接口,第三方应用程序可以使用该接口向录制的会话添加应用程序特定的事件数据。根据事件自定义,Session Recording 可以阻止敏感信息,并相应地记录会话暂停和会话恢复事件。
敏感信息阻止
Session Recording 允许您在录制屏幕时跳过某些时段,并在会话播放期间阻止这些时段内的敏感信息。要使用此功能,请使用 Session Recording 2012 及更高版本。
要使用此功能,请完成以下步骤:
-
在 Session Recording Agent 属性中,选中允许第三方应用程序记录此 VDA 计算机上的自定义数据复选框,然后单击应用。
-
授予用户调用 Session Recording 事件 API 的权限(IUserApi COM 接口)。
自版本 7.15 起,Session Recording 向事件 API COM 接口添加了访问控制功能。只有授权用户才能调用将事件元数据插入录制文件的功能。
默认情况下,具有本地管理员权限的登录用户被授予此权限。要向其他用户授予此权限,请使用 Windows DCOM 配置工具:
-
在 Session Recording Agent 上,运行 comcnfg.exe 打开 Windows DCOM 配置工具。
如果您向不是域管理员组成员的用户授予权限,并且 Session Recording Agent 在 Windows Server 2019 或更高版本或者 Windows 10 或更高版本上运行,请继续执行步骤 b。否则,请跳过步骤 b 直接转到步骤 c。
-
在左侧导航栏中选择控制台根节点 > 组件服务 > 计算机 > 我的电脑。
右键单击我的电脑,然后选择属性。
选择 COM 安全性选项卡,然后单击编辑默认值以在启动和激活权限部分添加具有本地激活权限的用户。
-
在左侧导航栏中选择控制台根节点 > 组件服务 > 计算机 > 我的电脑 > DCOM 配置。
右键单击 Citrix Session Recording Agent 并选择属性。
-
选择安全选项卡,然后单击编辑以在启动和激活权限部分添加具有本地激活权限的用户。
注意:
DCOM 配置立即生效。无需重新启动任何服务或计算机。
-
-
启动 Citrix 虚拟会话。
-
启动 PowerShell 并将当前驱动器更改为 <Session Recording Agent 安装路径\>\Bin 文件夹以导入 SRUserEventHelperSnapin.dll 模块。
-
运行
Session-Pause
和Session-Resume
cmdlet 以设置用于触发敏感信息阻止的参数。参数 说明 必需或可选 -APP
调用 Session-Pause 和 Session-Resume cmdlet 的应用程序名称。 必需 -Reason
内容被阻止的原因。如果未指定此参数,则会显示默认设置,指出内容被阻止和敏感信息存在且已被阻止。如果设置此参数,则在会话播放期间导航到阻止时段时,将显示指定的原因。此参数同时适用于 Session-Pause 和 Session-Resume cmdlet。 可选 -AheadSeconds
此参数仅适用于 Session-Pause cmdlet。它允许您配置在检测到敏感信息之前要绕过的屏幕录制的时间长度。默认值为 1 秒。 可选 例如,可以运行类似于以下内容的 Session-Pause:
搜索和播放包含带标记事件的录制件
搜索包含带标记事件的录制件
Session Recording Player 允许您执行对包含带标记事件的录制件的高级搜索。
- 在 Session Recording Player 中,单击工具栏上的高级搜索,或者依次选择工具 > 高级搜索。
- 在高级搜索对话框中定义搜索条件。
在事件选项卡中,可以按事件文本或事件类型或两者搜索会话中的带标记事件。可以组合使用事件、通用、日期/时间和其他过滤器搜索满足您的条件的录制件。
注意:
- 事件类型列表逐项列出所有事件类型。可以选择要搜索的事件类型。选择 Citrix 定义的任何事件表示搜索包含 Citrix Session Recording 记录的任何类型的事件的所有录制件。
- 事件文本过滤器支持部分匹配。不支持通配符。
- 事件文本过滤器在匹配时不区分大小写。
- 对于事件的类型,当您按事件文本搜索时,单词
App Start
、App End
、Client drive mapping
和File Rename
不参与匹配。因此,当您在事件文本框中键入App Start
、App End
、Client drive mapping
或File Rename
时,将找不到任何结果。
可以使用事件浏览录制的会话,或者跳至标记了事件的点。
系统定义的事件检测策略
系统定义的事件检测策略为不检测。默认情况下,它处于非活动状态。当它处于活动状态时,不会记录任何事件。
您无法修改或删除系统定义的事件检测策略 。
创建自定义事件检测策略
注意事项
可以指定要记录的事件。Session Recording 策略控制台中的向导可帮助您创建规则。对于您创建的每条规则,可以选择要记录的事件并通过规则条件设置指定该规则要应用到的会话。
对于每条规则,请至少选择以下项目之一来创建规则条件:
- 用户或组。创建要应用规则的用户或组列表。
- 已发布的应用程序或桌面。创建要应用规则的已发布应用程序或桌面列表。
- 交付组或计算机。创建要应用规则的交付组或计算机列表。
- IP 地址或 IP 范围。创建要应用规则的 IP 地址或 IP 地址范围列表。此处提到的 IP 地址是指 Citrix Workspace 应用程序的 IP 地址。
-
过滤器。创建要应用规则的智能访问标记列表。可以在 Citrix NetScaler 上使用智能访问策略配置上下文访问(智能访问)。
上下文访问(智能访问)适用于 Session Recording 2402 及更高版本。它允许您根据用户访问上下文应用策略,包括:
- 用户的位置
- IP 地址范围
- 交付组
- 设备类型
- 已安装的应用程序
步骤
要创建自定义事件检测策略,请执行以下操作:
-
以授权的策略管理员身份登录安装了 Session Recording 策略控制台的服务器。
-
启动 Session Recording 策略控制台。 默认情况下,没有活动的事件检测策略。
-
在左侧窗格中选择事件检测策略。从菜单栏中,选择添加新策略以创建事件检测策略。
-
(可选)右键单击新事件监测策略并对其重命名。
-
右键单击新的事件检测策略,然后选择添加规则。
-
通过选中每个事件类型旁边的复选框,指定一个或多个要监视的目标事件。向下滚动窗口可查看所有可用的事件类型。
-
对 CDM 映射的 USB 事件记录日志:记录安装了适用于 Windows 或适用于 Mac 的 Citrix Workspace 应用程序的客户端中由客户端驱动器映射 (CDM) 所映射的大容量存储设备的插入。
-
录制通用 USB 重定向:记录安装了适用于 Windows 或适用于 Mac 的 Citrix Workspace 应用程序的客户端中通用重定向大容量存储设备的插入。
-
对应用程序启动事件记录日志:记录目标应用程序的启动。
-
对应用程序结束事件记录日志:记录目标应用程序的结束。
注意:
在选择记录应用程序启动事件之前,记录应用程序结束事件复选框将灰显。
-
应用程序监视列表:当您选择对应用程序启动事件记录日志和对应用程序结束事件记录日志时,使用 应用程序监视列表可指定要监视的目标应用程序,并避免过量事件充斥在录制件中。
注意:
- 要捕获应用程序的启动和结束,请在应用程序监视列表中添加应用程序的进程名称。例如,要捕获远程桌面连接的启动,请在应用程序监视列表中添加进程名称
mstsc.exe
。向应用程序监视列表中添加进程时,所添加的进程及其子进程驱动的应用程序将受到监视。默认情况下,Session Recording 将向应用程序监视列表中添加进程名称cmd.exe
、powershell.exe
和wsl.exe
。如果为事件检测策略选择记录应用程序启动事件和记录应用程序结束事件,则无论您是否手动将其进程名称添加到应用程序监视列表,都会记录命令提示符、PowerShell 以及适用于 Linux 的 Windows 子系统 (WSL) 应用程序的启动和结束。默认进程名称在应用程序监视列表中不可见。 - 用分号 (;) 分隔进程名称。
- 仅支持精确匹配。不支持通配符。
- 添加的进程名称不区分大小写。
- 为了避免大量事件充斥在录制件中,请勿将任何系统进程名称(例如 explorer.exe)和 Web 浏览器添加到注册表中。
- 要捕获应用程序的启动和结束,请在应用程序监视列表中添加应用程序的进程名称。例如,要捕获远程桌面连接的启动,请在应用程序监视列表中添加进程名称
-
记录文件操作:记录对文件监视列表中的目标文件的操作,并记录会话主机 (VDA) 与客户端设备(包括映射的客户端驱动器和通用的重定向大容量存储设备)之间的文件传输。无论是否指定文件监视列表,选择此选项都会触发文件传输的日志记录。
-
Web 播放器中显示的文件事件
-
Session Recording Player 中显示的文件事件
-
-
文件监视列表:选择记录文件操作时,请使用文件监视列表指定要监视的目标文件。可以指定文件夹以在其中捕获所有文件。默认情况下,不指定任何文件,这意味着默认不捕获任何文件。
注意:
- 要捕获对某个文件执行的重命名、创建、删除或移动操作,请在文件监视列表中添加该文件的文件夹的路径字符串(而非该文件的名称或该文件的文件夹根路径)。例如,要捕获对
C:\User\File
中的sharing.ppt
文件执行的重命名、创建、删除和移动操作,请在文件监视列表中添加路径字符串C:\User\File
。 - 支持本地文件路径和远程共享文件夹路径。例如,要捕获对
\\remote.address\Documents
文件夹中的 RemoteDocument.txt 文件执行的各种操作,请在文件监视列表中添加路径字符串\\remote.address\Documents
。 - 用分号 (;) 分隔监视的路径。
- 仅支持精确匹配。不支持通配符。
- 路径字符串不区分大小写。
限制:
- 不捕获将文件或文件夹从受监视的文件夹到未受监视的文件夹。
- 当包含某个文件或文件夹名称的文件或文件夹路径的长度超过 260 个字符时,将不捕获对该文件或文件夹执行的操作。
- 请注意数据库大小。为防止捕获大量事件,请定期备份或删除“事件”表。
- 在短时间内捕获到大量事件时,将显示播放器,并且数据库仅针对每种类型存储一个事件以避免存储扩大。
- 要捕获对某个文件执行的重命名、创建、删除或移动操作,请在文件监视列表中添加该文件的文件夹的路径字符串(而非该文件的名称或该文件的文件夹根路径)。例如,要捕获对
-
记录 Web 浏览活动:在支持的浏览器上记录用户活动,并在录制件中标记浏览器名称、URL 和页面标题。
支持的浏览器列表:
- Google Chrome
- Microsoft Edge Chromium
- Mozilla Firefox
-
录制最上面的窗口事件:记录最上面的窗口事件,并在录制件中标记进程名称、标题和进程编号。
-
记录剪贴板活动:使用剪贴板记录文本、图像和文件的复制操作。将记录文件副本的进程名称和文件路径。将记录文本副本的进程名称和标题。将记录图像副本的进程名称。
-
记录注册表修改:记录以下 Windows 注册表修改:添加注册表项或值、重命名注册表项或值、更改现有值以及删除注册表项或值。
-
Registry monitoring list(注册表监视列表):选择 Log registry modifications(记录注册表修改)时,键入要监视的注册表的绝对路径,然后用分号 (;) 分隔这些路径。请在路径的开头使用 HKEY_USERS、HKEY_LOCAL_MACHINE 或 HKEY_CLASSES_ROOT。例如,您可以键入
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows;HKEY_CLASSES_ROOT\GuestStateVDev
。如果不指定此列表,则不捕获任何注册表修改。 -
Log app failures(记录应用程序故障):记录意外的应用程序退出和无响应的应用程序。此规则适用于所有应用程序。
-
Log user account modifications(记录用户帐户修改):记录以下用户帐户修改:帐户创建、启用、禁用、删除、锁定、名称更改和密码修改尝试。
-
Log RDP connections(记录 RDP 连接):记录从托管录制的会话的 VDA 启动的 RDP 连接。
-
Log app installs and uninstalls(记录应用程序安装和卸载):记录在录制的会话期间的应用程序安装和卸载。此规则适用于所有应用程序。
-
Log performance data(记录性能数据):启用会话数据叠加功能。选中此复选框可查看与录制的会话相关的数据点。
-
记录弹出窗口:记录用户打开或关闭机密文件或访问文件夹时可能会出现的弹出窗口。
-
Log printing activities(记录打印活动):记录在录制的会话期间发生的打印活动。此功能在预览版中提供。它适用于 Session Recording 版本 2407 及更高版本。
-
-
选择并编辑规则条件。
与创建自定义录制策略类似,您可以选择一个或多个规则条件:
- 用户或组
- 已发布的应用程序或桌面
- 交付组或计算机
- IP 地址或 IP 范围
- 过滤器
要获取已发布的应用程序或桌面的列表以及交付组或 VDA 计算机的列表,您必须具有作为站点管理员所拥有的读取权限。在站点的 Delivery Controller 上配置管理员读取权限。
有关详细信息,请参阅创建自定义录制策略部分中的说明。
注意:
某些会话可能不符合事件检测策略中的任何规则条件。对于这些会话,请应用回退规则的操作,即始终为不检测。您无法修改或删除回退规则。
-
请按照向导完成配置。
-
与事件检测策略匹配的会话启动后,会话 ID 及其事件注册表值将在 Session Recording Agent 中显示。例如:
与注册表配置的兼容性
新安装或升级 Session Recording 时,默认情况下没有可用的活动事件检测策略。在这种情况下,每个 Session Recording Agent 都表示 HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\SmartAuditor\SessionEvents
下的注册表值,以确定是否记录特定事件。有关注册表值的说明,请参阅下表:
注册表值 | 说明 | |
---|---|---|
EnableSessionEvents | 1:全局启用事件检测;0:全局禁用事件检测(默认值数据)。 | |
EnableAccountChangeEvents | 1:启用用户帐户修改的检测;0:禁用用户帐户修改的检测(默认值数据)。 | |
EnableAppChangeEvents | 1:启用应用程序安装和卸载的检测;0:禁用应用程序安装和卸载的检测(默认值数据)。 | |
EnableAppFaultEvents | 1:启用应用程序故障的检测;0:禁用应用程序故障的检测(默认值数据)。 | |
EnableAppLaunchEvents | 1:启用仅限应用程序启动的检测;2:启用应用程序启动和结束的检测;0:禁用应用程序启动和结束的检测(默认值数据)。 | |
AppMonitorList | 指定要监视的目标应用程序。默认情况下,不指定任何应用程序,这意味着默认情况下不会捕获任何应用程序。 | |
EnableCDMUSBDriveEvents | 1:启用 CDM 映射的 USB 大容量存储设备的插入的检测;0:禁用 CDM 映射的 USB 大容量存储设备的插入的检测(默认值数据)。 | |
EnableClipboardEvents | 1:启用剪贴板活动的检测;0:禁用剪贴板活动的检测(默认值数据)。 | |
EnableFileOperationMonitorEvents | 1:启用检测文件操作;0:禁用检测文件操作(默认值数据)。 | |
FileOperationMonitorList | 指定要监视的目标文件夹。默认情况下,不指定任何文件夹,这意味着默认不捕获任何文件操作。 | |
EnableGenericUSBDriveEvents | 1:启用通用重定向 USB 大容量存储设备的插入的检测;0:禁用通用重定向 USB 大容量存储设备的插入的检测(默认值数据)。 | |
EnablePerfDataEvents | 1:启用会话数据叠加功能;0:禁用会话数据叠加功能(默认值数据)。 | |
EnablePopupWindowEvents | 1:启用弹出窗口事件的检测;0:禁用弹出窗口事件的检测(默认值数据)。 | |
EnableRDPConnectionEvents | 1:启用 RDP 连接的检测;0:禁用 RDP 连接的检测(默认值数据)。 | |
EnableRegistryOperationMonitorEvents | 1:启用 Windows 注册表修改的检测;0:禁用 Windows 注册表修改的检测(默认值数据)。 | |
RegistryOperationMonitorList | 指定要监视的目标注册表。默认情况下未指定注册表,这意味着默认情况下不会捕获注册表修改。 | |
EnableWebBrowsingActivities | 1:启用检测 Web 浏览活动;0:禁用检测 Web 浏览活动(默认值数据)。 | |
EnablePrintingEvents | 1:启用检测打印活动;0:禁用检测打印活动(默认值数据)。 |
下面是一些兼容方案:
-
如果您的 Session Recording 是新安装的或从 1811 之前的不支持事件检测(日志记录)的版本升级的,并且每个 Session Recording Agent 上的相关注册表值均为默认值。因为默认情况下没有活动事件检测策略,所以不会记录任何事件。
-
如果您的 Session Recording 是从 1811 之前的支持事件检测且在升级之前禁用了该功能的版本升级的,则每个 Session Recording Agent 上的相关注册表值都将保留为默认值。因为默认情况下没有活动事件检测策略,所以不会记录任何事件。
-
如果您的 Session Recording 是从 1811 之前的支持事件检测且在升级之前部分或完全启用了该功能的版本升级的,则每个 Session Recording Agent 上的相关注册表值都将保留为默认值。由于默认情况下没有活动事件检测策略,因此事件检测行为保持不变。
-
如果您的 Session Recording 是从 1811 升级的,则在策略控制台中配置的事件检测(日志记录)策略将继续使用。
警告:
激活系统定义的或自定义的事件检测策略意味着忽略每个 Session Recording Agent 上的相关注册表设置。如果这样做,您将无法再使用注册表设置进行事件检测。