ASoC 以及 GitLab
.將 AppScan on Cloud 與 GitLab 搭配使用,在每個合併要求上,對儲存庫中的檔案執行靜態分析安全測試 (SAST),進而防止漏洞到達主要分支。結果會儲存在 AppScan on Cloud 中。
登錄
如果您沒有帳戶,請在 HCL AppScan on Cloud (ASoC) 上登錄,以產生 API 金鑰和 API 密碼。
設定
- 在 API 頁面上產生 ASoC API 金鑰和 API 密碼。
API 金鑰和 API 密碼會對映至此動作的
ASOC_KEY
和ASOC_SECRET
參數。記下金鑰和密碼。 - 在 ASoC 中建立應用程式。
應用程式可作為儲存器來儲存與相同專案相關的所有掃描。
-
複製應用程式 ID。選取複製。
,然後在應用程式詳細資料下的應用程式 ID 旁按一下ASoC 中的應用程式 ID 對映至此整合的
APP_ID
。 - 在 GitLab 中建立三個變數。選取
變數名稱 值(V) APP_ID
來自 ASoC 的應用程式 ID ASOC_KEY
來自 ASoC 的 API 金鑰 ASOC_SECRET
來自 ASoC 的 API 密碼
,然後按照下列方式設定變數: - 將 .gitlab-ci.yaml 和 Dockerfile 複製到 GitLab 儲存庫根目錄。
- 建置您自己的執行程式。選取 ,然後遵循特定執行程式底下的步驟。
- 在您要設定 GitLab 執行程式的系統上,登入並複製 GitLab 儲存庫(若尚未存在)。確認該機器上已安裝 Docker 引擎。
- 從 Dockerfile 建置新的 Docker 映像檔,名稱為 saclient。將目錄變更為儲存庫的根目錄,然後執行下列指令來建置 Docker 映像檔:
docker build -t saclient .
重要: 結尾的句點會指出現行目錄。 - 在 GitLab 中,若要防止掃描失敗時合併,請在 中啟用管線必須成功。
- 在 中建立新的合併要求時,確認已起始新的掃描工作。
例子
如果您要在 CentOS 上安裝 GitLab 執行程式,請按照下列說明建置執行程式:
- 下載系統的二進位檔:
sudo curl -L --output /usr/local/bin/gitlab-runner https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64
- 設定執行權限:
sudo chmod +x /usr/local/bin/gitlab-runner
- 建立 GitLab 執行程式使用者:
sudo useradd --comment 'GitLab Runner' --create-home gitlab-runner --shell /bin/bash
- 安裝並作為服務執行:
sudo gitlab-runner install --user=gitlab-runner --working-directory=/home/gitlab-runner sudo gitlab-runner start
- 登錄執行程式:
sudo gitlab-runner register --url https://gitlab.com/ --registration-token $REGISTRATION_TOKEN
其他資訊
現行 yaml
script 包含一個安全原則檢查範例,如果允許的安全問題數量超過特定臨界值,掃描就會失敗。該範例將 maxIssuesAllowed
設為 200
。