Netsparker Enterprise如何與Jenkins插件集成
將Netsparker Enterprise與Jenkins插件集成
Jenkins是一個自動化服務器,它使軟件開發人員可以通過提供插件將自動化構建到其項目中。可以使用我們新的Netsparker Enterprise Scan Jenkins插件來擴展Jenkins功能。

本主題說明如何使用Jenkins Freestyle Projects安裝和配置新的Netsparker Enterprise Scan Jenkins插件,以啟用我們的高級集成功能,以便您可以啟動自動掃描并查看Jenkins中的漏洞報告。通過將插件腳本添加到由Jenkins集成窗口中的集成腳本生成器生成的管道中,您還可以將我們的插件與Jenkins管道項目一起使用。
下載并安裝Netsparker Enterprise Scan Jenkins插件
該插件被打包到一個名為netsparker- cloud -scan.hpi的.hpi文件中。該軟件包已針對Jenkins 2.33+版本進行了測試和批準。
有兩種方法可以做到這一點:
- 從Jenkins的插件管理器中
- 來自Netsparker Enterprise
首選第一種方法,因為它更容易完成。
如何從插件管理器安裝Jenkins插件
- 打開Jenkins。

- 在主菜單中,點擊管理Jenkins。顯示“管理Jenkins”窗口。

- 單擊管理插件。顯示“插件管理器”窗口。

- 單擊可用選項卡。

- 通過單擊立即檢查來更新可用插件列表。
- 然后在?FILTER框中,輸入“netsparker”。從過濾的結果中,選中Netsparker Enterprise Scan插件旁邊的復選框,然后單擊立即下載并在重啟后安裝。
- 為了使用插件,請重新啟動Jenkins。要重新啟動,請從瀏覽器導航到:
- [jenkins_url] / safeRestart(在當前構建完成后重新啟動Jenkins)
- [jenkins_url] / restart(強制重新啟動,并且構建不會等待完成)
如何從Netsparker Enterprise下載和安裝Jenkins插件
- 登錄到Netsparker Enterprise。
- 在主菜單中,點擊集成,然后點擊新建集成。

- 在“ 持續集成系統” 部分中,單擊Jenkins。顯示“ Jenkins集成”窗口。

- 點擊下載插件,然后將文件保存到您選擇的位置。
- 打開Jenkins。

- 在主菜單中,點擊管理Jenkins。 顯示“ 管理Jenkins”窗口。

- 單擊管理插件。 顯示“ 插件管理器”窗口。

- 單擊高級選項卡。

- 在上載插件部分,點擊選擇文件。顯示“打開”對話框。

- 選擇先前下載的netsparker- cloud -scan.hpi文件,然后單擊“ 打開”。文件已上傳,窗口的焦點返回到“高級”選項卡。

- 為了使用插件,請重新啟動Jenkins。要重新啟動,請從瀏覽器導航到:
- [jenkins_url] / safeRestart(在當前構建完成后重新啟動Jenkins)
- [jenkins_url] / restart(強制重新啟動,并且構建不會等待完成)
配置Jenkins項目
每個Jenkins項目都有自己的構建配置。每個構建配置都有自己的構建步驟。必須將Netsparker Enterprise Scan作為構建步驟添加到Jenkins項目中。
如何配置Jenkins項目
- 打開Jenkins。

- 在主菜單中,點擊管理Jenkins。 顯示“ 管理Jenkins”窗口。

- 單擊配置系統。顯示“配置系統”窗口。

在“ Netsparker Enterprise”部分中,輸入您的Netsparker Enterprise Server URL 和API令牌,然后單擊“ 測試連接” 以驗證對Netsparker Enterprise的訪問。然后,點擊保存。
導航到Jenkins 主頁。

- 單擊要添加到Netsparker Enterprise Scan的構建步驟中的項目。顯示“項目”窗口。

- 從菜單中,單擊配置。顯示“配置”窗口。
- 單擊生成選項卡。

- 在“ 構建” 部分中,單擊“ 添加構建步驟” 下拉列表,然后選擇“ Netsparker Enterprise Scan”。顯示“掃描設置”面板。

- 完成“ 掃描類型”,“ 網站部署URL” 和“ 配置文件名稱” 設置。
- 點擊保存。
在管道項目中使用管道腳本
如果要在Jenkins中使用管道項目,則應使用此方法。
- 登錄到Netsparker Enterprise。
- 在主菜單中,點擊集成,然后點擊新建集成。

- 在“ 持續集成系統” 部分中,單擊Jenkins。顯示“ Jenkins集成”窗口。
- 單擊使用集成腳本。

- 選擇掃描類型和網站。
- 如果需要掃描配置文件,單擊復制到剪貼板。

如果選中“ 為Jenkins管道腳本覆蓋API令牌” 復選框,請確保將“ NETSPARKERAPITOKEN”作為參數添加到Jenkins管道項目中。


這是一個選擇了重寫API令牌的示例管道腳本。
節點{
步驟([$ class:'NCScanBuilder',ncApiToken:'$ NETSPARKERAPITOKEN',ncScanType:'FullWithPrimaryProfile',ncWebsiteId:'ed9f04a4-d530-43b5-f837-a88f03f0b886'])
}

- 導航到Jenkins中的Pipeline項目設置,然后將腳本粘貼到腳本區域。將在全局設置中使用ServerUrl和ApiToken。
這是一些示例代碼,用’node’包裝您的腳本:
節點{
步驟([$ class:'NCScanBuilder',ncScanType:'FullWithPrimaryProfile',ncWebsiteId:'ed9f04a4-d530-43b5-f837-a88f03f0b886'])
}

