Ejemplo de control de bots: permitir un bot bloqueado específico - AWS WAF, AWS Firewall Manager, y AWS Shield Advanced

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

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 AWS WAF regla de control de bots bloquea un bot que no quieres bloquear, haz lo siguiente:

  1. 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 la ACL web, consulte Registro del tráfico de ACL AWS WAF web. Tenga en cuenta que la etiqueta que es la regla se añade a las solicitudes.

  2. En su 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 de la 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.

  3. Añada una regla de coincidencia de etiquetas a su ACL web después del grupo de reglas administrado 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 ACL web ya está configurada para que el bot que desea permitir ya no esté bloqueado por la regla de bloqueo que identificó en los registros.

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 monitoreo, excepto los que tengan la etiqueta pingdom con el nombre del bot.

La siguiente regla usa el grupo de reglas administrado 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 administrado de control de bots anterior en el orden de procesamiento de las 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" } }