Contoh Kontrol Bot: Izinkan bot tertentu yang diblokir - AWS WAF, AWS Firewall Manager, dan AWS Shield Advanced

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Contoh Kontrol Bot: Izinkan bot tertentu yang diblokir

Mungkin saja bot diblokir oleh lebih dari satu aturan Kontrol Bot. Jalankan melalui prosedur berikut untuk setiap aturan pemblokiran.

Jika aturan Kontrol AWS WAF Bot memblokir bot yang tidak ingin Anda blokir, lakukan hal berikut:

  1. Identifikasi aturan Kontrol Bot yang memblokir bot dengan memeriksa log. Aturan pemblokiran akan ditentukan dalam log di bidang yang namanya dimulai denganterminatingRule. Untuk informasi tentang log ACL web, lihatPencatatan AWS WAF lalu lintas ACL web. Perhatikan label yang ditambahkan aturan ke permintaan.

  2. Di ACL web Anda, timpa tindakan aturan pemblokiran untuk dihitung. Untuk melakukan ini di konsol, edit aturan grup aturan di ACL web dan pilih penggantian tindakan aturan Count untuk aturan tersebut. Ini memastikan bahwa bot tidak diblokir oleh aturan, tetapi aturan akan tetap menerapkan labelnya untuk permintaan yang cocok.

  3. Tambahkan aturan pencocokan label ke ACL web Anda, setelah grup aturan terkelola Kontrol Bot. Konfigurasikan aturan agar sesuai dengan label aturan yang diganti dan untuk memblokir semua permintaan yang cocok kecuali bot yang tidak ingin Anda blokir.

    ACL web Anda sekarang dikonfigurasi sehingga bot yang ingin Anda izinkan tidak lagi diblokir oleh aturan pemblokiran yang Anda identifikasi melalui log.

Periksa lalu lintas dan log Anda lagi, untuk memastikan bahwa bot diizinkan masuk. Jika tidak, jalankan kembali prosedur di atas.

Misalnya, Anda ingin memblokir semua bot pemantauan kecuali untukpingdom. Dalam hal ini, Anda mengganti CategoryMonitoring aturan untuk menghitung dan kemudian menulis aturan untuk memblokir semua bot pemantauan kecuali yang memiliki label nama bot. pingdom

Aturan berikut menggunakan grup aturan terkelola Bot Control tetapi mengesampingkan tindakan aturan CategoryMonitoring untuk dihitung. Aturan pemantauan kategori menerapkan labelnya seperti biasa untuk permintaan yang cocok, tetapi hanya menghitungnya alih-alih melakukan tindakan pemblokiran yang biasa.

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

Aturan berikut cocok dengan label pemantauan kategori yang ditambahkan CategoryMonitoring aturan sebelumnya ke permintaan web yang cocok. Di antara permintaan pemantauan kategori, aturan ini memblokir semua kecuali yang memiliki label untuk nama botpingdom.

Aturan berikut harus berjalan setelah grup aturan terkelola Kontrol Bot sebelumnya dalam urutan pemrosesan 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" } }