在管道項目中使用構建失敗
對于管道項目,可以在Jenkins構建中配置故障以在檢測到漏洞嚴重性時停止掃描。
可以使用ncSeverity 和ncStopScan參數進行配置。
- ‘ncSeverity’ :使用此選項,您選擇在相關掃描中發現此Jenkins構建失敗的嚴重性。如果選擇“ DoNotFail”,則檢測到的漏洞ncSeverity的選項為:不會影響您的Jenkins構建。
- 不失敗
- 危急
- 嚴重,高
- 臨界,高,中
- 臨界,高,中,低
- ‘ncStopScan’:如果將此選項設置為true,則由于ncSeverity選擇導致Jenkins構建失敗時,相關的Netsparker掃描將被取消.ncStopScan的選項為:
- 真
- 假

在Jenkins中查看Netsparker掃描結果
觸發構建后,您可以在Jenkins和Netsparker Enterprise中查看掃描結果。
如何在Jenkins中查看Netsparker企業報告
- 打開Jenkins。

- 從項目頁面的“ 構建歷史記錄” 部分中選擇一個構建。顯示“構建詳細信息”窗口。

- 從菜單中,單擊Netsparker企業報告。掃描可能需要一段時間。
- 掃描完成后,將顯示掃描結果,如圖所示。

使用憑證
- 打開Jenkins。
- 在主菜單中,單擊憑據。

- 選擇您的配置,然后點擊添加憑據。
- 填寫以下字段:
- 類型: 用戶名和密碼
- 用戶名: https://www.netsparkercloud.com/ (服務器網址)
- 密碼: Netsparker企業API令牌
- 說明:在配置作業時選擇“憑據”下拉列表時,將顯示此說明。在此處輸入有意義的內容將有助于將此內容與該處的其他憑據區分開。


配置Jenkins插件以支持多個Netsparker Enterprise用戶并創建文件夾管理權限
基于角色的策略授權用于允許不同的用戶訪問不同的文件夾。
本節緊密遵循Cloudbees的“基于角色的授權策略:限制文件夾訪問”文章中描述的步驟,說明如何創建基于文件夾的管理角色。最終目標是,用戶1將有權訪問Folder1,而用戶2將有權訪問Folder2。每個用戶將只能使用Netsparker Enterprise令牌訪問其文件夾中的項目。
Netsparker Enterprise Jenkins插件需要處理插件的安裝,因此那里不需要任何額外的步驟。
這是一個示例,說明如何在文件夾和子文件夾級別將用戶訪問限制為特定的作業。
我們創建了一個主文件夾(Folder1),其中包含兩個不同的子文件夾Folder1 / FolderA和Folder1 / FolderB。
我們還分別在文件夾Folder1 / FolderA / job1和Folder1 / FolderB / job2文件夾中創建了兩個Freestyle項目,即“ job1”和“ job2”。
主文件夾名稱為“ Folder1”。
子文件夾名稱為“ Folder1 / FolderA”和“ Folder1 / FolderB”。
完成配置步驟后,優良作法是確保用戶如上所述對正確的文件夾具有正確的訪問權限。
下表列出并說明了此示例中使用的角色設置。
| 用戶 | 角色 | 模式 |
|---|---|---|
| admin | admin | |
| Folder1 | Folder1View | Folder1 |
| Folder1_FolderA_user | Folder1FolderA | Folder1/FolderA. * |
| Folder1_FolderB_user | Folder1FolderB | Folder1/FolderB. * |
完成配置涉及三個步驟:
- 配置授權和管理角色
- 分配角色
- 為用戶創建憑據
配置授權和管理角色
首先,您需要在Jenkins中配置授權和角色。
如何配置授權和管理角色
- 打開Jenkins。
- 導航以配置全局安全性。

- 從授權 策略中,選擇基于角色的策略。點擊保存。
- 導航至“ 管理Jenkins”, 然后管理和分配角色。單擊管理角色。

- 創建所需的角色,然后保存。
分配角色
接下來,您需要在Jenkins中分配正確的角色。
如何在Jenkins中分配角色
- 要分配角色請前往管理Jenkins,然后管理和分配角色,然后分配角色。
- 設置角色,如下所示:
總體角色:
- Folder1_user應該具有GlobalRead
- Folder1FolderA_user應該具有GlobalRead
- Folder1FolderB_user應該具有GlobalRead
項目角色:
- Folder1_user應該具有Folder1
- Folder1FolderA_user應該具有Folder1FolderA
- Folder1FolderB_user應該具有Folder1FolderB

為User1和User2創建憑據
最后,您需要為每個用戶創建憑據。
如何為用戶創建憑據
- 打開jenkins。
- 導航到Jenkins> Folder1> FolderA。

- 在主菜單中,單擊憑據。

- 在“ 憑據” 部分中,單擊Folder1> FolderA。

- 點擊全局憑據(不受限制),然后點擊添加憑據。

- 填寫以下字段:
- 類型:用戶名和密碼
- 用戶名:https://www.netsparkercloud.com/ (服務器網址)
- 密碼:User1的Netsparker Enterprise Api令牌
- 說明:在配置作業時選擇“憑據”下拉列表時,將顯示此說明。在此處輸入有意義的內容將有助于將此內容與該處的其他憑據區分開。
- 單擊 確定[n]。

- 導航到Jenkins> Folder1> FolderB, 然后對User2重復上述步驟。
配置Jenkins插件以構建失敗
在Jenkins插件中,有2個選項:
- 如果掃描包含以下內容,則構建失敗:使用此選項,您可以選擇將使Jenkins構建失敗的嚴重性。如果您選擇“ 不要使構建失敗 ”,則檢測到的漏洞將不會影響您的Jenkins構建。
- “ 構建失敗時停止掃描”:使用此選項,如果由于選擇而導致構建失敗,則掃描將被取消。

Netsparker Enterprise 中文漢化使用教程
推薦文章: