Condividi tramite


FWPM_FILTER0 struttura (fwpmtypes.h)

La struttura FWPM_FILTER0 archivia lo stato associato a un filtro.

Sintassi

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;

Members

filterKey

Identifica in modo univoco la sessione.

Se il GUID viene inizializzato su zero nella chiamata a FwpmFilterAdd0, il motore di filtro di base genererà uno.

displayData

Struttura FWPM_DISPLAY_DATA0 che contiene annotazioni leggibili associate al filtro. È necessario il membro del nome della struttura FWPM_DISPLAY_DATA0 .

flags

Combinazione dei valori seguenti.

Flag di filtro Significato
**FWPM_FILTER_FLAG_NONE**
Valore predefinito.
**FWPM_FILTER_FLAG_PERSISTENT**
Il filtro è persistente, ovvero sopravvive all'arresto/avvio BFE.
**Nota** Questo flag non può essere impostato insieme a **FWPM_FILTER_FLAG_BOOTTIME**.
 
**FWPM_FILTER_FLAG_BOOTTIME**
Il filtro viene applicato al momento dell'avvio, anche prima dell'avvio di BFE.
**Nota** Questo flag non può essere impostato insieme a **FWPM_FILTER_FLAG_PERSISTENT**.
 
**FWPM_FILTER_FLAG_HAS_PROVIDER_CONTEXT**
Filtra i riferimenti a un contesto del provider.
**FWPM_FILTER_FLAG_CLEAR_ACTION_RIGHT**
Deselezionare l'azione filtro a destra.
**FWPM_FILTER_FLAG_PERMIT_IF_CALLOUT_UNREGISTERED**
Se il callout non è registrato, il filtro viene considerato come filtro di autorizzazione.
**Nota** Questo flag può essere impostato solo se il tipo **action** è **FWP_ACTION_CALLOUT_TERMINATING** o **FWP_ACTION_CALLOUT_UNKNOWN**.
 
**FWPM_FILTER_FLAG_DISABLED**
Il filtro è disabilitato. I filtri di un provider vengono disabilitati quando il BFE viene avviato se il provider non ha alcun nome del servizio Windows associato o se il servizio associato non è impostato sull'avvio automatico.
**Nota** Impossibile impostare questo flag quando si aggiungono nuovi filtri. Può essere restituito solo da BFE durante l'acquisizione o l'enumerazione dei filtri.
 
**FWPM_FILTER_FLAG_INDEXED**
Il filtro viene indicizzato per consentire una ricerca più veloce durante la classificazione.
**Nota** Disponibile solo in Windows 8 e Windows Server 2012.
 

providerKey

GUID facoltativo del provider di criteri che gestisce questo filtro. Per un elenco di provider predefiniti, vedere Identificatori provider predefiniti.

providerData

Struttura FWP_BYTE_BLOB che contiene dati specifici del provider facoltativi usati dai provider per archiviare informazioni di contesto aggiuntive con l'oggetto .

layerKey

GUID del livello in cui risiede il filtro. Per un elenco di valori possibili, vedere Filtro degli identificatori di livello .

subLayerKey

GUID del livello secondario in cui risiede il filtro. Per un elenco di livelli secondari predefiniti, vedere Filtro Sub-Layer Identificatori .

Se questa opzione è impostata su IID_NULL, il filtro viene aggiunto al sottostrato predefinito.

weight

Struttura FWP_VALUE0 che specifica il peso del filtro. Il peso indica la priorità del filtro, in cui i pesi numerati più elevati hanno priorità superiori (e verranno valutati prima dei filtri con peso inferiore).

I valori di tipo possibili per il peso sono i seguenti.

**Peso** tipo Significato
**FWP_UINT64**
BFE userà il valore fornito come peso del filtro.
**FWP_UINT8**
0–15
BFE userà il valore fornito come indice di intervallo di peso e calcola il peso del filtro in tale intervallo. Per altre informazioni, vedere Assegnazione peso filtro .
**FWP_EMPTY**
BFE assegna automaticamente un peso in base alle condizioni di filtro.

Per calcolare il peso del filtro, vedere Filtrare gli identificatori di peso per le costanti predefinite che possono essere usate per calcolare il peso del filtro.

numFilterConditions

Numero di condizioni di filtro.

filterCondition

Matrice di strutture FWPM_FILTER_CONDITION0 che contengono tutte le condizioni di filtro. Tutto deve essere true per l'esecuzione dell'azione. In altre parole, le condizioni vengono valutate usando l'operatore AND. Se non vengono specificate condizioni, l'azione viene sempre eseguita.

**Nota** In Windows 7 e Windows Server 2008 R2, le condizioni consecutive con lo stesso fieldKey verranno valutate usando l'operatore OR.
 

action

Struttura FWPM_ACTION0 che specifica l'azione da eseguire se tutte le condizioni del filtro sono vere.

rawContext

Disponibile quando il filtro non dispone di informazioni sul contesto del provider, ovvero i flag non contengono FWPM_FILTER_FLAG_HAS_PROVIDER_CONTEXT. Per un elenco di valori possibili predefiniti, vedere Filtrare gli identificatori di contesto .

Il rawContext viene inserito "come è" nel membro del contesto della struttura di FWPS_FILTER0 corrispondente, documentata nel WDK.

providerContextKey

Disponibile quando il filtro dispone di informazioni sul contesto del provider, ovvero i flag contengono FWPM_FILTER_FLAG_HAS_PROVIDER_CONTEXT. Per un elenco di contesti del provider di criteri predefiniti, vedere Identificatori di contesto del provider di criteri predefiniti.

Il LUID del contesto del provider specificato dal providerContextKey viene usato per compilare il membro di contesto della struttura di FWPS_FILTER0 corrispondente, documentata nel WDK.

reserved

Riservato per l'utilizzo nel sistema.

filterId

LUID che identifica il filtro. Questo è anche il LUID della struttura di FWPS_FILTER0 corrispondente, documentata nel WDK.

effectiveWeight

Struttura FWP_VALUE0 che contiene il peso assegnato a FWPS_FILTER0, documentata nel WDK.

Commenti

I primi dieci membri di questa struttura contengono informazioni fornite quando si aggiungono oggetti.

Gli ultimi membri, filterId e effectiveWeight forniscono informazioni aggiuntive durante l'acquisizione o l'enumerazione di oggetti.

FWPM_FILTER0 è un'implementazione specifica di FWPM_FILTER. Per altre informazioni , vedere Nomi Version-Independent WFP e Versioni specifiche di Windows .

Requisiti

Requisito Valore
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2008 [solo app desktop]
Intestazione fwpmtypes.h

Vedi anche

FWPM_ACTION0

FWPM_DISPLAY_DATA0

FWPM_FILTER_CONDITION0

FWP_VALUE0

Assegnazione di pesi dei filtri

Identificatori di peso filtro

Strutture API della piattaforma di filtro di Windows