Windows Sandbox là công cụ tuyệt vời để test ứng dụng và tiện ích trong môi trường cô lập. Nhưng nhiều lần người dùng muốn tạo môi trường tùy chỉnh để test phần mềm/dịch vụ khác nhau. Đây từng là ưu điểm của Virtual Machine so với Windows Sandbox. Nhưng Microsoft 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
File cấu hình Windows Sandbox dùng định dạng XML. Môi trường Sandbox đọc chúng như file .WSB. Hiện tại chỉ hỗ trợ 4 cấu hình sau:
- vGPU (Virtualized GPU - GPU ảo hóa).
- Networking (Mạng).
- Shared folders (Thư mục chia sẻ).
- Startup script (Script khởi động).
Cơ chế hoạt động file WSB:

Đ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 phải tạo hoặc mở file WSB bằng Notepad hoặc Visual Studio Code.
Cách cấu hình các khía cạnh trên:

1. vGPU
Cú pháp cho khía cạnh vGPU:
<vGpu>VALUE</VGpu>
Giá trị 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ể tăng bề mặt tấn công của sandbox.
2. Networking
Cú pháp cho Networking:
<Networking>VALUE</Networking>
Giá trị 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ộ ứng dụng không tin cậy ra mạng nội bộ.
3. Shared folders (Thư mục chia sẻ)
Cú pháp cho Shared folders:
<MappedFolder> <HostFolder>PATH OF THE HOST FOLDER</HostFolder> <ReadOnly>VALUE</ReadOnly> </MappedFolder>
Các thuộc tính con:
- HostFolder: Chỉ định thư mục trên máy host chia sẻ cho sandbox. Thư mục phải tồn tại trên host, nếu không container sẽ không khởi động.
- ReadOnly: Nếu true, bắt buộc truy cập chỉ đọc vào thư mục chia sẻ từ trong container. Giá trị: true/false.
Microsoft lưu ý:
File/thư mục map từ host có thể bị xâm hại bởi app trong Sandbox hoặc ảnh hưởng đến host.
4. LogonCommand (Lệnh đăng nhập)
Cú pháp cho LogonCommand:
<LogonCommand> <Command>COMMAND TO BE INVOKED ON STARTUP</Command> </LogonCommand>
Thuộc tính con:
- Command: Script thực thi sẽ chạy khi khởi động.
Microsoft lưu ý:
Dù lệnh đơn giản hoạt động (chạy file thực thi/script), kịch bản phức tạp nhiều bước nên đặt vào file script. File script có thể map vào container qua shared folder, rồi thực thi qua LogonCommand.
Ví dụ
Microsoft đưa ra ví dụ môi trường Sandbox tùy chỉnh: tắt vGPU và Networking, truy cập chỉ đọc thư mục Downloads chia sẻ, 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>
Hoặc tải file này trực tiếp từ server của chúng tôi và thử nghiệm.
Phần hay nhất: tính năng này dùng được trên Windows 10 1903 May 2019 Update trở lên. Nghĩa là, nếu chạy Windows 10 build 18342 trở lên, bạn dùng được tính năng này ngay.
Tìm hiểu thêm về tính năng này tại Microsoft.