Sandboxの構成ファイルであらかじめ環境を設定しておく
Sandboxの構成ファイルは、WSBという拡張子を持ち、最初からSandboxと関連付けてあるため、構成ファイルのダブルクリックでSandboxを起動できる。複数の構成ファイルをつくっておけば、用途に合わせて環境を切り替えて使うこともできる。残念なことにSandboxは単独でしか実行できず、複数のインスタンスを同時に起動することができない。面倒でも複数環境は1つ1つ起動して利用するしかない。
WSBファイルの中身はXML形式だが、その構造は単純で、タグで囲まれている部分のみを書き換えれば、ほとんどの用途をカバーできる。また、システム側との共有フォルダーがサポートされたたため、環境構築のスクリプトやインストールするアプリなども共有フォルダーに置いておけるようになった。
構成ファイルには、大きく、以下の設定要素がある。
<VGpu>:vGPU利用の可否
<Networking>:ネットワーク利用の可否
<MappedFloders>:共有フォルダー(複数可)の指定
<LogonCommand>:ログオンコマンド
構成ファイルは、以下のようなもので、タグで囲まれた部分を書き換えて設定する。
「vGPU」の利用の可否では、仮想環境からGPUの仮想化を介してGPU機能を利用するか、Windows組み込みのソフトウェアレンダリングを使うかを切り替える。設定値は「Disable」と「Default」のどちらか。普通は「Default」のままでいいだろう。Disableとすると、組み込みのソフトウェアレンダリングを利用する。
「Networking」は、ネットワーク接続の有無を切り替えるもの。ネットワーク接続を禁止することで、よりシステム側のセキュリティが高まる。ただ、よほど危険と思われる場合以外は、「Default」としてネットワークを許可しておいてもいいだろう。「Disable」を設定することでネットワークを禁止できる。
「MappedFloders」は、ホスト側との共有フォルダーを指定するもの。複数のフォルダーが指定可能で、読み出しのみ可能で書き込みを禁止することもできる。このタグの下に複数の「MappedFolder」(単数形であることに注意)を書き、複数の指定をする。
なお、指定したフォルダーは、すべてデスクトップの直下にマッピングされる。このとき,フォルダー名のみが有効となり、元のパスは使われないため注意が必要だ。たとえば、「C:\temp\SandboxTest\Script」というホスト側フォルダーをマッピングすると、Sandbox内では、「C:\users\WDAGUtilityAccount\Desktop\Script」というフォルダーが見えるようになる。このため、同名のフォルダーは、たとえパスが違っても同時に指定することができない。
「LogonCommand」は、起動直後に実行されるコマンドを指定する。マイクロソフトは、いわゆる「ログイン」を「ログオン」といったり「サインイン」というなど、用語が乱れている感がある。Sandboxではいわゆる「サインイン」操作は不要で起動するといきなりデスクトップが表示され、サインイン状態で起動する。このときに実行されるコマンドを「LogonCommand」タグで指定する。
ここに直接exeファイルを記述することもできるが、1行のみなので、バッチファイルを指定したほうがいいだろう。ただ、直接バッチファイル名を書くと、cmd.exeが起動したままとなり、コンソールウィンドウが残ったままになる(最初の起動なので暗黙的に常駐オプションが指定されるのだと思われる)。このため、以下のようにcmd.exeに/cオプションを使って指定したほうがいい。
<LogonCommand>
<Command>cmd.exe /c C:\users\WDAGUtilityAccount\Desktop\Script\auto.bat</Command>
</LogonCommand>
また、こうしたスクリプト自体も共有する可能性があるため、専用に1つフォルダーを作っておき、これをMappedFolderで指定して起動する。前述のようにSandbox内では、スクリプトへのパスが違うため、バッチファイルを記述する場合には注意が必要だ。
XMLファイルは、文字エンコードを原則UTF-8を用いており、もし、注釈などに日本語をいれた場合には、保存時の文字コードに注意したい。メモ帳なら、初回の保存時にUTF-8を指定しておく。アルファベットのみならASCIIコード(メモ帳の表記はANSI)のままでもかまわないが、のちのち変なトラブルに巻き込まれないようにUTF-8で保存することをお勧めする。
WSB構成ファイルを使うことで、Sandboxは環境設定が可能になった。ただ、Windowsのオプション機能やMicrosoftストアなど一部対応していない部分もある。また、「コンテナー実行エージェント」(CExecSvc.exe)など、明らかにSandboxの中で動作していることを知られてしまうようなプロセスが見えてしまう。悪意のあるソフトウェアなら、こうしたプロセスの有無から挙動を変えることもしかねない。もう少しという感じがあるのだが……。

この連載の記事
-
第508回
PC
Scalable Vector Graphics(SVG)そもそも何なのか? -
第507回
PC
Windows 11の「開発者モード」とは何か? -
第506回
PC
Windows 11は早くも来秋登場の26H2プレビューの準備が始まる -
第505回
PC
結構変化しているWindows 11のエクスプローラーの基本設定を見直す -
第504回
PC
新しいOutlookとOutlook Classic、そろそろ古いOutlookとExchangeの組み合わせは引退の頃合いか -
第503回
PC
機能が増えたこともあり、寄せ集めから統合化に進むWindowsの便利ツール「PowerToys」 -
第502回
PC
Windows 11でBluetoothのオーディオ新規格「Bluetooth LE Audio」を試す -
第501回
PC
Windows 11 Ver.25H2での変更点、新機能を整理する -
第500回
PC
Windows 11 Ver.25H2が完成した -
第499回
PC
Windowsでの致命的だが回復可能なエラーに備える手段を2つ紹介 -
第498回
PC
Windows Terminalの安定版V1.23が公開 設定UIが改良される - この連載の一覧へ











