FwpmConnectionPolicyAdd0, fonction (fwpmk.h)
La fonction FwpmConnectionPolicyAdd0API configure les stratégies de routage pour les connexions sortantes.
Syntaxe
NTSTATUS FwpmConnectionPolicyAdd0(
[in] HANDLE engineHandle,
[in] const FWPM_PROVIDER_CONTEXT3 *connectionPolicy,
[in] FWP_IP_VERSION ipVersion,
[in] UINT64 weight,
[in] UINT32 numFilterConditions,
[in, reads(numFilterConditions)] const FWPM_FILTER_CONDITION0 *filterConditions,
[in, optional] PSECURITY_DESCRIPTOR sd
);
Paramètres
[in] engineHandle
Handle vers une session ouverte avec le moteur de filtre. Pour ouvrir une session avec le moteur de filtre, appelez FwpmEngineOpen0.
[in] connectionPolicy
État associé à un contexte de fournisseur.
[in] ipVersion
Version IP du trafic.
[in] weight
Spécifie le poids que cet agent intermédiaire approuvé (TIA) doit être donné par rapport à tous les homologues.
[in] numFilterConditions
Nombre d’éléments dans filterConditions.
[in, reads(numFilterConditions)] filterConditions
Condition de filtre qui doit être vraie pour que l’action soit effectuée.
Parmi les conditions de correspondance possibles (voir identificateurs de condition de filtrage), celles de la liste suivante sont prises en charge par FwpmConnectionPolicyAdd0. Définissez ces valeurs dans FWPM_FILTER_CONDITION0 ::fieldKey.
- FWPM_CONDITION_ALE_APP_ID
- FWPM_CONDITION_ALE_USER_ID
- FWPM_CONDITION_IP_LOCAL_ADDRESS
- FWPM_CONDITION_IP_LOCAL_ADDRESS_TYPE
- FWPM_CONDITION_IP_LOCAL_PORT
- FWPM_CONDITION_IP_PROTOCOL
- FWPM_CONDITION_IP_REMOTE_ADDRESS
- FWPM_CONDITION_IP_DESTINATION_ADDRESS_TYPE
- FWPM_CONDITION_IP_REMOTE_PORT
- FWPM_CONDITION_FLAGS
- FWPM_CONDITION_ALE_ORIGINAL_APP_ID
- FWPM_CONDITION_ALE_PACKAGE_ID
- FWPM_CONDITION_COMPARTMENT_ID
[in, optional] sd
Informations de sécurité.
Valeur de retour
Retourner le code/la valeur | Description |
---|---|
ERROR_SUCCESS 0 |
La stratégie de routage a été correctement configurée. |
code d’erreur FWP_E_* 0x80320001 — 0x80320039 |
Erreur spécifique à la plateforme de filtrage Windows (PAM). Consultez codes d’erreur PAM pour plus d’informations. |
code d’erreur RPC_* 0x80010001 — 0x80010122 |
Échec de la communication avec le moteur de pare-feu distant ou local. |
autres codes NTSTATUS | Une erreur s’est produite. |
Remarques
La pile TCP/IP prend en charge le routage basé sur l’adresse de destination pour les connexions sortantes. FwpmConnectionPolicyAdd0API vous permet de configurer des stratégies de routage plus expressives pour les connexions sortantes, et ainsi de permettre des scénarios plus complexes tels que le routage basé sur l’adresse source, le routage basé sur les processus, le routage basé sur les ports et d’autres. Une stratégie de connexion se compose d’un tableau de conditions de correspondance, d’un tableau de paramètres d’itinéraire et d’une pondération associée. Vous pouvez configurer plusieurs stratégies et elles sont évaluées en fonction de leurs pondérations configurées pour une connexion sortante (un poids plus élevé est prioritaire). Paramètre de routage de la première stratégie dont les conditions (ANDed) correspondent à la connexion sortante est appliquée.
Voici les paramètres de routage pris en charge (voir FWP_NETWORK_CONNECTION_POLICY_SETTING_TYPE) :
FWP_NETWORK_CONNECTION_POLICY_SOURCE_ADDRESS. Adresse source à utiliser pour la connexion. La valeur doit être une FWP_UINT32 pour une adresse IPv4 et une FWP_BYTE_ARRAY16_TYPE pour une adresse IPv6.
FWP_NETWORK_CONNECTION_POLICY_NEXT_HOP_INTERFACE. LUID de l’interface sortante à utiliser pour la connexion. La valeur doit être une FWP_UINT64.
FWP_NETWORK_CONNECTION_POLICY_NEXT_HOP. Adresse d’authentification suivante (ou passerelle) à utiliser pour la connexion. La valeur doit être une FWP_UINT32 pour une adresse IPv4 et une FWP_BYTE_ARRAY16_TYPE pour une adresse IPv6.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Disponible à partir de Windows Vista. |
plateforme cible | Universel |
d’en-tête | fwpmk.h |
bibliothèque | fwpkclnt.lib |
IRQL | <= PASSIVE_LEVEL |