Action GitHub CodeSweep
L'action CodeSweep pour GitHub de HCL AppScan vous permet de vérifier votre code à chaque demande d'extraction. Après chaque mise à jour, l'action identifie les vulnérabilités présentes dans le code modifié. Mais au-delà de l'identification des problèmes, l'extension CodeSweep pour GitHub de HCL AppScan vous aide à atténuer les problèmes avant qu'ils n'atteignent la branche principale.
Tutoriel
S'enregistrer
Inscrivez-vous sur HCL AppScan on Cloud (ASOC) pour générer votre clé/secret d'API.
Configuration
- Après vous être connecté à ASoC, accédez à la page API pour générer votre paire clé/secret d'API. Ceux-ci doivent être utilisés dans les paramètres
asoc_key
etasoc_secret
de l'action. Stockez ces paramètres en tant que secrets dans votre référentiel. - Assurez-vous que l'option Droits relatifs aux flux de travaux de votre référentiel est définie sur Droits d'accès en lecture et en écriture. Cela permet à CodeSweep d'examiner vos fichiers et de créer des checkruns et des annotations pour les problèmes qu'il détecte. Pour accéder à ces paramètres, sélectionnez .
- Pour examiner les modifications apportées au code lorsqu'une demande d'extraction est ouverte, ajoutez le fichier suivant à votre référentiel sous
.github/workflows/codesweep.yml
ou mettez à jour un fichier de flux de travaux existant :name: "HCL AppScan CodeSweep" on: pull_request: types: [opened,synchronize] jobs: scan: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v1 - name: Run AppScan CodeSweep uses: HCL-TECH-SOFTWARE/appscan-codesweep-action@v2 with: asoc_key: ${{secrets.ASOC_KEY}} asoc_secret: ${{secrets.ASOC_SECRET}} env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
Remarque : Si vous utilisez checkout@v2 ou version ultérieure, vous devez définir fetch-depth sur 0. Exemple :uses: actions/checkout@v2 with: fetch-depth: 0
- Pour publier des problèmes de sécurité dans ASoC lorsqu'une demande d'extraction est fusionnée, ajoutez le fichier suivant à votre référentiel sous
.github/workflows/codesweep_publish.yml
ou mettez à jour un fichier de flux de travaux existant :name: "HCL AppScan CodeSweep" on: pull_request: types: [closed] jobs: publish: runs-on: ubuntu-latest steps: - name: Publish issues to ASoC uses: HCL-TECH-SOFTWARE/appscan-codesweep-action@v2 with: asoc_key: ${{secrets.ASOC_KEY}} asoc_secret: ${{secrets.ASOC_SECRET}} publish_on_merge: true application_id: <your ASoC application ID> env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
Paramètres facultatifs pour l'examen
Paramètre | Description | Valeurs | Valeur par défaut |
---|---|---|---|
status |
Statut des vérifications si des problèmes de sécurité sont détectés. |
|
neutral |
with:
status: failure
Paramètre facultatif pour la publication des problèmes dans AppScan on Cloud
Paramètre | Description | Valeurs | Valeur par défaut |
---|---|---|---|
issue_status |
Statut des problèmes publiés dans ASoC. |
|
open |
scan_base_name |
ASoC | Un horodatage est ajouté au nom de base donné. | GitHub_CodeSweep |
personal_scan |
ASoC |
|
true |
with:
publish_on_merge: true
application_id: 6c058381-17ca-e711-8de5-002590ac753d
issue_status: "inprogress"
scan_base_name: "CodeSweep"
personal_scan: true
Exemple
Des annotations sont ajoutées à la vue diff, pour signaler toutes les lignes de code vulnérables, et un checkrun est ajouté pour fournir des détails supplémentaires, notamment des exemples de code correct et incorrect et des informations d'atténuation.
Langues prises en charge
Langues | |||
---|---|---|---|
Android-Java | Groovy | NodeJS | Ruby |
Angular | IaC (Docker, K8s, Terraform) | Objective-C/Objective-C++ | Scala |
Sommet | Ionic | PHP | Swift |
C/C++ | Java | PL/SQL | T-SQL |
Cobol | JavaScript | Perl | TypeScript |
ColdFusion | JQuery | Python | VueJS |
Dart | Kotlin | React | .Net (C#, VB.NET, ASP.Net) |
GoLang | Mootools | React Native | Xamarin |
Résolution des incidents
Problème : L'examen de sécurité s'exécute, mais aucun checkrun ou annotation n'est créé pour les problèmes de sécurité détectés. Le journal du flux de travaux contient l'erreur :
Error: Failed creating checkrun: HttpError: Resource not accessible by integration
Résolution : Cette erreur indique que le flux de travaux ne dispose pas des droits d'accès en écriture au référentiel. CodeSweep ne peut donc pas créer les checkruns et les annotations. Pour remédier à ce problème, accédez à Droits relatifs aux flux de travaux sur Droits d'accès en lecture et en écriture.
et définissezRejoindre la communauté
Utilisez le canal Slack CodeSweep pour nous faire part de vos commentaires ou poser des questions générales sur l'action CodeSweep de HCL AppScan.