Windowsサンドボックスのメモリを増やしたり、ホストからファイル共有する方法

Windows 10 ProやEnterpriseで利用できるWindowsサンドボックス、ちょっとしたツールのお試しに便利だが、いくつかのツールを組み合わせて使いたいときに、デフォルトのメモリ4GBでは足りないケースがあった。

メモリを増やしたりできないか調べたところ、簡単にできた。また、インストーラーなどのファイルをドラッグ&ドロップサンドボックスにコピーしていたが、ホストからファイルを共有したりもできたのでメモ。

Windowsサンドボックスの設定ファイル

Windows サンドボックス構成 - Windows security | Microsoft Docs に設定方法が記載されている。

XML形式で設定ファイルを記述し、拡張子を .wsb にすると、設定ファイルのダブルクリックでWindows サンドボックスが起動する。

コマンドプロンプトなどから、ファイル名を指定することで、CUIからでも実行可能。

設定ファイルから起動しない限り、Windows サンドボックスに設定は反映されない。

設定概要

ファイル全体を <Configuration></Configuration> タグで囲み、その中に設定タグを追加していく。

今回試したものだけ記載。

仮想GPUの有効化

デフォルトでは無効化されているが、 <vGPU>Enable</vGPU> で、仮想GPUが有効となる。

ネットワークの無効化

デフォルトでは有効化されているが、 <Networking>Disable</Networking> でネットワークを無効化できる。

サンドボックスへのフォルダ共有

MappedFolders タグの中に、 MappedFolder タグを記述することで、フォルダ単位でのファイル共有が可能。

MappedFolder タグ内に、 HostFolder タグでホストのフォルダパス、 SandboxFolderサンドボックス内のフォルダパスを指定。

デフォルトでは書き込み可能だが、 <ReadOnly>true</ReadOnly> を指定することで、読み取り専用にできる。

初期実行コマンドの指定

サンドボックス起動時に、実行するコマンドを指定できる。

LogonCommand タグで全体を囲み、 Command タグ内に実際のコマンドを記述。

メモリ容量指定

<MemoryInMB>メガバイト単位のメモリ容量</MemoryInMB> で、メモリ指定が可能。8GB指定の場合、 8192 となる。

設定ファイル例

仮想GPUを有効化し、メモリは8GB。Dドライブのフォルダをサンドボックス実行ユーザーのダウンロードフォルダに共有し、ダウンロードフォルダを起動時コマンドで開いている。

なお、サンドボックス実行ユーザーは WDAGUtilityAccount となる。

<Configuration>
  <MemoryInMB>8192</MemoryInMB>
  <vGPU>Enable</vGPU>
  <MappedFolders>
    <MappedFolder>
      <HostFolder>D:\installers</HostFolder>
      <SandboxFolder>C:\Users\WDAGUtilityAccount\Downloads\shared</SandboxFolder>
      <ReadOnly>true</ReadOnly>
    </MappedFolder>
  </MappedFolders>
  <LogonCommand>
    <Command>explorer.exe C:\users\WDAGUtilityAccount\Downloads</Command>
  </LogonCommand>
</Configuration>

振り返り

これくらいの設定が、テキストベースの設定ファイルでできるのはありがたい。