SAST GitHub 動作

AppScan SAST Github 動作可讓您對儲存庫中的檔案執行靜態分析安全測試 (SAST)。SAST 掃描會識別程式碼中的安全漏洞,並將結果儲存在 AppScan on Cloud。

註冊

如果您沒有帳戶,請在 HCL AppScan on Cloud (ASoC) 上註冊,以產生您的 API 金鑰和 API 密碼。

設定

  1. 在 API 頁面上產生 API 金鑰和 API 密碼。
    • API 金鑰和 API 密碼會對映至此動作的 asoc_key 和 asoc_secret 參數。將 API 金鑰及 API 密碼儲存為儲存庫中的密鑰。
  2. 在 ASoC 中建立應用程式。
    • ASoC 中的 application ID 對映至此動作的 application_id。

必要輸入

名稱 說明
asoc_key API 頁面中的 API 金鑰
asoc_secret API 頁面中的 API 密碼
application_id ASoC 中應用程式的 ID。

選用輸入

名稱 說明 預設
scan_name 在 ASoC 中建立的掃描名稱。 GitHub 儲存庫名稱
personal_scan 將此項設為個人掃描。 false
static_analysis_only 僅執行靜態分析。不要執行 SCA(軟體組成分析)。 false
open_source_only 僅執行 SCA(軟體組成分析)。不要執行靜態分析。 false
secrets_only 只掃描密碼。不要執行靜態分析或 SCA(軟體組成分析)。 false
scan_build_outputs 依預設,只會分析原始碼檔案。啟用此選項將導致分析 Java 和 .NET 的建置輸出檔 (.jar/.war/.ear/.dll/.exe)。此外,如果建置環境可用,還將建置 Maven、Gradle 和 Visual Studio 解決方案。 false
wait_for_analysis 依預設,此動作會在 ASoC 起始掃描,但不會等待分析完成。啟用此選項會讓動作等待分析完成。請注意,這會導致動作執行時間變長。 false
analysis_timout_minutes 如果 wait_for_analysis 是 true,表示等待分析完成的分鐘數。 30 分鐘
fail_for_noncompliance 如果 wait_for_analysis 是 true,表示在掃描中發現任何不符規範問題時,工作就會失敗。 false
failure_threshold 如果已啟用 fail_for_noncompliance,表示失敗的嚴重性。嚴重性較低者不會被視為失敗。例如,如果 failure_threshold 設為 medium,informational 和/或 low 嚴重性問題不會導致失敗。medium、high 和/或 critical 問題則會導致失敗。 low
comment 用來與掃描建立關聯的註解。

範例

name: "HCL AppScan SAST"
on:
  workflow_dispatch
jobs:
  scan:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v4
      - name: Run AppScan SAST scan
        uses: HCL-TECH-SOFTWARE/appscan-sast-action@v1.0.7
        with:
          asoc_key: ${{secrets.ASOC_KEY}}
          asoc_secret: ${{secrets.ASOC_SECRET}}
          application_id: e35ea96d-cae0-499a-a3ed-7a4efd77b269