参数定义

过程

要添加新的定义,请单击“加号”按钮(或者,要编辑现有参数,请选择该定义并单击“编辑”按钮)。
此时会显示添加参数定义对话框。

设置

描述

类型

从下拉列表中选择参数类型:

参数:与该名称匹配的所有参数都包含在定义中。

cookie:与该名称匹配的所有 cookie 都包含在定义中。

定制参数:这是一个定制参数(从名称下拉列表中选择其中一个定制参数)

名称

参数或 cookie 的名称。

如果您输入的名称是正则表达式,请选中相邻复选框。如果执行此操作,还可以通过单击“正则表达式”按钮来打开 Expression Test PowerTool,以帮助您验证正则表达式的语法。

有关详细信息,请参阅 参数名称

注释

您可以选择性地在该字段中添加参数的注释,以便自己参考。

主机

如果已指定“主机”:该参数仅用于已指定的主机。

如果留空:该会话标识用于所有的主机。

路径

如果应用程序的不同部分中提供了相同名称的 cookie,那么可以通过为每个 cookie 定义路径为区分 cookie。

空白,或者将包含所有出现的 cookie。

测试排除

仅在您确定完全不想要 AppScan® 测试此参数的情况下选中此复选框。

跟踪

此设置告知 AppScan,只要应用程序设置了新值,在扫描期间就应更新此参数或会话标识,以便在请求中,有效的 cookie/参数始终发送到应用程序。

跟踪选项...

(单击该链接以打开对话框的该可选部分。)

这些选项使您可以微调对跟踪的参数或 cookie 的处理方式。

跟踪类型
  • 登录值:(缺省值,建议)发送到应用程序且包含该参数的请求会使用在登录过程中所接收到的参数的最新值,不包含会话中请求本身。
    提示: 要跟踪会话中响应内的参数,需要将其跟踪类型设置为动态值而非登录值,并验证扫描配置 > 高级配置 > 会话管理:解析会话中页面设置为 True(缺省设置)。
    注: 如果记录登录步骤是多步骤序列的一部分,则将已接收的参数定义为“登录值”不会影响它的使用方式。它将始终被视为“动态”。
  • 动态值:发送到应用程序中且包含该参数的请求会使用从应用程序所接受到的最新值。
  • 固定值:发送到应用程序中且包含该参数的请求总是会使用您输入到“值”字段中的值。
有关更多详细信息,请参阅会话标识

在所有请求上发送 cookie:如果选择此选项,那么所有请求中将包含 cookie,即使应用程序未明确设置。

视为组:如果 cookie 名称是一个正则表达式,那么定义是否将匹配正则表达式的不同 cookie 名称视为组(并且只要有更改,便会更新名称以及值),或者视为单独 cookie。此功能仅适用于基于请求的探索。

响应模式:通常,AppScan 根据从响应(参数)或者从 cookie 头 (cookie) 抽取的链接内容来更新参数或 cookie 值。如果 AppScan 无法独立抽取值,那么您可以提供正则表达式,使 AppScan 能够将其用于从原始响应中抽取值。正则表达式必须至少包含一个组,并且 AppScan 将抽取第一个匹配项。
  • URL 过滤器: 如果您知道参数/cookie 仅出现在特定 URL 中,那么您可以通过在此处定义完整 URL 路径来提高扫描效率。
  • 编码:如果抽取的值在粘贴到请求中时必须进行编码,请在此处定义方法。如果不确定是否编码,请选择根据上下文;如果您确定,那么最好是选择正确编码。选项为:“无”、“根据上下文”、“URL”、“XML”和“JSON”。
  • 匹配:选择标题和主体(缺省)或仅主体

冗余调整...

(单击该链接以打开对话框的该可选部分。)

这四个复选框使您能够细微调整 AppScan 在扫描的“探索”和“测试”阶段与参数中的更改(甚至是参数的存在状态)的相关方式。请参阅 冗余调整

用于定义参数或 cookie 的标识

参数或 cookie 根据特定标识来被识别为唯一。因此,您不能使用相同标识来定义两个或更多参数或 cookie。下表显示了每种条目的标识。

参数 参数名称(无论是正则表达式还是主机)
cookie 参数名称(无论是正则表达式、主机还是路径)
定制参数 抽取的名称(如果存在)、引用名称、主机、发生索引