Product Documentation

安全性建议

May 22, 2017

Session Recording 可以部署在一个安全网络中,并由管理员进行访问,因此,Session Recording 非常安全。即开即用部署设计为简单易用,且具有可选择性配置的数字签名和加密等安全功能。

Session Recording 组件之间的通信通过 Internet Information Services (IIS) 以及 Microsoft 消息队列 (MSMQ) 实现。IIS 在每个 Session Recording 组件之间提供网络服务通信链接。MSMQ 提供了可靠的数据传输机制,可用于从 Session Recording Agent 向 Session Recording Server 发送录制的会话数据。

警告

注册表编辑不当会导致严重问题,可能需要重新安装操作系统。Citrix 无法保证因“注册表编辑器”使用不当导致出现的问题能够得以解决。使用“注册表编辑器”需自担风险。在编辑注册表之前,请务必进行备份。

规划部署时,请考虑如下安全性建议:

  • 确保正确隔离企业网络、Session Recording 系统和单台计算机上的不同管理员角色。否则,可能会引发安全威胁,进而可能影响系统功能或导致滥用系统。Citrix 建议将不同的管理员角色分配给不同的人员或帐户,并且不允许常规会话用户拥有 VDA 系统的管理权限。
    • XenApp 和 XenDesktop 管理员不应为已发布应用程序或桌面的任何用户授予 VDA 本地管理员角色。如果必须授予本地管理员角色,请使用 Windows 机制或第三方解决方案保护 Session Recording Agent 组件。
    • 单独分配 Session Recording 数据库管理员和 Session Recording 策略管理员。
    • Citrix 建议您不要将 VDA 管理员权限分配给一般会话用户,特别是使用 Remote PC Access 时。
    • 必须严格保护 Session Recording Server 本地管理帐户的安全。
    • 控制对安装有 Session Recording Player 的计算机的访问权限。请勿向未获得播放器角色授权的用户授予任何播放器计算机的本地管理员角色。禁用匿名访问。
    • Citrix 建议使用物理计算机作为 Session Recording 的存储服务器。
  • 无论数据敏感性如何,Session Recording 均会录制会话图形活动。在某些情形下,可能会不小心录制了敏感数据(包括但不限于用户凭据、隐私信息和第三方屏幕)。请采取以下措施以避免风险:

+ 除非出于具体故障排除的目的,否则请禁用 VDA 的核心内存转储。

要禁用核心内存转储,请执行以下操作:

1. 右键单击我的电脑,然后单击属性
2. 单击高级选项卡,然后单击启动和恢复下的设置
3. 在写入调试信息下选择 (无)

请参阅 Microsoft 文章 https://support.microsoft.com/en-us/kb/307973

+ 会话所有者应通知与会者,在录制桌面会话时,可能会录制线上会议和远程协助软件。

+ 确保登录凭据或安全信息不会出现企业内部发布或使用的所有本地和 Web 应用程序中,也不会由 Session Recording 录制。

+ 在切换到远程 ICA 会话之前,用户应关闭所有可能暴露敏感信息的应用程序。

+ 我们建议仅允许使用自动身份验证方法(例如单点登录、智能卡)访问已发布的桌面或软件即服务 (SaaS) 应用程序。

  • Session Recording 需要某些硬件和硬件基础结构(例如企业网络设备、操作系统)才能正常运行并满足安全要求。在基础结构级别采取措施防止基础结构遭到损害或滥用,并保证 Session Recording 功能安全、可靠。
    • 正确保护支持 Session Recording 的网络基础结构并保证该基础结构始终可用。
    • Citrix 建议使用第三方安全解决方案或 Windows 机制来保护 Session Recording 组件。Session Recording 组件包括:
      • 在 Session Recording Server 上
        • 进程:SsRecStoragemanager.exe 和 SsRecAnalyticsService.exe
        • 服务:CitrixSsRecStorageManager 和 CitrixSsRecAnalyticsService
        • 所有文件均位于 Session Recording Server 安装文件夹中
        • 注册表项位于 HOTKEY_LOCAL_MACHINE\Software\Citrix\SmartAuditor\Server 下
      • 在 Session Recording Agent 上
        • 进程:SsRecAgent.exe
        • 服务:CitrixSmAudAgent
        • 所有文件均位于 Session Recording Agent 安装文件夹中
        • 注册表项位于 HOTKEY_LOCAL_MACHINE\Software\Citrix\SmartAuditor\Agent 下
  • 在 Session Recording Server 上为消息队列 (MSMQ) 设置访问控制列表 (ACL) 以限制可向 Session Recording Server 发送 MSMQ 数据的 VDA 或 VDI 计算机,并防止未授权的计算机向 Session Recording Server 发送数据。 

