Model możliwości devSecOps

Model możliwości devSecOps pomaga organizacjom inżynieryjnym ocenić, jak tworzą, zabezpieczają, wysyłają i obsługują oprogramowanie. Pomaga im wytyczać drogę do bardziej dojrzałych, bezpiecznych i odpornych praktyk. Model opisuje podróż w sześciu obszarach możliwości, z których każda przechodzi przez pięć etapów dojrzałości.

Użyj tego modelu, aby dowiedzieć się, gdzie znajdują się twoje zespoły, uzgodnić, gdzie chcesz być, i zaplanować przyrostowe zmiany, które cię tam znajdą. Model jest opisowy, a nie nakazowy. Ma na celu stworzenie wspólnego zrozumienia produktu, programowania, zabezpieczeń i operacji, a nie generowania pojedynczego wyniku.

Ten model jest zgodny z celami inicjatywy Microsoft Secure Future Initiative. Większość organizacji jest na różnych etapach w różnych obszarach możliwości.

Diagram przedstawiający sześć obszarów możliwości devSecOps w pięciu etapach dojrzałości od ad hoc do pionierskich.

Sześć obszarów możliwości

Model organizuje praktyki DevSecOps w sześć obszarów możliwości. Razem obejmują cały cykl życia, od sposobu, w jaki organizacja jest prowadzona i zarządzana przez sposób projektowania, tworzenia, wydawania i obsługi oprogramowania.

  • Organizacja i kultura: przywództwo, nastawienie na zabezpieczenia, współpraca i ciągłe ulepszanie w zespołach.
  • Standardy i ład: program zabezpieczeń, zasady i standardy oraz ochrona systemów inżynieryjnych.
  • Planowanie i projektowanie: Rozwiązania dotyczące bezpiecznego projektowania, dane i szczegółowe informacje oraz architektura techniczna i projektowanie.
  • Programowanie i testowanie: zabezpieczenia kodu, akceleratory programistyczne oraz integracja i testowanie.
  • Wydawanie i wdrażanie: Bezpieczne zależności, bezpieczne wydania i przepływy pracy wdrażania.
  • Operacje i monitorowanie: Ochrona dzierżaw i systemów produkcyjnych, monitorowanie i wykrywanie zagrożeń oraz reagowanie na zdarzenia i korygowanie.

Pięć etapów

Każdy obszar możliwości przechodzi przez te same pięć ogólnych etapów dojrzałości. Każdy obszar możliwości używa również własnych nazw etapów, aby opisać, jak wygląda dojrzałość w tym konkretnym kontekście.

Ogólny etap Jak wygląda
Ad hoc Praktyki są fragmentowane, ręczne i w dużej mierze nieudokumentowane. Wyniki zależą od osób fizycznych.
Inicjowanie Poszczególne zespoły zaczynają prowadzić spójność lokalnie i rozwiązywać luki w miarę ich pojawiania się.
Orkiestracja Praktyki są scentralizowane i współdzielone, dostosowując zespoły do typowych podejść i zasobów.
Usprawnianie Światowej klasy narzędzia i praktyki zmniejszają nakład pracy ręcznej i sprawiają, że bezpieczna ścieżka jest łatwa.
Pionierskie Praktyki wyznaczają standardy w branży, mają proaktywny charakter i nieustannie ewoluują, wyprzedzając pojawiające się potrzeby.

Podejścia strategiczne

Organizacje mogą korzystać z modelu możliwości na różne sposoby w zależności od kontekstu biznesowego. Niektóre zespoły potrzebują elastyczności, niektóre optymalizują szybkość, a inne priorytetowo ustalają silną zgodność i mechanizmy kontroli ryzyka.

Diagram przedstawiający trzy strategiczne podejścia do metodyki Modern DevSecOps: Agile DevSecOps, Accelerated DevSecOps i Security-First DevSecOps.

  • Agile DevSecOps: podkreśla elastyczność organizacji w zakresie ustanawiania, aktualizowania lub ujednolicania praktyk DevSecOps podczas równoważenia szybkości przy użyciu przydatnych standardów.
  • Przyspieszony DevSecOps: kładzie nacisk na szybkość działania w organizacjach z ugruntowanymi praktykami, które chcą zautomatyzować, uprościć i zwiększyć efektywność dostarczania.
  • DevSecOps stawiający bezpieczeństwo na pierwszym miejscu: podkreśla zgodność z przepisami i ograniczanie ryzyka w organizacjach działających w silnie regulowanych lub krytycznych środowiskach.

