インポート
Web App Firewall の一部の機能では、Web App Firewall の設定時にアップロードする外部ファイルが利用されます。GUI を使用して、「インポート」区画でこれらのファイルを管理します。この区画には、HTML エラーオブジェクト、XML エラーオブジェクト、XML スキーマおよび Web サービス記述言語 (WSDL) ファイルの 4 種類のファイルに対応する 4 つのタブがあります。Citrix ADCコマンドラインを使用すると、これらの種類のファイルをインポートできますが、エクスポートすることはできません。
HTML エラーオブジェクト
HTML または Web 2.0 ページへのユーザーの接続がブロックされた場合、またはユーザーが存在しない HTML または Web 2.0 ページを要求した場合、Web App Firewall は HTML ベースのエラー応答をユーザーのブラウザーに送信します。Web App Firewallが使用する必要のあるエラー応答を構成する場合、2つの選択肢があります。
- リダイレクト URL を設定できます。リダイレクト URL は、ユーザーがアクセスできる任意の Web サーバーでホストできます。たとえば、Web サーバーに 404.html というカスタムエラーページがある場合、接続がブロックされたときにユーザーをそのページにリダイレクトするように Web App Firewall を構成できます。
- HTML エラーオブジェクトを設定できます。HTML エラーオブジェクトは、Web アプリケーションファイアウォール自体でホストされる HTML ベースの Web ページです。このオプションを選択した場合は、HTML エラーオブジェクトを Web App Firewall にアップロードする必要があります。この操作は、[インポート] ペインの [HTML エラーオブジェクト] タブで行います。
エラーオブジェクトは、Web App Firewall エラーオブジェクトのカスタマイズ変数を除き、HTML 以外の構文を含まない標準の HTML ファイルである必要があります。CGI スクリプト、サーバー解析コード、または PHP コードを含めることはできません。カスタマイズ変数を使用すると、要求がブロックされたときにユーザーが受け取るエラーオブジェクトにトラブルシューティング情報を埋め込むことができます。Web App Firewallがブロックするほとんどのリクエストは不正ですが、適切に構成されたWeb App Firewallでさえ、特に最初にデプロイしたとき、または保護されたWebサイトに大幅な変更を加えた後、正当なリクエストをブロックすることがあります。エラーページに情報を埋め込むことで、問題を修正できるように、テクニカルサポート担当者に提供する必要がある情報をユーザーに提供します。
Web App Firewall エラーページのカスタマイズ変数は次のとおりです。
- ${NS_TRANSACTION_ID}. Web App Firewall がこのトランザクションに割り当てたトランザクション ID。
- ${NS_APPFW_SESSION_ID}. Web App Firewall セッション ID。
- ${NS_APPFW_VIOLATION_CATEGORY}. 違反した特定の Web App Firewall セキュリティチェックまたはルール。
${NS_APPFW_VIOLATION_LOG}. 違反に関連する詳細なエラーメッセージ。
- ${COOKIE 指定のcookieのコンテンツ。
には、エラーページに表示する特定の Cookie の名前を置き換えます。トラブルシューティングのために内容を表示したい Cookie が複数ある場合は、このカスタマイズ変数の複数のインスタンスを、それぞれ適切な Cookie 名とともに使用できます。注:饼干整合性チェックでブロックが有効になっている場合,Web应用防火墙がブロックするため、ブロックされた Cookie はエラーページに表示されません。
これらの変数を使用するには、通常のテキスト文字列であるかのように、エラーページオブジェクトの HTML または XML に変数を埋め込みます。エラーオブジェクトがユーザーに表示される場合、カスタマイズ変数ごとに、変数が参照する情報が Web App Firewall に置き換えられます。カスタム変数を使用する HTML エラーページの例を次に示します。
Page Not Accessible
Page Not Accessible
The page that you accessed is not available. You can:
- return to the home page, re-establish your session, and try again, or,
- report this incident to the help desk via email or by calling [helpDeskPhoneNumber].
If you contact the help desk, please provide the following information:
Transaction ID: ${NS_TRANSACTION_ID} Session ID: ${NS_APPFW_SESSION_ID} Violation Category: ${NS_APPFW_VIOLATION_CATEGORY} Violation Log: ${NS_APPFW_VIOLATION_LOG} Cookie Name: ${COOKIE("[cookieName]")}
このエラーページを使用するには、テキストエディタまたは HTML エディタにコピーします。以下の変数は、Citrix ADC 変数と区別するために角括弧で囲まれた適切なローカル情報に置き換えます。(変更しないままにしておきます。 ):
[homePage]
。WebサイトのホームページのURL。[helpDeskEmailAddress]
。ブロッキングインシデントのレポートに使用する電子メールアドレス。[helpDeskPhoneNumber]
。ブロッキングインシデントを報告するためにユーザにコールする電話番号。[cookieName]
。エラーページに表示する内容を持つクッキーの名前。
XML エラーオブジェクト
XML ページへのユーザーの接続がブロックされた場合、またはユーザーが存在しない XML アプリケーションを要求した場合、Web App Firewall は XML ベースのエラー応答をユーザーのブラウザーに送信します。エラー応答を構成するには、[インポート] ウィンドウの [XML エラーオブジェクト] タブで、XML ベースのエラーページを Web App Firewall にアップロードします。すべての XML エラー応答は、Web App Firewall でホストされます。XML アプリケーションのリダイレクト URL を設定することはできません。
メモ: HTML エラーオブジェクトと同じカスタマイズ変数を XML エラーオブジェクトで使用できます。
XML スキーマ
Web App Firewall は、XML または Web 2.0 アプリケーションに対するユーザーの要求に対して検証チェックを実行すると、そのアプリケーションの XML スキーマまたはデザイン型ドキュメント (DTD) に対して要求を検証し、スキーマまたは DTD に従わない要求を拒否できます。XML スキーマと DTD はいずれも、特定の XML ドキュメントの構造を記述する標準 XML 設定ファイルです。
WSDL
Web App Firewall は、XML SOAP ベースの Web サービスに対するユーザーの要求に対して検証チェックを実行するときに、その Web サービスの Web サービスタイプ定義 (WSDL) ファイルに対して要求を検証できます。WSDL ファイルは、特定の XML SOAP Web サービスの要素を定義する標準の XML SOAP 設定ファイルです。