サービスを Web Application Firewall (WAF) に追加した後、カスタムレスポンス機能を使用して、リクエストがブロックされたとき、またはスライダー検証がトリガーされたときにクライアントに返されるページを設定できます。この機能により、ページをブランドの UI に合わせ、ユーザーエクスペリエンスを向上させることができます。
仕組み
デフォルトでは、クライアントリクエストが WAF の保護ルールに一致し、ルールのアクションが ブロック、[CAPTCHA]、または 厳密なスライダー に設定されている場合、WAF はデフォルトのレスポンスページを返します。[カスタム応答]機能を使用して、以下を定義できます。
HTTP ステータスコード (例: 403、406、429)
レスポンスヘッダー
HTML や JSON などの形式の レスポンス本文
デフォルトのブロックページ | デフォルトのスライダーページ |
|
|
注意事項
バージョン要件:この機能は、サブスクリプションの WAF インスタンス (Enterprise Edition または Ultimate Edition) および従量課金制の WAF インスタンスで利用できます。
前提条件:WAF に Web サービスを追加して作成した保護対象が必要です。サービスを追加していない場合は、「アクセス概要」をご参照ください。
サポートされる保護モジュール:[Web コア保護ルール]モジュールを除き、ルールのアクションを ブロック、[CAPTCHA]、または 厳密なスライダー に設定できるすべてのモジュールがサポートされます。
デプロイモードの制限:
Function Compute はサポートされていません。
Microservices Engine (MSE) は、バージョン 2.0.18 以降である必要があります。
API Gateway (APIG) は、バージョン 2.1.13 以降である必要があります。
アプリ保護用のボット管理は、カスタムスライダーページをサポートしていません。代わりに SDK 設定を変更する必要があります。
手順
レスポンスページの設定
WAF 3.0コンソールにログインします。 上部のナビゲーションバーで、WAFインスタンスがデプロイされているリソースグループとリージョンを選択します。 中国本土または中国本土以外を選択します。
左側のナビゲーションペインで、 を選択します。
レスポンスページ設定 ページで、ブロックページ タブまたは スライダーページ タブを選択し、次に Create をクリックします。
[ブロックページ]
[名前]: わかりやすい名前を入力します。
[Status Code]: リクエストがブロックされたときに WAF がクライアントに返す HTTP ステータスコードを指定します。有効な値: 200~600。ブロックアクションのデフォルトのステータスコードは 405 です。ステータスコード 204、304、600、および 498 はサポートされていません。
[カスタムヘッダ]: WAF がリクエストをブロックしたときに、レスポンスに含めるレスポンスヘッダーを指定します。各ヘッダーは、ヘッダ名 と ヘッダ値 で構成されます。最大 10 個のヘッダーを追加できます。
[Response Body]: ブロックページのソースコードを入力します。設定は、以下の要件を満たす必要があります。
対応形式は HTML と JSON です。
コードの長さは最大 4,000 文字です。
重要レスポンスページにリクエスト ID を含めるには、コードに
{::trace_id::}文字列を追加します。この ID は、Simple Log Service で対応するリクエストを見つけるのに役立ちます。設定例
[Status Code]:403。
[カスタムヘッダ]:
[ヘッダ名]:
Content-Type。[ヘッダ値]:
text/html; charset=utf-8。
[Response Body]:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Request Blocked</title> </head> <body> <h1>Access Denied</h1> <p>Your request has been blocked by the security policy.</p> <p>Request ID: {::trace_id::}</p> </body> </html>
[スライダーページ]
[名前]: わかりやすい名前を入力します。
[Status Code]: リクエストによってスライダー検証がトリガーされたときに WAF がクライアントに返す HTTP ステータスコードです。デフォルト値は 200 で、変更できません。
[カスタムヘッダ]:リクエストがスライダー認証をトリガーしたときに WAF がレスポンスに含めるレスポンスヘッダーを指定します。各ヘッダーは、ヘッダ名 と ヘッダ値 で構成されます。最大 10 個のヘッダーを追加できます。次のヘッダーはデフォルトで含まれており、変更できません。
[ヘッダ名]:
Content-Type。[ヘッダ値]:
text/html; charset=utf-8。
定義済み または カスタム スタイル: WAF がクライアントに提示するスライダー CAPTCHA のスタイルを指定します。 言語、アイコン、テキスト、リクエスト ID を表示するかどうかなどを設定できます。 プレビュー をクリックして、スライダー CAPTCHA ページをプレビューできます。 カスタム CSS レイアウトまたはピッチ設定は、現在サポートされていません。
保護ルールまたは保護対象への適用
レスポンスページを設定した後、保護ルールまたは保護対象に適用できます。
保護ルールへの適用:リクエストがルールに一致すると、WAF はそのルールに設定されたカスタムレスポンスページを返します。
保護対象への適用:保護対象へのリクエストが保護ルールをトリガーすると、WAF はそのオブジェクトに設定されたカスタムレスポンスページを返します。
カスタムレスポンスページが保護ルールと保護対象の両方に設定されている場合、保護ルールの設定が優先されます。
保護ルールへの適用
たとえば、カスタムルール モジュールで保護ルールを設定し、アクション を ブロック、[CAPTCHA]、または 厳密なスライダー に設定した場合、既存のカスタムレスポンスページを選択できます。 詳細については、「カスタムルールテンプレートに保護ルールを追加する」をご参照ください。
保護対象への適用
ページに移動します。
防御オブジェクト設定 タブに移動します。設定する保護対象オブジェクトを見つけ、設定 列の 操作 をクリックして、デフォルトの ブロックページ または スライダーページ を置き換えます。

