Az Azure DevOps biztonságossá tétele

Azure DevOps Szolgáltatások | Azure DevOps Server | Azure DevOps Server 2022

Amikor információkat és adatokat kezel, különösen egy felhőalapú megoldásban, például az Azure DevOps Servicesben, a biztonság legyen a legfontosabb. Bár a Microsoft biztosítja a mögöttes felhőinfrastruktúra biztonságát, ön felel az Azure DevOpson belüli biztonság konfigurálásáért. Ez a cikk áttekintést nyújt az Azure DevOps-környezet fenyegetésekkel és biztonsági résekkel szembeni védelméhez szükséges biztonsági konfigurációkról.

Jótanács

AI segítségével támogathatja az Azure DevOps feladatokat. Az első lépésekhez tekintse meg az Azure DevOps MCP Serverrel kapcsolatos AI-segítség engedélyezése című témakört.

Fontos

Fontolja meg a biztonságosabb Microsoft Entra-jogkivonatok használatát a magasabb kockázatú személyes hozzáférési jogkivonatokkal szemben. További információ: A PAT használatának csökkentése. Tekintse át a hitelesítési útmutatót , és válassza ki az igényeinek megfelelő hitelesítési mechanizmust.

A hálózat és az adatok védelme

A hálózat védelme kulcsfontosságú az Azure DevOps használatakor. Az adatok és erőforrások védelme a jogosulatlan hozzáféréssel és a potenciális fenyegetésekkel szemben. Hozzon létre hálózati biztonsági és adatvédelmi intézkedéseket annak érdekében, hogy csak megbízható források férhessenek hozzá az Azure DevOps-környezethez. A hálózat védelméhez az Azure DevOps használatakor hajtsa végre a következő műveleteket:

  • IP-engedélyezési lista beállítása: Adott IP-címekhez való hozzáférés korlátozása a csak megbízható forrásokból érkező forgalom engedélyezéséhez, csökkentve a támadási felületet. Ha a szervezetet tűzfal vagy proxykiszolgáló védi, adjon hozzá IP-címeket és URL-címeket az engedélyezési listához.
  • Adattitkosítás használata: Az adatok védelme titkosítási, biztonsági mentési és helyreállítási stratégiákkal. Mindig titkosítsa az átvitel alatt és nyugalmi állapotban lévő adatokat. A kommunikációs csatornák biztonságossá tételét olyan protokollok használatával, mint a HTTPS. További információ az Azure Encryptionről.
  • Tanúsítványok ellenőrzése: A kapcsolatok létrehozásakor győződjön meg arról, hogy a tanúsítványok érvényesek és a megbízható hatóságok által kibocsátottak.
  • Webalkalmazási tűzfalak (WAF-ek) implementálása: A rosszindulatú webes forgalom szűrése, monitorozása és letiltása WAF-ekkel a gyakori támadások elleni további védelmi réteg érdekében.
  • Hálózati biztonsági csoportok (NSG-k) áttekintése: NSG-k használatával szabályozhatja az Azure-erőforrások bejövő és kimenő forgalmát, biztosítva, hogy csak engedélyezett forgalom legyen engedélyezve.
  • Az Azure Firewall használata: Helyezze üzembe az Azure Firewallt, hogy központosított hálózati biztonsági szabályzatot biztosítson több Azure-előfizetés és virtuális hálózat között.
  • Hálózati forgalom figyelése az Azure Network Watcherrel: Az Azure Network Watcher használatával figyelheti és diagnosztizálhatja a hálózati problémákat, biztosítva a hálózat biztonságát és teljesítményét.
  • DDoS-védelem implementálása az Azure DDoS Protection használatával: Engedélyezze az Azure DDoS Protectiont az alkalmazások elosztott szolgáltatásmegtagadási (DDoS-) támadások elleni védelméhez.

További információkért tekintse meg az alkalmazáskezelés ajánlott eljárásait.

Teljes felügyelet bevezetése

