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