使用统一端点管理解决方案配置 Citrix Workspace 应用程序

支持使用统一端点管理解决方案进行应用商店配置

适用于 Android 的 Citrix Workspace 应用程序现在支持使用统一端点管理解决方案远程配置您的 Workspace 应用商店 URL。作为管理员,您可以使用统一端点管理解决方案,通过基于 AppConfig 的键值对远程管理应用商店 URL。

要使用统一端点管理解决方案配置您的 Workspace 应用商店 URL,请执行以下步骤:

使用统一端点管理解决方案配置您的应用商店

Android 版 Citrix Workspace 应用程序支持使用统一端点管理解决方案远程配置您的 Workspace 应用商店 URL。

要使用现有统一端点管理解决方案远程配置您的 Workspace 应用商店 URL,请执行以下步骤:

  1. 登录到您的统一端点管理解决方案提供商。
  2. 为您的应用程序创建应用配置策略。
  3. 将键值对添加到 JSON 属性列表并填写以下值:

    • 键: 网址
    • 值类型: 字符串
    • 值: 您的应用商店地址(例如,prodcwa.cloud.com)

    注意:

    • 出于演示目的,本示例中使用 Microsoft Intune 作为统一端点管理解决方案。显示的 UI 会因您的统一端点管理解决方案提供商而异。

    英特云

限制条件

  • 如果已设置云商店,并且管理员配置了新的云商店,则您现有的云商店以及任何相关数据或设置都将被删除。您将收到通知,告知您 Citrix Workspace 中的删除操作。然后,您必须重新登录,以便将新的云商店添加到 Citrix Workspace。
  • 要应用新配置,您必须关闭并重新打开 Citrix Workspace 应用程序。

支持配置商店类型

从 23.6.0 版本开始,适用于 Android 的 Citrix Workspace 应用程序支持使用基于 AppConfig 的键值对来配置商店类型,以配置 Citrix Workspace 应用程序。现在,管理员可以控制应用程序的显示方式。

以下是需要配置的键值对:

  • 键: 存储类型
  • 值类型: 整数
  • 值:

    ◈ 如果设置为 1(默认),用户可以查看本机或默认商店加载。 ◈ 如果设置为 2,用户可以在 Web 界面中查看商店。

注意:

此功能不需要进行任何启用操作。

使用统一端点管理解决方案控制商店配置

适用于 Android 的 Citrix Workspace 应用程序从 23.4.5 版本开始支持使用统一端点管理解决方案远程配置 Workspace Store URL。作为管理员,您可以使用统一端点管理解决方案,通过基于 AppConfig 的键值对远程管理商店 URL。

有关详细信息,请参阅使用统一端点管理解决方案支持商店配置。

从 23.7.5 版本开始,管理员可以配置最终用户是否可以使用基于 AppConfig 的键值对修改商店 URL:

  • 键: 限制用户存储修改
  • 值类型: 布尔值
  • 值:

    ◈ 如果设置为 true,最终用户无法修改商店(添加、删除或编辑)。

    ◈ 如果设置为 false,最终用户可以修改商店。

注意:

如果标志 restrict_user_store_modification 设置为 true,所有现有商店都将被删除,然后添加新的统一端点管理配置的商店。

通过统一端点管理解决方案进行屏幕截图检测和阻止

从 23.10.0 版本开始,管理员可以阻止最终用户在 Citrix Workspace 应用程序级别截取屏幕截图。此功能可防止敏感或私人信息泄露。管理员可以使用基于 AppConfig 的键值对配置此功能:

  • 键: 限制截图
  • 值类型: 布尔值
  • 值:

    ◈ 如果设置为 true,最终用户无法截取屏幕截图。

    ◈ 如果设置为 false,最终用户可以截屏。

通过统一端点管理推送 Citrix Workspace 应用程序设置

以前,您可以在 Citrix Workspace 应用程序中配置商店 URL。

从本版本开始,您可以通过部署在您的基础架构中的任何统一端点管理 (UEM) 解决方案工具,在托管设备上配置 Citrix Workspace 应用程序设置。

注意:

作为管理员,如果您可以选择使用 UEM 和全局应用程序配置服务 (GACS) 配置 Citrix Workspace 应用程序设置,则 UEM 始终优先于 GACS。

配置设置

以下 JSON 数据是来自 MS Intune 的示例,显示了如何配置此功能。

