掃描管理 REST API(舊)
Web Service API
通過 REST Web 服務使用應用程序編程接口 (API) 來執行各種任務,尤其是提供對報告數據的訪問權。
這些服務使用 HTTP(GET 和 POST)。各服務的格式為:
https://<server>/<instance>/services/<service>
例如,在以下位置執行 HTTP GET:
https://localhost/ASE/services/version
會請求有關 AppScan? Enterprise Server 的版本信息。
當服務需要參數時,如
/services/folders/<fid>
請將參數替換為實際標識。例如,
https://localhost/ASE/services/folders/1
數據是以 XML 格式來發送和接收的,符合可通過服務來下載的模式:
https://<server>/<instance>/services/schema.
注: 各服務將以已認證的用戶的設置所指定的語言來返回數據。可以通過 Web UI 來訪問這些設置。
通過 Liberty 認證來登錄
此 REST 服務將使用 Liberty 認證來登錄到 Enterprise Console。
HTTPS 方法
發布
服務格式
/services/login
查詢字符串參數
無
POST 數據
內容類型:application/x-www-form-urlencoded
用戶標識:包含用戶登錄標識的元素。
密碼:包含用戶密碼的元素。
請參閱文檔記錄的模式以獲取更多詳細信息。
示例
userid=testuser&password=mypassword
注銷 Enterprise Console
該 REST 服務將用戶從 Enterprise Console 注銷,并立即釋放浮動許可證以供其他用戶使用。
HTTPS 方法
GET/POST
服務格式
/services/logout
查詢字符串參數
無
POST 數據
無
返回值
無。
錯誤處理
REST 服務在返回數據時,通常會隨返回的 XML 數據返回 200 OK HTTP 狀態。
當服務遇到錯誤時,它將返回 4xx 或 5xx HTTP 狀態。隨此狀態一起,響應將包含其中含有特定錯誤代碼和消息的 <error> 元素。
返回值
<error>element
請參閱文檔記錄的模式以獲取更多詳細信息。
示例
如果請求的是標識不存在的文件夾項:
<error>
<code>CRWAE2440E</code>
<help weblink="http://publib.boulder.ibm.com/infocenter/ASE56help/index.jsp?topic=/com.ibm.ase.help.doc/topics/ts_CRWAE2440E.html" />
<message>The specified folder item does not exist.</message>
</error>
長時間運行的任務
一些任務可能需要長時間在服務器上運行。在此情況下,它們需要運行的時間可能會超過在服務器上所指定的超時時間。
如果服務器檢測到請求即將超時,但是任務尚未完成,那么它將向客戶機返回 HTTP 狀態 201(已創建)以及 元素。此 , 元素將提供客戶機可用于訪問進行中的任務的 URL。
返回值
<continue>element
請參閱文檔記錄的模式以獲取更多詳細信息。
樣本 :通過構建自動化進行 DAST 掃描
開始之前
這個 python 腳本集旨在展示通過構建自動化進行 DAST 掃描的能力。以下是可下載以在此工作流程中使用的樣本文件:AppScanDASTandSASTautomation.zip. (如果文件無法下載,請右鍵單擊鏈接并將文件保存到硬盤驅動器。)
注: 待使用的掃描模板必須創建。缺省情況下,它不得為 ASE 中包含的缺省值之一(例如:快速簡潔掃描或開發者精要)。此演示假定 Manual Explore Server 安裝在缺省位置:C:\Program Files (x86)\HCL\AppScan Manual Explorer.
過程
當 AltoroJ 構建在 Jenkins 中啟動時, 工作流程就開始了。工作流程:
在 Jenkins 中完成構建。
Jenkins 運行后構建任體力
python Selenium_StartScan.py dast_auto.config。腳本啟動 Manual Explore Server。
運行 selenium 腳本
Selenium_Altoro_View_AcctDetails.py。(流量通過 Manual Explore Server 代理)。M.E.S 已停止,流量捕獲已作為 HTD 文件保存在工作空間的目錄中。
如果沒有現成的掃描作業,ASE 會創建一個。
向作業添加了起始 URL(舊的被覆蓋)。
HTD 文件被刪除。
登錄類型設置為自動。
向掃描作業添加了測試憑證。
運行掃描。
運行報告包。
安全問題提取自“安全問題”報告。
更新了 monkit.xml ,因此 Jenkins 可以展示圖形了。
此進程所必須的文件有:
dast_auto.config - 該自動化的配置文件。編輯此文件以更改腳本的行為。例如:更改掃描模板或起始 URL。文件 Selenium_StartScan.py 具有生成空白配置文件的功能。
scans.py - 包含調用 ASE 的 API 的 python 庫。
Selenium_Altoro_ViewAcctDetails.py - 可登錄到 AltoroJ、查看第一個帳戶的帳戶詳細信息并進行搜索的 Selenium 腳本。
Selenium_StartScan.py - 包含上述第 3 步到第 14 步中所述邏輯的 python 腳本編輯第 80 行,以調整 Jenkins 項目文件夾的命名方式。
*monkit.xml *- Jenkins 可用于顯示安全掃描結果的文件。
geckodriver.log - geckodriver 自動生成的日志文件。geckodriver 是一個驅動程序,允許 Selenium 通過 python 連接 firefox
HCL AppScan Enterprise 中文文檔 10.0.1
推薦文章: