Aktivieren von Pull Request-Anmerkungen in GitHub und Azure DevOps

DevOps-Sicherheit macht Sicherheitsergebnisse als Anmerkungen in Pull Requests (PR) verfügbar. Sicherheitsoperatoren können PR-Anmerkungen in Microsoft Defender for Cloud aktivieren. Alle verfügbar gemachten Probleme können von Entwickler*innen behoben werden. Dadurch können potenzielle Sicherheitsrisiken und Fehlkonfigurationen verhindert und behoben werden, bevor sie in das Produktionsstadium gelangen. DevOps-Sicherheit erstellt Anmerkungen nicht für alle Sicherheitsrisiken, die in der gesamten Datei erkannt wurden, sondern nur für Sicherheitsrisiken innerhalb der Unterschiede, die durch den Pull Request eingeführt wurden. Entwickler können Anmerkungen in ihren Quellcodeverwaltungssystemen und Sicherheitsoperatoren und nicht gelöste Ergebnisse in Microsoft Defender for Cloud sehen.

Mit Microsoft Defender for Cloud können Sie PR-Anmerkungen in Azure DevOps konfigurieren. Sie können PR-Anmerkungen in GitHub erhalten, wenn Sie ein GitHub Advanced Security-Kunde sind.

Erläuterung von Pull Request-Anmerkungen

Pull Request-Anmerkungen sind Kommentare, die einem Pull Request in GitHub oder Azure DevOps hinzugefügt werden. Diese Anmerkungen geben Feedback zu den im Pull Request vorgenommenen Codeänderungen und identifizierten Sicherheitsproblemen. Sie helfen Reviewern, die vorgenommenen Änderungen zu verstehen.

Anmerkungen können von einem Benutzer mit Zugriff auf das Repository hinzugefügt und verwendet werden, um Änderungen vorzuschlagen, Fragen zu stellen oder Feedback zum Code zu geben. Anmerkungen können auch verwendet werden, um Probleme und Fehler nachzuverfolgen, die behoben werden müssen, bevor der Code mit dem Mainbranch zusammengeführt wird. DevOps-Sicherheit in Defender for Cloud verwendet Anmerkungen, um Sicherheitsergebnisse verfügbar zu machen.

Voraussetzungen

Für GitHub:

Für Azure DevOps:

Aktivieren von Pull Request-Anmerkungen in GitHub

Durch Aktivieren von PR-Anmerkungen in GitHub erhalten Ihre Entwickler die Möglichkeit, Sicherheitsprobleme zu sehen, wenn sie ihre Pull Requests direkt im Mainbranch erstellen.

So aktivieren Sie Pull Request-Anmerkungen in GitHub:

  1. Navigieren Sie zu GitHub, und melden Sie sich an.

  2. Wählen Sie ein Repository aus, das Sie in Defender for Cloud integriert haben.

  3. Navigieren Sie zu Your repository's home page>.github/workflows.

    Screenshot, der zeigt, wohin Sie navigieren müssen, um den Ordner für GitHub-Workflows auszuwählen.

  4. Wählen Sie die Datei msdevopssec.yml aus, die in den Voraussetzungen erstellt wurde.

    Screenshot, der zeigt, wo sie auf dem Bildschirm die Datei „msdevopssec.yml“ auswählen können.

  5. Wählen Sie Edit (Bearbeiten) aus.

    Screenshot, der zeigt, wie die Schaltfläche „Bearbeiten“ aussieht.

  6. Suchen Sie den Triggerabschnitt, und aktualisieren Sie ihn mit folgendem Inhalt:

    # Triggers the workflow on push or pull request events but only for the main branch
    pull_request:
      branches: ["main"]
    

    Sie können auch ein Beispielrepository anzeigen.

    (Optional) Sie können auswählen, welche Branches ausgeführt werden sollen, indem Sie die Branches im Triggerabschnitt eingeben. Um alle Branches einzuschließen, entfernen Sie die Zeilen mit der Branchliste. 

  7. Klicken Sie auf Start commit (Commit starten).

  8. Wählen Sie Commit changes (Änderungen committen) aus.

    Alle Probleme, die vom Scanner erkannt werden, können im Abschnitt „Geänderte Dateien“ Ihres Pull Requests angezeigt werden.

    • Used in tests (Wird in Tests verwendet): Die Warnung ist nicht im Produktionscode vorhanden.

Aktivieren von Pull Request-Anmerkungen in Azure DevOps

Durch Aktivieren von PR-Anmerkungen in Azure DevOps erhalten Ihre Entwickler die Möglichkeit, Sicherheitsprobleme zu sehen, wenn sie ihre PR direkt im Mainbranch erstellen.

Aktivieren der Buildüberprüfungsrichtlinie für den CI-Build

Damit Sie Pull Request-Anmerkungen aktivieren können, muss im Mainbranch die Buildüberprüfungsrichtlinie für den CI-Build aktiviert sein.

So aktivieren Sie die Buildüberprüfungsrichtlinie für den CI-Build:

  1. Melden Sie sich bei Ihrem Azure DevOps-Projekt an.

  2. Navigieren Sie zu Project settings>Repositories (Projekteinstellungen > Repositorys).

    Screenshot, der zeigt, wohin Sie navigieren müssen, um Repositorys auszuwählen.

  3. Wählen Sie das Repository aus, für das Pull Requests aktiviert werden sollen.

  4. Wählen Sie Richtlinien aus.

  5. Navigieren Sie zu Branchrichtlinien>Mainbranch.

    Screenshot, der zeigt, wo die Branchrichtlinien zu finden sind.

  6. Navigieren Sie zum Abschnitt „Buildvalidierung“.

  7. Stellen Sie sicher, dass die Buildüberprüfung für Ihr Repository auf Ein umgeschaltet ist.

    Screenshot, der zeigt, wo sich der CI Build-Umschalter befindet.

  8. Wählen Sie Speichern aus.

    Screenshot: Buildvalidierung.

