Aktivera pull-begärandeanteckningar i GitHub och Azure DevOps
DevOps-säkerhet exponerar säkerhetsresultat som anteckningar i Pull-begäranden (PR). Säkerhetsoperatorer kan aktivera PR-anteckningar i Microsoft Defender för molnet. Eventuella problem som exponeras kan åtgärdas av utvecklare. Den här processen kan förhindra och åtgärda potentiella säkerhetsrisker och felkonfigurationer innan de går in i produktionsfasen. DevOps-säkerhet kommenterar sårbarheter inom de skillnader som introducerades under pull-begäran i stället för alla sårbarheter som identifierats i hela filen. Utvecklare kan se anteckningar i sina källkodshanteringssystem och säkerhetsoperatörer kan se alla olösta resultat i Microsoft Defender för molnet.
Med Microsoft Defender för molnet kan du konfigurera PR-anteckningar i Azure DevOps. Du kan hämta PR-anteckningar i GitHub om du är en GitHub Advanced Security-kund.
Vad är pull-begärandeanteckningar
Pull-begärandeanteckningar är kommentarer som läggs till i en pull-begäran i GitHub eller Azure DevOps. Dessa anteckningar ger feedback om de kodändringar som gjorts och identifierade säkerhetsproblem i pull-begäran och hjälper granskare att förstå de ändringar som görs.
Anteckningar kan läggas till av en användare med åtkomst till lagringsplatsen och kan användas för att föreslå ändringar, ställa frågor eller ge feedback om koden. Anteckningar kan också användas för att spåra problem och buggar som måste åtgärdas innan koden sammanfogas till huvudgrenen. DevOps-säkerhet i Defender för molnet använder anteckningar för att visa säkerhetsresultat.
Förutsättningar
För GitHub:
- Ett Azure-konto. Om du inte redan har ett Azure-konto kan du skapa ditt kostnadsfria Azure-konto i dag.
- Vara en GitHub Advanced Security-kund .
- Anslut dina GitHub-lagringsplatser till Microsoft Defender för molnet.
- Konfigurera Microsoft Security DevOps GitHub-åtgärden.
För Azure DevOps:
- Ett Azure-konto. Om du inte redan har ett Azure-konto kan du skapa ditt kostnadsfria Azure-konto i dag.
- Ha skrivåtkomst (ägare/bidragare) till Azure-prenumerationen.
- Anslut dina Azure DevOps-lagringsplatser till Microsoft Defender för molnet.
- Konfigurera Microsoft Security DevOps Azure DevOps-tillägget.
Aktivera anteckningar för pull-begäran i GitHub
Genom att aktivera pull-begärandeanteckningar i GitHub får utvecklarna möjlighet att se sina säkerhetsproblem när de skapar en PR direkt till huvudgrenen.
Så här aktiverar du pull-begärandeanteckningar i GitHub:
Gå till GitHub och logga in.
Välj en lagringsplats som du har registrerat i Defender för molnet.
Gå till
Your repository's home page
>.github/workflows.Välj msdevopssec.yml som skapades i förutsättningarna.
Välj redigera.
Leta upp och uppdatera utlösaravsnittet så att det inkluderar:
# Triggers the workflow on push or pull request events but only for the main branch pull_request: branches: ["main"]
Du kan också visa en exempellagringsplats.
(Valfritt) Du kan välja vilka grenar du vill köra den på genom att ange grenen (es) under avsnittet utlösare. Om du vill ta med alla grenar tar du bort raderna med grenlistan.
Välj Start commit (Starta incheckning).
Välj Genomför ändringar.
Eventuella problem som identifieras av skannern kan visas i avsnittet Filer som ändrats i pull-begäran.
- Används i tester – Aviseringen finns inte i produktionskoden.
Aktivera anteckningar för pull-begäranden i Azure DevOps
Genom att aktivera pull-begärandeanteckningar i Azure DevOps får utvecklarna möjlighet att se sina säkerhetsproblem när de skapar pr direkt till huvudgrenen.
Aktivera build-valideringsprincip för CI-versionen
Innan du kan aktivera pull-begärandekommentarer måste huvudgrenen ha aktiverat byggverifieringsprincip för CI-versionen.
Så här aktiverar du byggverifieringsprincip för CI Build:
Logga in på ditt Azure DevOps-projekt.
Gå till Projektinställningar>Lagringsplatser.
Välj lagringsplatsen för att aktivera pull-begäranden.
Välj Principer.
Gå till huvudgrenen Förgreningsprinciper>.
Leta upp avsnittet Build Validation (Byggverifiering).
Kontrollera att byggverifieringen för lagringsplatsen är växlad till På.
Välj Spara.
När du har slutfört de här stegen kan du välja den byggpipeline som du skapade tidigare och anpassa dess inställningar efter dina behov.
Aktivera anteckningar för pull-begäranden
Så här aktiverar du pull-begärandeanteckningar i Azure DevOps:
Logga in på Azure-portalen.
Gå till Defender för Cloud>DevOps-säkerhet.
Välj alla relevanta lagringsplatser för att aktivera pull-begärandeanteckningarna på.
Välj Hantera resurser.
Växla anteckningar för pull-begäranden till På.
(Valfritt) Välj en kategori i den nedrullningsbara menyn.
Kommentar
För närvarande stöds endast felkonfigurationer av infrastruktur som kod (ARM, Bicep, Terraform, CloudFormation, Dockerfiles, Helm-diagram med mera).
(Valfritt) Välj en allvarlighetsgrad i den nedrullningsbara menyn.
Välj Spara.
Alla anteckningar på dina pull-begäranden visas från och med nu baserat på dina konfigurationer.
Så här aktiverar du pull-begärandeanteckningar för mina projekt och organisationer i Azure DevOps:
Du kan göra det programmatiskt genom att anropa Api:et Uppdatera Azure DevOps-resurs som exponeras för Microsoft. Säkerhetsresursprovider.
API-information:
Http-metod: PATCH-URL :er:
- Azure DevOps Project Update:
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 Org Update]:
https://management.azure.com/subscriptions/<subId>/resourcegroups/<resourceGroupName>/providers/Microsoft.Security/securityConnectors/<connectorName>/devops/default/azureDevOpsOrgs/<adoOrgName>?api-version=2023-09-01-preview
Begärandetext:
{
"properties": {
"actionableRemediation": {
"state": <ActionableRemediationState>,
"categoryConfigurations":[
{"category": <Category>,"minimumSeverityLevel": <Severity>}
]
}
}
}
Tillgängliga parametrar/alternativ
<ActionableRemediationState>
Beskrivning: Status för konfigurationsalternativ för PR-anteckningar: Aktiverad | Handikappad
<Category>
Beskrivning: Kategori av resultat som kommer att kommenteras vid pull-begäranden.
Alternativ: IaC | Kod | Artefakter | Beroenden | Containrar Obs! Endast IaC stöds för närvarande
<Severity>
Beskrivning: Minsta allvarlighetsgrad för ett fynd som ska beaktas när du skapar PR-anteckningar.
Alternativ: Hög | Medel | Låg
Exempel på hur du aktiverar en Azure DevOps-organisations PR-anteckningar för IaC-kategorin med minsta allvarlighetsgrad Medel med hjälp av az cli-verktyget.
Uppdatera 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'}]}}}
Exempel på hur du aktiverar ett Azure DevOps-projekts PR-anteckningar för IaC-kategorin med minsta allvarlighetsgrad hög med hjälp av az cli-verktyget.
Uppdatera projekt:
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'}]}}}"
Läs mer
- Läs mer om DevOps-säkerhet.
- Läs mer om DevOps-säkerhet i Infrastruktur som kod.
Nästa steg
Läs mer om DevOps-säkerhet.