安全性

App Protection

免责声明

App Protection 策略通过筛选对基础操作系统所需功能的访问来运行。需要特定的 API 调用才能捕获屏幕或按下键盘。此功能意味着 App Protection 策略甚至可以针对自定义的专用黑客工具提供保护。但是,随着操作系统的发展,捕获屏幕和记录键盘的新方法可能会出现。虽然我们会继续识别和解决这些问题,但我们无法保证在特定配置和部署中提供充足的保护。

App Protection 是一项附加功能,可以在使用 Citrix Virtual Apps and Desktops 时提供增强的安全性。该功能限制了客户端受键盘记录和屏幕捕获恶意软件影响的能力。App Protection 可防止泄露屏幕上显示的用户凭据和敏感信息等机密信息。该功能可防止用户和攻击者截取屏幕截图以及使用键盘记录器收集和利用敏感信息。

备注:

  • 使用 tarball、Debian 和 Red Hat Package Manager (RPM) 软件包安装 Citrix Workspace 应用程序时支持此功能。此外,x64 和 ARMHF 是唯一受支持的体系结构。
  • 此功能在 Citrix Virtual Apps and Desktops 的本地部署中受支持。此外,在将 Citrix Virtual Apps and Desktops 服务与 StoreFront 结合使用的部署中。

App Protection 功能要求您在许可证服务器上安装附加许可证。还必须存在 Citrix Virtual Desktops 许可证。有关许可的详细信息,请参阅 Citrix Virtual Apps and Desktops 中的配置部分。

自版本 2108 起,App Protection 功能现已完全起作用。App Protection 功能支持应用程序和桌面会话,并且默认处于启用状态。但是,您必须在 AuthManConfig.xml 文件中配置 App Protection 功能,才能对身份验证管理器和自助服务插件界面启用该功能。

自本版本起,您可以在 Mozilla Firefox 运行期间从 Citrix Workspace 应用程序中启动受保护的资源。

必备条件:

App Protection 功能最适合以下操作系统以及 Gnome Display Manager:

  • 64 位 Ubuntu 18.04、Ubuntu 20.04 和 Ubuntu 22.04
  • 64 位 Debian 9 和 Debian 10
  • 64 位 CentOS 7
  • 64 位 RHEL 7
  • ARMHF 32 位 Raspberry Pi OS(基于 Debian 10 (buster))
  • ARM64 Raspberry Pi OS(基于 Debian 11 (bullseye))

注意:

如果您使用的 Citrix Workspace 应用程序早于 2204 版,App Protection 功能将不支持使用 glibc 2.34 或更高版本的操作系统。

如果在使用 glibc 2.34 或更高版本的操作系统中安装启用了 App Protection 功能的 Citrix Workspace 应用程序,操作系统引导在重新启动系统时可能会失败。要从操作系统引导失败进行恢复,请执行以下任意操作:

  • 重新安装操作系统。但是,我们不支持在使用 glibc 2.34 或更高版本的操作系统中启用 App Protection 功能。
  • 转至操作系统恢复模式,然后使用终端卸载 Citrix Workspace 应用程序。
  • 通过实时操作系统进行引导,并从现有操作系统中删除 rm -rf /etc/ld.so.preload 文件。

安装 App Protection 组件:

使用 tarball 软件包安装 Citrix Workspace 应用程序时,将显示以下消息。

“是否要安装 App Protection 组件? 警告: 不能禁用此功能。必须卸载 Citrix Workspace 应用程序,才能将其禁用。有关详细信息,请与系统管理员联系。[default $INSTALLER_N]:”

输入 Y 以安装 App Protection 组件。

默认情况下,不安装 App Protection 组件。

重新启动计算机以使更改生效。只有在您重新启动计算机后,App Protection 功能才能按预期运行。

安装 RPM 软件包中的 App Protection 组件:

自版本 2104 起,Citrix Workspace 应用程序的 RPM 版本支持 App Protection 功能。

要安装 App Protection 组件,请执行以下操作:

  1. 安装 Citrix Workspace 应用程序。
  2. 从 Citrix Workspace 应用程序安装程序中安装 App Protection ctxappprotection<version>.rpm 软件包。
  3. 重新启动系统以使更改生效。

安装 Debian 软件包中的 App Protection 组件:

自版本 2101 起,Citrix Workspace 应用程序的 Debian 版本支持 App Protection 功能。

