教程:安装 Amazon AppStream 2.0 客户端并为您的用户自定义客户端体验
以下部分介绍如何安装 AppStream 2.0 客户端以及如何为用户自定义客户端体验。如果您计划为您的用户下载并安装客户端,请先下载企业部署工具。然后,您可以运行 PowerShell 脚本来远程安装 AppStream 2.0 客户端并配置客户端设置。
内容
- 下载企业部署工具
- 安装 AppStream 2.0 客户端和 USB 驱动程序
- 使用 AppStream 2.0 客户端访问 AppStream 2.0
- 为 AppStream 2.0 客户端用户设置 StartURL 注册表值
- 设置 TrustedDomains 注册表值,为 AppStream 2.0 客户端启用其他域
- 创建 AS2TrustedDomains DNS TXT 记录以便为 AppStream 2.0 客户端启用域,而不更改注册表
- 为受信任域禁用 DNS TXT 记录查找
- 选择是否禁用自动客户端更新
- 选择是否禁用按需诊断日志上传
- 选择是否禁用原生应用程序模式
- 选择是否禁用本地打印机重定向
- 选择是否禁用智能卡重定向
- 为您的用户配置其他 AppStream 2.0 客户端设置
- 使用组策略自定义 AppStream 2.0 客户端体验
下载企业部署工具
企业部署工具包括 AppStream 2.0 客户端安装文件和组策略管理模板。
-
要下载企业部署工具,请在 AppStream 2.0 支持的客户端
页面的右下角,选择企业部署工具链接。该链接打开一个 .zip 文件,其中包含该工具的最新版本所需的文件。 要提取所需的文件,请导航到您将此工具下载到的位置,右键单击 AmazonAppStreamClient_EnterpriseSetup_<version> 文件夹,然后选择 Extract All (全部提取)。该文件夹包含两个安装程序和一个组策略管理模板:
AppStream 2.0 客户端安装程序(AmazonAppStreamClientSetup_<version>.msi)– 安装 AppStream 2.0 客户端。
AppStream 2.0 USB 驱动程序安装程序(AmazonAppStreamUsbDriverSetup_<version>.exe)– 安装将 USB 设备和通过 AppStream 2.0 流式传输的应用程序一起使用所需的 AppStream 2.0 USB 驱动程序。
AppStream 2.0 客户端组策略管理模板(as2_client_config.adm)– 可让您通过组策略配置 AppStream 2.0 客户端。
安装 AppStream 2.0 客户端和 USB 驱动程序
下载 AppStream 2.0 客户端安装文件后,请在用户的计算机上运行以下 PowerShell 脚本,以通过无提示方式安装 AppStream 2.0 客户端安装文件(AppStreamClient.exe)和 USB 驱动程序。
注意
要运行此脚本,您必须使用“Administrator (管理员)”权限登录到适用的计算机。您还可以在启动时在“System (系统)”账户下远程运行脚本。
Start-Process msiexec.exe -Wait -ArgumentList '/i AmazonAppStreamClientSetup_<version>.msi /quiet' Start-Process AmazonAppStreamUsbDriverSetup_<version>.exe -Wait -ArgumentList '/quiet'
在用户的计算机上安装企业部署工具后,AppStream 2.0 客户端将按如下方式安装:
AppStream 2.0 客户端安装文件被复制到用户计算机上的以下路径:C:\Program Files (x86)\Amazon AppStream 2.0 Client Installer\AppStreamClient.exe。
安装企业部署工具后,用户首次登录计算机时,将会安装 AppStream 2.0 客户端。
注意
如果企业部署工具检测到 %localappdata% 中已存在 AppStream2.0 客户端文件夹 AppStreamClient,则该工具不会安装该客户端。
如果用户卸载 AppStream 2.0 客户端,则在您更新 AppStream 2.0 企业部署工具之前,不会再次安装该客户端。
使用 AppStream 2.0 客户端访问 AppStream 2.0
默认情况下,当用户启动 AppStream 2.0 客户端时,他们只能连接到包含一个或多个 AppStream 2.0 域(包含支持连接的 DNS TXT 记录)的 URL。您可以通过执行以下任一操作,允许客户端用户访问 AppStream 2.0 域以外的域:
设置
StartURL
注册表值以指定用户可以访问的自定义 URL,例如组织的登录门户的 URL。设置
TrustedDomains
注册表值以指定用户可以访问的受信任域。创建
AS2TrustedDomains
DNS TXT 记录以指定用户可以访问的受信任域。可利用此方法来避免注册表更改。
注意
AppStream 2.0 客户端和 DNS TXT 记录配置不会阻止用户使用其他连接方法来访问您指定的域或 URL。例如,如果用户具有对域或 URL 的网络访问权限,则可使用 Web 浏览器访问指定的域或 URL。
为 AppStream 2.0 客户端用户设置 StartURL 注册表值
可以使用 StartUrl
注册表值设置当用户启动 AppStream 2.0 客户端时在该客户端中填充的自定义 URL。可以在安装客户端时创建此 HKLM 注册表项,以便用户在启动客户端时无需指定 URL。
安装 AppStream 2.0 客户端后,可以运行以下 PowerShell 脚本来创建此注册表项,也可以使用 AppStream 2.0 客户端企业部署工具中包含的管理模板通过组策略配置客户端。
将 StartUrl
值替换为您的身份提供商 (IdP) 的 URL。该 URL 必须使用受设备信任的证书。这意味着 StartUrl
网页使用的证书必须包含一个包括 URL 的域名的使用者备用名称 (SAN)。例如,如果您的 StartUrl
设置为 https://appstream.example.com,则 SSL 证书必须包含一个包括 appstream.example.com 的 SAN。
注意
要运行此脚本,您必须使用“Administrator (管理员)”权限登录到适用的计算机。您还可以在启动时在“System (系统)”账户下远程运行脚本。
$registryPath="HKLM:\Software\Amazon\AppStream Client" New-Item -Path "HKLM:\Software\Amazon" -Name "AppStream Client" -Force New-ItemProperty -Path $registryPath -Name "StartUrl" -Value "https://www.example.com" -PropertyType String -Force | Out-Null
设置 TrustedDomains 注册表值,为 AppStream 2.0 客户端启用其他域
您可以将 AppStream 2.0 客户端配置为连接到指定的受信任域中的 URL。例如,您可能希望允许用户连接到组织域中的任何 URL,或连接到一个或多个 IdP 域中的任何 URL。在指定 URL 时,使用以下格式:*.example
-idp
.com
。
您可以逗号分隔格式指定受信任域的列表。将此列表作为注册表值添加到 AppStream 2.0 TrustedDomains
HKLM 注册表项。我们建议您在安装 AppStream 2.0 客户端时或使用 Microsoft Active Directory 时,通过组策略创建此注册表项并指定受信任域的列表。这样,您的用户可以在安装客户端后立即连接到任何受信任域中的 URL。
安装 AppStream 2.0 客户端后,您可以运行以下 PowerShell 脚本来创建该注册表项。或者,您可以使用 AppStream 2.0 客户端企业部署工具中包含的管理模板来通过组策略配置客户端。
将 TrustedDomains
值替换为一个或多个组织域或 IdP 域的逗号分隔列表。受信任域网页使用的证书必须包含一个包括 URL 的域的 SAN。例如,如果您的受信任域包含 *.example.com,并且用户指定 https://appstream.example.com,则 SSL 证书必须包含一个包括 appstream.example.com 的 SAN。
注意
要运行此脚本,您必须使用“Administrator (管理员)”权限登录到适用的计算机。您还可以在启动时在“System (系统)”账户下远程运行脚本。
$registryPath="HKLM:\Software\Amazon\AppStream Client" New-Item -Path "HKLM:\Software\Amazon" -Name "AppStream Client" -Force New-ItemProperty -Path $registryPath -Name "TrustedDomains" -Value "*.example1.com, *.example2.com, aws.amazon.com" -PropertyType String -Force | Out-Null
以下是格式化受信任域名的要求和注意事项。
支持以下字符:a-z、0-9、-、*
DNS 会根据 * 字符出现在域名中的位置将它作为通配符或作为星号字符 (ASCII 42) 来处理。以下是在 DNS 记录名称中使用 * 作为通配符时的限制:
* 必须替换域名中最左侧的标签。例如,*.example.com 或 *.prod.example.com。如果在任何其他位置包含 *(例如 prod.*.example.com),DNS 会将其视为星号字符 (ASCII 42),而不是通配符。
* 必须替换整个标签。例如,您不能指定 *prod.example.com 或 prod*.example.com。
* 应用到包含 * 的子域级别以及该子域的所有子域。例如,如果一个条目命名为 *.example.com,则 AppStream 2.0 客户端允许 zenith.example.com、acme.zenith.example.com 和 pinnacle.acme.zenith.example.com。
创建 AS2TrustedDomains DNS TXT 记录以便为 AppStream 2.0 客户端启用域,而不更改注册表
可以通过在组织域或 IdP 域中创建 DNS TXT 记录,来允许用户连接到组织域(例如,*.example.com)中的任何 URL或 IdP 域(例如,*.example-idp.com)中的任何 URL。在创建 DNS TXT 记录时,无需 StartURL
或 TrustedDomains
注册表值即可允许用户连接到 URL。
您可以逗号分隔格式并使用前缀 AS2TrustedDomains=
指定受信任子域的列表。然后,为相应的域创建 DNS TXT 记录。AS2TrustedDomains
DNS TXT 记录只能启用相同的域,或在其中创建 DNS TXT 记录的域的子域。无法使用 DNS TXT 记录启用其他域。
有关设置 DNS 记录的更多信息,请参阅为具有 Route 53 DNS TXT 记录的 AppStream 2.0 客户端启用您的组织域
注意
在创建 DNS TXT 记录时,任何用户均可从未包含在 StartURL
或 TrustedDomains
注册表值的已启用域进行流式传输。AppStream 2.0 客户端和 DNS TXT 记录配置不会阻止用户使用其他连接方法来访问您指定的域或 URL。例如,如果用户具有对域或 URL 的网络访问权限,则可使用 Web 浏览器访问指定的域或 URL。
DNS TXT 记录配置示例
以下是 DNS TXT 记录配置的示例。利用此示例的配置,用户可以启动 AppStream 2.0 客户端并连接到 appstream.example.com 或 appstream-dev.example.com。但是,他们无法连接到 example.com。
-
Domains to enable
– appstream.example.com、appstream-dev.example.com DNS TXT record location
– example.comDNS TXT record value
– AS2TrustedDomains=appstream.example.com,appstream-dev.example.com
要求和注意事项
请记住以下有关创建 DNS TXT 记录的要求和注意事项:
您必须在二级域创建 TXT 记录。例如,如果您的域为 prod.appstream.example.com,则必须在 example.com 创建 DNS TXT 记录。
TXT 记录值必须以
AS2TrustedDomains=
开头支持以下字符:a-z、0-9、-、*
DNS 会根据 * 字符出现在域名中的位置将它作为通配符或作为星号字符 (ASCII 42) 来处理。以下是在 DNS 记录名称中使用 * 作为通配符时的限制:
* 必须替换域名中最左侧的标签。例如,*.example.com 或 *.prod.example.com。如果在任何其他位置包含 *(例如 prod.*.example.com),DNS 会将其视为星号字符 (ASCII 42),而不是通配符。
* 必须替换整个标签。例如,您不能指定 *prod.example.com 或 prod*.example.com。
* 应用到包含 * 的子域级别以及该子域的所有子域。例如,如果一个条目命名为 *.example.com,则 AppStream 2.0 客户端允许与以下域的连接:zenith.example.com、acme.zenith.example.com 和 pinnacle.acme.zenith.example.com。
为受信任域禁用 DNS TXT 记录查找
默认情况下,如果用户启动 AppStream 2.0 并且指定的 URL 不是 AppStream 2.0 域,则客户端将执行 DNS TXT 记录查找。在 URL 的二级域上执行查找,以便客户端能够确定该域是否包含在 AS2TrustedDomains
列表中。此行为允许用户连接到 StartURL
或 TrustedDomains
注册表项中未指定的域,或者 AppStream 2.0 域。
可以通过将 DnsTxtRecordQueryDisabled
注册表项的值设置为 true
来禁用此行为。您可以在安装 AppStream 2.0 客户端时创建此注册表项。这样一来,客户端便只会连接到 StartURL
或 TrustedDomains
注册表项所指定的 URL。
安装 AppStream 2.0 客户端后,您可以运行以下 PowerShell 脚本来创建该注册表项。或者,您可以使用 AppStream 2.0 客户端企业部署工具中包含的管理模板来通过组策略配置客户端。
注意
要运行此脚本,您必须使用“Administrator (管理员)”权限登录到适用的计算机。您还可以在启动时在“System (系统)”账户下远程运行脚本。
$registryPath="HKLM:\Software\Amazon\AppStream Client" New-Item -Path "HKLM:\Software\Amazon" -Name "AppStream Client" -Force New-ItemProperty -Path $registryPath -Name "DnsTxtRecordQueryDisabled" -Value "true" -PropertyType String -Force | Out-Null
选择是否禁用自动客户端更新
默认情况下,当新版本的 AppStream 2.0 客户端可用时,客户端会自动更新到最新版本。您可以通过将 AutoUpdateDisabled
注册表项的值设置为 true
来禁用自动更新。您可以在安装 AppStream 2.0 客户端时创建此注册表项。这样,每当有新版本时,客户端不会自动更新。
安装 AppStream 2.0 客户端后,您可以运行以下 PowerShell 脚本来创建该注册表项。或者,您可以使用 AppStream 2.0 客户端企业部署工具中包含的管理模板来通过组策略配置客户端。
注意
要运行此脚本,您必须使用“Administrator (管理员)”权限登录到适用的计算机。您还可以在启动时在“System (系统)”账户下远程运行脚本。
$registryPath="HKLM:\Software\Amazon\AppStream Client" New-Item -Path "HKLM:\Software\Amazon" -Name "AppStream Client" -Force New-ItemProperty -Path $registryPath -Name "AutoUpdateDisabled" -Value "True" -PropertyType String -Force | Out-Null
选择是否禁用按需诊断日志上传
默认情况下,AppStream 2.0 客户端允许用户按需将诊断日志和小型转储文件上传到 AppStream 2.0(AWS)。此外,如果发生异常或 AppStream 2.0 客户端停止响应,系统将提示用户选择是否要上传小型转储文件和关联的日志。有关按需诊断日志记录的更多信息,请参阅自动和按需诊断日志上传。
可以通过将 UserUploadOfClientLogsAllowed
注册表项的值设置为 false
来禁用这些行为。可以在安装 AppStream 2.0 客户端时创建此 HKLM 注册表项。
安装 AppStream 2.0 客户端后,您可以运行以下 PowerShell 脚本来创建该注册表项。或者,您可以使用 AppStream 2.0 客户端企业部署工具中包含的管理模板来通过组策略配置客户端。
注意
要运行此脚本,您必须使用“Administrator (管理员)”权限登录到适用的计算机。您还可以在启动时在“System (系统)”账户下远程运行脚本。
$registryPath="HKLM:\Software\Amazon\AppStream Client" New-Item -Path "HKLM:\Software\Amazon" -Name "AppStream Client" -Force New-ItemProperty -Path $registryPath -Name "UserUploadOfClientLogsAllowed" -Value "false" -PropertyType String -Force | Out-Null
选择是否禁用原生应用程序模式
默认情况下,AppStream 2.0 客户端可以在经典模式或原生应用程序模式下运行。您可以通过将 NativeAppModeDisabled
注册表项的值设置为 true
,来禁用原生应用程序模式。可以在安装 AppStream 2.0 客户端时创建此 HKLM 注册表项。如果该值设置为 true
,则客户端仅在经典模式下运行。有关原生应用程序模式的信息,请参阅原生应用程序模式。
安装 AppStream 2.0 客户端后,您可以运行以下 PowerShell 脚本来创建该注册表项。或者,您可以使用 AppStream 2.0 客户端企业部署工具中包含的管理模板来通过组策略配置客户端。
注意
要运行此脚本,您必须使用“Administrator (管理员)”权限登录到适用的计算机。您还可以在启动时在“System (系统)”账户下远程运行脚本。
$registryPath="HKLM:\Software\Amazon\AppStream Client" New-Item -Path "HKLM:\Software\Amazon" -Name "AppStream Client" -Force New-ItemProperty -Path $registryPath -Name "NativeAppModeDisabled" -Value "True" -PropertyType String -Force | Out-Null
选择是否禁用本地打印机重定向
默认情况下,AppStream 2.0 客户端允许用户将打印作业从其流应用程序重定向到连接到本地计算机的打印机。您可以通过将 PrinterRedirectionDisabled
注册表项的值设置为 true
,来禁用本地打印机重定向。可以在安装 AppStream 2.0 客户端时创建此 HKLM 注册表项。如果将该值设置为 true
,则客户端不会将打印作业从用户的流应用程序重定向到与本地计算机连接的打印机。
安装 AppStream 2.0 客户端后,您可以运行以下 PowerShell 脚本来创建该注册表项。或者,您可以使用 AppStream 2.0 客户端企业部署工具中包含的管理模板来通过组策略配置客户端。
注意
要运行此脚本,您必须使用“Administrator (管理员)”权限登录到适用的计算机。您还可以在启动时在“System (系统)”账户下远程运行脚本。
$registryPath="HKLM:\Software\Amazon\AppStream Client" New-Item -Path "HKLM:\Software\Amazon" -Name "AppStream Client" -Force New-ItemProperty -Path $registryPath -Name "PrinterRedirectionDisabled" -Value "True" -PropertyType String -Force | Out-Null
选择是否禁用智能卡重定向
默认情况下,为 AppStream 2.0 客户端启用智能卡重定向。启用此功能后,用户可以在 AppStream 2.0 流式传输会话期间使用连接到其本地计算机的智能卡读卡器及其智能卡,而无需 USB 重定向。在 AppStream 2.0 流式传输会话期间,用户的智能卡读卡器和智能卡仍可供本地应用程序使用。客户端将来自用户的流应用程序的智能卡 API 调用重定向到其本地智能卡。您可以通过将 SmartCardRedirectionDisabled
注册表项的值设置为 true
,来禁用智能卡重定向。可以在安装 AppStream 2.0 客户端时创建此 HKLM 注册表项。
如果该值设置为 true
,则在没有 USB 重定向的情况下,您的用户将无法在 AppStream 2.0 流式传输会话期间使用他们的智能卡读卡器和智能卡。在这种情况下,除非您对设备进行认证,否则用户无法使用连接到本地计算机的智能卡登录其流应用程序。在您对设备进行认证后,用户必须与 AppStream 2.0 共享该设备。禁用智能卡重定向后,在用户的 AppStream 2.0 流式传输会话期间,他们的智能卡读卡器和智能卡将无法用于本地应用程序。
安装 AppStream 2.0 客户端后,您可以运行以下 PowerShell 脚本来创建该注册表项。或者,您可以使用 AppStream 2.0 客户端企业部署工具中包含的管理模板来通过组策略配置客户端。
注意
要运行此脚本,您必须使用“Administrator (管理员)”权限登录到适用的计算机。您还可以在启动时在“System (系统)”账户下远程运行脚本。
$registryPath="HKLM:\Software\Amazon\AppStream Client" New-Item -Path "HKLM:\Software\Amazon" -Name "AppStream Client" -Force New-ItemProperty -Path $registryPath -Name "SmartCardRedirectionDisabled" -Value "True" -PropertyType String -Force | Out-Null
为您的用户配置其他 AppStream 2.0 客户端设置
AppStream 2.0 客户端使用注册表项配置以下其他客户端设置:
接受 AppStream 2.0 客户端最终用户许可协议(EULA)
AppStream 2.0 客户端 EULA 版本已接受
适用于 AppStream 2.0 客户端的自动诊断日志上传
用于将 USB 驱动程序传递到 AppStream 2.0 的 USB 驱动程序的自动更新
在 AppStream 2.0 客户端中启用硬件渲染
在 AppStream 2.0 客户端中设置文件系统重定向的自定义文件夹路径
-
在系统默认浏览器中打开身份提供商(IdP)的 URL
下表总结了可用于为用户自定义 AppStream 2.0 客户端体验的其他客户端设置的注册表值。
注意
这些值区分大小写。
值 | 注册表路径 | 类型 | 描述 | 数据 |
---|---|---|---|---|
EULAAccepted |
HKCU\Software\Amazon\Appstream Client |
String | 将此值设置为 true 可代表您的用户接受 AppStream 2.0 客户端 EULA。 |
true /false |
AcceptedEULAVersion |
HKCU\Software\Amazon\Appstream Client |
String | 接受的 EULA 的版本。如果 AppStream 2.0 客户端 EULA 的当前版本不同于接受的 EULA 的版本,系统将提示用户接受 EULA 的当前版本。 | 1.0 |
DiagnosticInfoCollectionAllowed |
HKCU\Software\Amazon\Appstream Client |
String | 将此值设置为 true ,使 AppStream 2.0 能够自动将诊断日志从 AppStream 2.0 客户端发送到 AppStream 2.0(AWS)。 |
true /false |
USBDriverOptIn |
HKCU\Software\Amazon\Appstream Client |
String | 将此值设置为 true 可使 AppStream 2.0 能够自动更新用于将 USB 驱动程序传递到 AppStream 2.0 的 USB 驱动程序。 |
true /false |
HardwareRenderingEnabled |
HKCU\Software\Amazon\Appstream Client |
String | 将此值设置为 true 可在 AppStream 2.0 客户端中启用硬件渲染。 |
true /false |
FileRedirectionCustomDefaultFolders |
HKCU\Software\Amazon\Appstream Client |
String | 将此值设置为包括至少一个用于文件系统重定向的文件夹路径。使用“|”分隔多个文件夹路径。默认情况下,将会指定以下文件夹路径:%USERPROFILE%\Desktop|%USERPROFILE%\Documents|%USERPROFILE%\Downloads | 有效的文件夹路径 |
OpenIdpUrlInSystemBrowser |
HKCU\Software\Amazon\Appstream Client |
String | 将此值设置为 true ,可使 AppStream 2.0 客户端在系统默认浏览器中打开 IdP URL。此功能在客户端版本 1.1.1360 及更高版本上受支持。 |
true /false |
安装 AppStream 2.0 客户端后,您可以运行以下 PowerShell 脚本创建这些注册表项。如果您不想创建所有注册表项,请根据需要修改脚本以仅创建所需的注册表项。或者,您可以使用 AppStream 2.0 客户端企业部署工具中提供的管理模板来通过组策略配置客户端。
注意
您必须为每个用户设置以下条目。
$registryPath="HKCU:\Software\Amazon\AppStream Client" New-Item -Path "HKCU:\Software\Amazon" -Name "AppStream Client" -Force New-ItemProperty -Path $registryPath -Name "EULAAccepted" -Value "true" -PropertyType String -Force | Out-Null New-ItemProperty -Path $registryPath -Name "AcceptedEULAVersion" -Value "1.0" -PropertyType String -Force | Out-Null New-ItemProperty -Path $registryPath -Name "DiagnosticInfoCollectionAllowed" -Value "true" -PropertyType String -Force | Out-Null New-ItemProperty -Path $registryPath -Name "USBDriverOptIn" -Value "true" -PropertyType String -Force | Out-Null New-ItemProperty -Path $registryPath -Name "HardwareRenderingEnabled" -Value "true" -PropertyType String -Force | Out-Null New-ItemProperty -Path $registryPath -Name "FileRedirectionCustomDefaultFolders" -Value "%USERPROFILE%\Desktop|%USERPROFILE%\Documents|%USERPROFILE%\Downloads" -PropertyType String -Force | Out-Null New-ItemProperty -Path $registryPath -Name "OpenIdpUrlInSystemBrowser" -Value "true" -PropertyType String -Force | Out-Null
使用组策略自定义 AppStream 2.0 客户端体验
您可以使用 AppStream 2.0 客户端企业部署工具中提供的管理模板来通过组策略配置客户端。要了解如何将管理模板加载到组策略管理控制台中,请参阅 Microsoft 支持文档中的管理组策略管理模板 (.adm) 文件的建议