webサービスをWebアプリケーションファイアウォール (WAF) に追加した後、カスタムレスポンスモジュールの保護ルールを設定して、クライアントのリクエストがブロックされたときにクライアントに返すカスタムブロックページを設定できます。 カスタムステータスコード、レスポンスヘッダー、およびレスポンス本文を指定できます。 デフォルトでは、カスタム応答モジュールは無効になっています。 このトピックでは、カスタム応答モジュールの保護ルールを設定する方法について説明します。
背景情報
カスタム応答モジュールの保護ルールを設定しない場合、リクエストがブロックされたときにデフォルトのブロックページがクライアントに返されます。
カスタムのステータスコード、レスポンスヘッダー、およびレスポンス本文を指定できます。
前提条件
EnterpriseエディションまたはUltimateエディションを実行するサブスクリプションWAF 3.0インスタンス、または従量課金WAF 3.0インスタンスが購入されました。 詳細については、「サブスクリプションWAF 3.0インスタンスの購入」および「従量課金WAF 3.0インスタンスの購入」をご参照ください。
Webサービスは、保護されたオブジェクトとしてWAF 3.0に追加されます。 詳細については、「保護オブジェクトと保護オブジェクトグループの設定」をご参照ください。
カスタム応答モジュールの保護テンプレートを作成する
カスタム応答モジュールは、デフォルトの保護テンプレートを提供しません。 カスタム応答モジュールの保護ルールを有効にする前に、モジュールの保護テンプレートを作成する必要があります。 テンプレートが作成されると、保護ルールが自動的に生成されます。
WAF 3.0コンソールにログインします。 上部のナビゲーションバーで、WAFインスタンスのリソースグループとリージョンを選択します。 中国本土 または 中国本土以外 を選択できます。
左側のナビゲーションウィンドウで、 を選択します。
では、カスタム応答のセクション基本的な Web 保護ページをクリックします。テンプレートの作成.
説明カスタム応答モジュールの保護テンプレートを初めて作成する場合は、基本的な Web 保護 ページの上部にある カスタム応答 カードの [今すぐ設定] をクリックすることもできます。
[テンプレートの作成-カスタムレスポンス] パネルでパラメーターを設定し、[OK] をクリックします。 下表にパラメーターを示します。
パラメーター
説明
テンプレート名
テンプレートの名前を指定します。
テンプレートの名前は1 ~ 255文字で、英数字、ピリオド (.) 、アンダースコア (_) 、ハイフン (-) を使用できます。
デフォルトテンプレートとして保存
保護モジュールのデフォルトテンプレートとしてテンプレートを設定するかどうかを指定します。
保護モジュールに指定できるデフォルトテンプレートは1つだけです。 デフォルトテンプレートとして保存をオンにした場合、有効対象 パラメーターを設定する必要はありません。 既定のテンプレートは、カスタムテンプレートが適用されていないすべての保護オブジェクトおよび保護オブジェクトグループに適用されます。
ルール設定
ルール設定を構成します。 カスタム応答モジュールの保護テンプレートには、1つの保護ルールのみが含まれます。
ステータスコード
WAFがリクエストをブロックしたときにWAFがクライアントに返すHTTPステータスコードを指定します。 有効な値: 200〜600。 デフォルト値: 405
カスタムヘッダー
WAFがリクエストをブロックしたときにWAFがクライアントに返すレスポンスのヘッダーフィールドを指定します。 各ヘッダーフィールドは、ヘッダー名とヘッダー値で構成されます。 最大5つのヘッダーフィールドを追加できます。
レスポンスボディ
ブロックページのソースコードを指定します。 次の要件が満たされていることを確認してください。
レスポンス本文はHTMLまたはJSON形式です。
レスポンス本文には最大4,000文字を含めることができます。
重要ブロックページでリクエストIDを保持する場合は、
{:: trace_id ::}
文字列を参照してください。 リクエストIDを使用して、ブロックされたリクエストをログで照会できます。Custom Headerパラメーターを設定して、
content-type
ヘッダーフィールドを追加し、レスポンス本文の形式を指定できます。
申請先
保護対象 および 保護対象グループ タブで、テンプレートを適用する項目を選択します。
保護対象オブジェクトまたは保護対象オブジェクトグループに適用できる保護モジュールのテンプレートは1つだけです。 保護オブジェクトの追加と保護オブジェクトグループの作成方法の詳細については、「保護オブジェクトと保護オブジェクトグループの設定」をご参照ください。
デフォルトでは、新しく作成された保護テンプレートが有効になります。 テンプレートリスト内のテンプレートに対して次の操作を実行できます。
テンプレートに関連付けられている保護オブジェクトおよび保護オブジェクトグループの数を 保護対象 / グループ 列に表示します。
ステータス 列のスイッチをオンまたはオフにして、テンプレートを有効または無効にします。
[操作] 列の 編集 または 削除 をクリックして、テンプレートを変更または削除します。
[操作] 列の 編集 をクリックして、テンプレートを変更します。
テンプレート名の左側にあるアイコンをクリックして、テンプレート内の保護ルールを表示します。
テンプレート名の左側にあるアイコンをクリックして、テンプレートのエンジン情報を表示します。
保護テンプレートが有効になった後、保護テンプレートが適用されている保護オブジェクトの既定のブロックページは、[ルール設定] セクションで指定したカスタムブロックページに置き換えられます。 WAFが既定のブロックページをクライアントに返す場合は、保護テンプレートを無効にするか削除します。
関連ドキュメント
WAF 3.0の保護オブジェクト、保護モジュール、および保護プロセスの詳細については、「保護構成の概要」をご参照ください。
API操作を呼び出して保護テンプレートを作成する方法の詳細については、「CreateDefenseTemplate」をご参照ください。
API操作を呼び出して保護ルールを作成する方法の詳細については、「CreateDefenseRule」をご参照ください。