Adattárvédelem

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2020

A forráskódot, a folyamat YAML-fájlját és a szükséges szkripteket és eszközöket a rendszer egy verziókövetési adattárban tárolja. Engedélyeket és ágszabályzatokat kell alkalmazni, hogy a kód és a folyamat módosításai biztonságosak legyenek. Folyamatengedélyeket és ellenőrzéseket is hozzáadhat az adattárakhoz.

Emellett tekintse át az adattárak alapértelmezett hozzáférés-vezérlését is.

A Git kialakítása miatt az ágszintű védelem csak eddig terjed ki. Az adattárhoz leküldéses hozzáféréssel rendelkező felhasználók általában új ágakat hozhatnak létre. Ha nyílt forráskódú GitHub-projekteket használ, bárki, aki Rendelkezik GitHub-fiókkal, elágaztathatja az adattárat, és felajánlhat hozzájárulásokat. Mivel a folyamatok egy adattárhoz vannak társítva, és nem adott ágakhoz, feltételezni kell, hogy a kód és a YAML-fájlok nem megbízhatók.

Forks

Ha nyilvános adattárakat hoz létre a GitHubról, figyelembe kell vennie az elágazásokra vonatkozó álláspontját. Az elágazások különösen veszélyesek, mivel a szervezeten kívülről származnak. A termékeknek a kóddal való védelméhez vegye figyelembe az alábbi javaslatokat.

Megjegyzés:

Az alábbi javaslatok elsősorban a GitHub nyilvános adattárainak létrehozására vonatkoznak.

Ne adjon titkos kulcsokat az elágazás-buildekhez

A folyamatok alapértelmezés szerint elágazások készítésére vannak konfigurálva, de a titkos kulcsok és a védett erőforrások alapértelmezés szerint nem érhetők el az ezekben a folyamatokban lévő feladatok számára. Ne kapcsolja ki ezt az utóbbi védelmet.

Screenshot of fork build protection UI.

Megjegyzés:

Ha engedélyezi az elágazás-buildek titkos kulcsokhoz való hozzáférését, az Azure Pipelines alapértelmezés szerint korlátozza az elágazás-buildekhez használt hozzáférési jogkivonatot. A nyitott erőforrásokhoz korlátozottabb hozzáféréssel rendelkezik, mint egy normál hozzáférési jogkivonat. Ha az elágazás-buildekhez ugyanazokat az engedélyeket szeretné adni, mint a normál buildek, engedélyezze, hogy az elágazás-buildek ugyanolyan engedélyekkel rendelkezzenek, mint a normál buildek beállítása.

Screenshot of fork build protection UI in Azure DevOps Server 2020 and lower.

Megjegyzés:

Még ha engedélyezi is az elágazás-buildeket a titkos kódok eléréséhez, az Azure Pipelines korlátozza az elágazás-buildekhez használt hozzáférési jogkivonatot. A nyitott erőforrásokhoz korlátozottabb hozzáféréssel rendelkezik, mint egy normál hozzáférési jogkivonat. Ez a védelem nem tiltható le.

Fontolja meg az elágaztatási buildek manuális aktiválását

Kikapcsolhatja az automatikus elágazás-buildeket, és ehelyett a lekéréses kérelmek megjegyzéseit használhatja a hozzájárulások manuális létrehozásához. Ezzel a beállítással áttekintheti a kódot, mielőtt elindítja a buildet.

A Microsoft által üzemeltetett ügynökök használata elágazás-buildekhez

Ne futtasson buildeket az elágazásokból saját üzemeltetésű ügynökökön. Ezzel hatékonyan biztosítja a külső szervezetek számára, hogy külső kódot futtasson a vállalati hálózaton belüli gépeken. Amikor csak lehetséges, használja a Microsoft által üzemeltetett ügynököket. A saját üzemeltetésű ügynökhöz használjon valamilyen hálózati elkülönítést, és győződjön meg arról, hogy az ügynökök nem őrizik meg az állapotukat a feladatok között.

Kódmódosítások áttekintése

Mielőtt elágazott lekéréses kérelemen futtatja a folyamatot, alaposan tekintse át a javasolt módosításokat, és győződjön meg arról, hogy kényelmesen futtatja.

A lekéréses kérelemben szereplő YAML-folyamat verziója lesz futtatva. Ezért különös figyelmet kell fordítani a YAML-kód és a folyamat futtatásakor futó kód változásaira, például parancssori szkriptekre vagy egységtesztekre.

A GitHub-jogkivonat hatókörének korlátozása

GitHub-elágaztatási lekéréses kérelem létrehozásakor az Azure Pipelines biztosítja, hogy a folyamat ne módosítsa a GitHub-adattár tartalmát. Ez a korlátozás csak akkor érvényes, ha az Azure Pipelines GitHub alkalmazást használja a GitHubkal való integrációhoz. Ha a GitHub-integráció más formáit, például az OAuth alkalmazást használja, a korlátozás nem lesz kényszerítve.

Felhasználói ágak

A szervezet megfelelő engedélyekkel rendelkező felhasználói új, vagy frissített kódot tartalmazó ágakat hozhatnak létre. Ez a kód ugyanazon a folyamaton futhat, mint a védett ágak. Továbbá, ha az új ágBAN lévő YAML-fájl módosul, akkor a frissített YAML-fájl fogja használni a folyamat futtatásához. Bár ez a kialakítás nagy rugalmasságot és önkiszolgálóságot tesz lehetővé, nem minden módosítás biztonságos (akár rosszindulatúan, akár nem).

Ha a folyamat forráskódot használ, vagy az Azure Reposban van definiálva, teljes mértékben ismernie kell az Azure Repos engedélymodellt. Az adattár szintjén fiók létrehozása engedéllyel rendelkező felhasználók akkor is bevezethetnek kódot az adattárba, ha a felhasználó nem rendelkezik Közreműködői engedéllyel.

További lépések

A következő lépésben megismerheti a védett erőforrások ellenőrzése által nyújtott további védelmet.