Cuando configura una lista de permitidos o reglas personalizadas, defina las condiciones de coincidencia para especificar qué solicitudes se inspeccionan. Cada condición de coincidencia consta de un campo de coincidencia y un operador lógico.
Qué es una condición de coincidencia
Una condición de coincidencia define las características de la solicitud que DCDN WAF inspecciona en el edge. Cuando configura una custom protection policy, una whitelist o una IP address blacklist, utilice uno o más elementos Match Condition para definir los criterios de una regla. Si una solicitud entrante cumple con las condiciones de coincidencia, se activa la regla. A continuación, WAF aplica a la solicitud la acción de regla especificada, como Block, JavaScript Validation o Monitor.
Campos de coincidencia compatibles
A continuación se describen los campos de coincidencia disponibles.
|
Campo de coincidencia |
Operadores lógicos |
Descripción |
|
URI |
|
El identificador uniforme de recursos (URI) de una solicitud, que indica la ruta del recurso. El valor debe comenzar con una barra diagonal ( |
|
IP |
|
La dirección IP de origen del cliente que realiza la solicitud. El valor debe cumplir con los siguientes requisitos:
|
|
Referer |
|
La URL de la página de origen. |
|
User-Agent |
|
Información sobre el navegador del cliente, como su identidad, motor de renderizado y versión. |
|
Query string |
|
La parte de la URL que sigue al signo de interrogación (?). |
|
Cookie |
|
La información de cookies de la solicitud. |
|
Content-Type |
|
El tipo de medio del cuerpo de la solicitud, tal como se indica en el encabezado Content-Type. También se conoce como tipo MIME. |
|
Content-Length |
Is Less Than, Is Equal To, Is Greater Than |
El tamaño del cuerpo de la solicitud en bytes. Valores válidos: de 0 a 8192. |
|
X-Forwarded-For |
|
La dirección IP original del cliente. Se identifica mediante el encabezado de solicitud X-Forwarded-For (XFF) cuando el tráfico pasa por un proxy HTTP o un load balancer. Este encabezado solo está presente si la solicitud se enruta a través de un proxy o un load balancer. |
|
Request body |
|
El contenido del cuerpo de la solicitud. WAF no inspecciona cuerpos de solicitud mayores a 8 KB. |
|
HTTP method |
|
El método utilizado en la solicitud. Los métodos compatibles incluyen GET, POST, DELETE, PUT, OPTIONS, CONNECT, HEAD, TRACE y PATCH. |
|
Header |
|
Los encabezados de la solicitud. Se admiten campos de encabezado personalizados. |
|
URI path |
|
El componente de ruta del URI de la solicitud. |
|
Query string parameter |
|
Un parámetro de la cadena de consulta. Por ejemplo, en la URL |
|
Host |
|
El nombre de dominio solicitado. |
|
CookieName |
|
El nombre (o clave) de una cookie. Por ejemplo, en la cookie |
|
BodyParameter |
|
El nombre de un parámetro en el cuerpo de la solicitud. Por ejemplo, si un cuerpo de solicitud contiene la cadena |
|
Nombre de archivo |
|
El nombre del archivo al final de la ruta del URI. Por ejemplo, en |
|
Extensión de archivo |
|
La extensión del archivo solicitado, como |
Operadores lógicos
|
Operador lógico |
Descripción |
|
Is, Is Not |
Comprueba si el valor del campo es o no la dirección IP o el bloque CIDR especificado. |
|
Contains, Does Not Contain |
Comprueba si el valor del campo contiene o no la subcadena especificada. |
|
Is in, Is Not in |
Comprueba si el valor del campo está o no en la lista de direcciones IP especificada. |
|
Contains One of, Does Not Contain Any of |
Comprueba si el valor del campo contiene como mínimo una de las subcadenas especificadas, o si no contiene ninguna de ellas. |
|
Equals, Does Not Equal |
Comprueba si el valor del campo coincide exactamente o no con el valor especificado. |
|
Equals One of, Does Not Equal Any of |
Comprueba si el valor del campo coincide exactamente con como mínimo uno de los valores especificados, o si no coincide con ninguno de ellos. |
|
Length Equals, Length Is Greater Than, Length Is Less Than |
Compara la longitud del valor del campo en bytes con el valor numérico especificado. |
|
Exists, Does Not Exist |
Comprueba si el campo especificado existe o no en la solicitud. |
|
Is Less Than, Is Equal To, Is Greater Than |
Compara el valor numérico del campo con el valor numérico especificado. |
|
Starts With, Ends With |
Comprueba si el valor del campo comienza o termina con la subcadena especificada. |
|
Regex Match, Regex Mismatch |
Comprueba si el valor del campo coincide o no con la expresión regular especificada. |
|
Is Empty |
Comprueba si el valor del campo está vacío. |
Ejemplos de configuración
Ejemplo 1: establezca el campo de coincidencia en
URI, el operador lógico enContainsy el contenido de coincidencia en/login.php. Esta regla se activa si el URI de una solicitud contiene/login.php.Ejemplo 2: establezca el campo de coincidencia en
IP, el operador lógico enIsy el contenido de coincidencia en 192.168.0.1. Esta regla se activa para las solicitudes provenientes de la dirección IP 192.168.0.1.