使用 REST API 进行 IAST
通过 REST API 配置并开始 IAST 扫描(包括代理程序部署)。
开始之前
另请参阅 Swagger 上的以下资源:
过程
- 获取 API 密钥。
-
通过执行以下操作之一,获取要在其中运行扫描的应用程序的标识:
- 在用户界面中,打开特定应用程序的选项卡,并查看 URL。单词“scans”之前的最后一部分便是标识。例如,在此用例中:
应用程序标识为:cloud.appscan.com/AsoCUI/serviceui/main/myapps/app01/123456a-78b-90c-123ab4c/scans
123456a-78b-90c-123ab4c
- 或者,您可以通过 REST API GetApps 端点获取用户的所有应用程序标识的列表(API 密钥):
request URL: GET https://cloud.appscan.com/api/v4/Apps headers: "Authorization=Bearer <api key>" Parameters: “$select=Id"
- 在用户界面中,打开特定应用程序的选项卡,并查看 URL。单词“scans”之前的最后一部分便是标识。例如,在此用例中:
-
使用 CreateIastAnalyzerScan 端点创建 IAST 扫描:
request URL: POST https://cloud.appscan.com/api/v4/Scans/IASTAnalyzer headers: " Authorization=Bearer <token>, Accept: application/json, Content-Type: application/json" Json: { "ConnLostStopTimer": true, "ScanName": <scanName>, "EnableMailNotification": true, "Locale": "en-US", "AppId": <appId>, "Personal": false }
正文是输入参数 scanModel,一个包含以下字段的 json 结构:ScanName
是您赋予扫描的名称AppId
(请参阅上一步)ConnLostStopTimer
是可选的超时(单位为分钟),用于在代理程序连接丢失时停止扫描。如果此字段留空,即使代理程序连接丢失扫描也将继续,并且没有任何要报告的内容。此操作的可能用例是防止其他用户在此期间获取许可证。Personal
字段应设置为false
,除非您希望将扫描作为个人扫描运行。
ScanId
。保存此设置以在下一步中使用。 -
下载代理程序,预先配置为将问题报告给上一步中创建的扫描。使用 Tools/DownloadWithKey 端点执行此操作。
request URL: GET https://cloud.appscan.com/api/v4/Tools/IastAgentWithKey?scanId==<scan_id> headers: "Authorization=Bearer <api key>, Accept: application/zip"
scan_id
是在上一步末尾保存的标识。 -
在应用程序服务器上部署 IAST 代理程序。
代理程序现在正监控发送到应用程序的流量,并将向 ASoC 报告其检测到的漏洞。
-
将流量发送到应用程序以便 IAST 进行监视。这可以是常规系统测试或 DAST 扫描。
发现的问题现在将记录在 IAST 扫描中。