对象模型

下表列出了可通过 Windows 筛选平台 (WFP) 提供的各种 API 集操作的对象类型。

对象类型 描述 示例属性 示例
筛选器 管理分类的规则。 如果满足条件,则调用 操作。
这是 WFP 公开的最复杂对象,因为它将所有其他对象类型关联在一起。
  • 条件数组
  • 操作 (允许、阻止、标注)
  • Weight
  • 上下文
“阻止 TCP 端口大于 1024 的流量。”
“针对所有未受保护的流量的 IDS 的标注。”
标注 参与分类过程的一组函数。
它允许在满足某些条件时完成自定义数据包处理。
  • ID
  • 适用层
NAT 驱动程序
筛选器引擎中的筛选器容器。
表示网络流量处理中调用筛选器引擎的特定点。
  • 可添加到层的筛选器的架构
入站传输层
子层 层的子组件,用于 筛选器仲裁
  • 重量
IPsec 隧道子层
提供程序 在 WFP 上构建解决方案的策略提供商。
它仅用于管理;它不会影响运行时数据包处理。
  • ID
  • 服务名称
高级安全 Windows 防火墙
第三方 URL 筛选应用程序
提供程序上下文 策略提供程序用于存储任意上下文信息的数据 Blob。
它用于将自定义配置信息传递给标注。
使用上下文信息的最常见方法是让筛选器引用提供程序上下文。
  • ID
  • 数据 Blob
IPsec 将身份验证设置存储在基本筛选引擎 ( BFE) 中。 筛选器的“Context”属性指示要用于筛选器描述的流量的身份验证设置。
SSL 认证选择填充码会将认证信息存储在提供程序上下文中。

WFP API 公开的对象类型具有一致的语义。 对于所有对象类型,添加、枚举、订阅等操作都类似。

每个对象类型都由一个数据结构表示, (例如 ,FWPM_FILTER0) 。 为了最大程度地减少 WFP API 公开的不同数据结构的数量,使用相同的数据结构来添加新对象和检索现有对象。 因此,在添加新对象时,每个数据结构中可能存在忽略的字段,因为这些字段由基本筛选引擎 (BFE) 填充,而不是由调用方填充。 例如,FWPM_FILTER0数据结构具有 filterId 字段,其中包含相应FWPS_FILTER0LUID。 此 LUID 由 BFE 分配,因此,在 调用 FwpmFilterAdd0 时忽略此字段。

对象管理