要无提示安装 App Protection 组件,请在安装 Citrix Workspace 应用程序之前从终端运行以下命令:

export DEBIAN_FRONTEND="noninteractive"
sudo debconf-set-selections <<< "icaclient app_protection/install_app_protection select yes"

sudo debconf-show icaclient
* app_protection/install_app_protection: yes

sudo apt install -f ./icaclient_<version>._amd64.deb
<!--NeedCopy-->

自版本 2106 起,Citrix Workspace 应用程序引入了一个选项,用于同时为身份验证管理器和自助服务插件界面分别配置反键盘记录和反屏幕捕获功能。

为身份验证管理器配置 App Protection:

请按如下所示导航到 $ICAROOT/config/AuthManConfig.xml 并编辑该文件:


/opt/Citrix/ICAClient/config$ cat AuthManConfig.xml | grep -i authmananti -A 1
    <key>AuthManAntiScreenCaptureEnabled</key>
    <value>true</value>
    <key>AuthManAntiKeyLoggingEnabled</key>
    <value>true</value>

<!--NeedCopy-->

为自助服务插件界面配置 App Protection:

请按如下所示导航到 $ICAROOT/config/AuthManConfig.xml 并编辑该文件:


/opt/Citrix/ICAClient/config$ cat AuthManConfig.xml | grep -i protection -A 4
<!-- Selfservice App Protection configuration -->
    <Selfservice>
      <AntiScreenCaptureEnabled>true</AntiScreenCaptureEnabled>
      <AntiKeyLoggingEnabled>true</AntiKeyLoggingEnabled>
    </Selfservice>

<!--NeedCopy-->

已知问题:

  • 最小化受保护的屏幕时,App Protection 将继续在后台运行。

限制:

  • 有时,如果从 Snap Store 中安装的应用程序正在运行,则不能启动受保护的资源。解决方法:识别 Citrix Workspace 应用程序日志文件中导致出现此问题的应用程序。另外,关闭应用程序。
  • 当您尝试创建受保护窗口的屏幕截图时,整个屏幕(包括后台中未受保护的应用程序)将显示为灰色。

Citrix Workspace 应用程序的不活动超时

不活动超时功能会根据管理员设置的值将您从 Citrix Workspace 应用程序中注销。自 2303 版本及更高版本起,管理员可以指定在用户自动注销 Citrix Workspace 应用程序之前允许的空闲时间量。在 Citrix Workspace 应用程序窗口中,如果鼠标、键盘或触控在指定的时间间隔内没有发生任何活动,系统会自动将您注销。不活动超时不会影响已在运行的 Citrix Virtual Apps and Desktops 和 Citrix DaaS 会话或 StoreFront 应用商店。

不活动超时值可以设置为从 10 分钟到 1440 分钟。更改此超时值的时间间隔必须为 5 的倍数。例如:10、15、20 或 25 分钟。默认情况下,不配置不活动超时。

注意:

此功能仅适用于云部署。

作为必备条件,您必须在 AuthManConfig.xml 文件中启用此功能。导航到 $ICAROOT/config/AuthManConfig.xml 并添加以下条目:

<key>ITOEnabled</key>
<value>true</value>
<!--NeedCopy-->

管理员可以使用 PowerShell 模块配置 inactivityTimeoutInMinutes 属性。

在客户端计算机上配置 InactivityTimeoutInMinutes 的步骤:

  1. 下载 Configuring Citrix Workspace using PowerShell module(使用 PowerShell 配置 Citrix Workspace 模块)。
  2. 必须生成 API 客户端 ID 和密钥才能使用该模块。有关获取凭据和开始使用 Citrix Cloud API 的详细信息,请参阅 Get started with Citrix Cloud APIs(Citrix Cloud API 入门)。
  3. 要导入此模块,请将 Citrix.Workspace.StoreConfigs 目录的路径传递给 Import-Module cmdlet,也就是说,从包含此文件的目录中运行 Import-Module ./Citrix.Workspace.StoreConfigs
  4. 导入该模块后,运行 Get-Help -Full 以获取特定 cmdlet 的帮助。例如: Get-Help Set-WorkspaceCustomConfigurations -Full
  5. 例如,请运行以下命令以将 inactivityTimeoutInMinutes 设置为 1 小时:

    Set-WorkspaceCustomConfigurations -WorkspaceUrl -ClientId -ClientSecret -InactivityTimeoutInMinutes "60"
    <!--NeedCopy-->
    

    您无需在所有客户端上运行上述命令;必须尽运行一次并进行测试。

