Lekéréses kérelmek megjegyzéseinek engedélyezése a GitHubon és az Azure DevOpsban

A DevOps security a biztonsági megállapításokat széljegyzetekként teszi elérhetővé a lekéréses kérelmekben (PR). A biztonsági operátorok engedélyezhetik a pr-megjegyzések használatát a Felhőhöz készült Microsoft Defender. A feltárt problémákat a fejlesztők elháríthatják. Ez a folyamat megelőzheti és kijavíthatja a lehetséges biztonsági réseket és helytelen konfigurációkat, mielőtt belépnének az éles fázisba. A DevOps biztonsági megjegyzéseket fűz a lekéréses kérelem során bevezetett különbségekhez, nem pedig a teljes fájlban észlelt összes biztonsági réshez. A fejlesztők a forráskódkezelő rendszerekben láthatnak széljegyzeteket, a biztonsági operátorok pedig a Felhőhöz készült Microsoft Defender megoldatlan megállapításait.

A Felhőhöz készült Microsoft Defender konfigurálhatja a PR-széljegyzeteket az Azure DevOpsban. Ha Ön GitHub Advanced Security-ügyfél, lekérheti a GitHub pr-megjegyzéseit.

Mik azok a lekéréses kérelmek széljegyzetei?

A lekéréses kérelmek megjegyzései olyan megjegyzések, amelyek a GitHubon vagy az Azure DevOpsban hozzáadódnak egy lekéréses kérelemhez. Ezek a széljegyzetek visszajelzést adnak a kód módosításairól és a lekéréses kérelemben azonosított biztonsági problémákról, és segítenek a véleményezőknek megérteni a végrehajtott módosításokat.

Az adattárhoz hozzáféréssel rendelkező felhasználók széljegyzeteket adhatnak hozzá, és módosításokat javasolhatnak, kérdéseket tehetnek fel, vagy visszajelzést küldhetnek a kódról. A széljegyzetek olyan problémák és hibák nyomon követésére is használhatók, amelyeket a kód fő ágba való egyesítése előtt ki kell javítani. A DevOps-biztonság Felhőhöz készült Defender a biztonsági megállapítások felszínre hozásához széljegyzeteket használ.

Előfeltételek

GitHub esetén:

Azure DevOps esetén:

Lekéréses kérelmek széljegyzeteinek engedélyezése a GitHubon

Ha engedélyezi a lekéréses kérelmek széljegyzeteit a GitHubon, a fejlesztők láthatják a biztonsági problémáikat, amikor közvetlenül a főághoz hoznak létre lekéréses kérelmeket.

Lekéréses kérelmek széljegyzeteinek engedélyezése a GitHubon:

  1. Lépjen a GitHubra, és jelentkezzen be.

  2. Válasszon ki egy adattárat, amelyet Felhőhöz készült Defender.

  3. Lépjen a Your repository's home page>.github/workflows webhelyre.

    A GitHub munkafolyamat-mappájának kiválasztásához a navigálás helyét bemutató képernyőkép.

  4. Válassza ki az előfeltételekben létrehozott msdevopssec.yml.

    Képernyőkép arról, hogy a képernyőn hol válassza ki a msdevopssec.yml fájlt.

  5. Válassza a szerkesztés lehetőséget.

    Képernyőkép a szerkesztési gombról.

  6. Keresse meg és frissítse az eseményindító szakaszt a következőre:

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

    Megtekintheti a mintaadattárat is.

    (Nem kötelező) Az eseményindító szakasz alatti ág(ok) beírásával kiválaszthatja, hogy mely ágakon szeretné futtatni. Ha az összes ágat fel szeretné venni, távolítsa el a sorokat az áglistával. 

  7. Válassza a Start commit (Véglegesítés indítása) lehetőséget.

  8. Válassza a Módosítások véglegesítése lehetőséget.

    A képolvasó által észlelt problémák a lekéréses kérelem Fájlok módosított szakaszában tekinthetők meg.

    • Tesztekben használatos – A riasztás nem szerepel az éles kódban.

Lekéréses kérelmek megjegyzéseinek engedélyezése az Azure DevOpsban

Ha engedélyezi a lekéréses kérelmek széljegyzeteit az Azure DevOpsban, a fejlesztők láthatják a biztonsági problémáikat, amikor közvetlenül a főághoz hoznak létre PRs-eket.

