Windows サンドボックス構成

Windowsサンドボックスは簡単な構成ファイルをサポートしています。これは、サンドボックスのカスタマイズ パラメーターの最小限のセットを提供します。 この機能は、ビルド 18342 Windows 10 11 でWindowsできます。 Windowsサンドボックス構成ファイルは XML 形式で、ファイル拡張子を使用してサンドボックスに .wsb 関連付けられる。

構成ファイルを使用すると、ユーザーはサンドボックスの次のWindowsできます。

  • vGPU (仮想化 GPU): 仮想化 GPU を有効または無効にします。 vGPU が無効になっている場合、サンドボックスは高度なラスタWindows (WARP) を使用します。
  • ネットワーク: サンドボックス内のネットワーク アクセスを有効または無効にします。
  • マップされたフォルダー: 読み取りまたは書き込みアクセス 許可を持 つホスト からフォルダーを 共有します。 ホスト ディレクトリを公開すると、悪意のあるソフトウェアがシステムに影響を及ぼしたり、データを盗んだりする可能性があります。
  • ログオン コマンド: サンドボックスの起動時にWindowsコマンド。
  • オーディオ入力: ホストのマイク入力をサンドボックスに共有します。
  • ビデオ入力: ホストの Web カメラ入力をサンドボックスに共有します。
  • 保護されたクライアント: RDP セッションのセキュリティ設定をサンドボックスに追加します。
  • プリンターのリダイレクト: ホストからサンドボックスにプリンターを共有します。
  • クリップボードリダイレクト: テキストとファイルを前後に貼り付けできるよう、ホストクリップボードをサンドボックスと共有します。
  • MB 単位のメモリ: サンドボックスに割り当てるメモリの量 (メガバイト単位)。

構成ファイルの作成

簡単な構成ファイルを作成するには、次の手順を実行します。

  1. プレーン テキスト エディターまたはソース コード エディター (例: メモ帳、Visual Studio Codeなど) を開きます。

  2. 次の行を挿入します。

    <Configuration>
    </Configuration>
    
  3. 2 行の間に適切な構成テキストを追加します。 詳細については、正しい構文と以下の例を参照してください。

  4. 目的の名前でファイルを保存しますが、ファイル名の拡張子が .wsb . このメモ帳、ファイル名と拡張子を二重引用符 (例: ) で囲む必要があります "My config file.wsb"

構成ファイルの使用

構成ファイルを使用するには、それをダブルクリックして、設定にWindowsサンドボックスを開始します。 次に示すように、コマンド ラインを使用して呼び出することもできます。

C:\Temp> MyConfigFile.wsb 

キーワード、値、および制限

vGPU

GPU 共有を有効または無効にします。

<vGPU>value</vGPU>

サポートされている値:

  • Enable: サンドボックスでの vGPU サポートを有効にする。
  • Disable: サンドボックスでの vGPU サポートを無効にします。 この値を設定すると、サンドボックスはソフトウェア レンダリングを使用します。これは仮想化 GPU よりも遅くなる可能性があります。
  • 既定 これは、vGPU サポートの既定値です。 現在、これは vGPU が無効になっているという意味です。

注意

仮想化 GPU を有効にすると、サンドボックスの攻撃表面が増加する可能性があります。

ネットワーク

サンドボックス内のネットワークを有効または無効にします。 ネットワーク アクセスを無効にして、サンドボックスによって公開される攻撃表面を減らします。

<Networking>value</Networking>

サポートされている値:

  • Disable: サンドボックス内のネットワークを無効にします。
  • 既定値: ネットワークサポートの既定値です。 この値を使用すると、ホスト上に仮想スイッチを作成し、サンドボックスを仮想 NIC 経由で接続することで、ネットワークを有効にします。

注意

ネットワークを有効にすると、信頼されていないアプリケーションが内部ネットワークに公開される可能性があります。

マップされたフォルダー

指定したパスでサンドボックスに共有されるホスト コンピューター上の場所を表すフォルダーの配列。 現時点では、相対パスはサポートされていません。 パスが指定されていない場合、フォルダーはコンテナー ユーザーのデスクトップにマップされます。