{
    "kind": "androidenterprise#managedConfiguration",
    "productId": "app:com.citrix.Receiver",
    "managedProperty": [
        {
            "key": "stores",
            "valueBundleArray": [
                {
                    "managedProperty": [
                        {
                            "key": "url",
                            "valueString": ""
                        },
                        {
                            "key": "storeType",
                            "valueInteger": 1
                        },
                        {
                            "key": "displayName",
                            "valueString": ""
                        }
                    ]
                }
            ]
        },
        {
            "key": "url",
            "valueString": "prodcwa.cloud.com"
        },
        {
            "key": "storeType",
            "valueInteger": 1
        },
        {
            "key": "displayName",
            "valueString": ""
        },
        {
            "key": "restrict_user_store_modification",
            "valueBool": false
        },
        {
            "key": "restrictScreenshot",
            "valueBool": true
        },
        {
            "key": "appSettings",
            "valueBundleArray": [
                {
                    "managedProperty": [
                        {
                            "key": "name",
                            "valueString": ""
                        },
                        {
                            "key": "value",
                            "valueString": ""
                        },
                        {
                            "key": "userOverride",
                            "valueBool": false
                        }
                    ]
                }
            ]
        }
    ]
}

<!--NeedCopy-->

键值对表格

以下表格提供了键值对的详细信息:

设置 详细描述 键 值 值类型 Default Value
音频 允许用户控制应用或桌面中的音频和麦克风连接。 音频录制设置键 播放和录制 字符串 播放和录制
预测文本 在用户键入时启用文本建议。 预测文本 否 布尔值 否
扩展键盘设置 在会话中启用对扩展键盘的支持。 显示扩展键盘 真 布尔值 真
通用 USB 重定向 启用将任意 USB 设备从客户端设备自动重定向到 VDA。 自动 USB 真 布尔值 假
会话断开连接用户确认(退出前询问) 提示确认对话框,允许用户在断开任何会话之前进行确认。 退出前询问 真 布尔值 真
剪贴板重定向 (Clipboard) 允许用户在会话中使用剪贴板操作,例如剪切、复制和粘贴。 剪贴板访问 真 布尔值 假
自适应传输 (EDT) 启用 Enlightened Data Transport 作为优于 TCP 的首选协议,以优化数据传输。 EDT 设置 真 布尔值 真
屏幕显示方向 允许用户根据设备的放置位置来选择屏幕的显示方向。 显示屏幕方向键 横向模式 字符串 自动模式
保持显示开启 保持显示器处于活动状态并屏幕常亮。 屏幕常亮键 真 布尔值 假
严格证书验证功能 对服务器证书验证实施更严格的控制。 strictcertificatevalidation 真 布尔值 否
旧版应用商店访问 允许用户访问应用商店的较早版本。 allowlegacystoreaccess 是 布尔值 否
实时媒体引擎 启用对高清音频和视频通话的支持。 RTMEAccess 是 布尔值 否
自动 USB 重定向 启用将任意 USB 设备从客户端设备自动重定向到 VDA。 自动USB 真 布尔值 假
网络监控相关消息 禁用提供网络性能详细信息的警报消息。 禁用通道监控警告 假 布尔值 假
扩展的键 用于会话键盘的快捷方式。 键映射 [“strAltTab”, “strAlt”, “strBackspace”, “strAltF4”] 多列表 空
会话分辨率 允许用户选择屏幕分辨率。 会话分辨率键 [“Fit screen”; “Match server”; “Optimize for high resolution”; “Optimize for metro apps”] 多列表 “匹配客户端 DPI”
显示方向设置 允许用户选择应用程序的显示方向。 显示方向配置键 [“Automatic”; “Portrait mode”; “Landscape mode”;] 多列表 “自动”

