Action GitHub SAST

L'action Github AppScan SAST vous permet d'exécuter des tests SAST (Static Analysis Security Testing) sur les fichiers de votre référentiel. L'examen SAST identifie les vulnérabilités de sécurité présentes dans votre code et enregistre les résultats dans AppScan sur Cloud.

S'enregistrer

Si vous n'avez pas encore de compte, inscrivez-vous sur HCL AppScan on Cloud (ASOC) pour générer votre clé d'API et votre secret d'API.

Configuration

  1. Générez votre clé d'API et votre secret d'API sur la page API.
    • La clé d'API et le secret d'API correspondent aux paramètres asoc_key et asoc_secret de cette action. Stockez la clé d'API et le secret d'API en tant que secrets dans votre référentiel.
  2. Créez l'application dans ASoC.
    • L'application ID de ASoC correspond à l'application_id de cette action.

Entrées obligatoires

Nom : Description
asoc_key Clé d'API que vous avez générée sur la page API
asoc_secret Secret d'API que vous avez généré sur la page API
application_id ID de l'application dans ASoC.

Entrées facultatives

Nom : Description Valeur par défaut
scan_name Nom de l'examen créé dans ASoC. Nom du référentiel GitHub
personal_scan Faites-en un examen personnel. false
static_analysis_only Analyse statique uniquement. Pas d'analyse SCA (Software Composition Analysis). false
open_source_only Analyse SCA (Software Composition Analysis) uniquement. Pas d'analyse statique. false
scan_build_outputs Par défaut, seuls les fichiers de code source sont analysés. L'activation de cette option entraîne l'analyse des fichiers de sortie de la génération pour Java et .NET (.jar/.war/.ear/.dll/.exe). En outre, les solutions Maven, Gradle et Visual Studio sont générées si l'environnement de génération est disponible. false
wait_for_analysis Par défaut, cette action lance l'examen dans ASoC, mais n'attend pas la fin de l'analyse. Si vous activez cette option, l'action attend la fin de l'analyse. Notez que l'exécution de l'action prend alors plus de temps. false
analysis_timout_minutes Si wait_for_analysis est défini sur true, indique le nombre de minutes d'attente avant la fin de l'analyse. 30 minutes.
fail_for_noncompliance Si wait_for_analysis est défini sur true, le travail échoue en cas de détection de problèmes de non-conformité lors de l'examen. false
failure_threshold Si fail_for_noncompliance est activé, indique le niveau de gravité considéré comme un échec. Un niveau de gravité moindre n'est pas considéré comme un échec. Par exemple, si failure_threshold est défini sur medium, informational et/ou low, les problèmes de gravité ne provoquent pas d'échec. Les problèmes de niveau medium, high et/ou critical provoquent un échec. low
comment Commentaire auquel associer l'examen.

Exemple

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