Vložte zabezpečení Zero Trust do pracovního postupu vývojáře.

Jako vývojář musíte mít jistotu a jistotu, abyste se mohli rychle pohybovat. Potřeba zabezpečení se spustí hned po naklonování kódu. V tomto článku se naučíte vyvíjet pomocí principů nulové důvěryhodnosti , abyste mohli rychle a bezpečně inovovat. Strategie zabezpečení nulové důvěry (Zero Trust) a přístup k návrhu a implementaci aplikací se skládá z těchto principů:

  • Ověřte explicitně. Vždy ověřovat a autorizovat na základě všech dostupných datových bodů.
  • Použijte přístup s nejnižšími oprávněními. Omezte přístup uživatelů pomocí technologie Just-In-Time a Just-Enough-Access (JIT/JEA), adaptivních zásad založených na rizikech a ochrany dat.
  • Předpokládejme porušení zabezpečení. Omezte rozsah dopadu a segmentaci přístupů. Ověřte komplexní šifrování a využijte analýzy k získání viditelnosti, zjišťování hrozeb a zlepšení ochrany.

Vložení zabezpečení do pracovního postupu vám pomůže:

  • Rychlejší určení ohrožení zabezpečení
  • Poskytuje bezpečnější vývojářské nástroje.
  • Vytvářejte připojení ke zlepšení spolupráce mezi týmy pro zabezpečení a vývoj.

Inovace a zabezpečení pracovního postupu při vytváření kódu

Jednotné řešení Microsoftu, které je znázorněno v následujícím diagramu, přemosťuje týmy DevOps a SecOps, aby vám pomohlo zrychlit a zabezpečit vývoj od kódu po cloud.

Diagram znázorňuje technologie, které tvoří jednotné řešení vývoje kódu do cloudu.

Naše řešení pro ochranu DevOps závisí na dvou hlavních komponentách: poskytuje vývojářům nástroje pro inovace a zabezpečení pracovního postupu vývojářů při vytváření kódu. Podívejte se na relaci Zrychlení a zabezpečení kódu pro vývoj cloudu z Microsoft Buildu 2022 a zjistěte, jak tyto komponenty můžou zabezpečit vaše vývojové prostředí.

Implementujte následující osvědčené postupy, které společně spolupracují v Azure a GitHubu pro zabezpečení vašeho vývojového řešení.

  • Vzhledem k tomu, že zabezpečení začíná již při klonování kódu vývojáři, aktivujte DevSecOps s Azure a GitHubem pro propojení týmů DevOps a SecOps a zabezpečení vašich vývojových prostředí.
  • Poskytněte flexibilní a výkonné vývojářské nástroje pro každého vývojáře, jazyk a technologický stack s Visual Studio a Visual Studio Code.
  • Zjednodušení onboardingu nových vývojářů a spolupráce s celým nástrojem pro životní cyklus vývoje v cloudu pomocí GitHub Codespaces a Microsoft Dev Boxu
  • Zahrňte integrovanou ochranu duševního vlastnictví pro kód, který už nerozptylujete do více umístění. Pomozte týmům spolupracovat, vyvíjet, automatizovat a nasazovat kód všude, kde chtějí, pomocí GitHub Actions a Azure Pipelines.
  • Získejte pokyny k zabezpečení a nepřetržitou zpětnou vazbu zabezpečení v rámci pracovního postupu vývojáře s využitím skenování kódu, kontroly tajných kódů a kontroly závislostí pomocí GitHub Advanced Security.
  • Instilovat zabezpečení nulové důvěryhodnosti v celé organizaci pomocí služeb správy identit v Microsoft Entra ID.

Přizpůsobte zabezpečení Zero Trust v životním cyklu vývoje.

Od předběžného potvrzení k potvrzení, přes nasazení, poté provozovat a monitorovat, potřebujete bezpečnostní řešení ve všech fázích životního cyklu vývoje.

Předběžná fáze

  • Modelování hrozeb
  • Modul plug-in zabezpečení integrovaného vývojového prostředí (IDE)
  • Háčky Precommit
  • Standardy zabezpečeného kódování
  • Vzájemné hodnocení

Osmdesát pět procent vad kódu se objeví během fáze předběžného dokončování vývoje, většinou kvůli lidské chybě. Zaměřte se na zabezpečení před odevzdáním kódu tím, že kód napíšete v nástroji Visual Studio Code, Visual Studio nebo GitHub Codespaces k identifikaci zranitelností a zabezpečení kódu. Používejte partnerské kontroly k podpoře zabezpečených postupů kódování.