以下是一个 JSON 数据示例。此示例显示了不同的设置值,例如:

  • 布尔值
  • 整数
  • 字符串
  • 字符串列表
{
    "kind": "androidenterprise#managedConfiguration",
    "productId": "app:com.citrix.Receiver",
    "managedProperty": [
        {
            "key": "stores",
            "valueBundleArray": [
                {
                    "managedProperty": [
                        {
                            "key": "url",
                            "valueString": ""
                        },
                        {
                            "key": "storeType",
                            "valueInteger": 1
                        },
                        {
                            "key": "displayName",
                            "valueString": ""
                        }
                    ]
                }
            ]
        },
        {
            "key": "url",
            "valueString": "your_store_url"
        },
        {
            "key": "storeType",
            "valueInteger": 1
        },
        {
            "key": "displayName",
            "valueString": ""
        },
        {
            "key": "restrict_user_store_modification",
            "valueBool": false
        },
        {
            "key": "restrictScreenshot",
            "valueBool": true
        },
        {
            "key": "appSettings",
            "valueBundleArray": [
                {
                    "managedProperty": [
                        {
                            "key": "name",
                            "valueString": "showExtendedKeyboard"
                        },
                        {
                            "key": "value",
                            "valueString": "false"
                        },
                        {
                            "key": "userOverride",
                            "valueBool": false
                        }
                    ]
                },
                {
                    "managedProperty": [
                        {
                            "key": "name",
                            "valueString": "enterRegion"
                        },
                        {
                            "key": "value",
                            "valueString": "-40"
                        },
                        {
                            "key": "userOverride",
                            "valueBool": false
                        }
                    ]
                },
                {
                    "managedProperty": [
                        {
                            "key": "name",
                            "valueString": "displayOrientationKey"
                        },
                        {
                            "key": "value",
                            "valueString": "Landscape mode"
                        },
                        {
                            "key": "userOverride",
                            "valueBool": false
                        }
                    ]
                },
                {
                    "managedProperty": [
                        {
                            "key": "name",
                            "valueString": "askBeforeExiting"
                        },
                        {
                            "key": "value",
                            "valueString": "true"
                        },
                        {
                            "key": "userOverride",
                            "valueBool": false
                        }
                    ]
                },
                {
                    "managedProperty": [
                        {
                            "key": "name",
                            "valueString": "key_map"
                        },
                        {
                            "key": "value",
                            "valueString": "['strAltTab','strAlt','strBackspace','strAltF4']"
                        },
                        {
                            "key": "userOverride",
                            "valueBool": true
                        }
                    {
                    "managedProperty": [
                        {
                            "key": "sessionResolutionKey",
                            "valueString": "key_map"
                        },
                        {
                            "key": "value",
                            "valueString": "['Fit screen'; 'Match server'; 'Optimize for high resolution'; 'Optimize for metro apps';]"
                        },
                        {
                            "key": "userOverride",
                            "valueBool": true
                        }
                    ]
                    }

                    {
                    "managedProperty": [
                        {
                            "key": "displayOrientationKey",
                            "valueString": "key_map"
                        },
                        {
                            "key": "value",
                            "valueString": "['Automatic'; 'Portrait mode'; 'Landscape mode';]"
                        },
                        {
                            "key": "userOverride",
                            "valueBool": true
                        }
                    ]
                    }
                    ]
                }
            ]
        }
    ]
}
<!--NeedCopy-->

使用 UEM 添加多个应用商店

管理员现在可以使用统一端点管理 (UEM) 解决方案为托管的 Android 设备配置多个应用商店。

每个应用商店的详细信息都可以添加到 JSON 文件中。然后,可以在配置应用程序配置策略时上传此 JSON 文件。详细信息包括:

  • 应用商店 URL
  • 应用商店类型(可选)

    注意:

    如果未提供应用商店类型,则默认界面被视为本机界面。

  • 应用商店名称(可选)

注意:

UEM 支持一个云应用商店和多个本地应用商店。

JSON 文件必须采用键值格式。有关详细信息,请参阅以下示例 JSON 数据:

注意:

示例 JSON 数据与 Microsoft Intune 相关。其他 UEM 解决方案的 JSON 数据可能有所不同。

{
    "kind": "androidenterprise#managedConfiguration",
    "productId": "app:com.citrix.Receiver",
    "managedProperty": [
        {
            "key": "stores",
            "valueBundleArray": [
                {
                    "managedProperty": [
                        {
                            "key": "url",
                            "valueString": "test.cloud.com"
                        },
                        {
                            "key": "storeType",
                            "valueInteger": 1
                        },
                        {
                            "key": "displayName",
                            "valueString": "1"
                        }
                    ]
                },
                {
                    "managedProperty": [
                        {
                            "key": "url",
                            "valueString": "test2.cloud.com"
                        },
                        {
                            "key": "storeType",
                            "valueInteger": 2
                        },
                        {
                            "key": "displayName",
                            "valueString": "2"
                        }
                    ]
                }
            ]
        },
        {
            "key": "restrict_user_store_modification",
            "valueBool": false
        }
    ]
}
<!--NeedCopy-->

注意:

  • (默认) 如果整数设置为 1,用户可以查看本机或默认应用商店加载。

  • 如果整数设置为 2,用户可以在 Web 界面中查看应用商店。

要上传包含应用商店配置的 JSON 文件,请从“配置设置格式”下拉列表中选择“输入 JSON 数据”。

创建应用配置策略

Android 设备的持久客户端名称

在以前的版本中,每次设备恢复出厂设置并重新安装应用程序时,适用于 Android 的 Citrix Workspace 应用程序都会动态重新生成终端服务 (TS) 客户端名称(例如 roid-XXXXXX)。此过程给依赖客户端名称进行资源访问(例如打印机分配)的组织带来了问题。用户丢失了他们的打印机配置,不得不再次请求访问,这给用户和 IT 管理员带来了额外的工作。

25.11.0 版保持相同的 TS 客户端名称,或者使用稳定的设备标识符(例如序列号)或用户信息可预测地生成它。此增强功能显著减少了管理开销。