Fogadjon el Teljes felügyelet elveket a DevOps-folyamatokban annak érdekében, hogy minden hozzáférési kérést alaposan ellenőrizhessen, függetlenül annak eredetétől. A Nulla megbízhatóság a "soha nem megbízható, mindig ellenőrizze" elven működik, ami azt jelenti, hogy alapértelmezés szerint egyetlen entitás sem megbízható a hálózaton belül vagy kívül. A Teljes felügyelet implementálásával jelentősen csökkentheti a biztonsági incidensek kockázatát, és biztosíthatja, hogy csak a jogosult felhasználók és eszközök férhessenek hozzá az erőforrásokhoz.

A Nulla megbízhatóság segít védelmet nyújtani a hálózaton belüli oldalirányú mozgással szemben, így még ha a hálózat egy sérült része is van, a fenyegetés el van foglalva, és nem terjedhet el. További információkért tekintse meg a zéró megbízhatósági felmérés útmutatót.

Az iparági szabványoknak való megfelelés

Győződjön meg arról, hogy az Azure DevOps-környezet megfelel az iparági szabványoknak és előírásoknak, amelyek védik a környezetet, és fenntartják a felhasználókkal szembeni bizalmat.

  • Az iparági szabványoknak való megfelelés biztosítása: Az Azure DevOps megfelel a különböző iparági szabványoknak és előírásoknak, például az ISO/IEC 27001- és SOC 1/2/3-as szabványoknak. Győződjön meg arról, hogy a környezet megfelel ezeknek a szabványoknak.
  • Megfelelőségi szabályzatok kikényszerítése:Fiókszabályzatok és megfelelőségi szabályzatok implementálása a folyamatokhoz.
  • Csatlakozzon a CI/CD-k komponensszabályozási rendszeréhez, amely a következő előnyöket nyújtja:
    • Biztonsági rések észlelése: Riasztások a nyílt forráskódú összetevők ismert biztonsági réseire.
    • Licencmegfelelőség: Biztosítja, hogy az összetevők megfeleljenek a szervezet licencszabályzatainak.
    • Szabályzatkényszerítés: Biztosítja, hogy csak a jóváhagyott verziók legyenek használatban.
    • Láthatóság nyomon követéssel: Áttekinthetőséget biztosít az összetevők között az adattárakban a könnyebb felügyelet érdekében.

Hozzáférés szabályozása és korlátozása

Tekintse át a rendszergazdák számára elérhető összes biztonsági szabályzatot a szervezet hozzáférésének korlátozásához és szabályozásához. A szükségtelen projektlétrehozás megakadályozásával felügyelheti a szervezetet.

Külső vendégek kezelése

A külső vendéghozzáférés potenciális biztonsági kockázatokat okozhat, ha nincs megfelelően kezelve. Minimalizálja ezeket a kockázatokat, és gondoskodjon arról, hogy a külső vendégek megfelelő szintű hozzáféréssel rendelkezzenek a környezet biztonsága veszélyeztetése nélkül.

  • Külső vendéghozzáférés letiltása: Tiltsa le a "Meghívók elküldésének engedélyezése bármely tartományba" szabályzatot , hogy megakadályozza a külső vendéghozzáférést, ha nincs rá üzleti szükség.
  • Használjon különálló e-maileket vagy UPN-eket: A személyes és a munkahelyi fiókok közötti kétértelműség megszüntetéséhez használjon különböző e-mail-címeket vagy egyszerű felhasználóneveket (UPN-eket).
  • Külső vendégfelhasználók csoportosítása: Helyezze az összes külső vendégfelhasználót egyetlen Microsoft Entra-csoportba, és megfelelően kezelje a csoport engedélyeit. Távolítsa el a közvetlen hozzárendeléseket, hogy a csoportszabályok vonatkozzanak ezekre a felhasználókra.
  • Szabályok rendszeres újraértékelése: Rendszeresen tekintse át a szabályokat a Felhasználók lap Csoportszabályok lapján. Fontolja meg a Microsoft Entra ID-ban a csoporttagság olyan módosításait, amelyek hatással lehetnek a szervezetre. A Microsoft Entra-azonosító akár 24 órát is igénybe vehet a dinamikus csoporttagság frissítéséhez, és a szabályok automatikusan átértékelódnak 24 óránként, és amikor egy csoportszabály megváltozik.

