Megosztás a következőn keresztül:


Biztonsági Teljes felügyelet beágyazása a fejlesztői munkafolyamatba

Fejlesztőként magabiztosnak és biztonságosnak kell éreznie magát a gyors mozgáshoz. A kód klónozása után azonnal megkezdődik a biztonság szükségessége. Ebből a cikkből megtudhatja, hogyan fejleszthet Teljes felügyelet alapelvek használatával, hogy gyorsan és biztonságosan újíthassa fel őket. Az alkalmazások tervezésének és megvalósításának Teljes felügyelet biztonsági stratégiája és megközelítése az alábbi alapelveket foglalja magában:

  • Ellenőrizze explicit módon. Mindig hitelesítse és engedélyezze az összes rendelkezésre álló adatpont alapján.
  • Használjon minimális jogosultsági hozzáférést. Korlátozza a felhasználói hozzáférést a Just-In-Time és a Just-Enough-Access (JIT/JEA), a kockázatalapú adaptív szabályzatokkal és az adatvédelemmel.
  • Feltételezzük, hogy megszegi a szabályt. Minimalizálja a sugár- és szegmenshozzáférést. Ellenőrizze a teljes körű titkosítást, és használja az elemzést a láthatóság eléréséhez, a fenyegetésészleléshez és a védelem javításához.

A biztonság munkafolyamatba való beágyazása segít a következőkben:

  • Gyorsabban rögzítheti a biztonsági réseket.
  • Biztonságosabb fejlesztői eszközök biztosítása.
  • Kapcsolatok létrehozása a biztonsági és fejlesztési csapatok közötti együttműködés javítása érdekében.

Innováció és a munkafolyamat biztonságossá tétele kód létrehozásakor

A Microsoft egyesített megoldása, amely az alábbi ábrán látható, hidakat képez a DevOps és a SecOps-csapatok között a kódfelhő-fejlesztés felgyorsításához és biztonságossá tételéhez.

Az ábra az egyesített kód–felhő fejlesztési megoldást alkotó technológiákat mutatja be.

A DevOps védelmére szolgáló megoldásunk két fő összetevőre támaszkodik: a fejlesztők számára az innováció energiatakarékossá tételéhez és a fejlesztői munkafolyamat biztonságossá tételéhez, miközben a fejlesztők kódokat hoznak létre. A Microsoft Build 2022-ből megismerheti a kód felhőbeli fejlesztési munkamenetbe való gyorsítását és biztonságossá tételét, amelyből megtudhatja, hogy ezek az összetevők hogyan tudják biztonságossá tenni a fejlesztési környezetet.

Implementálja az alábbi ajánlott eljárásokat, amelyek együttműködnek az Azure-ban és a GitHubon a fejlesztési megoldás biztonságossá tételéhez.

A Teljes felügyelet biztonság beleillik a fejlesztési életciklusba

Az előkészítéstől a véglegesítésig az üzembe helyezésig, majd a működésig és a monitorozásig a fejlesztési életciklus minden szakaszában szükség van biztonsági megoldásokra.

Előkészítési szakasz

  • Fenyegetésmodellezés
  • IDE biztonsági beépülő modul
  • Előmegrendelési horgok
  • Biztonságos kódolási szabványok
  • Társközi felülvizsgálat

A kódhibák nyolcvanöt százaléka a fejlesztési előkészítő fázisban jelenik meg, főként emberi hiba miatt. A kód véglegesítése előtt koncentráljon a biztonságra. Ehhez írja be a kódot a Visual Studio Code-ba, a Visual Studióba vagy a GitHub Codespace-be a biztonsági rések és a biztonságos kód azonosítása érdekében. Használjon társértékeléseket a biztonságos kódolási eljárások ösztönzéséhez.

Véglegesítési (CI) szakasz

  • Statikus kódelemzés
  • Biztonsági egységtesztek
  • Függőségkezelés
  • Hitelesítő adatok vizsgálata

A véglegesítési szakaszban széles körű biztonsági módszerekkel áttekintheti a kódot (beleértve a statikus kódelemzést is), és a forrásvezérlőbe való ellenőrzés során beolvassa a kódot. A hitelesítő adatok vizsgálatával (más néven titkos kulcsok vagy jogkivonatok beolvasásával) olyan hitelesítő adatokat tehet közzé, amelyeket véletlenül be tud vezetni a kódbázisba. A nem biztonságos függőségek észlelése, mielőtt a függőségek áttekintésével bevezeti őket a környezetbe.

