Bewerken

Share via


De Microsoft Security DevOps Azure DevOps-extensie configureren

Microsoft Security DevOps is een opdrachtregeltoepassing die statische analysehulpprogramma's integreert in de ontwikkelingslevenscyclus. Microsoft Security DevOps installeert, configureert en voert de nieuwste versies van statische analysehulpprogramma's uit (inclusief, maar niet beperkt tot SDL/hulpprogramma's voor beveiliging en naleving). Microsoft Security DevOps is gegevensgestuurd met draagbare configuraties die deterministische uitvoering in meerdere omgevingen mogelijk maken.

De Microsoft Security DevOps maakt gebruik van de volgende opensource-hulpprogramma's:

Naam Taal Licentie
Antimalware AntiMalwarebeveiliging in Windows tegen Microsoft Defender voor Eindpunt, die scant op malware en de build onderbreekt als er malware is gevonden. Dit hulpprogramma scant standaard op windows-nieuwste agent. Niet open source
Bandit Python Apache License 2.0
BinSkim Binary--Windows, ELF MIT-licentie
Checkov Terraform, Terraform-plan, CloudFormation, AWS SAM, Kubernetes, Helm-grafieken, Kustomize, Dockerfile, Serverless, Bicep, OpenAPI, ARM Apache License 2.0
ESlint JavaScript MIT-licentie
IaCFileScanner Hulpprogramma voor sjabloontoewijzing voor Terraform, CloudFormation, ARM-sjabloon, Bicep Niet open source
Sjabloonanalyse ARM-sjabloon, Bicep MIT-licentie
Terrascan Terraform (HCL2), Kubernetes (JSON/YAML), Helm v3, Kustomize, Dockerfiles, CloudFormation Apache License 2.0
Trivy containerinstallatiekopieën, Infrastructure as Code (IaC) Apache License 2.0

Notitie

Vanaf 20 september 2023 is het hulpprogramma voor het scannen van geheimen (CredScan) binnen de MSDO-extensie (Microsoft Security DevOps) voor Azure DevOps afgeschaft. Scannen van MSDO-geheimen wordt vervangen door GitHub Advanced Security voor Azure DevOps.

Vereisten

  • Voor het installeren van de extensie zijn Beheer istratorbevoegdheden voor de Azure DevOps-organisatie vereist.

Als u geen toegang hebt om de extensie te installeren, moet u tijdens het installatieproces toegang aanvragen bij de beheerder van uw Azure DevOps-organisatie.

De Microsoft Security DevOps Azure DevOps-extensie configureren

De Microsoft Security DevOps Azure DevOps-extensie configureren:

  1. Aanmelden bij Azure DevOps.

  2. Navigeer naar Extensies voor Shopping Bag>Manage.

    Schermopname die laat zien hoe u naar het scherm Extensies beheren navigeert.

  3. Selecteer Gedeeld.

    Notitie

    Als u de Microsoft Security DevOps-extensie al hebt geïnstalleerd, wordt deze weergegeven op het tabblad Geïnstalleerd.

  4. Selecteer Microsoft Security DevOps.

    Schermopname van waar u Microsoft Security DevOps kunt selecteren.

  5. Selecteer Installeren.

  6. Selecteer de juiste organisatie in de vervolgkeuzelijst.

  7. Selecteer Installeren.

  8. Selecteer Doorgaan naar organisatie.

Uw pijplijnen configureren met YAML

Uw pijplijn configureren met YAML:

  1. Aanmelden bij Azure DevOps

  2. Selecteer uw project.

  3. Navigeren naar pijplijnen

  4. Selecteer Nieuwe pijplijn.

    Schermopname die laat zien waar u een pijplijn kunt maken in DevOps.

  5. Selecteer Git voor Azure-opslagplaatsen.

    Schermopname van waar u naartoe navigeert om Git van Azure-opslagplaats te selecteren.

  6. Selecteer de relevante opslagplaats.

    Schermopname die laat zien waar u uw opslagplaats kunt selecteren.

  7. Selecteer Starter-pijplijn.

    Schermopname die laat zien waar u starterspijplijn selecteert.

  8. Plak de volgende YAML in de pijplijn:

    # Starter pipeline
    # Start with a minimal pipeline that you can customize to build and deploy your code.
    # Add steps that build, run tests, deploy, and more:
    # https://aka.ms/yaml
    trigger: none
    pool:
      # ubuntu-latest also supported.
      vmImage: 'windows-latest'
    steps:
    - task: MicrosoftSecurityDevOps@1
      displayName: 'Microsoft Security DevOps'
      # inputs:    
        # config: string. Optional. A file path to an MSDO configuration file ('*.gdnconfig'). Vist the MSDO GitHub wiki linked below for additional configuration instructions
        # policy: 'azuredevops' | 'microsoft' | 'none'. Optional. The name of a well-known Microsoft policy to determine the tools/checks to run. If no configuration file or list of tools is provided, the policy may instruct MSDO which tools to run. Default: azuredevops.
        # 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'.
        # break: boolean. Optional. If true, will fail this build step if any high severity level results are found. Default: false.
        # publish: boolean. Optional. If true, will publish the output SARIF results file to the chosen pipeline artifact. Default: true.
        # artifactName: string. Optional. The name of the pipeline artifact to publish the SARIF result file to. Default: CodeAnalysisLogs*.
      
    

    Notitie

    De artifactName 'CodeAnalysisLogs' is vereist voor integratie met Defender voor Cloud. Zie de Microsoft Security DevOps-wiki voor aanvullende configuratieopties en omgevingsvariabelen

  9. Als u de pijplijn wilt doorvoeren, selecteert u Opslaan en uitvoeren.

    De pijplijn wordt enkele minuten uitgevoerd en slaat de resultaten op.

    Notitie

    Installeer de SARIF SAST Scans Tab-extensie in de Azure DevOps-organisatie om ervoor te zorgen dat de gegenereerde analyseresultaten automatisch worden weergegeven op het tabblad Scans.

Bevindingen van beveiligingshulpprogramma's van derden uploaden naar Defender voor Cloud

Hoewel Defender voor Cloud de MSDO CLI biedt voor gestandaardiseerde functionaliteit en beleidscontroles in een set opensource-beveiligingsanalyses, hebt u de flexibiliteit om resultaten te uploaden van andere beveiligingshulpprogramma's van derden die u mogelijk hebt geconfigureerd in CI/CD-pijplijnen om te Defender voor Cloud voor uitgebreide contextuele code-naar-cloud. Alle resultaten die naar Defender voor Cloud zijn geüpload, moeten de standaard-SARIF-indeling hebben.

Zorg er eerst voor dat uw Azure DevOps-opslagplaatsen worden geïmplementeerd voor Defender voor Cloud. Nadat u de onboarding van Defender voor Cloud hebt voltooid, controleert deze continu het artefact 'CodeAnalysisLogs' voor SARIF-uitvoer.

U kunt de taak 'PublishBuildArtifacts@1' gebruiken om ervoor te zorgen dat SARIF-uitvoer wordt gepubliceerd naar het juiste artefact. Als een security analyzer bijvoorbeeld uitvoertresults.sarif, kunt u de volgende taak in uw taak configureren om ervoor te zorgen dat de resultaten worden geüpload naar Defender voor Cloud:

- task: PublishBuildArtifacts@1
  inputs:
    PathtoPublish: 'results.sarif'
    ArtifactName: 'CodeAnalysisLogs'

Findings from third-party security tools will appear as 'Azure DevOps repositories should have code scanning findings resolved' assessments associated with the repository the security finding was identified in.