安裝及使用 Azure DevOps Services 外掛程式
這個作業說明如何安裝及使用 Azure DevOps Services 外掛程式,以便在 Azure DevOps Services 和 Team Foundation Server (TFS) 管線中,執行靜態或動態掃描。(Azure DevOps Services 先前稱為 Visual Studio Team Services (VSTS))。
指導教學
安裝 Azure DevOps/TFS 外掛程式
註: AppScan 360° 支援 TFS 2018 版更新 2 及更新版本。
如果要使用 Azure DevOps/TFS 外掛程式,您必須先從 Azure DevOps 市集下載外掛程式,然後進行安裝:
- 在 Azure DevOps Services 中,前往「 」。
- 在產生的視窗中,搜尋 HCL。
- 選取及安裝 HCL AppScan 外掛程式。
註: 如果是 TFS,請依照指示從 Azure DevOps 市集下載外掛程式。完成之後,前往「 」,然後選擇已下載的延伸進行安裝。
設定 Azure DevOps 環境
如果要配置 Azure DevOps 環境以進行測試:
- 登入 Azure DevOps Services。
- 建立新組織:
- 按一下「建立新組織」。
- 指定組織名稱。
- 指定專案名稱。
- 指出專案為公用或私密。
- 按一下確定。
- 讓程式碼儲存庫與專案產生關聯:
- 按一下「 」。
- 選取「匯入」。
- 選擇儲存庫的來源類型。
- 指定儲存庫的複製 URL。
- 按一下「匯入」。
- 建立建置管線:
- 按一下「 」。
- 按一下「新管線」。
- 按一下「使用視覺化設計程式」。
- 在選取來源時,按一下「Azure Repos git」,選取要掃描的儲存庫,然後按一下「繼續」。
- 選取「空管線」和「繼續」。
- 按一下「代理程式工作 1」旁邊的 +,搜尋 NuGet,然後按一下「新增」。
- 從作業中選取「NuGet 還原」,並且將其指向解決方案檔案。在「解決方案、packages.config 或 project.json 的路徑」底下,瀏覽至適當的 .sln 檔案。
- 按一下「代理程式工作 1」旁邊的 +,以新增第一個步驟。依序按一下「建置」、「Visual Studio 建置」、「新增」。
- 按一下「建置解決方案 **/*.sln」並且將其指向解決方案檔案。在「解決方案」欄位中,瀏覽至適當的 .sln 檔案。
- 按一下「儲存並排入佇列」以測試建置。
當您對建置進行調整時,新增註解以反映這些變更。您每次按一下「儲存並排入佇列」時,建置號碼就會更新。
使用 Azure DevOps/TFS 外掛程式
新增安全測試
如果要將安全測試新增至 Azure DevOps/TFS 中的建置程序:
- 選擇下列其中一項:
- 如果是 Azure DevOps Services,請從您專案的首頁選擇「 」功能表。
- 如果是 TFS,請選擇「 」。
- 編輯您想要在其中新增安全測試的管線。
- 在「作業」標籤上。按一下「+」以新增作業。
- 找到作業為 HCL AppScan on Cloud,然後按一下新增。
- 在您的建置程序中,按一下新增的執行 HCL AppScan on Cloud 安全測試作業。
- 指定「作業設定」
- 在「顯示名稱」輸入字串。
這個字串會成為建置程序中的作業名稱。
- 從清單中選取適當的認證。
如果「認證」欄位是空白的,請參閱新增服務端點。
- 選取「應用程式」清單中的應用程式。
隨即根據您選取的認證移入「應用程式」下拉清單。
- 在「掃描名稱」欄位中輸入掃描的名稱。選用。
這個名稱會成為服務中掃描的名稱。
- 從「掃描類型」清單中選取掃描類型:
- 選取「Static Analyzer」以執行靜態分析安全測試。
表 1. Static Analyzer 掃描參數 參數 說明 要掃描的儲存庫子目錄 輸入值或是從儲存庫的檔案瀏覽器對話框選取值(選擇性)。依預設,服務會掃描整個儲存庫。如果要將掃描限制為子目錄,請在這裡指定相對路徑。 其他選項 掃描速度 根據需要和時間需求,指定掃描最佳化層次: - 簡易
simple
掃描會執行檔案的表面層次分析,為您識別最需要補救的緊迫問題。此類掃描完成所需的時間最短。 - 平衡:
balanced
掃描提供中等層次的安全問題分析和識別,所需的完成時間比simple
掃描稍微久一點。 - 深層:預設值。
deep
掃描會對您的檔案執行更完整的分析,以識別漏洞,通常需要較久的時間才能完成。 - 完整:
thorough
掃描會執行綜合性的分析,識別最全面的漏洞清單,因此完成所需的時間最久。
註: 掃描速度與在程式碼中找到的漏洞數目不一定相關。例如,thorough
分析可能會排除simple
掃描報告中的誤判,因此報告的漏洞較少。 - 簡易
- 選取「Static Analyzer」以執行靜態分析安全測試。
- 在「顯示名稱」輸入字串。
進階選項
進階選項不是使用 Azure DevOps/TFS 外掛程式的必要選項。如果要設定進階內容:
- 按一下「進階」以顯示其他選項。
- 選取「電子郵件通知」勾選框,在安全分析完成時接收電子郵件。電子郵件會傳送到與選取的認證相關聯的電子郵件位址。
- 選取「以個人掃描執行」,以評估開發中應用程式的相對安全性,而不影響整體的應用程式掃描資料或合規性。在已淘汰的 HCL AppScan 作業中,無法使用個人掃描支援。
- 請選取容許掃描啟用團隊介入,以允許掃描啟用團隊在掃描失敗或找不到問題時介入,以嘗試修正配置。這可能會導致掃描結果延遲。依預設,會選取此選項。
- 選取「暫停工作,直到安全分析完成」:如果您要在進行管線中的下一步之前,讓 Jenkins 建置等待安全分析結果成為可用,請選取此勾選框。
- 選取「失敗建置配置」以指定使建置根據安全測試結果而失敗的條件。只有在選取「暫停工作,直到安全分析完成」時,才會顯示「失敗建置配置」。
- 選取「與應用程式原則不相符」,在發現任何不符所選取應用程式原則規範的安全問題時,使建置失敗。
- 選取「當下列條件為真時」,根據不符規範之「總計」安全問題、「重大」嚴重性安全問題、「高」嚴重性安全問題、「中」嚴重性安全問題,或「低」嚴重性安全問題的指定數目,使建置失敗。如果指定多個臨界值,邏輯上為 OR 關聯。
- 一旦建置完成,您可以從「建置摘要」頁面上的「應用程式安全報告」標籤,檢視或下載掃描報告。此報告僅包含不相容的問題。「應用程式安全」報告和 irx. 產生日誌(適用於「靜態」掃描)也可以透過「Azure 管線建置」日誌下載。註: 請注意,如果未選取「暫停工作,直到安全分析完成」的選項,則無法下載掃描報告。在此情況下,您可以從 HCL AppScan On Cloud 入口網站下載報告。
新增服務端點
如果在「作業設定」中「認證」欄位是空白的,您必須配置服務端點。如果要配置服務端點以使用 Azure DevOps/TFS 外掛程式:
- 在「作業設定」中,按一下空白「認證」欄位上方的「管理」。
- 在產生的視窗中,按一下「新增服務端點」。
- 從端點的清單中按一下 HCL AppScan on Cloud。
- 在產生的對話框中填入詳細資料,然後按一下「確定」。
表 2. 服務端點內容 內容 值 連線名稱 連線的邏輯名稱。 伺服器 URL KeyID 請參照 準備配置檔。 KeySecret
最佳化掃描並且檢閱結果
至於其他掃描,您可以使用配置檔,藉由指定個別目標納入掃描或從掃描中排除以及指定其他資訊,來最佳化掃描。配置檔案應放在專案的根目錄,讓外掛程式挑選它進行掃描。
當掃描完成時,AppScan 360° 會產生掃描的報告。檢閱結果中的資訊,以瞭解安全漏洞的報告方式,以及如何修補問題。