Üzembe helyezési (CD) szakasz

  • Infrastruktúra mint kód (IaC) vizsgálata
  • Dinamikus biztonsági vizsgálat
  • Felhőkonfiguráció ellenőrzése
  • Biztonsági elfogadási tesztek

Az üzembe helyezés során vizsgálja meg a kódbázis általános állapotát, és végezzen magas szintű biztonsági vizsgálatot a kockázatok azonosítása érdekében. Felhőkonfigurációs ellenőrzéseket, infrastruktúrakód-ellenőrzéseket és biztonsági elfogadási teszteket hajthat végre a szervezeti biztonsági céloknak való megfelelés érdekében.

Működési és monitorozási fázis

  • Folyamatos monitorozás
  • Fenyegetésészlelési intelligencia
  • Oktalan postmortems

A működési és monitorozási fázisban a folyamatos figyelés és a fenyegetésintelligencia használatával mérsékelheti az idővel öröklődő függőségi sebezhetőségeket. A tanulságok levonásához és a DevOps-cikluson keresztüli iterálás folytatásához végezze el a postmortems műveletet.

Függőségek, kódok és titkos kódok vizsgálata implementálása

A kód biztonságossá tétele a fejlesztők számára a natív és automatizált képességek használatával folyamatos visszajelzést nyújt a folyamatos biztonsági funkciókról a fejlesztési életciklus során. Általános biztonságot biztosíthat a fejlesztőknek és a közösségeknek a GitHub Advanced Security függőségi vizsgálatával, a kódvizsgálattal és a titkos kódok vizsgálatával.

Függőségek vizsgálata

  • Függőségek integrált felülvizsgálata
  • Riasztások és biztonsági frissítések

A függőségek kockázati szintjeinek és a kódbázis sebezhető függőségeinek automatikus javítása folyamatos függőségvizsgálattal. Folyamatos folyamatként a fejlesztőket a megfelelő irányba mozdonyozza barátságos és nem zavaró módon.

Kódvizsgálat

  • Bővíthető keretrendszer kódolvasáshoz
  • Integrálva a fejlesztői munkafolyamatba
  • Iparágvezető CodeQL-motor által támogatott

A kódkeresés implementálása a kód létrehozásakor, más lépések nélkül, külön helyeken való futtatáshoz. A fejlesztési életciklus korai szakaszában könnyedén kijavíthatja a vizsgálati eredményeket a jól ismert GitHub-felhasználói élményben.

Titkos kódok vizsgálata

  • Kiszivárgott titkos kódok keresése nyilvános és privát adattárakban
  • Partnerség több mint 40 szolgáltatóval
  • Leküldéses védelem
    • Áttérés a szervizelésről a megelőzésre
    • Nagy megbízhatóságú titkos kulcsok keresése
    • Védelem engedélyezése egyetlen kijelöléssel

Titkos kódvizsgálattal ellenőrizze a kódban rögzített hitelesítő adatokat és jogkivonatokat. A leküldéses védelem titkos kulcsokat és jogkivonatokat keres, mielőtt leküldené a kódbázisba. A fejlesztők leküldéses kódként nagy megbízhatóságú titkos kulcsokat keresnek, és blokkolják a leküldést, amikor a GitHub azonosít egy titkos kulcsot.

Számítási feladatok identitásainak kezelése és védelme

  • Életciklus-kezelés
  • Hozzáférés szabályozása
  • Biztonságos adaptív hozzáférés

Betekintést kaphat a számítási feladatok identitásainak tevékenységébe, és engedélyezheti az időszakos törlést. Határozza meg, hogy ki birtokolja a számítási feladat identitásait, és hogyan tartja naprakészen ezeket az információkat a szervezet változásai között. Nyomon követheti, hogy mikor használta utoljára a számítási feladat identitásait, mikor adott ki utoljára jogkivonatokat, és mikor járnak le a jogkivonatok.

A kiszivárgott titkos kódok és hitelesítő adatok lehetőségének csökkentése érdekében rendszeresen végezzen hozzáférési felülvizsgálatokat. Követelje meg a felhasználóktól, hogy tekintse át a számítási feladat identitásait, és távolítsák el a szükségtelen hozzáférési jogosultságokat. A felhasználók jelentsenek túlprivilegált és kihasználatlan hozzáférési jogosultságokat. Ismerje meg, hogyan védheti meg a számítási feladatok identitását a biztonsági rések ellen. Engedélyezze a feltételes hozzáférést annak biztosításához, hogy a hozzáférés a várt erőforrásokból származik.

Identitások védelme a GitHub OIDC-vel és Microsoft Entra Számítási feladat ID összevonással