1) 在启用了 Session Recording 的每个 Session Recording Server 以及 VDA 或 VDI 计算机上安装服务器功能目录服务器集成,然后重新启动消息队列服务。

2) 从每个 Session Recording Server 上的 Windows 开始菜单打开管理工具 > 计算机管理

3) 打开服务和应用程序 > 消息队列 > 专用队列

4) 单击专用队列 citrixsmauddata 以打开属性页面,然后选择安全性选项卡。

localized image

5) 添加要向此服务器发送 MSMQ 数据的计算机或 VDA 安全组,并为其授予发送消息权限。

localized image
  • 正确保护 Session Record Server 和 Session Recording Agent 的事件日志。建议使用 Windows 或第三方远程日志记录解决方案来保护事件日志,或者将事件日志重定向到远程服务器。 
  • 确保运行 Session Recording 组件的服务器在物理上是安全的。如有可能,请将这些计算机锁在一个安全的房间内,只有授权人员能够直接取用。
  • 隔离在单独子网或域上运行 Session Recording 组件的服务器。
  • 在 Session Recording Server 与其他服务器之间安装防火墙,防止访问其他服务器的用户访问录制的会话数据。
  • 安装 Microsoft 提供的最新安全更新,保持 Session Recording Admin Server 和 SQL 数据库为最新版本。
  • 限制非管理员登录到管理计算机。
  • 严格限制授权人员更改录制策略及查看录制的会话。
  • 安装数字证书,使用 Session Recording 文件签名功能,并在 IIS 中设置 TLS 通信。
  • 通过将 Session Recording Agent 属性中列出的 MSMQ 协议设置为 HTTPS,设置 MSMQ 使用 HTTPS 作为传输协议。有关详细信息,请参阅 MSMQ 故障排除
  • 在 Session Recording Server 和 Session Recording 数据库上使用 TLS 1.1 或 TLS 1.2(推荐)并禁用 SSLv2、SSLv3、TLS 1.0。有关详细信息,请参阅 Microsoft 文章 http://support.microsoft.com/default.aspx?scid=kb;en-us;187498

    在 Session Recording Server 和 Session Recording 数据库上禁用 TLS 的 RC4 密码套件:
  1. 使用 Microsoft 组策略编辑器,导航到计算机配置 > 管理模板 > 网络 > SSL 配置设置
  2. SSL 密码套件顺序策略设置为启用。默认情况下,此策略设置为未配置。  
  3. 删除任何 RC4 密码套件。
  • 使用播放保护功能。播放保护是一项 Session Recording 功能,在文件下载到 Session Recording Player 前对文件进行加密。默认情况下,此选项处于启用状态,且位于 Session Recording Server 属性中。
  • 按照加密密钥长度和加密算法的 NSIT 指南进行操作。
  • 为 Session Recording 配置 TLS 1.2 支持。
    • Citrix 建议使用 TLS 1.2 作为通信协议,以确保 Session Recording 组件的端到端安全性。
      要配置 Session Recording 的 TLS 1.2 支持,请执行以下操作:
    1. 登录托管 Session Recording Server 的计算机,安装合适的 SQL Server 客户端组件和驱动程序,并为 .NET Framework(版本 4 或更高版本)设置强加密
      a. 为 SQL Server 安装 Microsoft ODBC 驱动程序 11(或更高版本)。
      b. 应用 .NET Framework 的最新修补程序汇总。
      c. 根据您的 .NET Framework 版本安装 ADO.NET - SqlClient。有关详细信息,请参阅 https://support.microsoft.com/en-us/kb/3135244
      d. 在 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NetFramework\v4.0.30319 和 HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NetFramework\v4.0.30319 下添加 DWORD 值 SchUseStrongCrypto = 1。
      e. 重新启动计算机。
    2. 登录托管 Session Recording 策略控制台的计算机以应用 .NET Framework 的最新修补程序汇总,并为 .NET Framework(版本 4 或更高版本)设置强加密。用于设置强加密的方法与子步骤 1-d 和 1-e 相同。如果您选择在与 Session Recording Server 相同的计算机上安装 Session Recording 策略控制台,则可以忽略这些步骤。

要为 SQL Server 2016 之前的版本配置 TLS 1.2 支持,请参阅 https://support.microsoft.com/en-us/kb/3135244。要利用 TLS 1.2,请将 HTTPS 配置为 Session Recording 组件的通信协议。

有关配置 Session Recording 安全功能的信息,请参阅知识库文章 CTX200868