Nachdem Sie diese Schritte abgeschlossen haben, können Sie die zuvor erstellte Buildpipeline auswählen und die Einstellungen Ihren Anforderungen entsprechend anpassen.

Aktivieren von Pull Request-Anmerkungen

So aktivieren Sie Pull Request-Anmerkungen in Azure DevOps:

  1. Melden Sie sich beim Azure-Portal an.

  2. Navigieren Sie zu Defender for Cloud>DevOps-Sicherheit.

  3. Wählen Sie alle relevanten Repositorys aus, für die Pull Request-Anmerkungen aktiviert werden sollen.

  4. Wählen Sie Ressourcen verwalten aus.

    Screenshot, der anzeigt, wie Sie Ressourcen verwalten.

  5. Legen Sie Pull Request-Anmerkungen auf Ein fest.

    Screenshot, der zeigt, dass der Umschalter auf „Ein“ geschaltet ist.

  6. (Optional) Wählen Sie eine Kategorie im Dropdownmenü aus.

    Hinweis

    Derzeit werden nur Ergebnisse von Infrastructure-as-Code-Fehlkonfigurationen (ARM, Bicep, Terraform, CloudFormation, Dockerfiles, Helm Charts usw.) unterstützt.

  7. (Optional) Wählen Sie im Dropdownmenü einen Schweregrad aus.

  8. Wählen Sie Speichern aus.

Alle Anmerkungen zu Ihren Pull Requests werden ab jetzt basierend auf Ihren Konfigurationen mit der relevanten Codezeile angezeigt.

So aktivieren Sie Pull Request-Anmerkungen für eigene Projekte und Organisationen in Azure DevOps:

Dies ist programmgesteuert durch Aufrufen der API zum Aktualisieren von Azure DevOps-Ressourcen möglich, die Microsoft bereitgestellt wird. „Microsoft.Security“ verfügbar gemacht wird.

API-Informationen

HTTP-Methode: PATCH URLs:

  • Azure DevOps-Projektaktualisierung: https://management.azure.com/subscriptions/<subId>/resourcegroups/<resourceGroupName>/providers/Microsoft.Security/securityConnectors/<connectorName>/devops/default/azureDevOpsOrgs/<adoOrgName>/projects/<adoProjectName>?api-version=2023-09-01-preview
  • Azure DevOps-Organisationsaktualisierung: https://management.azure.com/subscriptions/<subId>/resourcegroups/<resourceGroupName>/providers/Microsoft.Security/securityConnectors/<connectorName>/devops/default/azureDevOpsOrgs/<adoOrgName>?api-version=2023-09-01-preview

Anforderungstext:

{
   "properties": {
"actionableRemediation": {
              "state": <ActionableRemediationState>,
              "categoryConfigurations":[
                    {"category": <Category>,"minimumSeverityLevel": <Severity>}
               ]
           }
    }
}

Verfügbare Parameter/Optionen

<ActionableRemediationState>Beschreibung: Zustand der PR-Anmerkungskonfiguration Optionen: Aktiviert | Deaktiviert

<Category>Beschreibung: Kategorie der Ergebnisse, die in Pull Requests mit Anmerkungen versehen werden. Optionen: IaC | Code | Artefakte | Abhängigkeiten | Container Hinweis: Derzeit wird nur IaC unterstützt.

<Severity>Beschreibung: Der Mindestschweregrad eines Ergebnisses, der bei der Erstellung von PR-Anmerkungen berücksichtigt wird. Optionen: Hoch | Mittel | Niedrig

Beispiel für die Aktivierung der PR-Anmerkungen einer Azure DevOps-Organisation für die Kategorie „IaC“ mit dem Mindestschweregrad „Mittel“ über das CLI-Tools „az“.

Aktualisieren einer Organisation:

az --method patch --uri https://management.azure.com/subscriptions/4383331f-878a-426f-822d-530fb00e440e/resourcegroups/myrg/providers/Microsoft.Security/securityConnectors/myconnector/devops/default/azureDevOpsOrgs/testOrg?api-version=2023-09-01-preview --body "{'properties':{'actionableRemediation':{'state':'Enabled','categoryConfigurations':[{'category':'IaC','minimumSeverityLevel':'Medium'}]}}}

Beispiel für die Aktivierung der PR-Anmerkungen eines Azure DevOps-Projekts für die Kategorie „IaC“ mit dem Mindestschweregrad „Hoch“ über das CLI-Tools „az“.

Aktualisieren eines Projekts:

az --method patch --uri https://management.azure.com/subscriptions/4383331f-878a-426f-822d-530fb00e440e/resourcegroups/myrg/providers/Microsoft.Security/securityConnectors/myconnector/devops/default/azureDevOpsOrgs/testOrg/projects/testProject?api-version=2023-09-01-preview --body "{'properties':{'actionableRemediation':{'state':'Enabled','categoryConfigurations':[{'category':'IaC','minimumSeverityLevel':'High'}]}}}"

Weitere Informationen

Nächste Schritte

Nun können Sie sich ausführlicher mit DevOps-Sicherheit vertraut machen.