Fáze potvrzení (CI)

  • Statická analýza kódu
  • Testy jednotek zabezpečení
  • Správa závislostí
  • Kontrola přihlašovacích údajů

Během fáze potvrzení používejte rozsáhlé bezpečnostní metody ke kontrole vašeho kódu (včetně statické analýzy kódu) a testujte kód při jeho přidávání do správy zdrojového kódu. Ke zveřejnění přihlašovacích údajů, které můžete neúmyslně zavést do základu kódu, použijte kontrolu přihlašovacích údajů (označovanou také jako prohledávání tajných kódů nebo prohledávání tokenů). Zachyťte nezabezpečené závislosti před jejich uvedením do prostředí pomocí kontroly závislostí.

Fáze nasazení (CD)

  • Kontrola infrastruktury jako kódu (IaC)
  • Dynamická kontrola zabezpečení
  • Kontroly konfigurace cloudu
  • Testy přijetí zabezpečení

Během fáze nasazení se podívejte na celkový stav základu kódu a proveďte kontrolu zabezpečení vysoké úrovně za účelem identifikace rizik. Proveďte kontroly konfigurace cloudu, kontroly kódu infrastruktury a akceptační testy zabezpečení, abyste zajistili soulad s cíli zabezpečení organizace.

Fáze provozu a monitorování

  • Průběžné sledování
  • Analýza hrozeb
  • Bez obviňování posmrtné analýzy

Během fáze provozu a monitorování využijte průběžné monitorování a analýzu hrozeb ke zmírnění zranitelností závislostí, které se mohou v průběhu času objevit. Pomocí postmortems si odneste získané poznatky a pokračujte v iterování v cyklu DevOps.

Implementace skenování závislostí, kódu a tajných údajů

Pokud chcete vývojářům usnadnit zabezpečení kódu, využijte nativní a automatizované funkce k poskytování nepřetržité zpětné vazby s funkcemi nepřetržitého zabezpečení v průběhu životního cyklu vývoje. Poskytněte vývojářům a komunitám celkové zabezpečení s využitím kontroly závislostí GitHub Advanced Security, skenování kódu a kontroly tajných kódů.

Kontrola závislostí

  • Integrovaná kontrola závislostí
  • Výstrahy a aktualizace zabezpečení

Získejte úrovně rizik závislostí a automatizované opravy ohrožených závislostí ve své kódové základně s průběžnou kontrolou závislostí. Jako průběžný proces posune vývojáře správným směrem přátelským a nerušivým způsobem.

Kontrola kódu

  • Rozšiřitelná architektura pro kontrolu kódu
  • Integrováno do pracovního postupu vývojáře
  • Podporováno špičkovým modulem CodeQL v oboru

Implementujte kontrolu kódu během generování kódu bez nutnosti dalších kroků pro spouštění na samostatných místech. Opravy můžete usnadnit v rané fázi životního cyklu vývoje zobrazením výsledků vyhledávání ve známém uživatelském prostředí GitHubu.

Skenování tajných informací

  • Kontrola úniku tajných kódů ve veřejných a privátních úložišťch
  • Partnerství se 40 dalšími poskytovateli
  • Ochrana před push notifikacemi
    • Přechod z nápravy na prevenci
    • Kontrola vysoce spolehlivých tajemství
    • Povolení ochrany jedním výběrem

Zkontrolujte v kódu pevně zakódované přihlašovací údaje a tokeny pomocí kontroly tajných kódů. Ochrana proti pushování vyhledává tajemství a tokeny před pushnutím do úložiště kódu. Zkontrolujte vysoce citlivá tajemství, když vývojáři přidávají kód, a zablokujte push, když GitHub identifikuje tajemství.

Správa a zabezpečení identit úloh

  • Správa životního cyklu
  • Zásady správného řízení přístupu
  • Zabezpečený adaptivní přístup

Získejte přehled o aktivitě identit úloh a povolte pravidelné čištění. Určete, kdo vlastní identity úloh a jak tyto informace udržujete v aktualizovaném stavu v rámci změn organizace. Sledujte, kdy jste naposledy použili identity úloh, kdy jste naposledy vystavili tokeny a kdy vyprší platnost tokenů.

