Metodyka DevOps jest nowym czynnikiem wzrostu globalnych przedsiębiorstw. Dzięki wdrożeniu elastycznych, zautomatyzowanych procesów programistycznych firmy na całym świecie szybciej reagują dziś na zmiany wymagań rynku. Mimo to wciąż muszą stawić czoła wielu wyzwaniom. Największą barierą utrudniającą efektywną realizację projektów jest nadal cyberbezpieczeństwo. Jak wynika z globalnych badań przeprowadzonych niedawno przez Trend Micro, aż 94% szefów działów informatycznych twierdzi, że realizacja projektów DevOps może spowodować poważne problemy z bezpieczeństwem.
Aby temu zaradzić, zwykle nie wystarczy wyposażenie działów bezpieczeństwa informatycznego w odpowiednie zasoby. Trzeba podjąć się znacznie trudniejszego zadania, jakim jest zmiana kultury organizacyjnej w całym przedsiębiorstwie. To jedyny sposób na pokonanie głównych przeszkód, takich jak podział środowiska informatycznego na odizolowane od siebie obszary czy brak jasnego podziału odpowiedzialności i osiągnięcie długotrwałego sukcesu.
Na podbój świata
Metodyka DevOps jest już powszechnie stosowana. Jak wynika z naszych badań, ponad jedna trzecia (37%) globalnych organizacji wdrożyła już oparte na niej projekty, a 44% właśnie je wdraża. Większość (bo aż 79%) stwierdza, że DevOps znajduje się dziś wyżej na liście priorytetów niż rok temu. Przyczyną są liczne korzyści wynikające z tej metodyki ― od większej wydajności procesów po szybsze wdrażanie nowych rozwiązań. Jak na ironię, nasi respondenci wśród tych korzyści wymienili poprawę bezpieczeństwa środowiska informatycznego. Równocześnie obawiają się jednak, że wdrożenie metodyki DevOps narazi ich na większe ryzyko cyberataków i kradzieży danych.
Niektóre problemy dotyczące bezpieczeństwa środowisk DevOps mają związek z nowymi architekturami informatycznymi oraz nieustanną presją na przyspieszenie procesów.
Te metody tworzenia oprogramowania rozpoczęły nową erę mikrousług, które mogą być aktualizowane kilka razy dziennie. Mikrousługi różnią się zdecydowanie od monolitycznych, specjalistycznych aplikacji starszego typu, modyfikowanych najwyżej raz na miesiąc. Ochrona tak szybko zmieniającego się, płynnego środowiska może okazać się trudna, zwłaszcza jeśli wciąż stosowane są zabezpieczenia reaktywne, powolne i sterowane ręcznie. Konieczność szybkiego wprowadzania nowych produktów na rynek często skłania programistów do zbyt powierzchownego traktowania zabezpieczeń: według opublikowanego w marcu raportu, w ciągu ostatnich pięciu lat liczba przypadków naruszenia bezpieczeństwa powiązanych z używaniem komponentów oprogramowania open source wzrosła o 71%.
Czas na zmiany
Wobec powyższego można stwierdzić, że wszystkie firmy, które chcą z powodzeniem wdrożyć metodykę DevOps, potrzebują lepszych rozwiązań zabezpieczających. Niespełna połowa szefów działów informatycznych (49%) powiedziała nam, że ma wszystkie potrzebne narzędzia. Problemy sięgają jednak znacznie głębiej. Jak już wspomnieliśmy, chodzi między innymi o przestarzałe podejście do zabezpieczeń, być może utrwalane przez samych specjalistów ds. bezpieczeństwa: zdaniem 40% respondentów zabezpieczeniom poświęca się zbyt mało uwagi, choć wymagają one innowacji i uelastycznienia, a podobna liczba (39%) stwierdziła, że systemy bezpieczeństwa spowalniają szybkość działania środowisk DevOps.
Wyzwania związane z zabezpieczeniem środowisk DevOps nie ograniczają się do działu bezpieczeństwa informatycznego. Choć większość (72%) respondentów stwierdziła, że zbyt małe zaangażowanie działu bezpieczeństwa w środowiskach DevOps stwarza ryzyko, to jedna trzecia przyznała, że nie zawsze konsultuje się ze specjalistami ds. zabezpieczeń. Ponadto tylko w dwóch piątych (42%) badanych firm pracownicy działów bezpieczeństwa informatycznego mają wszystkie kwalifikacje i umiejętności potrzebne do zabezpieczenia projektów DevOps. Jest to szczególnie niepokojące, jeśli weźmiemy pod uwagę, że zdaniem respondentów większa złożoność zabezpieczeń i infrastruktury stanowi główną barierę na drodze do sukcesu.
Możemy stwierdzić, że odkryliśmy poważne problemy z komunikacją i zarządzaniem w wielu przedsiębiorstwach stosujących metodykę DevOps. Zdaniem jednej piątej respondentów poważną przeszkodą jest brak odpowiedniego zarządzania. Jedna czwarta ma trudności z uzyskaniem poparcia kierownictwa wyższego szczebla, a zdecydowana większość za ważną barierę uznała odseparowane obszary działania w środowisku informatycznym.
Bezpieczeństwo z założenia
Nie jest więc zaskoczeniem, że tylko 38% globalnych przedsiębiorstw uczestniczących w badaniu może się pochwalić kompleksową strategią wdrażania metodyki DevOps. Prawdopodobnie oznacza to, że wiele przedsiębiorstw kieruje się hasłem „działaj szybko i nie oglądaj się na szkody” (od ang. „move fast and break things”). Taką kulturę należy zastąpić podejściem opartym na zabezpieczeniach w fazie projektowania (od ang. security-by-design). Bezpieczeństwo powinno być włączone w każdy obszar działania firmy na wszystkich szczeblach organizacyjnych, od pierwszych faz realizacji projektów. Obietnice nie wystarczą. Bezpieczeństwo i ograniczenie ryzyka powinny być traktowane jako sprawy najwyższej wagi, od których zależy wartość firmy.
Zmiana kultury przedsiębiorstwa nie jest oczywiście zadaniem łatwym. Najlepiej zacząć od zaangażowania członków zarządu, którzy powinni przyjąć odpowiedzialność za realizację projektów oraz koordynować prace działów programowania, operacji i bezpieczeństwa. Wyznaczenie tym działom wspólnych celów sprawi, że każdy zespół lepiej pozna i zrozumie problemy pozostałych. Kultura przedsiębiorstwa powinna być oparta na wyznaczaniu celów, pomiarach wydajności, ocenie postępów w realizacji zadań i premiowaniu sukcesów.
Wymaga to, rzecz jasna, użycia odpowiednich narzędzi i technologii, takich jak automatyzacja procesów, która eliminuje wiele błędów popełnianych przez człowieka, oraz adaptacyjne i kontekstowe zabezpieczenia oparte na oprogramowaniu. Funkcje zabezpieczeń dostępne za pośrednictwem interfejsów API można automatycznie włączać w procesy środowiska DevOps. Dotyczy to tak ważnych zadań, jak ciągłe skanowanie obrazów kontenerów w celu wykrycia błędów i szkodliwego programowania oraz ciągła ochrona w środowisku produkcyjnym. Przynajmniej w pierwszych fazach projektu warto skupić się na widoczności i monitorowaniu zamiast blokowaniu i egzekwowania reguł. Wówczas bezpieczeństwo przestanie być postrzegane jako hamulec innowacyjności.
Podejście oparte na zabezpieczeniach wbudowanych w projekt należy wdrożyć w całym przedsiębiorstwie, co jednak wymaga czasu. Należy je również uwzględnić w budżecie, jaki firma przydzieli nowemu działowi DevSecOps odpowiedzialnemu za bezpieczeństwo środowiska DevOps. W przypadku metodyki DevOps zintegrowane zabezpieczenia są warunkiem koniecznym sukcesu. Ostatecznie zadaniem hamulców nie jest spowalnianie jazdy, lecz pomoc w szybkim i bezpiecznym dotarciu do celu.