További információ: B2B-vendégek a Microsoft Entra-azonosítóban.

Szükségtelen felhasználók eltávolítása

Az inaktív vagy jogosulatlan felhasználók szervezetből való eltávolítása segít fenntartani a biztonságos környezetet, és csökkenti a lehetséges biztonsági incidensek kockázatát.

  • Inaktív Microsoft-fiókfelhasználók (MSA-k) közvetlen eltávolítása: Ha MSA-kat használ, közvetlenül távolítsa el az inaktív felhasználókat a szervezetből. Nem hozhat létre lekérdezéseket az eltávolított MSA-fiókokhoz rendelt munkaelemekhez.
  • Microsoft Entra felhasználói fiókok letiltása vagy törlése: Ha csatlakozik a Microsoft Entra-azonosítóhoz, tiltsa le vagy törölje a Microsoft Entra felhasználói fiókot, miközben az Azure DevOps felhasználói fiókja aktív marad. A munkaelemek előzményeinek lekérdezését az Azure DevOps felhasználói azonosítójával folytathatja.
  • Felhasználói PAT-k visszavonása rendszergazdák számára: A meglévő felhasználói PAT-k rendszeres áttekintésével és visszavonásával biztosíthatja ezeknek a kritikus hitelesítési jogkivonatoknak a biztonságos kezelését.
  • Az egyes felhasználók számára megadott különleges engedélyek visszavonása: Az egyes felhasználók számára adott különleges engedélyek naplózása és visszavonása a minimális jogosultság elvével való összhang biztosítása érdekében.
  • A munka újbóli hozzárendelése az eltávolított felhasználóktól: A felhasználók eltávolítása előtt rendelje újra a munkaelemeket a jelenlegi csapattagokhoz a terhelés hatékony elosztásához.

Hatókör engedélyei

Adja meg a minimálisan szükséges engedélyeket és hozzáférési szinteket , hogy csak az arra jogosult személyek és szolgáltatások férhessenek hozzá a bizalmas információkhoz, és kritikus műveleteket hajtsanak végre. Ez a gyakorlat segít minimalizálni a jogosulatlan hozzáférés és a lehetséges adatszivárgások kockázatát.

Rendszeresen tekintse át és frissítse ezeket a beállításokat, hogy alkalmazkodjon a szervezet változásaihoz, például a szerepkörváltozásokhoz, az új alkalmazottakhoz vagy az indulásokhoz. Az engedélyek és hozzáférési szintek rendszeres naplózásának végrehajtása segíthet azonosítani és kijavítani az esetleges eltéréseket, biztosítva, hogy a biztonsági helyzet robusztus maradjon, és igazodjon az ajánlott eljárásokhoz.

További információ az engedélyekről:

Az engedélyek biztonságos és hatékony kezelése érdekében megfelelően határozza meg az azok hatókörét az Azure DevOps-környezetben. A hatókörkezelési engedélyek magukban foglalják a felhasználók és csoportok megfelelő hozzáférési szintjének meghatározását és hozzárendelését a szerepkörük és a felelősségük alapján. Ez a gyakorlat segít minimalizálni a jogosulatlan hozzáférés és a lehetséges adatszivárgások kockázatát azáltal, hogy csak az arra jogosult személyek férhetnek hozzá bizalmas információkhoz és kritikus műveletekhez.