Buildérvényesítési szabályzat engedélyezése a CI-buildhez

A lekéréses kérelmek széljegyzeteinek engedélyezése előtt a fő ágnak engedélyeznie kell a CI-build buildjének buildérvényesítési szabályzatát.

Buildérvényesítési szabályzat engedélyezése a CI-buildhez:

  1. Jelentkezzen be az Azure DevOps-projektbe.

  2. Lépjen a Project-beállítások>tárházaihoz.

    Az adattárak kiválasztásához a navigálás helyét bemutató képernyőkép.

  3. Válassza ki az adattárat a lekéréses kérelmek engedélyezéséhez.

  4. Válassza a Szabályzatok lehetőséget.

  5. Lépjen a Fiókszabályzatok>fő ágára.

    Képernyőkép az ágszabályzatok helyének megtalálásáról.

  6. Keresse meg a Build Validation szakaszt.

  7. Győződjön meg arról, hogy az adattár buildérvényesítése be van kapcsolva.

    Képernyőkép arról, hogy hol található a CI Build kapcsoló.

  8. Válassza a Mentés lehetőséget.

    Képernyőkép a build érvényesítéséről.

Miután elvégezte ezeket a lépéseket, kiválaszthatja a korábban létrehozott buildelési folyamatot, és igényeinek megfelelően testre szabhatja annak beállításait.

Lekéréses kérelem széljegyzeteinek engedélyezése

A lekéréses kérelmek megjegyzéseinek engedélyezése az Azure DevOpsban:

  1. Jelentkezzen be az Azure Portalra.

  2. Lépjen a Felhőhöz készült Defender> DevOps biztonságához.

  3. Válassza ki az összes releváns adattárat a lekéréses kérelem széljegyzeteinek engedélyezéséhez.

  4. Válassza az Erőforrások kezelése lehetőséget.

    Képernyőkép az erőforrások kezeléséről.

  5. A lekéréses kérelmek széljegyzeteinek bekapcsolva állásba kapcsolása.

    Képernyőkép a bekapcsolt kapcsolóról.

  6. (Nem kötelező) Válasszon kategóriát a legördülő menüből.

    Feljegyzés

    Jelenleg csak a kódként való infrastruktúra-konfigurációk (ARM, Bicep, Terraform, CloudFormation, Dockerfiles, Helm-diagramok és egyebek) támogatottak.

  7. (Nem kötelező) Válasszon egy súlyossági szintet a legördülő menüből.

  8. Válassza a Mentés lehetőséget.

A lekéréses kérelmek összes széljegyzete mostantól a konfigurációk alapján jelenik meg.

A lekéréses kérelmek megjegyzéseinek engedélyezése az Azure DevOps projektjeihez és szervezeteihez:

Ezt programozott módon teheti meg, ha meghívja az Update Azure DevOps Resource API-t, amely közzéteheti a Microsoftot. Biztonsági erőforrás-szolgáltató.

API-információk:

Http-módszer: PATCH URL-címek:

  • 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

Kérés szövegtörzse:

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

Paraméterek / Elérhető beállítások

<ActionableRemediationState>Leírás: A PR-megjegyzések konfigurációs beállításainak állapota: Engedélyezve | Tiltva

<Category>Leírás: A lekéréses kérelmeken jegyzetelt találatok kategóriája. Beállítások: IaC | Kód | Összetevők | Függőségek | Tárolók megjegyzése: Jelenleg csak az IaC támogatott

<Severity>Leírás: A lekéréses kérelemjegyzetek létrehozásakor figyelembe vett találatok minimális súlyossága. Beállítások: Magas | Közepes | Alacsony

Példa az Azure DevOps Org IaC-kategóriára vonatkozó PR-megjegyzéseinek engedélyezésére közepes súlyossággal az az cli eszközzel.

Szervezet frissítése:

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

Példa egy Azure DevOps Project pr-megjegyzéseinek engedélyezésére az IaC-kategóriához, amelynek minimális súlyossága magas az az cli eszközzel.

Projekt frissítése:

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'}]}}}"

További információ

  • További információ a DevOps biztonságáról.
  • További információ az infrastruktúra DevOps-biztonságáról kódként.

Következő lépések

Most tudjon meg többet a DevOps biztonságáról.