最终用户体验如下:

  • 在您注销前三分钟将显示一条通知,提示一个用于保持登录或注销的选项。
  • 用户可以单击保持登录消除通知并继续使用应用程序,在这种情况下,不活动计时器将重置为已配置的值。也可以单击注销结束当前应用商店的会话。

注意:

不活动超时功能不支持以 Wayland 作为默认图形协议的发行版。对于包含 Wayland 的发行版,请取消以下任一内容的注释:/etc/gdm/custom.conf/etc/gdm3/custom.conf 中的 WaylandEnable=false

永久登录

在 Citrix Workspace 应用程序 2303 及更高版本中,永久登录功能允许您在管理员配置的持续时间(2 - 365 天)内保持登录状态。启用此功能后,您无需在配置期间提供 Citrix Workspace 应用程序的登录凭据。

借助此功能,单点登录到 Citrix DaaS 会话最多可延长至 365 天。此扩展基于长期令牌的生命周期。默认情况下,您的凭证将缓存 4 天或生命周期,以较短者为准。然后,当您在这 4 天内通过连接到 Citrix Workspace 应用程序激活时延长。

配置永久登录功能

管理员需要使用以下过程在 Workspace 环境中配置永久登录:

  1. 登录 Citrix Cloud。
  2. 在 Citrix Cloud 控制台中,单击屏幕左上角的菜单。
  3. 选择工作区配置选项 > 自定义 > 首选项
  4. 向下滚动到 Reauthentication Period for Workspace App(Workspace 应用程序的重新身份验证期限)。
  5. 单击 Current Reauthentication Period(当前重新身份验证期限)字段旁边的 Edit(编辑)。
  6. Current Reauthentication Period(当前重新身份验证期限)字段中输入所需的天数。
  7. 必须在 Current Reauthentication Period(当前重新身份验证期限)字段中输入两天或更长时间。

有关详细信息,请参阅下图中“Workspace 应用程序的重新身份验证期限”部分中的说明:

Workspace 应用程序的重新身份验证期限

体验增强的身份验证

永久登录窗口嵌入在自助服务窗口中。

  1. 访问 Citrix Workspace 应用程序。 此时将显示身份验证窗口。

    身份验证窗口

  2. 使用您的凭据登录。 系统会将您重定向到待接受的权限提示。

    权限窗口

  3. 单击 Allow(允许)。

注意:

如果选择拒绝表示同意,您将看到第二个登录提示,并需要每 24 小时登录一次 Citrix Workspace 应用程序。

禁用永久登录功能

管理员可以在 Citrix Cloud UI 中或 AuthManConfig.xml 文件中禁用永久登录功能。 但是,在 AuthManConfig.xml 文件中设置的值将覆盖在 Citrix Cloud UI 中设置的值。

使用 Citrix Cloud UI

  1. 登录 Citrix Cloud。
  2. 在 Citrix Cloud 控制台中,单击屏幕左上角的菜单。
  3. 选择工作区配置选项 > 自定义 > 首选项
  4. 向下滚动到 Reauthentication Period for Workspace App(Workspace 应用程序的重新身份验证期限)。
  5. 单击 Current Reauthentication Period(当前重新身份验证期限)字段旁边的 Edit(编辑)。
  6. Current Reauthentication Period(当前重新身份验证期限)字段中输入 1 天。

使用 AuthManConfig.xml 文件

要禁用永久登录功能,请执行以下操作

  1. 导航到 <ICAROOT>/config/AuthManConfig.xml 文件。
  2. 请按如下所示设置各个值:

    <AuthManLite>
        <primaryTokenLifeTime>1.00:00:00</primaryTokenLifeTime>
        <secondaryTokenLifeTime>0.01:00:00</secondaryTokenLifeTime>
        <longLivedTokenSupport>true</longLivedTokenSupport>
        <nativeLoggingEnabled>true</nativeLoggingEnabled>
        <platform>linux</platform>
        <saveTokens>true</saveTokens>
        <compressedGroupsEnabled>true</compressedGroupsEnabled>
    </AuthManLite>
    <!--NeedCopy-->
    
安全性