Windows Sandbox là một công cụ tuyệt vời để kiểm tra các ứng dụng và tiện ích trong môi trường cô lập. Tuy nhiên, người dùng thường muốn tạo môi trường tùy chỉnh để test nhiều phần mềm và dịch vụ khác nhau. Đây từng là ưu điểm của Máy ảo (Virtual Machines) so với Windows Sandbox. Nhưng Microsoft đã tích cực lắng nghe phản hồi và thêm hỗ trợ tạo môi trường cấu hình tùy chỉnh cho Windows Sandbox.
Cấu hình và sử dụng Windows Sandbox

Tạo môi trường cấu hình tùy chỉnh cho Windows Sandbox
Các file cấu hình cho môi trường Windows Sandbox sử dụng định dạng XML và được đọc dưới dạng file .WSB. Hiện tại, Windows Sandbox chỉ hỗ trợ 4 cấu hình sau:
- vGPU (GPU ảo hóa).
- Mạng (Networking).
- Thư mục chia sẻ (Shared folders).
- Script khởi động (Startup script).
Cơ chế hoạt động của các file WSB như sau:

Điều này cho phép người dùng kiểm soát tốt hơn môi trường cô lập trong Windows Sandbox.
Bạn cần tạo hoặc mở các file WSB bằng Notepad hoặc Visual Studio Code.
Dưới đây là cách cấu hình cho các khía nới trên:

1. vGPU
Cú pháp cho khía cạnh vGPU của Windows Sandbox:
<vGpu>GIÁ_TRỊ</VGpu>
Các giá trị được hỗ trợ:
- Disable: Tắt hỗ trợ vGPU trong Sandbox.
- Default: Giữ giá trị mặc định hiện tại của vGPU.
Microsoft lưu ý:
Bật GPU ảo hóa có thể làm tăng bề mặt tấn công của sandbox.
2. Mạng (Networking)
Cú pháp cho khía cạnh mạng:
<Networking>GIÁ_TRỊ</Networking>
Các giá trị được hỗ trợ:
- Disable: Tắt hỗ trợ mạng trong Sandbox.
- Default: Giữ giá trị mặc định hiện tại của mạng.
Microsoft lưu ý:
Bật mạng có thể làm lộ các ứng dụng không tin cậy ra mạng nội bộ của bạn.
3. Thư mục chia sẻ (Shared folders)
Cú pháp cho khía cạnh thư mục chia sẻ:
<MappedFolder> <HostFolder>ĐƯỜNG_DẪN_THƯ_MỤC_HOST</HostFolder> <ReadOnly>GIÁ_TRỊ</ReadOnly> </MappedFolder>
Các cấu hình con được hỗ trợ:
- HostFolder: Chỉ định thư mục trên máy host để chia sẻ với sandbox. Thư mục phải đã tồn tại trên host, nếu không container sẽ không khởi động được.
- ReadOnly: Nếu true, ép buộc quyền chỉ đọc cho thư mục chia sẻ từ bên trong container. Giá trị: true/false.
Microsoft lưu ý:
Các file và thư mục được ánh xạ từ host có thể bị xâm hại bởi ứng dụng trong Sandbox hoặc ảnh hưởng đến host.
4. LogonCommand (Lệnh đăng nhập)
Cú pháp cho khía cạnh LogonCommand:
<LogonCommand> <Command>LỆNH_THỰC_THI_KHI_KHỞI_ĐỘNG</Command> </LogonCommand>
Cấu hình con:
- Command: Script thực thi sẽ chạy khi khởi động.
Microsoft lưu ý:
Mặc dù các lệnh đơn giản sẽ hoạt động (khởi chạy file thực thi hoặc script), các kịch bản phức tạp hơn nên được đặt vào file script. File script này có thể được ánh xạ vào container qua thư mục chia sẻ, sau đó thực thi qua chỉ thị LogonCommand.
Ví dụ
Microsoft cung cấp ví dụ môi trường Windows Sandbox tùy chỉnh: tắt vGPU và Mạng, quyền chỉ đọc cho thư mục Downloads chia sẻ, và mở thư mục Downloads khi khởi động.
Mã cấu hình:
<Configuration> <VGpu>Disable</VGpu> <Networking>Disable</Networking> <MappedFolders> <MappedFolder> <HostFolder>C:\Users\Public\Downloads</HostFolder> <ReadOnly>true</ReadOnly> </MappedFolder> </MappedFolders> <LogonCommand> <Command>explorer.exe C:\users\WDAGUtilityAccount\Desktop\Downloads</Command> </LogonCommand> </Configuration>
Tính năng này khả dụng từ Windows 10 1903 (May 2019 Update) trở lên, tức là build 18342 hoặc mới hơn.
Tìm hiểu thêm về tính năng này tại trang web của Microsoft.
