Integrowanie narzędzi do skanowania innych firm
Usługa GitHub Advanced Security dla usługi Azure DevOps tworzy alerty skanowania kodu w repozytorium przy użyciu informacji z plików SARIF (Static Analysis Results Interchange Format). Właściwości pliku SARIF służą do wypełniania informacji o alertach, takich jak tytuł alertu, lokalizacja i tekst opisu.
Pliki SARIF można wygenerować przy użyciu wielu narzędzi do testowania zabezpieczeń analizy statycznej, w tym CodeQL. Wyniki muszą używać programu SARIF w wersji 2.1.0. Aby uzyskać więcej informacji na temat PROGRAMU SARIF, zobacz samouczki dotyczące sygnatury dostępu współdzielonego.
Przekazywanie analizy skanowania kodu za pomocą usługi Azure Pipelines
Aby przekazać plik SARIF innej firmy do repozytorium przy użyciu usługi Azure Pipelines, potok będzie musiał użyć AdvancedSecurity-Publish
zadania, które jest częścią zadań powiązanych z usługą GitHub Advanced Security for Azure DevOps. Główne parametry wejściowe do użycia to:
SarifsInputDirectory
: konfiguruje katalog plików SARIF do przekazania. Oczekiwana ścieżka katalogu jest bezwzględna.Category
: opcjonalnie przypisuje kategorię dla wyników w pliku SARIF. Dzięki temu można analizować to samo zatwierdzenie na wiele sposobów i przeglądać wyniki przy użyciu widoków skanowania kodu w usłudze GitHub. Na przykład możesz analizować przy użyciu wielu narzędzi, a w repozytoriach mono można analizować różne wycinki repozytorium na podstawie podzestawu zmienionych plików.
Oto przykład integracji z zadaniem DevOps zabezpieczeń firmy Microsoft należącym do zespołu Microsoft Defender dla Chmury:
trigger:
- main
pool:
vmImage: ubuntu-latest
steps:
- task: MicrosoftSecurityDevOps@1
inputs:
command: 'run'
categories: 'IaC'
- task: AdvancedSecurity-Publish@1
inputs:
SarifsInputDirectory: '$(Build.ArtifactStagingDirectory)/.gdn/'
Generowanie odcisków palców wyników
Jeśli plik SARIF nie zawiera partialFingerprints
, AdvancedSecurity-Publish
zadanie obliczy partialFingerprints
pole i spróbuje zapobiec zduplikowaniu alertów. Usługa Advanced Security może tworzyć tylko partialFingerprints
wtedy, gdy repozytorium zawiera zarówno plik SARIF, jak i kod źródłowy używany w analizie statycznej. Aby uzyskać więcej informacji na temat zapobiegania zduplikowaniu alertów, zobacz Dostarczanie danych w celu śledzenia alertów skanowania kodu w różnych uruchomieniach.
Sprawdzanie poprawności wyników narzędzia
Możesz sprawdzić, czy właściwości SARIF mają obsługiwany rozmiar przekazywania i czy plik jest zgodny ze skanowaniem kodu. Aby uzyskać więcej informacji, zobacz Weryfikowanie pliku SARIF. Aby sprawdzić, czy plik SARIF jest zgodny z wymaganiami usługi Advanced Security, zobacz moduł sprawdzania poprawności SARIF i wybierz pozycję Azure DevOps ingestion rules
.