进口
一些Web应用防火墙功能利用了您在配置时上传到Web应用防火墙的外部文件。使用GUI,您可以在Imports窗格中管理这些文件,该窗格有四个选项卡,对应于您可以导入的四种类型的文件:HTML错误对象、XML错误对象、XML模式和Web Services Description Language (WSDL)文件。使用Citrix ADC命令行,可以导入这些类型的文件,但不能导出它们。
HTML错误对象
当用户连接到HTML或Web 2.0页面时被阻止,或者用户请求不存在的HTML或Web 2.0页面时,Web应用防火墙会向用户的浏览器发送基于HTML的错误响应。当配置Web应用防火墙必须使用的错误响应时,您有两个选择:
- 您可以配置一个重定向URL,该URL可以驻留在用户也可以访问的任何Web服务器上。例如,如果您的Web服务器上有一个自定义错误页面404.html,您可以配置Web应用程序防火墙,在连接被阻塞时将用户重定向到该页面。
- 您可以配置HTML错误对象,它是驻留在Web应用程序防火墙本身上的基于HTML的Web页面。如果选择此选项,则必须将HTML错误对象上传到Web应用程序防火墙。您可以在Imports窗格的HTML Error Object选项卡上执行此操作。
错误对象必须是一个标准的HTML文件,除了Web应用程序防火墙错误对象自定义变量外,该文件不包含任何非HTML语法。它不能包含任何CGI脚本、服务器解析代码或PHP代码。自定义变量使您能够将故障排除信息嵌入到用户在阻塞请求时接收到的错误对象中。虽然大多数Web应用防火墙阻止的请求是非法的,但即使是正确配置的Web应用防火墙偶尔也会阻止合法的请求,特别是当您第一次部署它或在您对受保护的网站进行重大更改后。通过在错误页面中嵌入信息,您可以向用户提供他或她需要提供给技术支持人员的信息,以便解决任何问题。
Web应用防火墙错误页面自定义变量是:
- $ {NS_TRANSACTION_ID}。Web应用程序防火墙分配给此事务的事务ID。
- $ {NS_APPFW_SESSION_ID}。Web应用防火墙会话ID。
- $ {NS_APPFW_VIOLATION_CATEGORY}。被违反的特定Web应用程序防火墙安全检查或规则。
$ {NS_APPFW_VIOLATION_LOG}。与违规相关联的详细错误消息。
- ${COOKIE指定COOKIE的内容。为
< CookieName >
,替换为要显示在错误页面上的特定cookie的名称。如果您有多个cookie,希望显示其内容以进行故障排除,则可以使用此自定义变量的多个实例,每个实例具有适当的cookie名称。请注意:如果您启用了“Cookie一致性检查”的阻止功能,被阻止的Cookie将不会显示在错误页面,因为Web应用防火墙会将其阻止。
要使用这些变量,可以将它们嵌入到错误页对象的HTML或XML中,就像它们是普通的文本字符串一样。当错误对象显示给用户时,Web应用防火墙会为每个自定义变量替换该变量引用的信息。下面显示了一个使用自定义变量的HTML错误页面示例。
<!doctype html public "-//w3c//dtd html 4.0// zh "> Page不可访问
Page不可访问
您访问的页面不可访问。您可以:
如果您联系帮助台,请提供以下信息:
事务ID: ${NS_TRANSACTION_ID} 会话ID: ${NS_APPFW_SESSION_ID} 违例类别: ${NS_APPFW_VIOLATION_CATEGORY} 违例Log: ${NS_APPFW_VIOLATION_LOG} Cookie Name: ${COOKIE("[cookieName]")}
若要使用此错误页面,请将其复制到文本或HTML编辑器中。用适当的本地信息替换以下变量,这些变量用方括号括起来,以区别于Citrix ADC变量。(保持不变):
(主页)
.网站首页的URL。(helpDeskEmailAddress)
.希望用户用来报告屏蔽事件的电子邮件地址。(helpDeskPhoneNumber)
.您希望用户用来报告屏蔽事件的电话号码。(cookieName)
.要在错误页面上显示其内容的cookie的名称。
XML错误对象
当用户到XML页面的连接被阻塞,或者用户请求不存在的XML应用程序时,Web应用程序防火墙会向用户的浏览器发送一个基于XML的错误响应。通过将基于XML的错误页面上传到导入窗格中的XML错误对象选项卡中的Web应用程序防火墙,可以配置错误响应。所有XML错误响应都托管在Web应用程序防火墙上。不能为XML应用程序配置重定向URL。
请注意:在XML错误对象中可以使用与在HTML错误对象中相同的自定义变量。
XML模式
当Web应用程序防火墙对用户对XML或Web 2.0应用程序的请求执行验证检查时,它可以根据该应用程序的XML模式或设计类型文档(DTD)验证请求,并拒绝任何不符合该模式或DTD的请求。XML模式和DTD都是描述特定类型XML文档结构的标准XML配置文件。
WSDL
当Web应用程序防火墙对用户对基于XML soap的Web服务的请求执行验证检查时,它可以根据该Web服务的Web服务类型定义(WSDL)文件验证请求。WSDL文件是一个标准的XML SOAP配置文件,它定义了特定XML SOAP web服务的元素。