A szervezet további védelméhez használja a GitHub OpenID Csatlakozás (OIDC) a Microsoft Entra Workload Identity Federation szolgáltatással, és minimalizálja a titkos kulcsok tárolásának és elérésének szükségességét. Biztonságosan kezelheti az Azure Server fő titkos kulcsait és más hosszú élettartamú felhőbeli hitelesítőadat-erőforrásokat, hogy a lejárt hitelesítő adatok miatt a szolgáltatás leállása minimálisra csökkenjen. Integrálható fejlesztői platformokkal, például a GitHub Actions szolgáltatással az alkalmazások biztonságos létrehozása érdekében.

A számítási feladatok identitás-összevonásának javasolt munkafolyamata, amelyet az alábbi ábrán szemléltetünk, hat lépésből áll.

A diagram a számítási feladatok identitás-összevonási munkafolyamatának lépéseit szemlélteti.

  1. Állítson be megbízhatóságot a Microsoft Entra-azonosítóban, és kérjen jogkivonatot.
  2. Konfigurálja a GitHub-munkafolyamatot, hogy a műveletek megkapják a jogkivonatot.
  3. A GitHub-munkafolyamat kérést küld az Azure ID-nak.
  4. A Microsoft Entra ID ellenőrzi az alkalmazás megbízhatóságát, és lekéri a kulcsokat a jogkivonat érvényesítéséhez.
  5. A Microsoft Entra ID hozzáfér és kiadja a jogkivonatot.
  6. Az üzembe helyezési művelet a Microsoft Entra hozzáférési jogkivonatot használja az Azure-beli erőforrásokon való üzembe helyezéshez.

Tekintse meg April Edwards, a felhőtanácsadó és a DevOps gyakorlatvezetőjének bemutatóját a számítási feladatok identitás-összevonási munkafolyamatában. A bemutató a Microsoft Build 2022 munkamenet 19:14-kor kezdődik, felgyorsítva és biztonságossá építve a kódot a felhőfejlesztéshez.

Következő lépések

  • Regisztráljon az Azure Developer CLI-re, amely egy nyílt forráskódú eszköz, amely felgyorsítja az Azure használatának megkezdéséhez szükséges időt.
  • Konfigurálja az Azure-t, hogy összevont identitásként megbízható legyen a GitHub OIDC-je. Az OpenID Csatlakozás (OIDC) lehetővé teszi, hogy a GitHub Actions-munkafolyamatok anélkül férhessenek hozzá az Azure-beli erőforrásokhoz, hogy hosszú élettartamú GitHub-titkos kulcsként kellene tárolniuk az Azure-hitelesítő adatokat.
  • Implementálja Teljes felügyelet elveket a 22–09-ben (az EGYESÜLT Államok 14028-as végrehajtási rendeletének támogatásával, a nemzet kiberbiztonsági biztonságának javítása) a Microsoft Entra ID központi identitáskezelési rendszerként való használatával.
  • Az Azure DevOps segítségével felgyorsíthatja és biztonságossá teheti a kódot olyan eszközökkel, amelyekkel a fejlesztők a leggyorsabb és legbiztonságosabb kódot hozhatják a felhőbe.
  • A fejlesztői környezet biztonságossá tételével Teljes felügyelet alapelveket valósíthat meg a fejlesztési környezetekben a minimális jogosultsági, ágbiztonsági és megbízhatósági eszközök, bővítmények és integrációk ajánlott eljárásaival.
  • A Biztonságos DevOps-környezetek Teljes felügyelet ismerteti a DevOps-környezetek biztonságossá tételének ajánlott eljárásait, amelyek megakadályozzák, hogy a hackerek veszélyeztetjék a fejlesztői dobozokat, megfertőzzék a kiadási folyamatokat rosszindulatú szkriptekkel, és tesztkörnyezeteken keresztül hozzáférjenek az éles adatokhoz.
  • A jogkivonatok testreszabása a Microsoft Entra-jogkivonatokban kapott információkat ismerteti. Ez a cikk bemutatja, hogyan szabhatja testre a jogkivonatokat a rugalmasság és az ellenőrzés javítása érdekében, miközben a minimális jogosultsággal rendelkező alkalmazásmegbízhatósági biztonságot növeli.
  • A csoportjogcímek és alkalmazásszerepkörök tokenekben való konfigurálása bemutatja, hogyan konfigurálhatja alkalmazásait alkalmazásszerepkör-definíciókkal, és hogyan rendelhet biztonsági csoportokat alkalmazásszerepkörökhöz. Ezek a módszerek segítenek a rugalmasság és az ellenőrzés javításában, miközben az alkalmazás zéró megbízhatósági biztonságát a legkisebb jogosultsággal növeli.