使用和配置Windows 沙盒
若要使用默认设置启动Windows 沙盒,请在“开始”菜单上找到并选择“Windows 沙盒”或搜索“Windows 沙盒”。 这将启动具有以下属性的基本沙盒,其最大容量为 4GB 内存:
- vGPU (虚拟化 GPU) :在非 Arm64 设备上启用。
- 网络:已启用。 沙盒使用 Hyper-V 默认开关。
- 音频输入:已启用。 沙盒将主机的麦克风输入共享到沙盒中。
- 视频输入:已禁用。 沙盒不会将主机的视频输入共享到沙盒中。
- 受保护的客户端:已禁用。 沙盒不会在远程桌面协议 (RDP) 会话上使用增强的安全设置。
- 打印机重定向:已禁用。 沙盒不与主机共享打印机。
- 剪贴板重定向:已启用。 沙盒与沙盒共享主机剪贴板,以便可以来回粘贴文本和文件。
重要提示
- 默认情况下网络处于启用状态。 这会向内部网络公开不受信任的应用程序。 若要在禁用网络的情况下启动沙盒,请使用自定义 .wsb 文件。
- 自动启用剪贴板重定向后,可以轻松地从主机复制文件并将其粘贴到Windows 沙盒窗口中。
你可以自由地打开文件、从 Web 安装应用程序,以及执行各种其他任务,这些任务受益于隔离的干净环境。
完成实验后,关闭沙盒。 出现一个对话框,提示确认删除所有沙盒内容。 选择“ 确定” 以继续。 确诊主机没有显示任何你在 Windows 沙盒中做出的修改。
配置自定义Windows 沙盒
Windows 沙盒支持简单的配置文件,这些文件为沙盒提供最少的自定义参数集。 此功能可与 Windows 10 内部版本 18342 或 Windows 11 一起使用。 Windows 沙盒配置文件的格式为 XML,并通过 .wsb
文件扩展名与沙盒相关联。
配置文件使用户能够控制 Windows 沙盒的以下方面:
- vGPU(虚拟化 GPU):启用或禁用虚拟化 GPU。 如果禁用 vGPU,沙盒将使用 Windows 高级光栅化平台 (WARP)。
- 网络:启用或禁用沙盒中的网络访问。
- 映射的文件夹:从具有读取或写入权限的主机共享文件夹。 公开主机目录可能会让恶意软件影响系统或窃取数据。
- 登录命令:Windows 沙盒启动时要执行的命令。
- 音频输入:将主机的麦克风输入共享到沙盒中。
- 视频输入:将主机的网络摄像头输入共享到沙盒中。
- 受保护的客户端:将远程桌面协议 (RDP) 会话上增加的安全设置放置到沙盒中。
- 打印机重定向:将打印机从主机共享到沙盒中。
- 剪贴板重定向:与沙盒共享主机剪贴板,以便可以来回粘贴文本和文件。
- 内存(以 MB 为单位):要分配给沙盒的内存量(以 MB 为单位)。
注意
沙盒窗口的大小目前不可配置。
创建配置文件
若要创建配置文件,请执行下列操作:
打开纯文本编辑器或源代码编辑器(例如记事本、Visual Studio Code 等)
插入以下行:
<Configuration> </Configuration>
在两行之间添加适当的配置文本。 有关详细信息,请参阅示例。
使用所需名称保存文件,但请确保其文件扩展名为
.wsb
。 在记事本中,应将文件名和扩展名括在双引号内,例如"MyConfigFile.wsb"
。
若要使用配置文件,请双击它以根据其设置启动Windows 沙盒。 还可以通过命令行调用它,如下所示:
C:\Temp> MyConfigFile.wsb
配置选项
vGPU
启用或禁用 GPU 共享。
<vGPU>value</vGPU>
支持的值:
- Enable:在沙盒中启用 vGPU 支持。
- Disable:在沙盒中禁用 vGPU 支持。 如果设置了此值,沙盒将使用软件渲染,这可能比虚拟化 GPU 慢。
- 默认值:此值是 vGPU 支持的默认值。 目前,此默认值表示 vGPU 已启用。
注意
启用虚拟化 GPU 可能会增加沙盒的攻击面。
网络
启用或禁用沙盒中的网络。 可以禁用网络访问,以减少沙盒暴露的攻击面。
<Networking>value</Networking>
支持的值:
- Enable:启用沙盒中的网络。
- Disable:在沙盒中禁用网络。
- Default:此值是网络支持的默认值。 此值通过在主机上创建虚拟交换机来启用网络,并通过虚拟 NIC 将沙盒连接到该交换机。
注意
启用网络可能会向内部网络暴露不受信任的应用程序。
映射的文件夹
一组文件夹,每个文件夹代表主机上与沙盒在指定路径上共享的位置。 目前不支持相对路径。
使用 <Mappedfolders>
映射文件夹时,在执行 Logon 命令之前映射文件夹。 从 Windows 11 版本 23H2 开始,可以在路径中使用环境变量。
<MappedFolders>
<MappedFolder>
<HostFolder>absolute or relative path to the host folder</HostFolder>
<SandboxFolder>absolute path to the sandbox folder</SandboxFolder>
<ReadOnly>value</ReadOnly>
</MappedFolder>
<MappedFolder>
...
</MappedFolder>
</MappedFolders>
- HostFolder:指定主机上要共享到沙盒中的文件夹。 文件夹必须已存在于主机上,否则容器无法启动。
-
SandboxFolder:指定要将文件夹映射到的沙盒中的目标。 如果该文件夹不存在,则会创建该文件夹。 如果未指定沙盒文件夹,该文件夹将映射到容器用户的桌面。 沙盒的默认用户为
WDAGUtilityAccount
。 - ReadOnly:如果为 true,则强制从容器内部对共享文件夹进行只读访问。 支持的值:true/false。 默认为 false。
注意
从主机映射的文件和文件夹可能会被沙盒中的应用入侵,或可能影响主机。 在沙盒会话期间对具有写入权限的映射文件夹所做的更改将在沙盒释放后保留。
登录命令
指定沙盒登录后自动调用的单个命令。 沙盒中的应用在容器用户帐户下运行。 容器用户帐户应是管理员帐户。
<LogonCommand>
<Command>command to be invoked</Command>
</LogonCommand>
命令:将在登录后执行的容器内可执行文件或脚本的路径。
注意
尽管非常简单的命令可以工作(例如启动可执行文件或脚本),但涉及多个步骤的更复杂方案应放在脚本文件中。 此脚本文件可以通过共享文件夹映射到容器,然后通过 <LogonCommand>
执行。
音频输入
启用或禁用沙盒的音频输入。
<AudioInput>value</AudioInput>
支持的值:
- Enable:在沙盒中启用音频输入。 如果设置了此值,沙盒可以接收用户的音频输入。 使用麦克风的应用程序可能需要此功能。
- Disable:在沙盒中禁用音频输入。 如果设置了此值,则沙盒将无法接收用户的音频输入。 使用麦克风的应用程序可能无法正常使用此设置。
- Default:此值是音频输入支持的默认值。 目前,此默认值表示音频输入已启用。
注意
向容器暴露主机音频输入可能存在安全隐患。
视频输入
启用或禁用沙盒的视频输入。
<VideoInput>value</VideoInput>
支持的值:
- Enable:在沙盒中启用视频输入。
- Disable:在沙盒中禁用视频输入。 使用视频输入的应用程序可能无法在沙盒中正常运行。
- Default:此值是视频输入支持的默认值。 目前,此默认值表示视频输入已禁用。 使用视频输入的应用程序可能无法在沙盒中正常运行。
注意
向容器暴露主机视频输入可能存在安全隐患。
受保护的客户端
启用“受保护的客户端”模式后,沙盒会通过在 AppContainer 隔离执行环境中运行来添加一个新的安全边界层。 AppContainer 隔离提供凭据、设备、文件、网络、进程和窗口隔离。
<ProtectedClient>value</ProtectedClient>
支持的值:
- Enable:在“受保护的客户端”模式下运行 Windows 沙盒。 如果设置了此值,则沙盒将在 AppContainer 隔离中运行。
- Disable:在标准模式下运行沙盒,无需额外的安全缓解措施。
- Default:此值是“受保护的客户端”模式的默认值。 目前,此默认值表示沙盒无法在“受保护的客户端”模式下运行。
注意
此设置可能会限制用户在沙盒中复制/粘贴文件的能力。
打印机重定向
启用或禁用从主机到沙盒的打印机共享。
<PrinterRedirection>value</PrinterRedirection>
支持的值:
- Enable:允许将主机打印机共享到沙盒中。
- Disable:禁用沙盒中的打印机重定向。 如果设置了此值,则沙盒无法从主机查看打印机。
- Default:此值是打印机重定向支持的默认值。 目前,此默认值表示打印机重定向已禁用。
剪贴板重定向
启用或禁用与沙盒共享主机剪贴板。
<ClipboardRedirection>value</ClipboardRedirection>
支持的值:
- Enable:允许与沙盒共享主机剪贴板。
- Disable:在沙盒中禁用剪贴板重定向。 如果设置了此值,则限制复制/粘贴到沙盒中或从沙盒中复制/粘贴。
- Default:此值是剪贴板重定向的默认值。 目前,Default 情况下允许在主机和沙盒之间复制/粘贴。
内存(以 MB 为单位)
指定沙盒可以使用的内存量(以 MB 为单位)。
<MemoryInMB>value</MemoryInMB>
如果指定的内存值不足以启动沙盒,则会自动将其增加到所需的最小 2048 MB。