A hatókörengedélyek hatékony végrehajtásához hajtsa végre a következő műveleteket:

  • Alapértelmezés szerint használja az öröklést: Állítsa be az engedélyeket a legmagasabb hatókörben, amely megfelel a kívánt hozzáférésnek, és hagyja, hogy a gyermekerőforrások örököljék őket. Az örökölt hozzárendelések csökkentik az objektumszintű kivételek szükségességét. Csak akkor tiltsa le az engedélyöröklést , ha egy gyermekerőforrás más biztonsági határt igényel.
  • Szegmenskörnyezetek: A biztonság növelése és az ütközések megelőzése érdekében használjon külön Azure-fiókokat különböző környezetekhez, például a fejlesztéshez, teszteléshez és éles környezetekhez. Ez a megközelítés minimálisra csökkenti az erőforrás-ütközések és a környezetek közötti adatszennyeződés kockázatát, és lehetővé teszi az erőforrások jobb kezelését és elkülönítését. További információ: Azure Landing Zone.
  • A hozzáférés szabályozása és a megfelelőség biztosítása: Az Azure Policy használatával korlátozhatja a nem használt Azure-régiókhoz és szolgáltatásokhoz való hozzáférést, biztosítva a szervezeti szabványoknak való megfelelést. Ez a művelet segít kikényszeríteni az ajánlott eljárásokat, és biztonságos környezetet fenntartani a jogosulatlan hozzáférés és használat megakadályozásával.
  • Azure szerepköralapú vezérlés (ABAC) implementálása: A jogosulatlan hozzáférés korlátozásához használja az ABAC-t megfelelően címkézett erőforrásokkal. Ez a művelet biztosítja, hogy a hozzáférési engedélyek adott attribútumok alapján kapják meg a hozzáférést, ezáltal növelve a biztonságot a jogosulatlan erőforrás-létrehozás és -hozzáférés megakadályozása révén.
  • Biztonsági csoportok használata:Biztonsági csoportok használatával hatékonyan kezelheti több felhasználó engedélyeit. Ez a módszer leegyszerűsíti a hozzáférés megadását és visszavonását az engedélyek egyéni hozzárendeléséhez képest, és biztosítja a konzisztenciát és a könnyebb felügyeletet a szervezeten belül.
    • Sok felhasználó kezelésekor használja a Microsoft Entra-azonosítót, az Active Directoryt vagy a Windows biztonsági csoportokat.
    • Csökkentse a bizalmas információk kiszivárgásának és a nem biztonságos kód üzembe helyezésének kockázatát azáltal, hogy a projektekhez és adattárakhoz való hozzáférést beépített vagy egyéni biztonsági csoportokra korlátozza.
    • Használja ki a beépített szerepköröket és az alapértelmezett közreműködői szerepköröket a fejlesztők számára. A rendszergazdák emelt szintű engedélyeket kapnak a Projektadminisztrátor biztonsági csoporthoz, lehetővé téve számukra a biztonsági engedélyek konfigurálását.
    • A csoportokat a lehető legkisebbre kell korlátozni, korlátozva a hozzáférést.
    • Alkalom szerinti hozzáférés implementálása a Microsoft Entra Privileged Identity Management (PIM) csoporttal. Csak akkor adjon emelt szintű engedélyeket, ha szükséges, csökkentve az állandó hozzáféréssel járó kockázatot.

Szolgáltatásfiókok cseréje modern alternatívákra

