Konfigurowanie akcji GitHub devOps zabezpieczeń firmy Microsoft
Microsoft Security DevOps to aplikacja wiersza polecenia, która integruje narzędzia do analizy statycznej w cyklu projektowania. Usługa Security DevOps instaluje, konfiguruje i uruchamia najnowsze wersje narzędzi do analizy statycznej, takich jak SDL, narzędzia zabezpieczeń i zgodności. Usługa Security DevOps jest oparta na danych z przenośnymi konfiguracjami, które umożliwiają deterministyczne wykonywanie w wielu środowiskach.
Metodyka DevOps zabezpieczeń firmy Microsoft korzysta z następujących narzędzi typu open source:
Nazwisko | Język | Licencja |
---|---|---|
Oprogramowanie chroniące przed złośliwym kodem | Ochrona przed złośliwym kodem w systemie Windows z Ochrona punktu końcowego w usłudze Microsoft Defender, która skanuje pod kątem złośliwego oprogramowania i przerywa kompilację w przypadku znalezienia złośliwego oprogramowania. To narzędzie domyślnie skanuje w przypadku agenta najnowszego systemu Windows. | Nie open source |
Bandyta | Python | Licencja apache 2.0 |
BinSkim | Binary--Windows, ELF | Licencja X11 |
Checkov | Terraform, Plan Terraform, CloudFormation, AWS SAM, Kubernetes, Helm charts, Kustomize, Dockerfile, Serverless, Bicep, OpenAPI, ARM | Licencja apache 2.0 |
ESlint | JavaScript | Licencja X11 |
Analizator szablonów | Szablon usługi ARM, Bicep | Licencja X11 |
Terrascan | Terraform (HCL2), Kubernetes (JSON/YAML), Helm v3, Kustomize, Dockerfiles, CloudFormation | Licencja apache 2.0 |
Trywij | obrazy kontenerów, infrastruktura jako kod (IaC) | Licencja apache 2.0 |
Wymagania wstępne
Subskrypcja platformy Azure Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto .
Połącz repozytoria GitHub.
Otwórz akcję GitHub DevOps zabezpieczeń firmy Microsoft w nowym oknie.
Upewnij się, że uprawnienia przepływu pracy są ustawione na odczyt i zapis w repozytorium GitHub. Obejmuje to ustawienie uprawnień "id-token: write" w przepływie pracy usługi GitHub na potrzeby federacji z Defender dla Chmury.
Konfigurowanie akcji GitHub devOps zabezpieczeń firmy Microsoft
Aby skonfigurować akcję usługi GitHub:
Zaloguj się do usługi GitHub.
Wybierz repozytorium, do którego chcesz skonfigurować akcję GitHub.
Wybierz Akcje.
Wybierz pozycję Nowy przepływ pracy.
Na stronie Wprowadzenie do funkcji GitHub Actions wybierz pozycję Skonfiguruj przepływ pracy samodzielnie
W polu tekstowym wprowadź nazwę pliku przepływu pracy. Na przykład
msdevopssec.yml
.Skopiuj i wklej następujący przykładowy przepływ pracy akcji na karcie Edytuj nowy plik.
name: MSDO on: push: branches: - main jobs: sample: name: Microsoft Security DevOps # Windows and Linux agents are supported runs-on: windows-latest permissions: contents: read id-token: write actions: read # Write access for security-events is only required for customers looking for MSDO results to appear in the codeQL security alerts tab on GitHub (Requires GHAS) security-events: write steps: # Checkout your code repository to scan - uses: actions/checkout@v3 # Run analyzers - name: Run Microsoft Security DevOps uses: microsoft/security-devops-action@latest id: msdo # with: # config: string. Optional. A file path to an MSDO configuration file ('*.gdnconfig'). # policy: 'GitHub' | 'microsoft' | 'none'. Optional. The name of a well-known Microsoft policy. If no configuration file or list of tools is provided, the policy may instruct MSDO which tools to run. Default: GitHub. # categories: string. Optional. A comma-separated list of analyzer categories to run. Values: 'code', 'artifacts', 'IaC', 'containers'. Example: 'IaC, containers'. Defaults to all. # languages: string. Optional. A comma-separated list of languages to analyze. Example: 'javascript,typescript'. Defaults to all. # tools: string. Optional. A comma-separated list of analyzer tools to run. Values: 'bandit', 'binskim', 'checkov', 'eslint', 'templateanalyzer', 'terrascan', 'trivy'. # Upload alerts to the Security tab - required for MSDO results to appear in the codeQL security alerts tab on GitHub (Requires GHAS) # - name: Upload alerts to Security tab # uses: github/codeql-action/upload-sarif@v3 # with: # sarif_file: ${{ steps.msdo.outputs.sarifFile }} # Upload alerts file as a workflow artifact - required for MSDO results to appear in the codeQL security alerts tab on GitHub (Requires GHAS) # - name: Upload alerts file as a workflow artifact # uses: actions/upload-artifact@v3 # with: # name: alerts # path: ${{ steps.msdo.outputs.sarifFile }}
Uwaga
Aby uzyskać dodatkowe opcje i instrukcje dotyczące konfiguracji narzędzi, zobacz witrynę typu wiki DevOps zabezpieczeń firmy Microsoft
Wybierz pozycję Rozpocznij zatwierdzenie
Wybierz pozycję Zatwierdź nowy plik. Pamiętaj, że ukończenie procesu może potrwać do jednej minuty.
Wybierz pozycję Akcje i sprawdź, czy nowa akcja jest uruchomiona.
Wyświetlanie wyników skanowania
Aby wyświetlić wyniki skanowania:
Zaloguj się do Azure.
Przejdź do Defender dla Chmury > DevOps Security.
W bloku zabezpieczeń metodyki DevOps należy zacząć widzieć te same wyniki zabezpieczeń MSDO, które deweloperzy widzą w dziennikach ciągłej integracji w ciągu kilku minut od skojarzonego repozytorium. Klienci z usługą GitHub Advanced Security zobaczą również wyniki pozyskane z tych narzędzi.
Dowiedz się więcej
Dowiedz się więcej o akcjach usługi GitHub dla platformy Azure.
Dowiedz się, jak wdrażać aplikacje z usługi GitHub na platformie Azure.
Następne kroki
Dowiedz się więcej o zabezpieczeniach metodyki DevOps w Defender dla Chmury.
Dowiedz się, jak połączyć organizacje usługi GitHub z Defender dla Chmury.