Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022
Při zpracování informací a dat, zejména v cloudovém řešení, jako je Azure DevOps Services, by mělo být zabezpečení vaší nejvyšší prioritou. I když Microsoft zajišťuje zabezpečení základní cloudové infrastruktury, zodpovídáte za konfiguraci zabezpečení v rámci Azure DevOps. Tento článek obsahuje přehled nezbytných konfigurací souvisejících se zabezpečením pro ochranu prostředí Azure DevOps před hrozbami a ohroženími zabezpečení.
Návod
Můžete využít AI k pomoci s úkoly Azure DevOps. Informace o tom, jak začít, najdete v tématu Pomoc pro AI s Azure DevOps MCP Serverem.
Důležité
Zvažte použití bezpečnějších tokenů Microsoft Entra místo vysoce rizikových osobních přístupových tokenů. Další informace najdete v tématu Snížení využití PAT. Projděte si doprovodné materiály k ověřování a zvolte správný mechanismus ověřování pro vaše potřeby.
Ochrana sítě a dat
Zabezpečení sítě je zásadní při práci s Azure DevOps. Chraňte svá data a prostředky před neoprávněným přístupem a potenciálními hrozbami. Implementujte opatření zabezpečení sítě a ochrany dat, která pomáhají zajistit, aby k vašemu prostředí Azure DevOps měli přístup jenom důvěryhodné zdroje. Pokud chcete zabezpečit síť při práci s Azure DevOps, proveďte následující akce:
- Nastavení seznamu povolených IP adres: Omezte přístup na konkrétní IP adresy a povolte provoz jenom z důvěryhodných zdrojů, což snižuje prostor pro útoky. Pokud je vaše organizace zabezpečená pomocí brány firewall nebo proxy serveru, přidejte do seznamu povolených IP adresy a adresy URL.
- Použití šifrování dat: Chraňte svá data pomocí strategií šifrování, zálohování a obnovení. Vždy šifrujte data během přenosu a v klidu. Zabezpečené komunikační kanály pomocí protokolů, jako je HTTPS. Přečtěte si další informace o službě Azure Encryption.
- Ověření certifikátů: Při vytváření připojení se ujistěte, že certifikáty jsou platné a vydané důvěryhodnými autoritou.
- Implementace firewallů webových aplikací (WAF): Filtrování, monitorování a blokování škodlivého webového provozu pomocí WAF pro další vrstvu ochrany před běžnými útoky.
- Přehled skupin zabezpečení sítě (NSG): Pomocí skupin zabezpečení sítě můžete řídit příchozí a odchozí provoz do prostředků Azure a zajistit tak, aby byl povolený jenom autorizovaný provoz.
- Použití služby Azure Firewall: Nasaďte Službu Azure Firewall, která poskytuje centralizované zásady zabezpečení sítě napříč několika předplatnými Azure a virtuálními sítěmi.
- Monitorování síťového provozu pomocí služby Azure Network Watcher: Pomocí služby Azure Network Watcher můžete monitorovat a diagnostikovat problémy se sítí a zajistit zabezpečení a výkon sítě.
- Implementace ochrany před útoky DDoS pomocí služby Azure DDoS Protection: Povolení služby Azure DDoS Protection k ochraně aplikací před distribuovanými útoky DDoS (Denial-of-Service).
Další informace najdete v tématu Osvědčené postupy správy aplikací.
Implementace nulové důvěryhodnosti
Přijměte zásady nulové důvěryhodnosti napříč procesy DevOps, abyste měli jistotu, že se všechny žádosti o přístup důkladně ověřují bez ohledu na jeho původ. Zero Trust funguje na principu "nikdy nedůvěřovat, vždy ověřit", což znamená, že žádná entita, ať už uvnitř nebo mimo síť, není ve výchozím nastavení důvěryhodná. Implementací nulové důvěryhodnosti můžete výrazně snížit riziko porušení zabezpečení a zajistit, aby k vašim prostředkům měli přístup jenom autorizovaní uživatelé a zařízení.
- Posilte svou platformu DevOps.
- Ochrana vývojového prostředí
- Bezproblémová integrace nulové důvěryhodnosti do vývojářských pracovních postupů
Architektura Zero Trust pomáhá chránit před laterálním pohybem v síti, zajišťuje, že i když dojde ke kompromitování části sítě, hrozba je lokalizovaná a nemůže se šířit. Další informace najdete v průvodci posouzením nulové důvěryhodnosti .
Dodržování oborových standardů
Ujistěte se, že vaše prostředí Azure DevOps splňuje oborové standardy a předpisy, které chrání vaše prostředí a udržují důvěru s vašimi uživateli.
- Zajištění dodržování oborových standardů: Azure DevOps splňuje různé oborové standardy a předpisy, jako jsou ISO/IEC 27001, SOC 1/2/3 a další. Ujistěte se, že vaše prostředí dodržuje tyto standardy.
- Vynucení zásad dodržování předpisů: Implementujte zásady poboček a zásady dodržování předpisů pro vaše pipeline.
-
Zavedení do řízení komponent pro CI/CD, které nabízí následující výhody:
- Detekce ohrožení zabezpečení: Upozorní vás na známá ohrožení zabezpečení v opensourcových komponentách.
- Dodržování předpisů licencí: Zajišťuje, aby komponenty splňovaly zásady licencování vaší organizace.
- Vynucení zásad: Zajišťuje, že se použijí pouze schválené verze.
- Viditelnost se sledováním: Poskytuje přehled o komponentách napříč úložišti pro snadnější správu.
Řízení a omezení přístupu
Zkontrolujte všechny zásady zabezpečení, které mají správci k dispozici, a omezte a kontrolujte, kdo má přístup k organizaci. Udržujte kontrolu nad organizací tím, že zabráníte zbytečnému vytvoření projektu.
-
Zakažte možnost Povolit veřejné projekty: Zakažte možnost vytváření veřejných projektů. Podle potřeby přepněte viditelnost projektu z veřejného na privátní. Uživatelé, kteří se nikdy nepřihlásili, mají přístup jen pro čtení k veřejným projektům, zatímco přihlášeným uživatelům je možné udělit přístup k soukromým projektům a provádět povolené změny.
- Automatizujte přepínání viditelnosti projektu pomocí skriptu Změnit viditelnost projektu, který vyžaduje token Microsoft Entra.
- Omezte nepotřebné mechanismy ověřování a omezte, kdo má přístup k povolenému ověřování.
-
Omezte přístup pomocí zásad podmíněného přístupu: Chraňte svou organizaci definováním zásad podmíněného přístupu (CAPs) na webu Microsoft Entra, které reagují na události přihlášení a požadují další akce před udělením přístupu uživatelem.
- Aktivujte zásady organizace pro povolení ověřování protokolu IP CAP u neinteraktivních toků.
- Přidejte další vrstvu zabezpečení povolením vícefaktorového ověřování Microsoft Entra po přihlášení.
Správa externích hostů
Externí přístup hostů může v případě, že není spravován správně, představovat potenciální rizika zabezpečení. Minimalizujte tato rizika a zajistěte, aby externí hosté měli odpovídající úroveň přístupu bez ohrožení zabezpečení vašeho prostředí.
-
Blokovat externí přístup hostů: Zakažte zásadu Povolit odesílání pozvánek do jakékoli domény, abyste zabránili externímu přístupu hostů, pokud pro ni není potřeba nic dělat.
- Zakažte zásady organizace externího přístupu hostů v Azure DevOps.
- Použití jedinečných e-mailů nebo hlavních názvů uživatelů (UPN): K odstranění nejednoznačnosti mezi osobními a pracovními účty používejte různé e-mailové adresy nebo hlavní názvy uživatelů (UPN).
- Seskupte externí uživatele typu host: Všechny externí uživatele typu host umístěte do jedné skupiny Microsoft Entra a odpovídajícím způsobem spravujte oprávnění pro tuto skupinu. Odeberte přímá přiřazení, abyste zajistili, že pravidla skupiny budou platit pro tyto uživatele.
- Pravidelně vyhodnotujte pravidla: Pravidla pravidelně kontrolujte na kartě Pravidla skupiny na stránce Uživatelé. Zvažte všechny změny členství ve skupinách v ID Microsoft Entra, které by mohly ovlivnit vaši organizaci. Aktualizace dynamického členství ve skupinách může trvat až 24 hodin a pravidla se automaticky znovu zhodnotí každých 24 hodin a pokaždé, když se změní pravidlo skupiny.
Další informace naleznete v tématu B2B hosty v Microsoft Entra ID.
Odebrání nepotřebných uživatelů
Odebrání neaktivních nebo neoprávněných uživatelů z vaší organizace pomáhá udržovat zabezpečené prostředí a snižuje riziko potenciálních porušení zabezpečení.
- Přímo odeberte neaktivní uživatele účtu Microsoft (MSA): Přímo odeberte neaktivní uživatele z vaší organizace, pokud používají účty MSA. Nemůžete vytvářet dotazy na pracovní položky přiřazené k odebraným účtům MSA.
- Zakázání nebo odstranění uživatelských účtů Microsoft Entra: Pokud jste připojeni k ID Microsoft Entra, zakažte nebo odstraňte uživatelský účet Microsoft Entra a přitom ponechte uživatelský účet Azure DevOps aktivní. Pomocí ID uživatele Azure DevOps můžete pokračovat v dotazování historie pracovních položek.
- Zrušit osobní přístupové tokeny uživatelů pro správce: Zajistěte zabezpečenou správu těchto důležitých ověřovacích tokenů pravidelným kontrolováním a rušením všech stávajících osobních přístupových tokenů uživatelů.
- Odvolání zvláštních oprávnění udělených jednotlivým uživatelům: Auditujte a odvolejte všechna zvláštní oprávnění udělená jednotlivým uživatelům, abyste zajistili soulad se zásadou nejnižších oprávnění.
- Změna přiřazení práce odebraných uživatelů: Před odebráním uživatelů znovu přiřaďte pracovní položky aktuálním členům týmu, aby se zatížení efektivně distribuovaly.
Oprávnění oboru
Zadejte minimální potřebná oprávnění a úrovně přístupu , abyste zajistili, že k citlivým informacím mají přístup jenom autorizovaní jednotlivci a služby a provádějí kritické akce. Tento postup pomáhá minimalizovat riziko neoprávněného přístupu a potenciálního porušení zabezpečení dat.
Pravidelně kontrolujte a aktualizujte tato nastavení tak, aby se přizpůsobila změnám ve vaší organizaci, jako jsou změny rolí, nové zaměstnance nebo odchody. Implementace pravidelného auditu úrovní oprávnění a přístupu vám může pomoct identifikovat a opravit případné nesrovnalosti a zajistit, aby stav zabezpečení zůstal robustní a sladěný s osvědčenými postupy.
Další informace o oprávněních:
Pokud chcete zajistit zabezpečenou a efektivní správu oprávnění, správně vymezujte oprávnění v rámci vašeho prostředí Azure DevOps. Rozsah oprávnění zahrnuje definování a přiřazení odpovídající úrovně přístupu uživatelům a skupinám na základě jejich rolí a zodpovědností. Tento postup pomáhá minimalizovat riziko neoprávněného přístupu a potenciálních porušení zabezpečení dat tím, že zajistí, aby k citlivým informacím a kritickým akcím měli přístup jenom autorizovaní jednotlivci.
Pokud chcete oprávnění efektivně vymezit, proveďte následující akce:
- Zakázat dědičnost: Vyhněte se dědičnosti oprávnění a zabraňte neúmyslnému přístupu. Dědičnost může neúmyslně udělit oprávnění uživatelům, kteří je nemají, a to kvůli výchozí povaze povolení. Pečlivě spravujte a explicitně nastavte oprávnění, abyste měli jistotu, že mají přístup jenom zamýšlení uživatelé.
- Segmentová prostředí: Pro různá prostředí, jako je vývoj, testování a produkce, použijte samostatné účty Azure, abyste zvýšili zabezpečení a zabránili konfliktům. Tento přístup minimalizuje riziko konfliktů prostředků a kontaminace dat mezi prostředími a umožňuje lepší správu a izolaci prostředků. Další informace najdete v cílové zóně Azure.
- Řízení přístupu a zajištění dodržování předpisů: Azure Policy použijte k omezení přístupu k nepoužívaným oblastem a službám Azure a zajištění dodržování standardů organizace. Tato akce pomáhá vynucovat osvědčené postupy a udržovat zabezpečené prostředí tím, že brání neoprávněnému přístupu a použití.
- Implementace řízení na základě role v Azure (ABAC): K omezení neoprávněného přístupu použijte ABAC se správně označenými prostředky. Tato akce zajistí udělení přístupových oprávnění na základě konkrétních atributů, což zvyšuje zabezpečení tím, že brání neoprávněnému vytvoření prostředku a přístupu.
-
Použití skupin zabezpečení: Pomocí skupin zabezpečení můžete efektivně spravovat oprávnění pro více uživatelů. Tato metoda zjednodušuje udělování a odvolávání přístupu v porovnání s přiřazováním oprávnění jednotlivě a zajišťuje konzistenci a snadnější správu ve vaší organizaci.
- Skupiny zabezpečení Microsoft Entra ID, Active Directory nebo Windows používejte při správě velkého počtu uživatelů.
- Snižte riziko úniku citlivých informací a nasazení nezabezpečeného kódu omezením přístupu k projektům a úložištím na předdefinované nebo vlastní skupiny zabezpečení.
- Využijte předdefinované role a výchozí nastavení přispěvatele pro vývojáře. Správci se přiřadí ke skupině zabezpečení Správce projektu pro zvýšená oprávnění, což jim umožní konfigurovat oprávnění zabezpečení.
- Udržujte skupiny co nejmenší a omezte přístup.
- Implementujte přístup just-in-time pomocí skupiny Microsoft Entra Privileged Identity Management (PIM). Udělte zvýšená oprávnění jenom v případě potřeby, čímž snížíte riziko spojené s trvalým přístupem.
Nahrazení účtů služeb moderními alternativami
Účty služeb s tokeny PAT (Personal Access Tokens) se už dlouho používají pro automatizované procesy a služby, ale často shromažďují zvýšená oprávnění a vytvářejí bezpečnostní rizika. Moderní alternativy, jako jsou tokeny Microsoft Entra, instanční objekty a spravované identity, poskytují silnější zabezpečení s menší režií na správu. Než budete pokračovat s účtem služby, vyhodnoťte, jestli přístup k bezpečnějšímu ověřování lépe vyhovuje vašim potřebám.
- Nahraďte tokeny PAT tokeny Microsoft Entra: TokenyMicrosoft Entra jsou krátkodobé (jednohodinové) tokeny, které můžete použít místo většiny PATů. PATs jsou populární kvůli své jednoduchosti použití, ale také představují populární vektor útoku právě kvůli snadnému úniku.
- Než vyberete některý z nich, přečtěte si všechny dostupné mechanismy ověřování .
-
Místo toho použijte instanční objekty:Instanční objekty představují identitu aplikace Microsoft Entra a mají vlastní oprávnění, která definují, co může aplikace v daném tenantovi dělat. Hlavní služba jsou doporučenou volbou pro správu oprávnění potřebných aplikací. Nahraďte osobní přístupové tokeny servisních účtů tokeny Microsoft Entra získanými pro principála služby.
- Pokud budujete na prostředcích Azure, posuňte to ještě o krok dál tím, že použijete ověření pomocí spravované identity. Spravované identity se za vás postará o veškerou správu přihlašovacích údajů.
-
Použijte připojení ke službám: Připojení služeb umožňují používat principály služby v rámci sestavení. Připojení ke službám používejte vždy, když je to možné, abyste se bezpečně připojili ke službám a neposílali tajné proměnné přímo do sestavení. Omezte připojení na konkrétní případy použití. Další informace najdete v části Připojení služby Scope v tomto článku.
- K ověření prostředků Azure použijte federaci identit úloh pomocí registrace aplikace nebo spravované identity namísto registrace aplikace s tajným kódem.
Zatímco účet služby zůstává používán:
- Vytvoření účtů jednoúčelových služeb: Každá služba by měla mít svůj vyhrazený účet, aby se minimalizovalo riziko. Nepoužívejte běžné uživatelské účty jako účty služeb.
- Identifikace a zakázání nepoužívaných účtů služeb: Pravidelně kontrolujte a identifikujte účty, které se už nepoužívají. Před zvážením odstranění zakažte nepoužívané účty.
- Omezit oprávnění: Omezte oprávnění účtu služby na minimum potřebnou. Vyhněte se interaktivním přihlašovacím právům pro účty služeb.
- Pro čtenáře sestav použijte samostatné identity: Pokud používáte účty domény pro účty služeb, použijte pro čtenáře sestav jinou identitu, abyste izolovali oprávnění a zabránili zbytečnému přístupu.
- Pro instalace pracovní skupiny použijte místní účty: Při instalaci komponent v pracovní skupině použijte místní účty pro uživatelské účty. V tomto scénáři se vyhněte účtům domény.
- Monitorování aktivity účtu služby: Implementujte auditování a vytvářejte streamy auditu pro monitorování aktivit účtu služby.
Rozsah služebních připojení
Pokud chcete zajistit zabezpečený a efektivní přístup k prostředkům Azure, správně vymezte rozsah připojení služeb. Připojení služeb umožňují Azure DevOps připojit se k externím službám a prostředkům. Rozsahem těchto připojení můžete omezit přístup pouze na nezbytné prostředky a snížit riziko neoprávněného přístupu.
- Omezení přístupu: Omezte přístup nastavením připojení služby Azure Resource Manager k určitým prostředkům a skupinám. Neudělujte široká práva přispěvatele v celém předplatném Azure.
- Používejte Azure Resource Manager: Autentizujte se pomocí federace identit úloh s prostředky Azure s využitím registrace aplikace nebo spravované identity místo registrace aplikace s heslem. Další informace najdete v tématu Vytvoření připojení služby Azure Resource Manager, které používá federaci identit úloh.
- Rozsah skupin prostředků: Zajistěte, aby skupiny prostředků obsahovaly pouze virtuální počítače nebo prostředky potřebné pro proces sestavení.
- Vyhněte se klasickým připojením ke službám: Zvolte moderní připojení služeb Azure Resource Manageru místo klasických připojení, která nemají možnosti rozsahu.
- Použijte týmové účty služeb určené pro konkrétní účely: Ověřujte připojení služeb pomocí týmových účtů služeb určených pro konkrétní účely, abyste zajistili zachování bezpečnosti a kontroly.
Další informace najdete v tématu Typy připojení služby Common Service.
Kontrola auditingových událostí
Auditování může sledovat akce uživatelů, změny oprávnění a vzory použití v rámci vaší organizace. Pomocí těchto nástrojů můžete rychle identifikovat a řešit potenciální incidenty zabezpečení.
- Povolit auditování: Sledujte a zobrazte události související s akcemi uživatelů, oprávněními, změnami a incidenty zabezpečení.
- Pravidelně kontrolujte protokoly auditu a streamy: Pravidelně kontrolujte protokoly auditu, abyste mohli monitorovat aktivity uživatelů a zjišťovat podezřelé chování. Hledejte neočekávané vzory v užívání, zejména od správců a dalších uživatelů. Tato akce pomáhá identifikovat potenciální porušení zabezpečení a provádět nápravné akce. Přečtěte si další informace o událostech auditování, které sledujeme.
- Konfigurace výstrah zabezpečení: Nakonfigurujte upozornění, která vás upozorní na případné incidenty zabezpečení nebo porušení zásad. Tato akce zajišťuje včasnou reakci na potenciální hrozby.
Zabezpečení služeb
Pokud chcete zajistit zabezpečení a integritu vašich služeb v Azure DevOps, implementujte bezpečnostní opatření pro každou službu. Mezi tyto míry patří nastavení oprávnění, správa přístupu a používání funkcí zabezpečení specifických pro každou službu.
- Zabezpečení Azure Boards: Chraňte data sledování práce nastavením odpovídajících oprávnění a správou úrovní přístupu.
- Zabezpečení Azure Repos: Zajistěte zabezpečení úložišť kódu konfigurací nastavení Gitu, oprávnění větví a zásad.
-
Zabezpečení Azure Pipelines: Zabezpečte procesy CI/CD nastavením oprávnění, pomocí šablon zabezpečení a zabezpečení agentů a kontejnerů.
- Další informace o zabezpečení služby Azure Pipelines
- Přidání uživatelů do Azure Pipelines
- Použití šablon pro zabezpečení
- Zabezpečení agentů, projektů a kontejnerů
- Zabezpečený přístup k Azure Repos z pipeline
- Prostředky zabezpečených kanálů
- Určení přístupu k zabezpečení kanálů YAML
- Ochrana tajných kódů v Azure Pipelines
- Zabezpečení testovacích plánů Azure: Ujistěte se, že váš tým má odpovídající přístup k efektivní správě a provádění testovacích plánů.
- Zabezpečení artefaktů Azure: Umožňuje spravovat přístup k vašim balíčkům a řídit, kdo s nimi může pracovat.
Automatizace kontroly zabezpečení
Monitorujte zranitelnosti kódu a tajných informací pomocí následujících automatizovaných nástrojů zabezpečení.
- Použití skenování a analýzy kódu: Pomocí nástrojů, jako je Microsoft Defender , můžete zkontrolovat ohrožení zabezpečení, tajné kódy a chybné konfigurace.
- Použití pokročilého zabezpečení GitHubu pro Azure DevOps: Identifikace přihlašovacích údajů a ohrožení zabezpečení v kódu Další informace najdete v tématu Konfigurace služby GitHub Advanced Security pro Azure DevOps.
- Použití nativní kontroly tajných kódů pro GitHub: Identifikujte tajné kódy v kódu pomocí nativních funkcí skenování GitHubu. Další informace naleznete v tématu O kontrole tajných kódů.
Další informace viz přehled pokročilého zabezpečení GitHubu .
Automatizace správy zabezpečení pomocí skriptů PowerShellu
Zjednodušte úlohy zabezpečení správy pomocí skriptů PowerShellu pro automatizaci správy, auditování a vynucování zásad v organizaci Azure DevOps.
- Použití skriptů k aktualizaci globálního nastavení zabezpečení: Přístup ke skriptům PowerShellu navrženým pro automatizaci úloh správy zabezpečení, včetně auditování uživatelů, správy připojení služeb a řízení viditelnosti projektu.
Dostupné skripty pro automatizaci pro správu
- Auditování přístupu uživatelů: Auditujte uživatelská oprávnění a identifikujte rizika zabezpečení.
- Bezpečnostní audit připojení služby: Ověřte problémy se zabezpečením připojení.
- Řízení viditelnosti projektu: Automatizujte nastavení veřejného nebo privátního projektu.
- Správa uživatelů a skupin: Zjednodušte procesy životního cyklu uživatelů.
Podrobné pokyny k implementaci najdete v tématu Použití skriptů k aktualizaci globálního nastavení zabezpečení.