A személyes hozzáférési jogkivonatokkal (PAT) rendelkező szolgáltatásfiókokat már régóta használják automatizált folyamatokhoz és szolgáltatásokhoz, de gyakran emelt szintű engedélyeket halmoznak fel, és biztonsági kockázatokat okoznak. Az olyan modern alternatívák, mint a Microsoft Entra-jogkivonatok, a szolgáltatásnevek és a felügyelt identitások, nagyobb biztonságot biztosítanak kevesebb felügyeleti többletterhelés mellett. Mielőtt folytatná a szolgáltatásfiókot, értékelje ki, hogy egy biztonságosabb hitelesítési módszer jobban megfelel-e az igényeinek.

  • Cserélje le a PAT-okat Microsoft Entra-jogkivonatokra:A Microsoft Entra-jogkivonatok rövid élettartamú (egyórás) jogkivonatok, amelyeket a legtöbb PAT helyett használhat. A PAT-k könnyű használatuk miatt népszerűek, de a támadások népszerű vektorai is, mivel könnyen kiszivárognak.
  • Mielőtt kiválasztaná az egyiket, olvassa el az összes elérhető hitelesítési mechanizmust .
  • Használja inkább a szolgáltatásnevek használatát:A szolgáltatásnevek egy Microsoft Entra-alkalmazás identitását jelölik, és saját engedélyekkel rendelkeznek, amelyek meghatározzák, hogy az alkalmazás mit tehet egy adott bérlőben. A szolgáltatásnevek az alkalmazás által igényelt engedélyek kezeléséhez ajánlottak. Cserélje le a szolgáltatásfiókok PAT-jait a szolgáltatásnévhez beszerzett Microsoft Entra-jogkivonatokra.
    • Egy lépéssel tovább viheti, ha felügyelt identitás használatával hitelesíti, ha az Azure-erőforrásokra épít. A felügyelt identitások gondoskodnak az összes hitelesítőadat-kezelésről.
  • Szolgáltatáskapcsolatok használata: A szolgáltatáskapcsolatok lehetővé teszik a szolgáltatásprincipálok használatát egy folyamaton belül. Amikor csak lehetséges, használjon szolgáltatáskapcsolatokat, hogy biztonságosan csatlakozzanak a szolgáltatásokhoz anélkül, hogy titkos változókat adnak át közvetlenül a buildekhez. A kapcsolatok korlátozása adott használati esetekre. További információkért tekintse meg a jelen cikk Hatókör szolgáltatáskapcsolatok szakaszát.

Amíg egy szolgáltatásfiók használatban marad:

  • Egycélú szolgáltatásfiókok létrehozása: Minden szolgáltatásnak dedikált fiókkal kell rendelkeznie a kockázat minimalizálása érdekében. Kerülje a szolgáltatásfiókokként történő rendszeres felhasználói fiókok használatát .
  • A nem használt szolgáltatásfiókok azonosítása és letiltása: Rendszeresen tekintse át és azonosítsa a már nem használt fiókokat. Tiltsa le a nem használt fiókokat, mielőtt megfontolná a törlést.
  • Jogosultságok korlátozása: Korlátozza a szolgáltatásfiókok jogosultságait a szükséges minimálisra. Kerülje a szolgáltatásfiókok interaktív bejelentkezési jogosultságainak használatát.
  • Használjon külön identitásokat a jelentésolvasók számára: Ha tartományi fiókokat használ a szolgáltatásfiókokhoz, használjon egy másik identitást a jelentésolvasók számára az engedélyek elkülönítéséhez és a szükségtelen hozzáférés megelőzéséhez.
  • Használjon helyi fiókokat munkacsoport-telepítésekhez: Ha összetevőket telepít egy munkacsoportba, használjon helyi fiókokat a felhasználói fiókokhoz. Ebben a forgatókönyvben kerülje a domain fiókokat.
  • Szolgáltatásfiók-tevékenység figyelése: Naplózás implementálása és naplózási streamek létrehozása a szolgáltatásfiók-tevékenységek monitorozásához.

Hatókörszolgáltatás-kapcsolatok

