Объектная модель
В следующей таблице перечислены типы объектов, которые можно управлять с помощью различных наборов API, предоставляемых платформой фильтрации Windows (МПП).
Тип объекта | Описание | Пример свойств | Пример |
---|---|---|---|
Фильтр | Правило, которое управляет классификацией. Если выполнены условия, вызывается действие. Это самый сложный объект, предоставляемый МПП, так как он связывает все остальные типы объектов. |
|
"Блокировать трафик с tcp-портом больше 1024". "Выноска идентификаторов для всего трафика, который не защищен". |
Выноски | Набор функций, участвующих в процессе классификации. Он позволяет выполнять пользовательскую обработку пакетов при выполнении определенных условий. |
|
Драйвер NAT |
Слой | Контейнер фильтра в обработчике фильтров. Представляет определенную точку в обработке сетевого трафика, в которой вызывается обработчик фильтров. |
|
Входящий транспортный слой |
Вложенный слой | Подкомпонент слоя, используемый в арбитража. |
|
Подуровневый слой IPsec Tunnel |
Поставщик | Поставщик политики, создающий решение в МПП. Он используется исключительно для управления; Это не влияет на обработку пакетов во время выполнения. |
|
Брандмауэр Windows с расширенной безопасностью Приложение фильтрации URL-адресов стороннего поставщика |
Контекст поставщика | Большой двоичный объект данных, используемый поставщиком политик для хранения произвольных данных контекста. Он используется для передачи пользовательских сведений о конфигурации в выноску. Наиболее распространенный способ использовать сведения о контексте заключается в том, чтобы фильтры ссылались на контекст поставщика. |
|
IPsec сохраняет параметры проверки подлинности в подсистеме базовой фильтрации (BFE). Свойство Context фильтра указывает параметры проверки подлинности, используемые для трафика, описываемого фильтром. Выбор сертификата SSL будет хранить сведения о сертификации в контексте поставщика. |
Типы объектов, предоставляемые API МПП, имеют согласованную семантику. Действия добавления, перечисления, подписки и т. д. аналогичны всем типам объектов.
Каждый тип объекта представлен структурой данных (например, FWPM_FILTER0). Чтобы свести к минимуму количество различных структур данных, предоставляемых API МПП, одна и та же структура данных используется для добавления новых объектов и получения существующих. Таким образом, в каждой структуре данных могут быть поля, которые игнорируются при добавлении нового объекта, так как эти поля заполняются ядром базовой фильтрации (BFE), а не вызывающим объектом. Например, структура данных FWPM_FILTER0 имеет поле filterId, содержащее LUID соответствующего FWPS_FILTER0. Это LUID назначается BFE, поэтому это поле игнорируется в вызове FwpmFilterAdd0.