Condividi tramite


Integrare strumenti di analisi di terze parti

GitHub Advanced Security per Azure DevOps crea avvisi di analisi del codice in un repository usando le informazioni dei file SARIF (Static Analysis Results Interchange Format). Le proprietà del file SARIF vengono usate per popolare le informazioni sugli avvisi, ad esempio il titolo dell'avviso, la posizione e il testo della descrizione.

È possibile generare file SARIF usando molti strumenti di test di sicurezza dell'analisi statica, tra cui CodeQL. I risultati devono usare SARIF versione 2.1.0. Per altre informazioni su SARIF, vedere esercitazioni su SASRIF.

Caricare un'analisi di analisi del codice con Azure Pipelines

Per usare Azure Pipelines per caricare un file SARIF di terze parti in un repository, la pipeline dovrà usare l'attività AdvancedSecurity-Publish , che fa parte delle attività in bundle con GitHub Advanced Security per Azure DevOps. I parametri di input principali da usare sono:

  • SarifsInputDirectory: configura la directory dei file SARIF da caricare. Il percorso di directory previsto è assoluto.
  • Category: facoltativamente assegna una categoria per i risultati nel file SARIF. In questo modo è possibile analizzare lo stesso commit in diversi modi ed esaminare i risultati usando le visualizzazioni di analisi del codice in GitHub. Ad esempio, è possibile analizzare usando più strumenti e in mono-repository, è possibile analizzare sezioni diverse del repository in base al subset di file modificati.

Di seguito è riportato un esempio di integrazione con l'attività Microsoft Security DevOps di proprietà del team Microsoft Defender per il cloud:

trigger:
- main

pool:
  vmImage: ubuntu-latest

steps:
- task: MicrosoftSecurityDevOps@1
  inputs:
    command: 'run'
    categories: 'IaC'
- task: AdvancedSecurity-Publish@1
  inputs:
    SarifsInputDirectory: '$(Build.ArtifactStagingDirectory)/.gdn/'

Generazione di impronte digitali dei risultati

Se il file SARIF non include partialFingerprints, l'attività AdvancedSecurity-Publish calcolerà automaticamente il partialFingerprints campo e tenterà di impedire avvisi duplicati. Sicurezza avanzata può essere creata partialFingerprints solo quando il repository contiene sia il file SARIF che il codice sorgente usato nell'analisi statica. Per altre informazioni sulla prevenzione degli avvisi duplicati, vedere Fornire dati per tenere traccia degli avvisi di analisi del codice tra le esecuzioni.

Convalidare i risultati dello strumento

È possibile verificare che le proprietà SARIF abbiano le dimensioni supportate per il caricamento e che il file sia compatibile con l'analisi del codice. Per altre informazioni, vedere Convalida del file SARIF. Per verificare se un file SARIF è conforme in modo specifico ai requisiti di Sicurezza avanzata, vedere Convalida SARIF e selezionare Azure DevOps ingestion rules.