Ocenianie bieżących praktyk i określanie przyszłych celów

Użyj modelu, aby przeprowadzić krótką samoocenę wraz z osobami wykonującymi tę pracę. Celem jest wspólny, uczciwy obraz dzisiaj i uzgodniony kierunek na jutro.

Zacznij od pustego wykresu

Użyj pustego wykresu modelu możliwości, aby przechwycić bieżący stan i stan docelowy.

Pusty wykres modelu możliwości DevSecOps z sześcioma obszarami możliwości i pięcioma etapami dojrzałości do oceny.

Korzystanie ze szczegółowego wykresu referencyjnego

Użyj szczegółowego wykresu jako odwołania podczas omawiania wyglądu poszczególnych etapów w obszarach możliwości.

Szczegółowy wykres modelu możliwości DevSecOps przedstawiający reprezentatywne cechy każdego obszaru możliwości na każdym etapie dojrzałości.

Oznaczanie bieżącego stanu

Dla każdego obszaru możliwości należy omówić opisy etapów i oznaczyć etap, który najlepiej odzwierciedla bieżące rozwiązania.

Wykres modelu możliwości przedstawiający przykładowe znaczniki bieżącego stanu dla kilku obszarów możliwości devSecOps.

Połącz oznaczenia

Połącz punkty we wszystkich sześciu obszarach, aby zobaczyć swój obecny profil.

Wykres modelu zdolności przedstawiający oznaczenia stanu bieżącego połączone w poprzek obszarów zdolności w celu utworzenia profilu.

Oznaczanie etapu docelowego

Oznacz etap docelowy, który chcesz osiągnąć dla każdego obszaru możliwości w horyzoncie planowania.

Wykres modelu możliwości przedstawiający oznaczenia stanu bieżącego z dodanymi oznaczeniami stanu docelowego dla przyszłych celów dojrzałości.

Planowanie zmian przyrostowych

Zaplanuj stopniową, przyrostową zmianę. Posuwanie się naprzód etapami jest zwykle trwalsze niż próba przeskoczenia naprzód na wszystkich frontach naraz.

Wykres modelu zdolności przedstawiający strzałki prowadzące od oznaczeń bieżącego stanu do docelowych poziomów dojrzałości w poszczególnych obszarach zdolności.

Okresowe ponowne oceny w celu śledzenia postępów i dostosowywania celów w miarę rozwoju organizacji i zagrożeń.

Używanie pytań przewodnich do ustawiania priorytetów

Po wybraniu miejsca, w którym chcesz zainwestować, skorzystaj z pytań przewodnich, aby skupić się na konwersacji dla każdego obszaru możliwości.

  • Organizacja i kultura: Jak sprawić, by bezpieczeństwo było wspólną odpowiedzialnością i źródłem dumy, zamiast być blokującym etapem na końcu procesu, za który odpowiada tylko kilka osób?
  • Standardy i ład: Jak ustalić jasne, dobrze zrozumiałe standardy, które chronią systemy inżynieryjne bez spowalniania zespołów?
  • Planowanie i projektowanie: Jak sprawić, by uwzględnianie bezpieczeństwa już na etapie projektowania było standardem w planowaniu i architekturze, w oparciu o dane i wnioski?
  • Programowanie i testowanie: Jak przesunąć zabezpieczenia w lewo, aby problemy zostały znalezione i rozwiązane w miarę pisania kodu zamiast po jego wysyłki?
  • Wydanie i wdrażanie: Jak zapewnić bezpieczeństwo, powtarzalne i wiarygodne wydania od zależności do wdrożenia?
  • Eksploatacja i monitorowanie: Jak wykrywać zagrożenia dla systemów produkcyjnych i dzierżaw, przeciwstawiać się im oraz odzyskiwać sprawność po ich wystąpieniu?

Przykładowy profil klienta

W poniższym przykładzie pokazano, w jaki sposób rzeczywisty profil klienta może mieć nierównomierną dojrzałość w różnych obszarach możliwości i pomóc w ustaleniu, gdzie należy dalej ustalić priorytety inwestycji.

Przykładowy profil klienta zamapowany na model możliwości DevSecOps przedstawiający bieżącą i docelową dojrzałość w sześciu obszarach możliwości.