Konfigurace akce GitHubu Microsoft Security DevOps

Microsoft Security DevOps je aplikace příkazového řádku, která integruje nástroje statické analýzy do životního cyklu vývoje. Security DevOps instaluje, konfiguruje a spouští nejnovější verze nástrojů pro statickou analýzu, jako jsou SDL, nástroje zabezpečení a dodržování předpisů. Zabezpečení DevOps je řízeno daty pomocí přenosných konfigurací, které umožňují deterministické spouštění napříč několika prostředími.

Microsoft Security DevOps používá následující open source nástroje:

Název Jazyk Licence
AntiMalware AntiMalwarová ochrana ve Windows z programu Microsoft Defender for Endpoint, která vyhledá malware a přeruší sestavení, pokud byl nalezen malware. Tento nástroj ve výchozím nastavení prohledává agenta windows-latest. Není open source
Bandita Python Apache License 2.0
BinSkim Binary--Windows, ELF Licence MIT
Checkov Terraform, Terraform plan, CloudFormation, AWS SAM, Kubernetes, Helm charts, Kustomize, Dockerfile, Serverless, Bicep, OpenAPI, ARM Apache License 2.0
ESlint JavaScript Licence MIT
Analyzátor šablon Šablona ARM, Bicep Licence MIT
Terrascan Terraform (HCL2), Kubernetes (JSON/YAML), Helm v3, Kustomize, Dockerfiles, CloudFormation Apache License 2.0
Trivy image kontejnerů, infrastruktura jako kód (IaC) Apache License 2.0

Požadavky

Konfigurace akce GitHubu Microsoft Security DevOps

Nastavení akce GitHubu:

  1. Přihlaste se na GitHub.

  2. Vyberte úložiště, na které chcete nakonfigurovat akci GitHubu.

  3. Vyberte Akce.

    Snímek obrazovky znázorňující umístění tlačítka Akce

  4. Vyberte Nový pracovní postup.

  5. Na stránce Začínáme s GitHub Actions vyberte nastavit pracovní postup sami.

    Snímek obrazovky znázorňující, kde vybrat nové tlačítko pracovního postupu

  6. Do textového pole zadejte název souboru pracovního postupu. Například msdevopssec.yml.

    Snímek obrazovky, který ukazuje, kam zadat název nového pracovního postupu

  7. Zkopírujte následující ukázkový pracovní postup akce a vložte ho na kartu Upravit nový soubor.

    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 }}
    

    Poznámka:

    Další možnosti a pokyny pro konfiguraci nástrojů najdete na wikiwebu Microsoft Security DevOps.

  8. Výběr možnosti Zahájit potvrzení

    Snímek obrazovky znázorňující, kde vybrat zahájit potvrzení

  9. Vyberte Potvrdit nový soubor. Mějte na paměti, že dokončení procesu může trvat až jednu minutu.

    Snímek obrazovky znázorňující, jak potvrdit nový soubor

  10. Vyberte Akce a ověřte, že je nová akce spuštěná.

    Snímek obrazovky znázorňující, kam přejít, uvidíte, že je vaše nová akce spuštěná.

Zobrazit výsledky kontroly

Zobrazení výsledků kontroly:

  1. Přihlaste se do Azure.

  2. Přejděte do programu Defender for Cloud > DevOps Security.

  3. V okně zabezpečení DevOps byste měli začít vidět stejné výsledky zabezpečení MSDO, které vývojáři uvidí v protokolech CI během několika minut pro přidružené úložiště. Zákazníci s GitHub Advanced Security uvidí také zjištění přijatá z těchto nástrojů.

Další informace

Další kroky

Přečtěte si další informace o zabezpečení DevOps v defenderu pro cloud.

Zjistěte, jak připojit organizace GitHubu k defenderu pro cloud.