バインド リンクの拒否
[!注意]
一部の情報はリリース前の製品に関する事項であり、正式版がリリースされるまでに大幅に変更される可能性があります。 Microsoft はここに示されている情報について、明示か黙示かを問わず、一切保証しません。
Windows 11 バージョン 24H2 以降では、バインド リンクを使用して、バインド フィルター (bindflt.sys) を使用してファイル システム名前空間をローカルの "仮想パス" にバインドできます。
ミニフィルターは、担当しているディレクトリを変更するバインド リンクを拒否することを選べます。 たとえば、ウイルス対策フィルターは、定義ファイルを格納するフォルダーのバインド リンクを拒否できます。
ミニフィルターは、システムのブート パーティション (DO_SYSTEM_BOOT_PARTITION) 上でのみバインド リンクを拒否できます。 他のパーティションでバインド リンクを拒否することはできません。
CreateBindLink 要求に応答して、BindFlt では次のパラメーターを使用して IRP_MJ_QUERY_OPEN を送信します。
- FileInformationClass は FileStatBasicInformation に設定されます。
- FileInformation は、FILE_STAT_BASIC_INFORMATION 構造体を指します。
- Irp には、ECP コンテキストとして VETO_BINDING_ECP_CONTEXT 構造体を持つ GUID_ECP_TYPE_VETO_BINDING ECP があります。
BindFlt は IRP を送信するため、バインド リンクを拒否するには、フィルターを BindFlt の下に配置する必要があります。 このようなミニフィルターで、この IRP を監視してバインド リンクを拒否するには、VETO_BINDING_ECP_CONTEXT 構造体の ShouldVetoBinding メンバーを TRUE に設定します。 この場合、BindFlt はバインド リンクを拒否し、呼び出し元にエラーを返します。