바인딩 링크 거부
[!NOTE]
일부 정보는 상용 출시되기 전에 실질적으로 수정될 수 있는 시험판 제품과 관련이 있습니다. 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 는 바인딩 링크를 거부하고 호출자에게 오류를 반환합니다.