Bot Control の例: 特定のブロックされたボットを許可する - AWS WAF、AWS Firewall Manager、AWS Shield Advanced、および AWS Shield ネットワークセキュリティディレクター

AWS WAF の新しいコンソールエクスペリエンスのご紹介

更新されたエクスペリエンスを使用して、コンソールの任意の場所で AWS WAF 機能にアクセスできるようになりました。詳細については、「更新されたコンソールエクスペリエンスを使用する」を参照してください。

Bot Control の例: 特定のブロックされたボットを許可する

複数の Bot Control ルールによってボットがブロックされる可能性があります。各ブロッキングルールについて、次の手順を実行します。

AWS WAF Bot Control ルールが、ブロックしたくないボットをブロックしている場合は、次の手順を実行します。

  1. ログをチェックして、ボットをブロックしている Bot Control ルールを特定します。ブロックルールは、名前が terminatingRule で始まるフィールドのログで指定されます。保護パック (ウェブ ACL) ログの詳細については、「ログ記録 AWS WAF 保護パック (ウェブ ACL) トラフィック」を参照してください。ルールがリクエストに追加するラベルに注意してください。

  2. 保護パック (ウェブ ACL) で、ブロッキングルールのアクションをカウントするようにオーバーライドします。コンソールでこれを行うには、保護パック (ウェブ ACL) でルールグループのルールを編集し、ルールに Count のルールアクションオーバーライドを選択します。これにより、ボットがルールによってブロックされないようにしても、ルールは一致するリクエストにラベルを適用します。

  3. Bot Control マネージドルールグループの後に、保護パック (ウェブ ACL) にラベル一致ルールを追加します。オーバーライドされたルールのラベルと照合し、ブロックしたくないボットを除くすべての一致するリクエストをブロックするようにルールを設定します。

    これで、保護パック (ウェブ ACL) が設定され、許可するボットが、ログを通じて特定したブロックルールによってブロックされなくなります。

トラフィックとログをもう一度チェックして、ボットの通過が許可されていることを確認します。許可されていない場合は、上記の手順を再度実行してください。

例えば、pingdom を除くすべてのモニタリングボットをブロックするとします。この場合、CategoryMonitoring ルールがカウントするようにオーバーライドし、その後にボット名ラベル pingdom が付いているものを除くすべてのモニタリングボットをブロックするルールを記述します。

次のルールは、Bot Control マネージドルールグループを使用しますが、CategoryMonitoring のルールアクションがカウントするようにオーバーライドします。カテゴリモニタリングルールは、一致するリクエストに通常どおりラベルを適用しますが、通常のブロックアクションを実行するのではなく、カウントするだけです。

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

次のルールは、前の CategoryMonitoring ルールが一致するウェブリクエストに追加するカテゴリモニタリングラベルと照合します。カテゴリモニタリングリクエストの中で、このルールはボット名 pingdom のラベルを持つものを除くすべてをブロックします。

次のルールは、保護パック (ウェブ ACL) の処理順序で、前の Bot Control マネージドルールグループの後に実行する必要があります。

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