Presentamos una nueva experiencia de consola para AWS WAF
Ahora puede usar la experiencia actualizada para acceder a las funciones de AWS WAF desde cualquier parte de la consola. Para obtener más información, consulta Trabajo con la experiencia de consola actualizada.
Ejemplo de control de bots: permitir un bot bloqueado específico
Es posible que un bot esté bloqueado por más de una de las reglas de control de bots. Siga el procedimiento a continuación para cada regla de bloqueo.
Si una regla de control de bots de AWS WAF bloquea un bot que no quiere bloquear, haga lo siguiente:
Compruebe los registros para identificar la regla de control de bots que bloquea el bot. La regla de bloqueo se especificará en los registros de los campos cuyos nombres comiencen por
terminatingRule. Para obtener información acerca de los registros de paquete de protección (ACL web), consulte Registro del tráfico de paquetes de protección (ACL web) de AWS WAF. Tenga en cuenta que la etiqueta que es la regla se añade a las solicitudes.En su paquete de protección (ACL web), anule la acción de regla de bloqueo para el recuento. Para hacerlo en la consola, edite la regla del grupo de reglas del paquete de protección (ACL web) y elija la anulación de una acción de regla Count para la regla. Esto garantiza que el bot no esté bloqueado por la regla, pero la regla seguirá aplicando su etiqueta a las solicitudes coincidentes.
Añada una regla de coincidencia de etiquetas a su paquete de protección (ACL web) después del grupo de reglas administradas de control de bots. Configure la regla para que coincida con la etiqueta de la regla anulada y bloquee todas las solicitudes coincidentes, excepto las del bot que no desee bloquear.
Su paquete de protección (ACL web) ya está configurado para que la regla de bloqueo que identificó en los registros no bloquee el bot que desea permitir.
Compruebe de nuevo el tráfico y sus registros para asegurarse de que el bot esté autorizado a pasar. Si no es así, vuelva a realizar el procedimiento anterior.
Por ejemplo, suponga que desea bloquear todos los bots de monitorización, excepto pingdom. En este caso, anule la regla CategoryMonitoring para el recuento y, a continuación, escriba una regla para bloquear todos los bots de supervisión, excepto los que tengan la etiqueta pingdom con el nombre del bot.
La siguiente regla usa el grupo de reglas administradas por el control de bots, pero anula la acción de regla para CategoryMonitoring para el recuento. La regla de supervisión de categorías aplica sus etiquetas como de costumbre a las solicitudes coincidentes, pero solo las cuenta en lugar de realizar su acción habitual de bloqueo.
{ "Name": "AWS-AWSBotControl-Example", "Priority": 5, "Statement": { "ManagedRuleGroupStatement": { "VendorName": "AWS", "Name": "AWSManagedRulesBotControlRuleSet", "ManagedRuleGroupConfigs": [ { "AWSManagedRulesBotControlRuleSet": { "InspectionLevel": "COMMON" } } ], "RuleActionOverrides": [ { "ActionToUse": { "Count": {} }, "Name": "CategoryMonitoring" } ], "ExcludedRules": [] } }, "VisibilityConfig": { "SampledRequestsEnabled": true, "CloudWatchMetricsEnabled": true, "MetricName": "AWS-AWSBotControl-Example" } }
La siguiente regla coincide con la etiqueta de monitorización de categorías que la regla CategoryMonitoring anterior añade a las solicitudes web coincidentes. Entre las solicitudes de monitorización por categorías, esta regla bloquea todas excepto las que tienen una etiqueta para el nombre del bot pingdom.
La siguiente regla debe ejecutarse después del grupo de reglas administradas de control de bots anterior en el orden de procesamiento del paquete de protección (ACL web).
{ "Name": "match_rule", "Priority": 10, "Statement": { "AndStatement": { "Statements": [ { "LabelMatchStatement": { "Scope": "LABEL", "Key": "awswaf:managed:aws:bot-control:bot:category:monitoring" } }, { "NotStatement": { "Statement": { "LabelMatchStatement": { "Scope": "LABEL", "Key": "awswaf:managed:aws:bot-control:bot:name:pingdom" } } } } ] } }, "Action": { "Block": {} }, "VisibilityConfig": { "SampledRequestsEnabled": true, "CloudWatchMetricsEnabled": true, "MetricName": "match_rule" } }