

**Ti presentiamo una nuova esperienza di console per AWS WAF**

Ora puoi utilizzare l'esperienza aggiornata per accedere alle AWS WAF funzionalità da qualsiasi punto della console. Per ulteriori dettagli, consulta [Lavorare con la console](https://docs.aws.amazon.com/waf/latest/developerguide/working-with-console.html). 

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# AWS WAF Esempi di Bot Control
<a name="waf-bot-control-examples"></a>

Questa sezione mostra configurazioni di esempio che soddisfano una serie di casi d'uso comuni per le implementazioni di AWS WAF Bot Control. 

Ogni esempio fornisce una descrizione del caso d'uso e quindi mostra la soluzione negli elenchi JSON per le regole configurate personalizzate. 

**Nota**  
Gli elenchi JSON mostrati in questi esempi sono stati creati nella console configurando la regola e quindi modificandola utilizzando l'editor **Rule** JSON. 

**Topics**
+ [Esempio di Bot Control: configurazione semplice](waf-bot-control-example-basic.md)
+ [Esempio di controllo dei bot: autorizzazione esplicita dei bot verificati](waf-bot-control-example-allow-verified-bots.md)
+ [Esempio di controllo dei bot: blocco dei bot verificati](waf-bot-control-example-block-verified-bots.md)
+ [Esempio di controllo dei bot: consentire uno specifico bot bloccato](waf-bot-control-example-allow-blocked-bot.md)
+ [Esempio di Bot Control: creazione di un'eccezione per un agente utente bloccato](waf-bot-control-example-user-agent-exception.md)
+ [Esempio di Bot Control: utilizzo di Bot Control solo per la pagina di accesso](waf-bot-control-example-scope-down-login.md)
+ [Esempio di Bot Control: utilizzo di Bot Control solo per contenuti dinamici](waf-bot-control-example-scope-down-dynamic-content.md)
+ [Esempio di Bot Control: esclusione dell'intervallo IP dalla gestione dei bot](waf-bot-control-example-scope-down-ip.md)
+ [Esempio di controllo dei bot: consentire il traffico proveniente da un bot che controlli](waf-bot-control-example-scope-down-your-bot.md)
+ [Esempio di Bot Control: attivazione di un livello di ispezione mirato](waf-bot-control-example-targeted-inspection-level.md)
+ [Esempio di Bot Control: utilizzo di due istruzioni per limitare l'uso del livello di ispezione mirato](waf-bot-control-example-common-and-targeted-inspection-level.md)

# Esempio di Bot Control: configurazione semplice
<a name="waf-bot-control-example-basic"></a>

Il seguente elenco JSON mostra un pacchetto di protezione di esempio (Web ACL) con un gruppo di regole gestito da AWS WAF Bot Control. Nota la configurazione di visibilità, che consente di AWS WAF archiviare gli esempi e le metriche delle richieste per scopi di monitoraggio. 

```
{
  "Name": "Bot-WebACL",
  "Id": "...",
  "ARN": "...",
  "DefaultAction": {
    "Allow": {}
  },
  "Description": "Bot-WebACL",
  "Rules": [
      {
        ...
      },
      {
         "Name": "AWS-AWSBotControl-Example",
         "Priority": 5,
         "Statement": {
            "ManagedRuleGroupStatement": {
               "VendorName": "AWS",
               "Name": "AWSManagedRulesBotControlRuleSet",
               "ManagedRuleGroupConfigs": [
                 {
                   "AWSManagedRulesBotControlRuleSet": {
                     "InspectionLevel": "COMMON"
                   }
                 }
               ],
               "RuleActionOverrides": [],
               "ExcludedRules": []
            },
            "VisibilityConfig": {
               "SampledRequestsEnabled": true,
               "CloudWatchMetricsEnabled": true,
               "MetricName": "AWS-AWSBotControl-Example"
             }
          }
      }
    ],
    "VisibilityConfig": {
      ...
    },
    "Capacity": 1496,
    "ManagedByFirewallManager": false,
    "RetrofittedByFirewallManager": false
}
```

# Esempio di controllo dei bot: autorizzazione esplicita dei bot verificati
<a name="waf-bot-control-example-allow-verified-bots"></a>

AWS WAF Bot Control non blocca i bot noti AWS per essere bot comuni e verificabili. Quando Bot Control identifica una richiesta web come proveniente da un bot verificato, aggiunge un'etichetta che nomina il bot e un'etichetta che indica che si tratta di un bot verificato. Bot Control non aggiunge altre etichette, come le etichette dei segnali, per evitare che i bot noti come validi vengano bloccati.

Potresti avere altre AWS WAF regole che bloccano i bot verificati. Se vuoi assicurarti che i bot verificati siano consentiti, aggiungi una regola personalizzata per consentirli in base alle etichette Bot Control. La tua nuova regola deve seguire il gruppo di regole gestito da Bot Control, in modo che le etichette siano disponibili per il confronto. 

La seguente regola consente esplicitamente i bot verificati.

```
{
    "Name": "match_rule",
    "Statement": {
      "LabelMatchStatement": {
        "Scope": "LABEL",
        "Key": "awswaf:managed:aws:bot-control:bot:verified"
      }
    },
    "RuleLabels": [],
    "Action": {
      "Allow": {}
    }
}
```

# Esempio di controllo dei bot: blocco dei bot verificati
<a name="waf-bot-control-example-block-verified-bots"></a>

Per bloccare i bot verificati, devi aggiungere una regola per bloccarli che segue il gruppo di regole gestito da AWS WAF Bot Control. A tale scopo, identifica i nomi dei bot che desideri bloccare e utilizza un'istruzione label match per identificarli e bloccarli. Se vuoi bloccare solo tutti i bot verificati, puoi omettere la corrispondenza con l'`bot:name:`etichetta. 

La seguente regola blocca solo il bot `bingbot` verificato. Questa regola deve essere eseguita dopo il gruppo di regole gestito da Bot Control.

```
{
    "Name": "match_rule",
    "Statement": {
      "AndStatement": {
        "Statements": [
          {
            "LabelMatchStatement": {
              "Scope": "LABEL",
              "Key": "awswaf:managed:aws:bot-control:bot:name:bingbot"
            }
          },
          {
            "LabelMatchStatement": {
              "Scope": "LABEL",
              "Key": "awswaf:managed:aws:bot-control:bot:verified"
            }
          }
        ]
      }
    },
    "RuleLabels": [],
    "Action": {
      "Block": {}
    }
  }
```

La seguente regola blocca tutti i bot verificati.

```
{
    "Name": "match_rule",
    "Statement": {
      "LabelMatchStatement": {
        "Scope": "LABEL",
        "Key": "awswaf:managed:aws:bot-control:bot:verified"
      }
    },
    "RuleLabels": [],
    "Action": {
      "Block": {}
    }
}
```

# Esempio di controllo dei bot: consentire uno specifico bot bloccato
<a name="waf-bot-control-example-allow-blocked-bot"></a>

È possibile che un bot venga bloccato da più di una delle regole di Bot Control. Esegui la procedura seguente per ogni regola di blocco. 

Se una regola di AWS WAF Bot Control blocca un bot che non desideri bloccare, procedi come segue:

1. Identifica la regola Bot Control che blocca il bot controllando i log. La regola di blocco verrà specificata nei log nei campi i cui nomi iniziano con. `terminatingRule` Per informazioni sui log del Protection Pack (Web ACL), vedere. [Registrazione del traffico del pacchetto di AWS WAF protezione (Web ACL)](logging.md) Nota l'etichetta che la regola aggiunge alle richieste. 

1. Nel tuo pacchetto di protezione (ACL web), sostituisci l'azione della regola di blocco per contare. Per eseguire questa operazione nella console, modifica la regola del gruppo di regole nel protection pack (Web ACL) e scegli un'azione che sostituisca l'azione della Count regola per la regola. Ciò garantisce che il bot non sia bloccato dalla regola, ma la regola applicherà comunque la sua etichetta alle richieste corrispondenti. 

1. Aggiungi una regola di corrispondenza delle etichette al tuo pacchetto di protezione (ACL web), dopo il gruppo di regole gestito da Bot Control. Configura la regola in modo che corrisponda all'etichetta della regola sostituita e per bloccare tutte le richieste corrispondenti tranne il bot che non desideri bloccare. 

   Il tuo pacchetto di protezione (ACL web) è ora configurato in modo che il bot che desideri consentire non sia più bloccato dalla regola di blocco identificata nei log. 

Controlla nuovamente il traffico e i log per assicurarti che al bot sia consentito l'accesso. In caso contrario, esegui nuovamente la procedura precedente.

Ad esempio, supponiamo di voler bloccare tutti i bot di monitoraggio ad eccezione di. `pingdom` In questo caso, sostituite la `CategoryMonitoring` regola di conteggio e quindi scrivete una regola per bloccare tutti i bot di monitoraggio ad eccezione di quelli con l'etichetta del nome del bot. `pingdom` 

La regola seguente utilizza il gruppo di regole gestito da Bot Control ma sostituisce l'azione della regola per contare. `CategoryMonitoring` La regola di monitoraggio delle categorie applica le sue etichette come di consueto alle richieste corrispondenti, ma le conta solo invece di eseguire la consueta azione di blocco. 

```
{
  "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 regola seguente corrisponde all'etichetta di monitoraggio della categoria che la `CategoryMonitoring` regola precedente aggiunge alle richieste Web corrispondenti. Tra le richieste di monitoraggio delle categorie, questa regola blocca tutte tranne quelle che hanno un'etichetta per il nome `pingdom` del bot. 

La seguente regola deve essere eseguita dopo il precedente gruppo di regole gestito da Bot Control nell'ordine di elaborazione del Protection Pack (Web ACL). 

```
{
      "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"
      }
}
```

# Esempio di Bot Control: creazione di un'eccezione per un agente utente bloccato
<a name="waf-bot-control-example-user-agent-exception"></a>

Se il traffico proveniente da alcuni user agent diversi dal browser viene bloccato erroneamente, puoi creare un'eccezione impostando la regola AWS WAF Bot Control non valida su Count e combinando quindi l'etichettatura della regola `SignalNonBrowserUserAgent` con i criteri di eccezione impostati. 

**Nota**  
Le app mobili in genere hanno agenti utente diversi dal browser, che la regola blocca per impostazione predefinita. `SignalNonBrowserUserAgent` 

La regola seguente utilizza il gruppo di regole gestito da Bot Control ma sostituisce l'azione della regola per `SignalNonBrowserUserAgent` Count. La regola del segnale applica le sue etichette come di consueto alle richieste corrispondenti, ma le conta solo invece di eseguire la consueta azione di blocco. 

```
{
  "Name": "AWS-AWSBotControl-Example",
  "Priority": 5,
  "Statement": {
    "ManagedRuleGroupStatement": {
      "VendorName": "AWS",
      "Name": "AWSManagedRulesBotControlRuleSet",
      "ManagedRuleGroupConfigs": [
        {
          "AWSManagedRulesBotControlRuleSet": {
            "InspectionLevel": "COMMON"
          }
        }
      ],
	  "RuleActionOverrides": [
        {
          "ActionToUse": {
            "Count": {}
          },
          "Name": "SignalNonBrowserUserAgent"
        }
      ],
      "ExcludedRules": []
    }
  },
  "VisibilityConfig": {
    "SampledRequestsEnabled": true,
    "CloudWatchMetricsEnabled": true,
    "MetricName": "AWS-AWSBotControl-Example"
  }
}
```

La seguente regola corrisponde all'etichetta del segnale che la `SignalNonBrowserUserAgent` regola Bot Control aggiunge alle richieste web corrispondenti. Tra le richieste di segnale, questa regola blocca tutte tranne quelle che hanno lo user agent che vogliamo consentire. 

La seguente regola deve essere eseguita dopo il precedente gruppo di regole gestito da Bot Control nell'ordine di elaborazione del Protection Pack (Web ACL). 

```
{
    "Name": "match_rule",
    "Statement": {
      "AndStatement": {
        "Statements": [
          {
            "LabelMatchStatement": {
              "Scope": "LABEL",
              "Key": "awswaf:managed:aws:bot-control:signal:non_browser_user_agent"
            }
          },
          {
            "NotStatement": {
              "Statement": {
                "ByteMatchStatement": {
                  "FieldToMatch": {
                    "SingleHeader": {
                      "Name": "user-agent"
                    }
                  },
                  "PositionalConstraint": "EXACTLY",
                  "SearchString": "PostmanRuntime/7.29.2",
                  "TextTransformations": [
                    {
                      "Priority": 0,
                      "Type": "NONE"
                    }
                  ]
                }
              }
            }
          }
        ]
      }
    },
    "RuleLabels": [],
    "Action": {
      "Block": {}
    },
    "VisibilityConfig": {
      "SampledRequestsEnabled": true,
      "CloudWatchMetricsEnabled": true,
      "MetricName": "match_rule"
    }
}
```

# Esempio di Bot Control: utilizzo di Bot Control solo per la pagina di accesso
<a name="waf-bot-control-example-scope-down-login"></a>

L'esempio seguente utilizza un'istruzione scope-down per applicare AWS WAF Bot Control solo al traffico che arriva alla pagina di accesso di un sito Web, identificata dal percorso URI. `login` Il percorso URI della pagina di accesso potrebbe essere diverso da quello dell'esempio, a seconda dell'applicazione e dell'ambiente.

```
{
  "Name": "AWS-AWSBotControl-Example",
  "Priority": 5,
  "Statement": {
    "ManagedRuleGroupStatement": {
      "VendorName": "AWS",
      "Name": "AWSManagedRulesBotControlRuleSet",
	  "ManagedRuleGroupConfigs": [
        {
          "AWSManagedRulesBotControlRuleSet": {
            "InspectionLevel": "COMMON"
          }
        }
      ],
      "RuleActionOverrides": [],
      "ExcludedRules": []
    },
    "VisibilityConfig": {
      "SampledRequestsEnabled": true,
      "CloudWatchMetricsEnabled": true,
      "MetricName": "AWS-AWSBotControl-Example"
    },
    "ScopeDownStatement": {
      "ByteMatchStatement": {
        "SearchString": "login",
        "FieldToMatch": {
          "UriPath": {}
        },
        "TextTransformations": [
          {
            "Priority": 0,
            "Type": "NONE"
          }
        ],
        "PositionalConstraint": "CONTAINS"
      }
    }
  }
}
```

# Esempio di Bot Control: utilizzo di Bot Control solo per contenuti dinamici
<a name="waf-bot-control-example-scope-down-dynamic-content"></a>

Questo esempio utilizza un'istruzione scope-down per applicare AWS WAF Bot Control solo al contenuto dinamico. 

L'istruzione scope-down esclude il contenuto statico annullando i risultati della corrispondenza per un set di pattern regex: 
+ *Il set di pattern regex è configurato per corrispondere alle estensioni del contenuto statico.* Ad esempio, la specifica del set di pattern regex potrebbe essere. `(?i)\.(jpe?g|gif|png|svg|ico|css|js|woff2?)$` Per informazioni sui set e sulle istruzioni di pattern regex, vedere. [Istruzione regola di corrispondenza del set del modello regex](waf-rule-statement-type-regex-pattern-set-match.md) 
+ Nell'istruzione scope-down, escludiamo il contenuto statico corrispondente annidando l'istruzione regex pattern set all'interno di un'istruzione. `NOT` Per informazioni sulla dichiarazione, vedere. `NOT` [NOTdichiarazione delle regole](waf-rule-statement-type-not.md)

```
{
  "Name": "AWS-AWSBotControl-Example",
  "Priority": 5,
  "Statement": {
    "ManagedRuleGroupStatement": {
      "VendorName": "AWS",
      "Name": "AWSManagedRulesBotControlRuleSet",
	  "ManagedRuleGroupConfigs": [
        {
          "AWSManagedRulesBotControlRuleSet": {
            "InspectionLevel": "COMMON"
          }
        }
      ],
      "RuleActionOverrides": [],
      "ExcludedRules": []
    },
    "VisibilityConfig": {
      "SampledRequestsEnabled": true,
      "CloudWatchMetricsEnabled": true,
      "MetricName": "AWS-AWSBotControl-Example"
    },
    "ScopeDownStatement": {
      "NotStatement": {
        "Statement": {
          "RegexPatternSetReferenceStatement": {
            "ARN": "arn:aws:wafv2:us-east-1:123456789:regional/regexpatternset/excludeset/00000000-0000-0000-0000-000000000000",
            "FieldToMatch": {
              "UriPath": {}
            },
            "TextTransformations": [
              {
                "Priority": 0,
                "Type": "NONE"
              }
            ]
          }
        }
      }
    }
  }
}
```

# Esempio di Bot Control: esclusione dell'intervallo IP dalla gestione dei bot
<a name="waf-bot-control-example-scope-down-ip"></a>

Se desideri escludere un sottoinsieme di traffico web dalla gestione di AWS WAF Bot Control e puoi identificare quel sottoinsieme utilizzando un'istruzione di regola, escludilo aggiungendo un'istruzione scope-down all'istruzione del gruppo di regole gestita da Bot Control. 

La seguente regola esegue la normale gestione dei bot di Bot Control su tutto il traffico Web, ad eccezione delle richieste Web provenienti da un intervallo di indirizzi IP specifico.

```
{
  "Name": "AWS-AWSBotControl-Example",
  "Priority": 5,
  "Statement": {
    "ManagedRuleGroupStatement": {
      "VendorName": "AWS",
      "Name": "AWSManagedRulesBotControlRuleSet",
      "ManagedRuleGroupConfigs": [
        {
          "AWSManagedRulesBotControlRuleSet": {
            "InspectionLevel": "COMMON"
          }
        }
      ],
      "RuleActionOverrides": [],
      "ExcludedRules": []
    },
    "VisibilityConfig": {
      "SampledRequestsEnabled": true,
      "CloudWatchMetricsEnabled": true,
      "MetricName": "AWS-AWSBotControl-Example"
    },
    "ScopeDownStatement": {
      "NotStatement": {
        "Statement": {
          "IPSetReferenceStatement": {
            "ARN": "arn:aws:wafv2:us-east-1:123456789:regional/ipset/friendlyips/00000000-0000-0000-0000-000000000000"
          }
        }
      }
    }
  }
}
```

# Esempio di controllo dei bot: consentire il traffico proveniente da un bot che controlli
<a name="waf-bot-control-example-scope-down-your-bot"></a>

Puoi configurare alcuni bot di monitoraggio del sito e bot personalizzati per inviare intestazioni personalizzate. Se desideri consentire il traffico proveniente da questi tipi di bot, puoi configurarli per aggiungere un segreto condiviso in un'intestazione. Puoi quindi escludere i messaggi con l'intestazione aggiungendo un'istruzione scope-down all'istruzione del gruppo di regole gestito da AWS WAF Bot Control. 

La seguente regola di esempio esclude il traffico con un'intestazione segreta dall'ispezione di Bot Control.

```
{
  "Name": "AWS-AWSBotControl-Example",
  "Priority": 5,
  "Statement": {
    "ManagedRuleGroupStatement": {
      "VendorName": "AWS",
      "Name": "AWSManagedRulesBotControlRuleSet",
      "ManagedRuleGroupConfigs": [
        {
          "AWSManagedRulesBotControlRuleSet": {
            "InspectionLevel": "COMMON"
          }
        }
      ],
      "RuleActionOverrides": [],
      "ExcludedRules": []
    },
    "VisibilityConfig": {
      "SampledRequestsEnabled": true,
      "CloudWatchMetricsEnabled": true,
      "MetricName": "AWS-AWSBotControl-Example"
    },
    "ScopeDownStatement": {
      "NotStatement": {
        "Statement": {
          "ByteMatchStatement": {
            "SearchString": "YSBzZWNyZXQ=",
            "FieldToMatch": {
              "SingleHeader": {
                "Name": "x-bypass-secret"
              }
            },
            "TextTransformations": [
              {
                "Priority": 0,
                "Type": "NONE"
              }
            ],
            "PositionalConstraint": "EXACTLY"
          }
        }
      }
    }
  }
}
```

# Esempio di Bot Control: attivazione di un livello di ispezione mirato
<a name="waf-bot-control-example-targeted-inspection-level"></a>

Per un livello di protezione migliorato, puoi abilitare il livello di ispezione mirata nel gruppo di regole gestito da AWS WAF Bot Control.

Nell'esempio seguente, le funzionalità di machine learning sono abilitate. È possibile disattivare questo comportamento impostando `EnableMachineLearning` su`false`.

```
{
  "Name": "AWS-AWSBotControl-Example",
  "Priority": 5,
  "Statement": {
    "ManagedRuleGroupStatement": {
      "VendorName": "AWS",
      "Name": "AWSManagedRulesBotControlRuleSet",
      "ManagedRuleGroupConfigs": [
        {
          "AWSManagedRulesBotControlRuleSet": {
            "InspectionLevel": "TARGETED",
            "EnableMachineLearning": true
          }
        }
      ],
      "RuleActionOverrides": [],
      "ExcludedRules": []
    },
    "VisibilityConfig": {
      "SampledRequestsEnabled": true,
      "CloudWatchMetricsEnabled": true,
      "MetricName": "AWS-AWSBotControl-Example"
    }
  }
}
```

# Esempio di Bot Control: utilizzo di due istruzioni per limitare l'uso del livello di ispezione mirato
<a name="waf-bot-control-example-common-and-targeted-inspection-level"></a>

Per ottimizzare i costi, puoi utilizzare due istruzioni del gruppo di regole gestite da AWS WAF Bot Control nel tuo pacchetto di protezione (ACL web), con livelli e ambiti di ispezione separati. Ad esempio, è possibile estendere l'istruzione mirata sul livello di ispezione solo agli endpoint applicativi più sensibili.

Le due istruzioni nell'esempio seguente hanno un ambito che si esclude a vicenda. Senza questa configurazione, una richiesta potrebbe comportare due valutazioni Bot Control fatturate.

**Nota**  
Il riferimento a più istruzioni `AWSManagedRulesBotControlRuleSet` non è supportato nell'editor visivo della console. Utilizza invece l'editor JSON.

```
{
  "Name": "Bot-WebACL",
  "Id": "...",
  "ARN": "...",
  "DefaultAction": {
    "Allow": {}
  },
  "Description": "Bot-WebACL",
  "Rules": [
      {
        ...
      },
      {
       "Name": "AWS-AWSBotControl-Common",
       "Priority": 5,
       "Statement": {
          "ManagedRuleGroupStatement": {
             "VendorName": "AWS",
             "Name": "AWSManagedRulesBotControlRuleSet",
             "ManagedRuleGroupConfigs": [
               {
                 "AWSManagedRulesBotControlRuleSet": {
                   "InspectionLevel": "COMMON"
                 }
               }
             ],
             "RuleActionOverrides": [],
             "ExcludedRules": []
          },
          "VisibilityConfig": {
             "SampledRequestsEnabled": true,
             "CloudWatchMetricsEnabled": true,
             "MetricName": "AWS-AWSBotControl-Common"
           },
           "ScopeDownStatement": {
              "NotStatement": {
                "Statement": {
                  "ByteMatchStatement": {
                    "FieldToMatch": {
                      "UriPath": {}
                    },
                    "PositionalConstraint": "STARTS_WITH",
                    "SearchString": "/sensitive-endpoint",
                    "TextTransformations": [
                      {
                        "Type": "NONE",
                        "Priority": 0
                      }
                    ]
                  }
                }
              }
            }
        }
      },
      {
       "Name": "AWS-AWSBotControl-Targeted",
       "Priority": 6,
       "Statement": {
          "ManagedRuleGroupStatement": {
             "VendorName": "AWS",
             "Name": "AWSManagedRulesBotControlRuleSet",
             "ManagedRuleGroupConfigs": [
               {
                 "AWSManagedRulesBotControlRuleSet": {
                   "InspectionLevel": "TARGETED",
                   "EnableMachineLearning": true
                 }
               }
             ],
             "RuleActionOverrides": [],
             "ExcludedRules": []
          },
          "VisibilityConfig": {
             "SampledRequestsEnabled": true,
             "CloudWatchMetricsEnabled": true,
             "MetricName": "AWS-AWSBotControl-Targeted"
           },
           "ScopeDownStatement": {
              "Statement": {
                "ByteMatchStatement": {
                  "FieldToMatch": {
                    "UriPath": {}
                  },
                  "PositionalConstraint": "STARTS_WITH",
                  "SearchString": "/sensitive-endpoint",
                  "TextTransformations": [
                    {
                      "Type": "NONE",
                      "Priority": 0
                    }
                  ]
                }
              }
            }
        }
      }
    ],
    "VisibilityConfig": {
      ...
    },
    "Capacity": 1496,
    "ManagedByFirewallManager": false,
    "RetrofittedByFirewallManager": false
}
```