优势

  • 一致的资源访问:设备重置后,用户保留其分配的打印机访问权限和其他配置。
  • 减少管理开销:设备重新注册后,IT 团队无需再重新配置打印机访问权限或其他设置。
  • 改善用户体验:用户体验更流畅,不会丢失设置。
  • 增强可扩展性:组织可以更高效地在移动设备上扩展其 Citrix 部署。

管理员可以通过 MDM 或 UEM 解决方案(例如 Intune、CEM)或 GACS 配置或覆盖客户端名称,以实现灵活性和控制。

配置方法概述

配置的方法 描述信息 配置的语法
MDM/UEM 解决方案 允许管理员使用 MDM/UEM 系统(例如 XenMobile、Intune)预定义或覆盖客户端名称 { "clientName": "Any String" }
加克斯 支持通过 Citrix GACS 部署进行配置 { "clientName": "Any String" }

使用移动设备管理 (MDM) 和全局应用配置服务 (GACS) 更智能地控制重新连接警报

从 26.3.0 版本开始,您可以使用移动设备管理 (MDM) 和全局应用配置服务 (GACS) 在 SR/ACR 过期后更智能地控制重新连接警报对话框。

当互联网连接丢失且应用尝试重新连接时,应用会触发会话可靠性 (SR) 和自动客户端重新连接 (ACR)。如果会话在 SR/ACR 过期前未能恢复,应用会显示一个重新连接警报对话框,提示用户重新连接。

移动设备管理 (MDM) 和全局应用配置服务 (GACS) 现在可以控制此重新连接警报对话框。MDM 和 GACS 策略决定在 SR 和 ACR 都过期后系统是否显示重新连接警报对话框。

当会话因会话可靠性 (SR) 或自动客户端重新连接 (ACR) 过期而结束时,应用会遵循移动设备管理和全局应用配置服务策略来决定是否显示重新连接警报对话框。

Administrators configure this behavior using the settings_manual_reconnect key:

  • Key: settings_manual_reconnect

  • 类型: 布尔值(true 或 false)

行为:

  • settings_manual_reconnect = true

    • 当会话因 SR-ACR 到期而结束时,应用程序会显示“重新连接警报”对话框,允许用户手动决定是否重新连接。

    • 注意: 仅当内部(通过功能标志)也启用了相应功能时,才会显示此对话框。

  • settings_manual_reconnect = false

    • 在这种情况下,应用程序不会显示“重新连接警报”对话框,而是终止会话。

    此设置允许管理员集中控制用户是否看到“重新连接警报”对话框,从而根据其环境定制重新连接体验。

更清晰、更友好的重新连接消息

当应用程序尝试重新连接时,用户会看到上下文感知消息,这些消息解释了会话中断的原因以及应用程序正在执行的操作。此增强功能使体验更加透明并减少了混淆。

示例:

  • 网络中断

    “网络中断。正在尝试重新连接 00:30”

    当连接问题导致会话中断且应用程序尝试恢复会话时,应用程序会显示此消息。

  • 设备已锁定

    “您的设备已锁定。正在尝试重新连接,剩余 00:30”

    当会话因设备锁定而中断,且应用程序尝试恢复会话时,应用程序会显示此消息。

  • 应用程序在后台运行时间过长

    “应用程序已移至后台。正在尝试重新连接,剩余 00:30”

    当应用程序在后台运行时间过长导致会话中断,并且应用程序重新建立连接时,会显示此消息。

  • 回退(通用)错误

    “连接已断开。正在尝试重新连接,剩余 00:30”

    当断开连接的确切原因未知,但应用程序仍尝试重新连接时,应用程序会使用此消息。

移动设备管理 (MDM) 嵌套 JSON 配置支持

从 2603 版本开始,适用于 Android 的 Citrix Workspace 应用程序支持用于移动设备管理 (MDM) 配置的嵌套 JSON 结构,并符合 AppConfig (appconfig.org) 准则。组织可以为高级用例定义结构化、分层的配置值,遵循两个平台上托管应用程序配置的行业标准。

您的 MDM 提供商的功能决定了嵌套 JSON 支持。应用程序可以正确解析和应用嵌套 JSON 有效负载,但某些 MDM 解决方案并未完全支持或正确交付嵌套 JSON 结构作为其 AppConfig 实现的一部分。

如果您需要嵌套 JSON 配置并遇到以下问题:

  • 配置值没有按照预期的方式应用
  • 嵌套键被扁平化、忽略或拒绝
  • 保存或部署 AppConfig 有效负载时出错

直接联系您的 MDM 提供商,以确认他们对嵌套 JSON AppConfig 有效负载的支持程度,以及任何适用的限制或所需的格式。

支持的配置架构和密钥与 AppConfig 标准保持一致,并且当您使用完全支持嵌套 JSON 交付的 MDM 解决方案时,无需进行应用程序端更改。