スキップしてコンテンツを表示

AWS WAF カスタムルールが機能しない理由を知りたいです。

所要時間1分
0

カスタム AWS WAF ルールを作成しましたが、期待どおりに動作しません。この問題を解決するにはどうすればよいですか。

解決策

**注: ** AWS コマンドラインインターフェイス (AWS CLI) コマンドの実行時にエラーが発生する場合は、『AWS CLI のエラーのトラブルシューティング』を参照してください。また、最新の AWS CLI バージョンを使用していることを確認してください。

カスタム AWS WAF ルールが期待どおりに機能しない場合は、次の設定を確認してください。

ルールの優先度

カスタムルールが正しい優先度で設定されていることを確認してください。AWS WAF はルールを数値順に評価し、AllowBlock、または CAPTCHA の終了アクションを持つ最初のルールで停止します。カスタムルールの数値優先度が終了アクションを持つルールよりも高い場合、AWS WAF はカスタムルールに対してリクエストを評価しません。詳細については、『がルールとルールグループのアクション AWS WAF を処理する方法』を参照してください。

どのルールがリクエストを削除したかを確認するには、WAF ログまたはサンプル化されたリクエストを確認してください。ログエントリの terminatingRuleId フィールドを確認して、一致して以降の評価を停止した正確なルールを特定してください。詳細については、『AWS WAF がリクエストをブロックしたり、403 Forbidden エラーの応答を返したりする理由を知りたいです。』の「AWS WAF ログを使用する」セクションを参照してください。

たとえば、AWS マネージドルールのルールグループがブロックしたリクエストを許可するために、カスタム Allow ルールを作成したとします。AWS マネージドルールのルールグループよりも前に評価されるように、カスタムルールの優先度の数値を下げる必要があります。

AWS WAF コンソールを使用してルールの優先度を更新できます。UpdateWebACL または UpdateRuleGroup API コールを使用してルールの優先度を更新することもできます。あるいは、update-web-acl または update-rule-group AWS CLI コマンドを実行できます。

テキスト変換

カスタムルールでテキスト変換を使用する場合は、ユースケースに合わせて正しく実装されていることを確認してください。

AWS WAF は変換を適用し、リクエストを検査します。複数の変換を指定した場合、AWS WAF はリストされた順序で変換を処理します。カスタムルールで複数の変換を使用する場合は、変換の順序を確認する必要があります。詳細については、『でのテキスト変換の使用 AWS WAF』を参照してください。

例えば、クエリ内の文字列に対して Base64 デコードURL デコードを実行するカスタムルールを作成したとします。AWS WAF はまず、インバウンドリクエストのクエリ文字列の Base64 デコードを実行します。次に、AWS WAF は結果の文字列に対して URL デコードを実行します。最後に、AWS WAF は結果の文字列を、カスタムルール設定で指定した文字列と照合します。

ブールロジック

ロジックルールステートメントを使用する場合は、ブールロジックを使用して、カスタムルール内の ANDOR、または NOT のロジックが正しいことを検証してください。

たとえば、/test URI を持ち、ソース IP アドレスが IP セット X 内にあるリクエストに一致するカスタムルールを作成したとします。

リクエスト例 1 には /test URI (ブール値 1) があります。リクエストの IP アドレスは IP セット X (ブール値 0) に含まれていません。ブール値 1 と ブール値 0 の結果はブール値 0 になるため、リクエストはカスタムルールと一致しません。

リクエスト例 2 には /test URI (ブール値 1) があります。リクエストの IP アドレスは IP セット X (ブール値 1) にあります。ブール値 1 とブール値 1 の結果はブール値 1 になるため、リクエストはカスタムルールと一致します。

リクエスト例 3 には /test URI (ブール値 0) がありません。リクエストの IP アドレスは IP セット X (ブール値 0) に含まれていません。ブール値 0 とブール値 0 の結果はブール値 0 になるため、リクエストはカスタムルールと一致しません。

カスタムルールのアクションが Block の場合、ルールはリクエスト例 2 のみをブロックします。

関連情報

ルールの優先度を設定する

AWS公式更新しました 5ヶ月前
1コメント

This article was reviewed and updated on 2026-03-27.

エキスパート

応答済み 12日前