Share via


estructura FWPM_FILTER0 (fwpmtypes.h)

La estructura FWPM_FILTER0 almacena el estado asociado a un filtro.

Sintaxis

typedef struct FWPM_FILTER0_ {
  GUID                   filterKey;
  FWPM_DISPLAY_DATA0     displayData;
  UINT32                 flags;
  GUID                   *providerKey;
  FWP_BYTE_BLOB          providerData;
  GUID                   layerKey;
  GUID                   subLayerKey;
  FWP_VALUE0             weight;
  UINT32                 numFilterConditions;
  FWPM_FILTER_CONDITION0 *filterCondition;
  FWPM_ACTION0           action;
  union {
    UINT64 rawContext;
    GUID   providerContextKey;
  };
  GUID                   *reserved;
  UINT64                 filterId;
  FWP_VALUE0             effectiveWeight;
} FWPM_FILTER0;

Miembros

filterKey

Identifica de forma única la sesión.

Si el GUID se inicializa en cero en la llamada a FwpmFilterAdd0, el motor de filtrado base (BFE) generará uno.

displayData

Estructura FWPM_DISPLAY_DATA0 que contiene anotaciones legibles para personas asociadas al filtro. Se requiere el miembro de nombre de la estructura FWPM_DISPLAY_DATA0 .

flags

Combinación de los valores siguientes.

Marca de filtro Significado
**FWPM_FILTER_FLAG_NONE**
Predeterminada.
**FWPM_FILTER_FLAG_PERSISTENT**
El filtro es persistente, es decir, sobrevive a través de la detención o inicio de BFE.
**Nota** Esta marca no se puede establecer junto con **FWPM_FILTER_FLAG_BOOTTIME**.
 
**FWPM_FILTER_FLAG_BOOTTIME**
El filtro se aplica en tiempo de arranque, incluso antes de que se inicie BFE.
**Nota** Esta marca no se puede establecer junto con **FWPM_FILTER_FLAG_PERSISTENT**.
 
**FWPM_FILTER_FLAG_HAS_PROVIDER_CONTEXT**
El filtro hace referencia a un contexto de proveedor.
**FWPM_FILTER_FLAG_CLEAR_ACTION_RIGHT**
Borre la acción de filtro a la derecha.
**FWPM_FILTER_FLAG_PERMIT_IF_CALLOUT_UNREGISTERED**
Si la llamada no está registrada, el filtro se trata como filtro de permiso.
**Nota** Esta marca solo se puede establecer si el tipo **action** es **FWP_ACTION_CALLOUT_TERMINATING** o **FWP_ACTION_CALLOUT_UNKNOWN**.
 
**FWPM_FILTER_FLAG_DISABLED**
El filtro está deshabilitado. Los filtros de un proveedor se deshabilitan cuando se inicia la BFE si el proveedor no tiene ningún nombre de servicio de Windows asociado o si el servicio asociado no está establecido en el inicio automático.
**Nota** Esta marca no se puede establecer al agregar nuevos filtros. BFE solo puede devolverlo al obtener o enumerar filtros.
 
**FWPM_FILTER_FLAG_INDEXED**
El filtro se indexa para ayudar a habilitar una búsqueda más rápida durante la clasificación.
**Nota** Solo está disponible en Windows 8 y Windows Server 2012.
 

providerKey

GUID opcional del proveedor de directivas que administra este filtro. Consulte Identificadores de proveedor integrados para obtener una lista de proveedores de directivas predefinidos.

providerData

Estructura FWP_BYTE_BLOB que contiene datos opcionales específicos del proveedor utilizados por los proveedores para almacenar información de contexto adicional con el objeto .

layerKey

GUID de la capa donde reside el filtro. Consulte Filtering Layer Identifiers (Filtrar identificadores de capa ) para obtener una lista de los valores posibles.

subLayerKey

GUID de la subcapa donde reside el filtro. Consulte Filtrado Sub-Layer identificadores para obtener una lista de subcapas integradas.

Si se establece en IID_NULL, el filtro se agrega a la subcapa predeterminada.

weight

Estructura FWP_VALUE0 que especifica el peso del filtro. El peso indica la prioridad del filtro, donde las ponderaciones más altas tienen prioridades más altas (y se evaluarán antes de los filtros ponderados más bajos).

Los posibles valores de tipo para weight son los siguientes.

Tipo **weight** Significado
**FWP_UINT64**
BFE usará el valor proporcionado como peso del filtro.
**FWP_UINT8**
0–15
BFE usará el valor proporcionado como índice de intervalo de peso y calculará el peso del filtro en ese intervalo. Consulte Asignación de peso de filtro para obtener más información.
**FWP_EMPTY**
BFE asignará automáticamente un peso en función de las condiciones de filtro.

Consulte Filter Weight Identifiers (Identificadores de peso de filtro ) para ver las constantes integradas que se pueden usar para calcular el peso del filtro.

numFilterConditions

Número de condiciones de filtro.

filterCondition

Matriz de FWPM_FILTER_CONDITION0 estructuras que contienen todas las condiciones de filtrado. Todo debe ser true para que se realice la acción. En otras palabras, las condiciones se evalúan mediante el operador AND. Si no se especifica ninguna condición, siempre se realiza la acción.

**Nota** En Windows 7 y Windows Server 2008 R2, las condiciones consecutivas con la misma fieldKey se evaluarán mediante el operador OR.
 

action

Estructura FWPM_ACTION0 que especifica la acción que se va a realizar si se cumplen todas las condiciones de filtro.

rawContext

Disponible cuando el filtro no tiene información de contexto del proveedor, es decir, las marcas no contienen FWPM_FILTER_FLAG_HAS_PROVIDER_CONTEXT. Consulte Filter Context Identifiers (Identificadores de contexto de filtro ) para obtener una lista de los valores posibles integrados.

RawContext se coloca "tal cual" en el miembro de contexto de la estructura de FWPS_FILTER0 correspondiente, que se documenta en el WDK.

providerContextKey

Disponible cuando el filtro tiene información de contexto del proveedor, es decir, las marcas contienen FWPM_FILTER_FLAG_HAS_PROVIDER_CONTEXT. Consulte Identificadores de contexto de proveedor integrados para obtener una lista de contextos de proveedor de directivas predefinidos.

El LUID del contexto de proveedor especificado por providerContextKey se usa para rellenar el miembro de contexto de la estructura de FWPS_FILTER0 correspondiente, que se documenta en el WDK.

reserved

Reservado para uso del sistema.

filterId

LUID que identifica el filtro. También es el LUID de la estructura de FWPS_FILTER0 correspondiente, que se documenta en el WDK.

effectiveWeight

Estructura FWP_VALUE0 que contiene el peso asignado a FWPS_FILTER0, que se documenta en el WDK.

Comentarios

Los diez primeros miembros de esta estructura contienen información proporcionada al agregar objetos.

Los últimos miembros, filterId y effectiveWeight, proporcionan información adicional al obtener o enumerar objetos.

FWPM_FILTER0 es una implementación específica de FWPM_FILTER. Para obtener más información, vea NOMBRES DE Version-Independent DE PMA y versiones específicas de Windows dirigidas a destinatarios.

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2008 [solo aplicaciones de escritorio]
Encabezado fwpmtypes.h

Consulte también

FWPM_ACTION0

FWPM_DISPLAY_DATA0

FWPM_FILTER_CONDITION0

FWP_VALUE0

Asignación del peso del filtro

Identificadores de peso de filtro

Estructuras de API de plataforma de filtrado de Windows