Pokud chcete zmírnit potenciál úniku tajných kódů a přihlašovacích údajů, pravidelně provádíte kontroly přístupu. Vyžadovat, aby uživatelé zkontrolovali své identity úloh a odebrali nepotřebná přístupová oprávnění. Požádejte uživatele, aby ohlásili přeprivilegovaná a nedostatečně využitá přístupová oprávnění. Proberete, jak chráníte identity úloh před porušením zabezpečení. Povolte podmíněný přístup, abyste zajistili, že přístup pochází z očekávaných prostředků.

Zabezpečení identit pomocí OIDC GitHubu a federace ID úloh Microsoft Entra

Pokud chcete svoji organizaci dále zabezpečit, použijte GitHub OpenID Connect (OIDC) s federací identit úloh Microsoft Entra a minimalizujte potřebu ukládat tajné kódy a přistupovat k nim. Bezpečně spravujte hlavní tajné kódy serveru Azure a další dlouhodobé prostředky cloudových přihlašovacích údajů, abyste minimalizovali výpadky služeb kvůli vypršení platnosti přihlašovacích údajů. Integrace s vývojářskými platformami, jako je GitHub Actions, k bezpečnému vytváření aplikací

Náš doporučený pracovní postup federace identit úloh, který je znázorněný v následujícím diagramu, se skládá ze šesti kroků.

Diagram znázorňuje kroky pracovního postupu federace identit úloh.

  1. Nastavte důvěryhodnost v Microsoft Entra ID a požádejte o token.
  2. Nakonfigurujte pracovní postup GitHubu tak, aby akce mohly získat token.
  3. Pracovní postup GitHubu odešle požadavek na ID Azure.
  4. ID Microsoft Entra ověří důvěryhodnost aplikace a načte klíče k ověření tokenu.
  5. Microsoft Entra ID je používán k přístupu a vydávání tokenů.
  6. Akce nasazení používá přístupový token služby Microsoft Entra k nasazení prostředků na Azure.

Podívejte se na April Edwardsovou, vedoucí poradkyni pro cloud a vedoucí DevOps praxe, jak předvádí workflow federace identit pracovní zátěže. Ukázka začíná v čase 19:14 během relace Microsoft Build 2022, urychlení a zabezpečení kódu pro vývoj v cloudu.

Další kroky

  • Zaregistrujte se do Azure Developer CLI, opensourcového nástroje, který zrychluje dobu potřebnou k zahájení práce v Azure.
  • Nakonfigurujte Azure tak, aby důvěřovala OIDC GitHubu jako federovaná identita. OpenID Connect (OIDC) umožňuje pracovním postupům GitHub Actions přistupovat k prostředkům v Azure , aniž by bylo nutné ukládat přihlašovací údaje Azure jako dlouhodobé tajné kódy GitHubu.
  • Implementujte principy nulové důvěry, jak je popsáno v dokumentu 22-09 (na podporu výkonného řádu USA 14028, zlepšování kybernetické bezpečnosti národu) pomocí Microsoft Entra ID jako centralizovaného systému správy identit.
  • Urychlete a zabezpečte kód pomocí Azure DevOps pomocí nástrojů, které vývojářům poskytují nejrychlejší a nejbezpečnější kód pro cloudové prostředí.
  • Zabezpečení vývojového prostředí vám pomůže implementovat principy nulové důvěryhodnosti ve vývojových prostředích s osvědčenými postupy pro nejnižší oprávnění, zabezpečení větví a důvěryhodné nástroje, rozšíření a integrace.
  • Zabezpečení prostředí DevOps pro nulovou důvěryhodnost popisuje osvědčené postupy zabezpečení prostředí DevOps, které brání hackerům v ohrožení vývojářských polí, infikování kanálů verzí se škodlivými skripty a získání přístupu k produkčním datům prostřednictvím testovacích prostředí.
  • Přizpůsobení tokenů popisuje informace, které můžete přijímat v tokenech Microsoft Entra. Vysvětluje, jak přizpůsobit tokeny, aby se zlepšila flexibilita a řízení a současně se zvýšilo zabezpečení nulové důvěryhodnosti aplikace s nejnižšími oprávněními.
  • Konfigurace deklarací identity skupin a rolí aplikací v tokenech ukazuje, jak nakonfigurovat aplikace s definicemi rolí aplikace a přiřadit skupiny zabezpečení k rolím aplikací. Tyto metody pomáhají zlepšit flexibilitu a řízení a současně zvýšit zabezpečení nulové důvěryhodnosti aplikace s nejnižšími oprávněními.