ISO ファイルのマウントを制限する方法

Last Update: feedback 共有

本記事はマイクロソフト社員によって公開されております。

こんにちは。Windows サポートチームの山本です。
昨今、Azure Virtual Desktop (AVD) を多くのユーザー様にご利用いただいております。
AVD を始めとする複数ユーザーが同時にログオンする環境におきまして、ISOファイルをマウントした際に、他ユーザーからISOファイルの情報が見えてしまうことに対して、情報の保護の点で懸念を持たれる方がいらっしゃるかと思います。

本記事では、AVD環境の管理されているIT管理者様などに向け、マウントしたISOファイルが、同一端末にログオンしている他のユーザーから参照可能となることの対処策について、ご紹介させていただきます。

ISO ファイル マウントの挙動について

Windows 10 におきまして、ISOファイルをダブル クリックなどで開くと、同イメージ ファイルをローカル ドライブとしてマウントすることが可能です。
AVDなど、同じ端末に複数のユーザーが同時にログオンするマルチセッション環境におきましても、同様にISO ファイルをローカル ドライブにマウントすることができます。
このとき、ローカル ドライブは各ユーザー間で共有されるため、マウントされた ISO ファイルは全てのユーザーで参照可能となります。

他のユーザーからISOファイルの情報が見えてしまうことに対して、情報の保護の観点で懸念がございます場合には、運用面も含めて対応をご検討いただく必要がございますが、対処策としていくつかご提示可能なものがございますので、それぞれの動作の概要と、設定手段につきまして後述させていただきます。

マウントされたドライブが、同一端末にログオン中のユーザーから参照可能である点への対処について

あるユーザーがマウントしたISOファイルについて、同一端末にログオンしている他のユーザーからの参照を制限したいというご要望に対して、以下の対処策が挙げられます。

1. 指定したドライブを非表示にする
2. ISO ファイルのマウント操作を禁止する

それぞれの対処策の詳細について、後述いたします。

1. 指定したドライブを非表示にする

指定したドライブを非表示にする設定を利用することで、マウントしたドライブの存在を他のユーザーから隠蔽することが可能でございます。
一方で、エクスプローラー上のドライブの表示は隠すことが可能ですが、ドライブ レターを含むパスを直指定することで、該当のドライブにアクセスが可能でございます。

また、該当のAVD環境にて、ローカル ディスクを追加した場合、表示、非表示の対象の
ドライブ レターについて、再設定が必要となる点について、ご留意ください。

ドライブの非表示設定方法

下記レジストリ値を設定することで、ローカルのドライブを非表示に
設定することが可能でございます。

キー:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer
名前:NoDrives
種類:REG_DWORD
データ:以下をご参照ください。

上記レジストリ値のデータに、最下位ビットから A, B, C, … として、各ビットに 1 を指定することで、各ドライブを非表示にすることが可能となります。
例えば、対象のAVD環境にて、既定でマウントされているドライブでドライブ レターD: まで利用されている場合、以下のようにE 以降を非表示の対象することで、新規にマウントされたディスクを非表示にすることが可能です。

例) A~D以外を非表示 (A,B,C,D ドライブのみを表示) とする場合
11 1111 1111 1111 1111 1111 0000 -> 0x3FFFFF0 (16 進数)、67108848 (10 進数)
ZY XWVU TSRQ PONM LKJI HGFE DCBA

上記レジストリ値をコマンドで設定する場合は、管理者権限で起動したコマンド プロンプトで以下を実行します。

1
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v NoDrives /t REG_DWORD /d 0x3FFFFF0 /f

レジストリ エディターでの設定後、または、上記コマンド実行後、再起動を行ってください。

2. ISO ファイルのマウント操作を禁止する

グループ ポリシーの設定にて、ISO ファイルのマウントを抑止することが可能でございます。
なお、本設定を有効にした場合、管理者ユーザーも含め、指定したハードウェア IDに合致するものが利用できなくなります。


[コンピュータの成功] - [管理用テンプレート] - [システム] - [デバイスのインストール] - [デバイスのインストールの制限]

  • [これらのデバイスID と一致するデバイスのインストールを禁止する ]
    → [有効] に設定します。
      [表示…] をクリックし、仮想DVD-ROM のハードウェア ID を指定します。※
      例: SCSI\CdRomMsft____Virtual_DVD-ROM_
      [既にインストール済みの一致するデバイスにも適用されます。] にチェックを入れます。

※ デバイスのハードウェア ID は以下から確認が可能です。
  一つのデバイスに対して複数のハードウェア ID が存在しますが、いずれか一つのIDが上記ポリシーに
  設定されていれば、デバイスのインストールが禁止される挙動になります。

  1. 任意のISOファイルをマウントします。
  2. マイコンピューターを開き、 マウントしたディスクを右クリックし、プロパティを開きます。
  3. [ハードウェア] タブ にて、”Microsoft 仮想 DVD-ROM” をクリックし、[プロパティ] をクリックします。
  4. [詳細] タブにて、[プロパティ] から [ハードウェア ID] を選択し、[値] を確認します。

上記ポリシーを設定した場合、ISO ファイルをダブルクリックなどにより、マウントしようとすると 「ファイルマウント中にエラーが発生しました」 というエラー ポップアップが表示され、マウント処理に失敗します。
このとき、エラーが発生するまでに約 5 分程度の時間を要します。

エラーが発生するまでに約 5 分程度を要するのは、仮想デバイスの制御および処理を行う vhdmp.sys ドライバーがリトライを繰り返しているためとなります。

ISO ファイルをマウントする際には、vhdmp.sys ドライバーが動作します。このドライバーが ISO ファイルをマウントするため、仮想 DVD-ROM に対して ISO ファイルのボリューム情報などを要求しますが、仮想 DVD-ROM はポリシーにより、インストールされていないため、応答しません。そのため、vhdmp.sys ドライバーはその処理をリトライし、リトライの上限に達したタイミングでエラーを返します。

お客様の中には ISO ファイルをユーザーにマウントさせたくないため、上記の [発生条件] のポリシーを設定される場合がございます。期待する動作としては、すぐにエラーを返すことであると存じますが、この vhdmp.sys のリトライはハードコードされているため、レジストリ値の設定などによって、変更することができません。そのため、大変恐縮ではございますが、エラーが発生するまでに時間を要することについてご理解をいただけますと幸いです。

参考 - Windows Server OS の挙動について

Windows Server OS におきましては、既定で、ISOファイルのマウント処理を実行するためには管理者権限が必要でございます。
そのため、一般ユーザーでISO ファイルをマウントしようとした際には、管理者アカウントの情報の入力が求められます。

ISOファイルのマウント操作で管理者権限を要求されるかどうかにつきましては、以下のレジストリで管理されております。
同レジストリの設定を変更することで、Windows 10, Windows Server において、ISOファイルのマウント操作に管理者権限を要求するかどうかが変わることを確認しております。しかしながら、非公開のレジストリ値でございますため、今後の動作に変更がある可能性もございます点について、ご理解いただけますと幸いです。

================
レジストリ キー: HKLM\System\CurrentControlSet\Services\FsDepends\Parameters\AccessControl
レジストリ値: ISOMountAllowNormalUser (REG_DWORD)
データ:
0 : 一般ユーザーでのISOのマウントを制限
1 : 一般ユーザーでのISOのマウントが可能
================

内容は以上となります。
いかがでしたでしょうか。本投稿が少しでも皆様のお役に立てば幸いです。

本情報の内容(添付文書、リンク先などを含む)は、作成日時でのものであり、予告なく変更される場合があります。