<MappedFolders>
  <MappedFolder> 
    <HostFolder>absolute path to the host folder</HostFolder> 
    <SandboxFolder>absolute path to the sandbox folder</SandboxFolder> 
    <ReadOnly>value</ReadOnly> 
  </MappedFolder>
  <MappedFolder>  
    ...
  </MappedFolder>
</MappedFolders>

HostFolder: サンドボックスに共有するホスト コンピューター上のフォルダーを指定します。 フォルダーがホスト上に既に存在している必要があります。またはコンテナーの起動に失敗します。

SandboxFolder: フォルダーをマップするサンドボックス内の移動先を指定します。 フォルダーが存在しない場合は、作成されます。 サンドボックス フォルダーが指定されていない場合、フォルダーはコンテナー デスクトップにマップされます。

ReadOnly: true の場合、コンテナー内から共有フォルダーへの読み取り専用アクセスを強制します。 サポートされている値: true / false。 既定値は false です

注意

ホストからマップされたファイルとフォルダーは、サンドボックス内のアプリによって侵害される可能性があります。またはホストに影響を与える可能性があります。

Logon コマンド

サンドボックスのログオン後に自動的に呼び出される 1 つのコマンドを指定します。 サンドボックス内のアプリは、コンテナー ユーザー アカウントの下で実行されます。

<LogonCommand>
  <Command>command to be invoked</Command>
</LogonCommand>

コマンド: ログイン後に実行されるコンテナー内の実行可能ファイルまたはスクリプトへのパス。

注意

非常に単純なコマンド (実行可能ファイルやスクリプトの起動など) は機能しますが、複数の手順を含むより複雑なシナリオをスクリプト ファイルに配置する必要があります。 このスクリプト ファイルは、共有フォルダーを介してコンテナーにマップされ 、LogonCommand ディレクティブを使用して実行できます。

オーディオ入力

サンドボックスへのオーディオ入力を有効または無効にします。

<AudioInput>value</AudioInput>

サポートされている値:

  • 有効: サンドボックス内のオーディオ入力を有効にします。 この値を設定すると、サンドボックスはユーザーからのオーディオ入力を受信できます。 マイクを使用するアプリケーションでは、この機能が必要な場合があります。
  • Disable: サンドボックス内のオーディオ入力を無効にします。 この値が設定されている場合、サンドボックスはユーザーからのオーディオ入力を受信できません。 マイクを使用するアプリケーションは、この設定で正しく機能しない場合があります。
  • 既定値: これは、オーディオ入力のサポートの既定値です。 現在、これはオーディオ入力が有効になっているという意味です。

注意

ホストオーディオ入力をコンテナーに公開すると、セキュリティ上の影響が生じ得る場合があります。

ビデオ入力

サンドボックスへのビデオ入力を有効または無効にします。

<VideoInput>value</VideoInput>

サポートされている値:

  • 有効: サンドボックス内のビデオ入力を有効にします。
  • Disable: サンドボックスでのビデオ入力を無効にします。 ビデオ入力を使用するアプリケーションがサンドボックスで正しく機能しない場合があります。
  • 既定値: ビデオ入力のサポートの既定値です。 現在、これはビデオ入力が無効になっているという意味です。 ビデオ入力を使用するアプリケーションがサンドボックスで正しく機能しない場合があります。

注意

ホスト ビデオ入力をコンテナーに公開すると、セキュリティ上の影響が生じ得る場合があります。

保護されたクライアント

サンドボックス リモート デスクトップ クライアントに追加のセキュリティ設定を適用し、攻撃対象を減らします。

<ProtectedClient>value</ProtectedClient>

サポートされている値:

  • 有効: 保護Windowsモードでサンドボックスを実行します。 この値が設定されている場合、サンドボックスは追加のセキュリティ軽減策を有効にして実行されます。
  • Disable: セキュリティを強化せずに標準モードでサンドボックスを実行します。
  • 既定値: これは、保護されたクライアント モードの既定値です。 現時点では、サンドボックスは保護されたクライアント モードで実行されません。

