使用浏览器记录登录

开始之前

您必须先在 URL 和服务器视图中定义起始 URL,才能记录登录序列。

关于此任务

通过“记录的登录”,您可以让 ADAC 学习登录站点的过程:要单击的链接、要在表单中输入的文本以及执行这些链接的顺序。一旦您记录了此过程,AppScan 就将尝试识别可在将来用于验证其是否已登录的会话中模式。完成该操作后,AppScan 在测试期间只要检测到它已注销,便可使用登录序列来重新登录。

ADAC AppScan 必须随时知道它是已登录还是退出站点,以便正确评估站点的响应。在扫描期间,ADAC 重复发送会话中请求,并且检查响应是否包含“会话中检测模式”以验证其是否仍然处于已登录状态。如果 ADAC 在页面的响应中未找到该模式,那么 AppScan 会认为其已退出,并会通过重放登录序列来尝试重新登录。由此可知,在扫描期间,登录序列通常会被播放许多次。因此,登录序列最好包含尽可能少的步骤。如果会话中页面是一个小页面,并且不包含被跟踪的参数或 Cookie,那么也会很有帮助,因为这些也可能会显著延长扫描时间。

过程

  1. “登录管理 > 登录”选项卡中,请选择 已记录
  2. 单击红色“记录”按钮 > Chromium 浏览器
    浏览器将打开起始 URL 并开始记录操作。
    注: 如果您的网站登录不支持 Chromium,请选择 Internet Explorer。

    如果已将 AppScan® 配置为使用外部浏览器来进行扫描(“选项 > 使用外部浏览器 > 选择浏览器”),那么将向您提供是使用 AppScan 浏览器还是外部浏览器来记录登录的选项。如果可能,建议您使用 AppScan 浏览器来进行登录记录(即使使用其他浏览器来进行扫描),因为它将记录可提高扫描期间登录成功率的额外信息。如果通过 AppScan 浏览器记录登录对于您的应用程序不可用,那么请使用外部浏览器。

    注: 如果尚未定义“起始 URL”,那么会警告您:必须先定义“起始 URL”,然后才能继续(请参阅 URL 和服务器)。
  3. 登录到站点,完成表单表单并单击链接。
    提示: 缺省情况下,您登入时所到达的页面将由 AppScan 用作会话中 URL。在扫描期间,ADAC 每隔几秒就会发送此 URL,以检查其是否仍处于登录状态。如果页面发送较大响应,或者如何包含被跟踪参数或 Cookie,您可以通过单击一个或多个其他链接来提高扫描性能,直到您到达具有较小响应(仍处于登录状态)且无被跟踪参数或 Cookie 的页面为止。然后,关闭浏览器后,请转至复审并验证选项卡并选择稍后页面作为“会话中 URL”。
  4. 成功登录站点后,请单击我已登录到站点
    ADAC 会尝试从您的登录请求中抽取登录信息,以在扫描期间使用。
    注: 有时候登录页面不会提供足够的信息,AppScan 将要求您在登录后单击步骤,或从站点注销。
    注: 如果登录机制使用 JavaScript 来操纵登录数据,那么可能会打开一个对话框,要求您确认 ADAC 抽取的登录数据是正确的。根据需要填写或更正参数和值,然后单击确定

    “会话信息”对话框将打开(其中显示您记录的登录请求),并且灰色钥匙图标将变成绿色钥匙图标(指示会话中检测处于活动状态)。

    注: 如果钥匙图标变为红色红色钥匙图标,那么 ADAC 已尝试但无法在会话中页面内识别任何可在扫描期间用于验证其是否没有注销的模式。如果发生这种情况,您需要识别 ADAC 的“会话中模式”,请参阅“选择检测模式”对话框以获取详细信息。在某些情况下,可能会出现更为具体的消息,并带有一个链接,指向本帮助中用于对该问题进行故障诊断的页面,请参阅登录故障诊断
  5. 要对已记录的序列作出更改(例如,移除不必要的步骤),请参阅“复审并验证”选项卡
    提示: 一般而言,用于使用户登录的 URL(并且其响应是首个包含会话中模式的响应)应该是标记为“会话中”的 URL。但是,有时您可能想要选择其后的 URL(该 URL 也包含会话中模式,但优势在于页面更小或者不包含被跟踪的参数或 Cookie)。此外,有时候具有用户凭证的 POST 请求是使您登录并最先包含会话中模式的请求,而这对于会话中页面是糟糕的选择,因为会话中检查每次都会发送凭证,从而导致会话响应中出现误报。请参阅优化会话中检测
  6. 要保存新的登录序列,请单击确定
    提示: 如果确定会话中页面不包含被跟踪参数或 Cookie,可以通过将高级配置 > 会话管理:解析会话中页面设置更改为“False”来提高扫描性能。请参阅高级配置