Condividi tramite


Configurare l'azione GitHub di Microsoft Security DevOps

Microsoft Security DevOps è un'applicazione da riga di comando che integra gli strumenti di analisi statici nel ciclo di vita di sviluppo. La sicurezza devOps installa, configura ed esegue le versioni più recenti degli strumenti di analisi statica, ad esempio SDL, strumenti di sicurezza e conformità. Security DevOps è basato sui dati con configurazioni portabili che consentono l'esecuzione deterministica in più ambienti.

Microsoft Security DevOps usa gli strumenti open source seguenti:

Nome Language Licenza
AntiMalware Protezione antimalware in Windows da Microsoft Defender per endpoint, che esegue l'analisi del malware e interrompe la compilazione se è stato trovato malware. Questo strumento analizza per impostazione predefinita l'agente windows-latest. Non open source
Bandit Pitone Licenza di Apache 2.0
BinSkim Binario--Windows, ELF Licenza di MIT
Checkov Terraform, piano Terraform, CloudFormation, AWS SAM, Kubernetes, grafici Helm, Kustomize, Dockerfile, Serverless, Bicep, OpenAPI, ARM Licenza di Apache 2.0
ESlint JavaScript Licenza di MIT
Analizzatore di modelli Modello di ARM, Bicep Licenza di MIT
Terrascan Terraform (HCL2), Kubernetes (JSON/YAML), Helm v3, Kustomize, Dockerfiles, CloudFormation Licenza di Apache 2.0
Trivy immagini di container, Infrastruttura come Codice (IaC) Licenza di Apache 2.0

Prerequisiti

Configurare l'azione GitHub di Microsoft Security DevOps

Per configurare GitHub action:

  1. Accedere a GitHub.

  2. Selezionare un repository in cui si vuole configurare l'azione GitHub.

  3. Selezionare Azioni.

    Screenshot che mostra dove si trova il pulsante Azioni.

  4. Selezionare Nuovo flusso di lavoro.

  5. Nella pagina Introduzione a GitHub Actions selezionare Configura manualmente un flusso di lavoro

    Screenshot che mostra dove selezionare il nuovo pulsante del flusso di lavoro.

  6. Nella casella di testo immettere un nome per il file del flusso di lavoro. Ad esempio: msdevopssec.yml.

    Screenshot che mostra dove immettere un nome per il nuovo flusso di lavoro.

  7. Copiare e incollare il flusso di lavoro dell'azione di esempio seguente nella scheda Modifica nuovo file.

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

    Annotazioni

    Per altre opzioni e istruzioni di configurazione degli strumenti, vedere il wiki di Microsoft Security DevOps

  8. Selezionare Avvia commit

    Screenshot che mostra dove selezionare Avvia commit.

  9. Selezionare Esegui il commit del nuovo file. Si noti che il completamento del processo può richiedere fino a un minuto.

    Screenshot che mostra come eseguire il commit di un nuovo file.

  10. Selezionare Azioni e verificare che la nuova azione sia in esecuzione.

    Screenshot che mostra dove navigare per vedere se la nuova azione è in esecuzione.

Visualizzare i risultati dell'analisi

Per visualizzare i risultati dell'analisi:

  1. Accedere ad Azure.

  2. Vai a Defender per la sicurezza DevOps del cloud >.

  3. Dal pannello di sicurezza DevOps, dovresti iniziare a vedere gli stessi risultati di sicurezza MSDO che i sviluppatori vedono nei log CI entro pochi minuti per il repository associato. I clienti con GitHub Advanced Security vedranno anche i risultati inseriti da questi strumenti.

Ulteriori informazioni

Passaggi successivi

Altre informazioni su Sicurezza DevOps in Defender per il cloud.

Scopri come connettere le organizzazioni GitHub a Defender for Cloud.