配置 GoSec 掃描
使用 gosec 來檢查已掃描儲存庫中的 Golang 原始碼。
必要參數
管線需要表格 1 中的參數才能執行 Gossec 掃描。 如需管線參數的完整清單,請參閱 管線參數。
| 名稱 | 類型 | 說明 | 必要或選用 |
|---|---|---|---|
opt-in-gosec |
text | 若要啟用 gosec 掃描,請將該屬性設定為任何非空值。 若要停用掃描,請將其設定為空值或完全移除該屬性。 (預設為空) | 必須 |
對專用 Git 儲存庫啟用 gosec 掃描
如果您的專案需要位於專用 Git 儲存庫中的相依關係,因此需要 SSH 型鑑別,您可以提供選用參數來啟用管線以擷取相依關係。 如需相關資訊,請參閱 啟用下載專用儲存庫的相依關係。
如果必須指定代理才能擷取依賴項目,您可以使用管道參數指定其 URL 以及憑證 (使用者名稱和標記)。 如需相關資訊,請參閱 啟用 GOPROXY。
啟用下載專用儲存庫的相依關係
提供下列所有管線參數,即可啟用下載儲存庫的相依關係。
| 名稱 | 類型 | 說明 | 必要或選用 |
|---|---|---|---|
gosec-private-repository-url |
文本 | (已被廢棄) 您的私有資源庫基礎 URL. | 可选 |
gosec-private-repository-host |
text | 您的專用儲存庫主機。 例如,github.ibm.com |
optional |
gosec-private-repository-ssh-key |
secret | 專用儲存庫的 SSH 金鑰 | 選用 |
gosec-private-repository-user |
text | 具有 x-oauth-basic 存取權之專用儲存庫的使用者 |
選用 |
gosec-private-repository-token |
secret | 用于 https 访问私有仓库的令牌(默认为工具链中第一个 git 集成配置的令牌,其仓库 URL 托管在 gosec-private-repository-host's 值上)。 |
可选 |
啟用 GOPROXY
如果必須指定 GOPROXY,則必須提供下列所有參數。
| 名稱 | 類型 | 說明 | 必要或選用 |
|---|---|---|---|
gosec-proxy-virtual-repository-user |
text | gosec Proxy 的虛擬儲存庫使用者 | 選用 |
gosec-proxy-virtual-repository-token |
secret | gosec Proxy 的虛擬儲存庫記號 | 選用 |
gosec-proxy-virtual-repository-url |
text | gosec Proxy 的虛擬儲存庫 URL | optional |
選用參數
gosec-scan-image 參數可用來指定要使用的不同 gosec 映像檔,例如自訂映像檔或官方 gosec 映像檔的特定版本。
gosec-additional-flags 旗標的用法顯示在下面的 examples 小節中。
| 參數名稱 | 預設值 | 說明 |
|---|---|---|
gosec-additional-flags |
text | 要附加至 gosec 指令開頭的其他旗標。 |
gosec-scan-image |
text | 指定替代 gosec 映像檔,包括自訂映像檔或官方映像檔的特定版本。 |
範例
將 gosec-additional-flags 的值定義為 -exclude-dir=<your_folder_1> -exclude-dir=<your_folder_2> -nosec=true,並將 gosec 指令執行更新為:
./gosec -exclude-dir=<your_folder_1> -exclude-dir=<your_folder_2> -nosec=true -no-fail -fmt=json -out=gosec-results.json -stdout -verbose=text ./...
使用您自己的配置檔
如果您要修改預設配置,請在目標儲存庫中建立 config.json 檔。 如需配置檔中分析參數的相關資訊,請參閱 gosec 配置。
使用另一個靜態掃描實作
如果您想要使用您自己的靜態掃描實作,請修改 .pipeline-config.yaml 檔,並將您自己的自訂 Script 新增至 static-scan 階段。 如需相關資訊,請參閱 自訂 Script。