注意

この設定では、サンドボックスにファイルをコピー/貼り付けするユーザーの機能が制限される場合があります。

プリンターのリダイレクト

ホストからサンドボックスへのプリンター共有を有効または無効にします。

<PrinterRedirection>value</PrinterRedirection>

サポートされている値:

  • 有効: ホスト プリンターをサンドボックスに共有できます。
  • Disable: サンドボックスでプリンターリダイレクトを無効にします。 この値が設定されている場合、サンドボックスはホストからプリンターを表示できません。
  • 既定値: これは、プリンター リダイレクトのサポートの既定値です。 現在、これはプリンターのリダイレクトが無効になっているという意味です。

クリップボードのリダイレクト

サンドボックスとのホスト クリップボードの共有を有効または無効にします。

<ClipboardRedirection>value</ClipboardRedirection>

サポートされている値:

  • Disable: サンドボックスでクリップボードリダイレクトを無効にします。 この値を設定すると、サンドボックスのコピーと貼り付けは制限されます。
  • 既定値: クリップボードリダイレクトの既定値です。 現在、ホストとサンドボックスの間のコピー/貼り付けは、[既定] で 許可されています

MB 単位のメモリ

サンドボックスで使用できるメモリの量をメガバイト (MB) で指定します。

<MemoryInMB>value</MemoryInMB>

指定されたメモリ値がサンドボックスを起動するには不十分な場合は、必要な最小量に自動的に増加します。

例 1

次の構成ファイルを使用して、サンドボックス内でダウンロードしたファイルを簡単にテストできます。 これを実現するために、ネットワークと vGPU は無効になり、サンドボックスは共有ダウンロード フォルダーへの読み取り専用アクセスを許可されます。 便宜上、ログオン コマンドはサンドボックスの開始時にダウンロード フォルダーを開きます。

Downloads.wsb

<Configuration>
  <VGpu>Disable</VGpu>
  <Networking>Disable</Networking>
  <MappedFolders>
    <MappedFolder>
      <HostFolder>C:\Users\Public\Downloads</HostFolder>
      <SandboxFolder>C:\Users\WDAGUtilityAccount\Downloads</SandboxFolder>
      <ReadOnly>true</ReadOnly>
    </MappedFolder>
  </MappedFolders>
  <LogonCommand>
    <Command>explorer.exe C:\users\WDAGUtilityAccount\Downloads</Command>
  </LogonCommand>
</Configuration>

例 2

次の構成ファイルは、Visual Studio Codeにインストールします。これは、少し複雑な LogonCommand セットアップが必要です。

2 つのフォルダーがサンドボックスにマップされます。最初の (SandboxScripts) には VSCodeInstall.cmd が含まれているので、このコマンドをインストールして実行Visual Studio Code。 2 番目のフォルダー (CodingProjects) には、開発者がプロジェクト ファイルを使用して変更するプロジェクト ファイルが含まれているとVisual Studio Code。

新しいVisual Studio Codeスクリプトが既にサンドボックスにマップされている場合、LogonCommand は、このスクリプトを参照できます。

VSCodeInstall.cmd

REM Download Visual Studio Code
curl -L "https://update.code.visualstudio.com/latest/win32-x64-user/stable" --output C:\users\WDAGUtilityAccount\Desktop\vscode.exe

REM Install and run Visual Studio Code
C:\users\WDAGUtilityAccount\Desktop\vscode.exe /verysilent /suppressmsgboxes

VSCode.wsb

<Configuration>
  <MappedFolders>
    <MappedFolder>
      <HostFolder>C:\SandboxScripts</HostFolder>
      <ReadOnly>true</ReadOnly>
    </MappedFolder>
    <MappedFolder>
      <HostFolder>C:\CodingProjects</HostFolder>
      <ReadOnly>false</ReadOnly>
    </MappedFolder>
  </MappedFolders>
  <LogonCommand>
    <Command>C:\Users\WDAGUtilityAccount\Desktop\SandboxScripts\VSCodeInstall.cmd</Command>
  </LogonCommand>
</Configuration>