Compartilhar via


Integre ferramentas de digitalização de terceiros

O GitHub Advanced Security para Azure DevOps cria alertas de varredura de código em um repositório usando informações de arquivos SARIF (Formato de Intercâmbio de Resultados de Análise Estática). As propriedades do arquivo SARIF são usadas para preencher informações de alerta, como o título do alerta, o local e o texto da descrição.

Você pode gerar arquivos SARIF usando muitas ferramentas de teste de segurança de análise estática, incluindo CodeQL. Os resultados devem usar o SARIF versão 2.1.0. Para obter mais informações sobre o SARIF, consulte os tutoriais do SASRIF.

Carregar uma análise de Varredura de código com o Azure Pipelines

Para usar o Azure Pipelines para carregar um arquivo SARIF de terceiros em um repositório, o pipeline precisará usar a AdvancedSecurity-Publish tarefa, que faz parte das tarefas agrupadas com o GitHub Advanced Security para Azure DevOps. Os principais parâmetros de entrada a serem usados são:

  • SarifsInputDirectory: configura o diretório de arquivos SARIF a serem carregados. O caminho de diretório esperado é absoluto.
  • Category: opcionalmente, atribui uma categoria para resultados no arquivo SARIF. Isso permite que você analise a mesma confirmação de várias maneiras e revise os resultados usando as exibições de varredura de código no GitHub. Por exemplo, você pode analisar usando várias ferramentas, e nos monorrepositórios, você pode analisar diferentes porções do repositório com base no subconjunto de arquivos alterados.

Aqui está um exemplo de uma integração com a tarefa Microsoft Security DevOps pertencente à equipe do Microsoft Defender para Nuvem:

trigger:
- main

pool:
  vmImage: ubuntu-latest

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

Geração de impressão digital de resultado

Se o arquivo SARIF não incluir partialFingerprints, a AdvancedSecurity-Publish tarefa calculará o partialFingerprints campo para você e tentará evitar alertas duplicados. A Segurança Avançada só pode ser criada partialFingerprints quando o repositório contém o arquivo SARIF e o código-fonte usado na análise estática. Para obter mais informações sobre como evitar alertas duplicados, consulte Fornecer dados para rastrear alertas de varredura de código entre execuções.

Validar resultados da ferramenta

Você pode verificar se as propriedades SARIF têm um tamanho compatível com o upload e se o arquivo é compatível com a verificação de código. Para obter mais informações, consulte Validando seu arquivo SARIF. Para validar se um arquivo SARIF está em conformidade especificamente com os requisitos do Advanced Security, consulte Validador SARIF e selecione Azure DevOps ingestion rules.