Az Azure-erőforrásokhoz való biztonságos és hatékony hozzáférés érdekében helyesen határozza meg a szolgáltatáskapcsolatok hatókörét. A szolgáltatáskapcsolatok lehetővé teszik, hogy az Azure DevOps külső szolgáltatásokhoz és erőforrásokhoz csatlakozzon. A kapcsolatok hatókörének meghatározásával korlátozhatja a hozzáférést csak a szükséges erőforrásokhoz, és csökkentheti a jogosulatlan hozzáférés kockázatát.

  • Hozzáférés korlátozása: Korlátozza a hozzáférést az Azure Resource Manager-szolgáltatás kapcsolatainak adott erőforrásokhoz és csoportokhoz való hatókörének meghatározásával. Ne adjon széles körű közreműködői jogokat a teljes Azure-előfizetéshez.
  • Az Azure Resource Manager használata: Hitelesítés Azure-erőforrásokkal számítási feladatok identitás-összevonásával alkalmazásregisztrációval vagy felügyelt identitással ahelyett, hogy titkos alkalmazásregisztrációt használ. További információ: Azure Resource Manager-szolgáltatáskapcsolat létrehozása számítási feladatok identitásának összevonásával.
  • Hatókör erőforráscsoportjai: Győződjön meg arról, hogy az erőforráscsoportok csak a virtuális gépeket (VM-eket) vagy az építési folyamathoz szükséges erőforrásokat tartalmazzák.
  • Kerülje a klasszikus szolgáltatáskapcsolatokat: A klasszikus helyett válassza a modern Azure Resource Manager-szolgáltatáskapcsolatokat, amelyek nem rendelkeznek hatókörkezelési lehetőségekkel.
  • Célspecifikus csapatszolgáltatás-fiókok használata: A szolgáltatáskapcsolatok hitelesítése célspecifikus csapatszolgáltatás-fiókokkal a biztonság és az ellenőrzés fenntartása érdekében.

További információ: Általános szolgáltatáskapcsolat típusok.

Audit események áttekintése

A naplózás nyomon követheti a szervezet felhasználói műveleteit, engedélymódosításait és használati mintáit. Ezekkel az eszközökkel azonnal azonosíthatja és kezelheti a lehetséges biztonsági incidenseket.

  • Naplózás engedélyezése: A felhasználói műveletekkel, engedélyekkel, módosításokkal és biztonsági incidensekkel kapcsolatos események nyomon követése és megtekintése.
  • Rendszeresen tekintse át az auditnaplókat és a streameket: Rendszeresen tekintse át az auditnaplókat a felhasználói tevékenységek monitorozásához és a gyanús viselkedés észleléséhez. Keresse meg a váratlan használati mintákat, különösen a rendszergazdák és más felhasználók által. Ez a művelet segít azonosítani a lehetséges biztonsági incidenseket, és korrekciós műveleteket hajt végre. További információ a nyomon követett naplózási eseményekről.
  • Biztonsági riasztások konfigurálása: Konfigurálja a riasztásokat, hogy értesítést küldhessenek a biztonsági incidensekről vagy a szabályzatok megsértéséről. Ez a művelet biztosítja, hogy időben reagáljon a lehetséges fenyegetésekre.

A szolgáltatások védelme

Az Azure DevOps szolgáltatásainak biztonsága és integritása érdekében minden egyes szolgáltatáshoz implementáljon biztonsági intézkedéseket. Ezek a mértékek közé tartozik az engedélyek beállítása, a hozzáférés kezelése és az egyes szolgáltatásokra jellemző biztonsági funkciók használata.

Biztonsági vizsgálat automatizálása

A kód- és titkos kódok biztonsági réseinek figyelése az alábbi automatizált biztonsági eszközökkel:

További információkért tekintse meg a GitHub speciális biztonsági áttekintését.

A biztonsági felügyelet automatizálása PowerShell-szkriptek használatával

Egyszerűbbé teheti a felügyeleti biztonsági feladatokat PowerShell-szkriptek használatával a felhasználók felügyeletének, naplózásának és szabályzatkényszerítésének automatizálásához az Azure DevOps-szervezetben.

Elérhető felügyeleti automatizálási szkriptek

  • Felhasználói hozzáférés naplózása: Felhasználói engedélyek naplózása és biztonsági kockázatok azonosítása.
  • Szolgáltatáskapcsolat biztonsági naplózása: Keresse meg a kapcsolat biztonsági problémáit.
  • Projekt láthatóságának kezelése: A nyilvános/privát projektbeállítások automatizálása.
  • Felhasználó- és csoportkezelés: Egyszerűsítheti a felhasználói életciklus folyamatait.

Részletes megvalósítási útmutató: A globális biztonsági beállítások frissítése parancsfájlokkal.