Windows 沙盒配置

您所在的位置:网站首页 主机增加内存 Windows 沙盒配置

Windows 沙盒配置

2024-07-12 13:27| 来源: 网络整理| 查看: 265

Windows 沙盒配置 项目03/29/2024 适用于: ✅ Windows 11, ✅ Windows 10

Windows 沙盒支持简单的配置文件,这些文件为沙盒提供最少的自定义参数集。 此功能可与 Windows 10 内部版本 18342 或 Windows 11 一起使用。 Windows 沙盒配置文件的格式为 XML,并通过 .wsb 文件扩展名与沙盒相关联。

配置文件使用户能够控制 Windows 沙盒的以下方面:

vGPU(虚拟化 GPU):启用或禁用虚拟化 GPU。 如果禁用 vGPU,沙盒将使用 Windows 高级光栅化平台 (WARP) 。 网络:启用或禁用沙盒中的网络访问。 映射的文件夹:从具有读取或写入权限的主机共享文件夹。 公开主机目录可能会允许恶意软件影响系统或窃取数据。 登录命令:Windows 沙盒启动时执行的命令。 音频输入:将主机的麦克风输入共享到沙盒中。 视频输入:将主机的网络摄像头输入共享到沙盒中。 受保护的客户端:将远程桌面协议 (RDP) 会话中的安全设置添加到沙盒。 打印机重定向:将打印机从主机共享到沙盒中。 剪贴板重定向:与沙盒共享主机剪贴板,以便可以来回粘贴文本和文件。 内存(以 MB 为单位):要分配给沙盒的内存量(以 MB 为单位)。

注意

沙盒窗口的大小目前不可配置。

创建配置文件

若要创建配置文件,请执行下列操作:

打开纯文本编辑器或源代码编辑器(例如记事本、Visual Studio Code 等)

插入以下行:

在两行之间添加适当的配置文本。 有关详细信息,请参阅 示例。

使用所需名称保存文件,但请确保其文件扩展名为 .wsb。 在记事本中,应将文件名和扩展名括在双引号内,例如 "My config file.wsb"。

使用配置文件

若要使用配置文件,请双击它以根据其设置启动Windows 沙盒。 还可以通过命令行调用它,如下所示:

C:\Temp> MyConfigFile.wsb 关键字、值和限制 vGPU

启用或禁用 GPU 共享。

value

支持的值:

Enable:在沙盒中启用 vGPU 支持。 禁用:在沙盒中禁用 vGPU 支持。 如果设置了此值,沙盒将使用软件呈现,这可能比虚拟化 GPU 慢。 默认 此值是 vGPU 支持的默认值。 目前,此默认值表示 vGPU 已禁用。

注意

启用虚拟化 GPU 可能会增加沙盒的攻击面。

网络

启用或禁用沙盒中的网络。 可以禁用网络访问,以减少沙盒暴露的攻击面。

value

支持的值:

Enable:启用沙盒中的网络。 禁用:禁用沙盒中的网络。 默认:此值是网络支持的默认值。 此值通过在主机上创建虚拟交换机来启用网络,并通过虚拟 NIC 将沙盒连接到该交换机。

注意

启用网络可能会向内部网络暴露不受信任的应用程序。

映射的文件夹

一个文件夹数组,每个文件夹表示主机上与沙盒在指定路径处共享的位置。 目前,不支持相对路径。 如果未指定路径,文件夹将映射到容器用户的桌面。

absolute path to the host folder absolute path to the sandbox folder value ... HostFolder:指定主机上要共享到沙盒中的文件夹。 该文件夹必须已存在于主机上,否则容器无法启动。 SandboxFolder:指定要将文件夹映射到的沙盒中的目标。 如果该文件夹不存在,则会创建它。 如果未指定沙盒文件夹,该文件夹将映射到容器桌面。 ReadOnly:如果为 true,则强制从容器内部对共享文件夹进行只读访问。 支持的值:true/false。 默认为 false。

注意

从主机映射的文件和文件夹可能会被沙盒中的应用入侵,或可能会影响主机。

登录命令

指定沙盒登录后自动调用的单个命令。 沙盒中的应用在容器用户帐户下运行。 容器用户帐户应是管理员帐户。

command to be invoked

命令:将在登录后执行的容器内可执行文件或脚本的路径。

注意

尽管非常简单的命令可以工作(例如启动可执行文件或脚本),但涉及多个步骤的更复杂方案应放在脚本文件中。 此脚本文件可以通过共享文件夹映射到容器中,然后通过 LogonCommand 指令执行。

音频输入

启用或禁用沙盒的音频输入。

value

支持的值:

Enable:在沙盒中启用音频输入。 如果设置了此值,沙盒可以接收来自用户的音频输入。 使用麦克风的应用程序可能需要此功能。 禁用:禁用沙盒中的音频输入。 如果设置了此值,则沙盒将无法接收用户的音频输入。 使用麦克风的应用程序可能无法正常使用此设置。 默认:此值是音频输入支持的默认值。 目前,此默认值表示音频输入已启用。

