使用 REST API 配置带有 Postman collection URL 的 DAST 扫描

概述

此部分解释了如何在AppScan Enterprise中使用REST API,通过提供Postman集合的URL来配置动态应用安全测试(DAST)扫描。此功能允许使用您现有的Postman集合自动化扫描配置,这在设置AppScan动态分析客户端(ADAC)作业或其他动态扫描时特别有用。这种基于API的方法提供了一种直接在AppScan Enterprise中执行此配置的方法,取代了以前通常通过AppScan Standard手动管理的步骤。

注:
  • 此API专门用于DASTConfig作业,不能用于Content-Scan作业。
  • 如果一个DASTConfig作业已经配置了Postman集合URL,使用此API将替换现有的URL。

用于Postman URL配置的API端点

  • POST /jobs/{jobId}/dastconfig/postman/url/add – 将一个 Postman 集合 URL 添加到 DASTConfig 任务中。

先决条件

  • 您将需要一个现有的DASTConfig作业。您可以使用以下任何现有的API来创建DASTConfig作业:
    • POST/jobs/{templateId}/dastconfig/createjob
    • 根据模板文件创建工作
    • 发布/职位
  • DASTConfig作业的jobId(整数)是必需的。这可以通过使用 GET /folders/{folderId}/jobs API 端点来检索。
  • 进行API请求认证需要一个有效的asc_xsrf_token,可以从POST /login API端点获取。此令牌应作为请求头发送,通常命名为asc_xsrf_token或类似名称,并附上相应的值。
  • 我们建议使用“常规扫描”模板以避免任何性能问题。
    注:
    如果网络 API 需要授权,授权请求必须包含有效的凭证(API 密钥、基本认证或其他固定令牌和密码)。授权请求必须是集合中第一批请求中的一个。默认情况下,AppScan Enterprise 会检查授权请求的前七个请求,但如果需要,可以在 ADAC 客户端的高级配置 > Postman: 登录分析样本大小中增加此数量。

API参考:POST /jobs/{jobId}/dastconfig/postman/url/add

目的:此API端点允许您在AppScan Enterprise中配置现有的DASTConfig作业,以使用通过URL提供的Postman集合来定义扫描范围和API交互。

HTTP 方法和端点: POST /jobs/{jobId}/dastconfig/postman/url/add

路径参数:

  • jobId(整数,必需):DASTConfig作业的唯一标识符。

请求参数:

  • postmanCollectionUrl(字符串,必需):Postman 集合的 URL(例如,http://example.com/collection.json)。
  • envVariablesUrl(字符串,可选):Postman 环境 JSON 文件的 URL。
  • globalVariablesUrl(字符串,可选):Postman 全局变量 JSON 文件的 URL。
  • postmanAdditionalFiles(文件,可选):一个zip压缩包,包含Postman集合所需的任何外部文件(例如,data.zip)。最大大小:80 MB。
  • domainsToBeTested(字符串,必需):根据集合将被扫描的域名的逗号分隔列表(例如,api.example.com, auth.example.com)。

请求头(示例):

  • asc_xsrf_token: {your_obtained_token_value}
  • 内容类型:multipart/form-data(如果包含postmanAdditionalFiles)或application/json(如果仅发送URL,尽管form-data通常被反馈推荐用于此API)。
注:
  • 使用 form-data 选项来配置 API,特别是在包含 postmanAdditionalFiles 时。上述参数名称是表单字段的键(名称),而URL、文件上传和域名列表是它们各自的值。
  • 确保在 Postman 集合中,目标 API 所需的任何身份验证都得到适当处理(如在先决条件中提到的或在集合/环境变量中)。
  • Postman collection 版本 2.0 及更高版本受支持。
  • Postman 集合的 URL 扩展名应为 .json
  • 未包含在domainsToBeTested中的域将不会被扫描。
  • 当您将 Postman 集合 URL 添加到 DAST 作业时,这些 URL 会保存在模板文件中。然而,模板中不包括附加文件。要访问这些文件,请下载 SCAN 文件。
  • 每次扫描只能添加一个 Postman Collection URL。要扫描第二个集合的URL,请为该集合创建一个新的扫描。

响应:

  • 成功时,API 返回 HTTP 状态码 200 OK
  • 要了解错误详情,请参阅API的Swagger文档。