Csatlakoztatott GitHub-adattár vagy Azure DevOps-projekt vizsgálata
Beállíthatja a Microsoft Security DevOpst a csatlakoztatott GitHub-adattár vagy az Azure DevOps-projekt vizsgálatára. GitHub-művelet vagy Azure DevOps-bővítmény használata a Microsoft Security DevOps csak az infrastruktúra kódként (IaC) forráskódján való futtatásához, valamint a folyamat futtatókörnyezetének csökkentéséhez.
Ez a cikk bemutatja, hogyan alkalmazhat sablon YAML-konfigurációs fájlt a csatlakoztatott adattár vagy projekt kifejezetten az IaC biztonsági problémáinak vizsgálatára a Microsoft Security DevOps-szabályok használatával.
Előfeltételek
- A Microsoft Security DevOps esetében állítsa be a GitHub-műveletet vagy az Azure DevOps-bővítményt a forráskódkezelő rendszer alapján:
- Ha az adattár a GitHubon található, állítsa be a Microsoft Security DevOps GitHub-műveletet.
- Ha a forráskódot az Azure DevOpsban kezeli, állítsa be a Microsoft Security DevOps Azure DevOps bővítményt.
- Győződjön meg arról, hogy rendelkezik IaC-sablonnal az adattárban.
GitHub-művelet beállítása és futtatása a csatlakoztatott IaC-forráskód vizsgálatához
Művelet beállítása és vizsgálati eredmények megtekintése a GitHubon:
Nyissa meg az adattár főoldalát.
A fájlkönyvtárban válassza a .github-munkafolyamatok>>msdevopssec.yml.
A GitHubon végzett műveletekkel kapcsolatos további információkért tekintse meg az előfeltételeket.
Válassza a Fájl szerkesztése (ceruza) ikont.
A YAML-fájl Elemzések futtatása szakaszában adja hozzá a következő kódot:
with: categories: 'IaC'
Feljegyzés
Az értékek megkülönböztetik a kis- és nagybetűket.
Példa:
Válassza a Módosítások véglegesítése lehetőséget . . . .
Válassza a Módosítások véglegesítése lehetőséget.
(Nem kötelező) IaC-sablon hozzáadása az adattárhoz. Ha már rendelkezik IaC-sablonnal az adattárban, hagyja ki ezt a lépést.
Például véglegesítsen egy IaC-sablont, amellyel alapszintű Linux-webalkalmazást helyezhet üzembe.
Válassza ki a azuredeploy.json fájlt.
Válassza a Nyers lehetőséget.
Másolja ki a fájl összes adatát, például az alábbi példában:
{ "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters": { "webAppName": { "type": "string", "defaultValue": "AzureLinuxApp", "metadata": { "description": "The base name of the resource, such as the web app name or the App Service plan." }, "minLength": 2 }, "sku": { "type": "string", "defaultValue": "S1", "metadata": { "description": "The SKU of the App Service plan." } }, "linuxFxVersion": { "type": "string", "defaultValue": "php|7.4", "metadata": { "description": "The runtime stack of the current web app." } }, "location": { "type": "string", "defaultValue": "[resourceGroup().location]", "metadata": { "description": "The location for all resources." } } }, "variables": { "webAppPortalName": "[concat(parameters('webAppName'), '-webapp')]", "appServicePlanName": "[concat('AppServicePlan-', parameters('webAppName'))]" }, "resources": [ { "type": "Microsoft.Web/serverfarms", "apiVersion": "2020-06-01", "name": "[variables('appServicePlanName')]", "location": "[parameters('location')]", "sku": { "name": "[parameters('sku')]" }, "kind": "linux", "properties": { "reserved": true } }, { "type": "Microsoft.Web/sites", "apiVersion": "2020-06-01", "name": "[variables('webAppPortalName')]", "location": "[parameters('location')]", "kind": "app", "dependsOn": [ "[resourceId('Microsoft.Web/serverfarms', variables('appServicePlanName'))]" ], "properties": { "serverFarmId": "[resourceId('Microsoft.Web/serverfarms', variables('appServicePlanName'))]", "siteConfig": { "linuxFxVersion": "[parameters('linuxFxVersion')]" } } } ] }
A GitHub-adattárban nyissa meg a .github/workflows mappát.
Válassza az Add file Create new file (Új fájl létrehozása)>lehetőséget.
Adja meg a fájl nevét.
Illessze be a másolt adatokat a fájlba.
Válassza az Új fájl véglegesítése lehetőséget.
A sablonfájl hozzá lesz adva az adattárhoz.
Ellenőrizze, hogy a Microsoft Security DevOps-vizsgálat befejeződött-e:
Az adattárban válassza a Műveletek lehetőséget.
Válassza ki a munkafolyamatot a művelet állapotának megtekintéséhez.
A vizsgálat eredményeinek megtekintéséhez nyissa meg a Felhőhöz készült Defender> DevOps biztonsági (GHAS előfeltétel nélküli) vagy a Biztonsági>kód keresési riasztásait natív módon a GitHubon (GHAS-licenc szükséges).
Azure DevOps-bővítmény beállítása és futtatása a csatlakoztatott IaC-forráskód vizsgálatához
Bővítmény beállítása és a vizsgálati eredmények megtekintése az Azure DevOpsban:
Jelentkezzen be az Azure DevOpsba.
Válassza ki a projektet.
Válassza a Folyamatok lehetőséget.
Válassza ki azt a folyamatot, amelyben a Microsoft Security DevOps Azure DevOps-bővítménye konfigurálva van.
Válassza a Folyamat szerkesztése lehetőséget.
A folyamat YAML-konfigurációs fájljában, a
displayName
MicrosoftSecurityDevOps@1 feladat sora alatt adja hozzá a következő kódot:inputs: categories: 'IaC'
Példa:
Válassza a Mentés lehetőséget.
(Nem kötelező) IaC-sablon hozzáadása az Azure DevOps-projekthez. Ha már rendelkezik IaC-sablonnal a projektben, hagyja ki ezt a lépést.
Válassza ki, hogy közvetlenül a fő ágra szeretne véglegesíteni, vagy új ágat szeretne létrehozni a véglegesítéshez, majd válassza a Mentés lehetőséget.
Az IaC-vizsgálat eredményeinek megtekintéséhez válassza a Folyamatok lehetőséget, majd válassza ki a módosított folyamatot.
Lásd a további részleteket, válasszon ki egy adott folyamatfuttatást.
Az alkalmazott IaC-szabályok részleteinek és szervizelési adatainak megtekintése
A Microsoft Security DevOpsban található IaC-ellenőrző eszközök a Template Analyzer (a PSRule a Sablonelemzőben), a Checkov és a Terrascan.
A Sablonelemző szabályokat futtat azure Resource Manager-sablonokon (ARM-sablonokon) és Bicep-sablonokon. További információkért tekintse meg a Sablonelemző szabályait és a szervizelési részleteket.
A Terrascan ARM-sablonokon és -sablonokon futtat szabályokat a CloudFormation, a Docker, a Helm, a Kubernetes, a Kustomize és a Terraform esetében. További információkért tekintse meg a Terrascan-szabályokat.
A Chekov arm-sablonokon és -sablonokon futtat szabályokat a CloudFormation, a Docker, a Helm, a Kubernetes, a Kustomize és a Terraform esetében. További információkért tekintse meg a Checkov-szabályokat.
A Microsoft Security DevOpsban található IaC-ellenőrző eszközökkel kapcsolatos további információkért lásd:
Kapcsolódó tartalom
Ebben a cikkben megismerhette, hogyan állíthat be Egy GitHub-műveletet és egy Azure DevOps-bővítményt a Microsoft Security DevOpshoz az IaC biztonsági konfigurációinak kereséséhez és az eredmények megtekintéséhez.
További információ:
- További információ a DevOps biztonságáról.
- Megtudhatja, hogyan csatlakoztathatja a GitHub-adattárat Felhőhöz készült Defender.
- Megtudhatja, hogyan csatlakoztathatja az Azure DevOps-projektet Felhőhöz készült Defender.