注意

向容器暴露主机音频输入可能存在安全隐患。

视频输入

启用或禁用沙盒的视频输入。

value

支持的值:

Enable:在沙盒中启用视频输入。 禁用:在沙盒中禁用视频输入。 使用视频输入的应用程序可能无法在沙盒中正常运行。 默认:此值是视频输入支持的默认值。 目前,此默认值表示视频输入已禁用。 使用视频输入的应用程序可能无法在沙盒中正常运行。

注意

向容器暴露主机视频输入可能存在安全隐患。

受保护的客户端

启用“受保护的客户端”模式后,沙盒会通过在 AppContainer 隔离执行环境中运行来添加一个新的安全边界层。

AppContainer 隔离提供凭据、设备、文件、网络、进程和窗口隔离。

value

支持的值:

Enable:在“受保护的客户端”模式下运行 Windows 沙盒。 如果设置了此值,则沙盒将在 AppContainer 隔离中运行。 禁用:在标准模式下运行沙盒,无需额外的安全缓解措施。 默认:此值是“受保护的客户端”模式的默认值。 目前,此默认值表示沙盒无法在“受保护的客户端”模式下运行。

注意

此设置可能会限制用户在沙盒中复制/粘贴文件的能力。

打印机重定向

启用或禁用从主机到沙盒的打印机共享。

value

支持的值:

Enable:允许将主机打印机共享到沙盒中。 禁用:禁用沙盒中的打印机重定向。 如果设置了此值,则沙盒无法从主机查看打印机。 默认:此值是打印机重定向支持的默认值。 目前,此默认值表示打印机重定向已禁用。 剪贴板重定向

启用或禁用与沙盒共享主机剪贴板。

value

支持的值:

Enable:允许与沙盒共享主机剪贴板。 禁用:禁用沙盒中的剪贴板重定向。 如果设置了此值,则限制复制/粘贴和从沙盒中粘贴。 默认:此值是剪贴板重定向的默认值。 目前,默认情况下允许在主机和沙盒之间复制/粘贴。 内存(以 MB 为单位)

指定沙盒可以使用的内存量(以 MB 为单位)。

value

如果指定的内存值不足以启动沙盒,则会自动将其增加到所需的最小值。

示例 示例 1

以下配置文件可用于轻松测试沙盒中的已下载文件。 为了实现此测试,将禁用网络和 vGPU,并允许沙盒对共享的下载文件夹进行只读访问。 为方便起见,登录命令在启动时会打开沙盒中的下载文件夹。

Downloads.wsb Disable Disable C:\Users\Public\Downloads C:\Users\WDAGUtilityAccount\Downloads true explorer.exe C:\users\WDAGUtilityAccount\Downloads 示例 2

以下配置文件可在沙盒中安装 Visual Studio Code,这需要稍微复杂的 LogonCommand 设置。

两个文件夹映射到沙盒中;第一个 (SandboxScripts) 包含安装并运行 Visual Studio Code 的VSCodeInstall.cmd。 假设第二个文件夹 (CodingProjects) 包含开发人员希望使用 Visual Studio Code 修改的项目文件。

由于 Visual Studio Code 安装程序脚本已映射到沙盒中,LogonCommand 可以引用它。

VSCodeInstall.cmd

将 VS Code 下载到 downloads 文件夹,并从 downloads 文件夹运行安装。

REM Download Visual Studio Code curl -L "https://update.code.visualstudio.com/latest/win32-x64-user/stable" --output C:\users\WDAGUtilityAccount\Downloads\vscode.exe REM Install and run Visual Studio Code C:\users\WDAGUtilityAccount\Downloads\vscode.exe /verysilent /suppressmsgboxes VSCode.wsb C:\SandboxScripts C:\Users\WDAGUtilityAccount\Downloads\sandbox true C:\CodingProjects C:\Users\WDAGUtilityAccount\Documents\Projects false C:\Users\WDAGUtilityAccount\Downloads\sandbox\VSCodeInstall.cmd 示例 3

以下配置文件将 PowerShell 脚本作为登录命令运行,以便为惯用左手的用户交换主鼠标按钮。

主机上的 C:\sandbox 文件夹已映射到沙盒中的 C:\sandbox 文件夹,因此可以在沙盒配置文件中引用 SwapMouse.ps1 脚本。

SwapMouse.ps1

使用以下代码创建 PowerShell 脚本,并将其 C:\sandbox 作为 保存在目录中 SwapMouse.ps1。

[Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms") | Out-Null $SwapButtons = Add-Type -MemberDefinition @' [DllImport("user32.dll")] public static extern bool SwapMouseButton(bool swap); '@ -Name "NativeMethods" -Namespace "PInvoke" -PassThru $SwapButtons::SwapMouseButton(!([System.Windows.Forms.SystemInformation]::MouseButtonsSwapped)) SwapMouse.wsb C:\sandbox C:\sandbox True powershell.exe -ExecutionPolicy Bypass -File C:\sandbox\SwapMouse.ps1


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3