Während meiner beruflichen Tätigkeit als Cybersecurity-Experte und IT-Architekt stoße ich oft auf Bedenken von Teams, die DevOps praktizieren, wenn ich über Cybersicherheit spreche. Ebenso höre ich häufig Verweise auf DevSecOps als Lösung, um Sicherheit in ihren Ansatz zu integrieren.
Daher habe ich mich entschieden, diesen Artikel zu schreiben, um zu erklären:
- Was DevOps wirklich ist, da viele Teams den Begriff falsch verstehen und ihn eher als Trendwort nutzen.
- Wie Sicherheit aussehen sollte, wenn DevOps ernst genommen wird.
- Warum eine Ableitung wie „DevSecOps“ nicht existiert, sondern eher ein Buzzword ist – oft als Ausrede für mangelndes Bewusstsein für Cybersicherheit oder als bequemer Weg, DevOps halbherzig umzusetzen.
Viel Spaß beim Lesen!
Was ist DevOps?
Aus einer logischen Perspektive betrachtet, ist DevOps genau das, was die beiden kombinierten Begriffe Development („Dev“) und Operations („Ops“) ausdrücken. Es vereint zwei ehemals getrennte Teams in einem Ansatz, um Effizienz zu steigern und Reibungen zwischen den Teams zu reduzieren.
Im Internet gibt es viele Definitionen für den Begriff DevOps, doch die meisten beschreiben ihn als mehr als nur die Zusammenführung zweier Teams. DevOps umfasst:
- Kulturelle Philosophien,
- Praktiken und
- Tools,
mit dem Ziel, die Fähigkeit einer Organisation zu erhöhen, Anwendungen und Services mit hoher Geschwindigkeit bereitzustellen. Diese Formulierung lehnt sich an die Definition von Amazon AWS für DevOps an.
Lassen wir uns nun anschauen, wie diese Kultur definiert ist und welche Prinzipien innerhalb eines DevOps-Ansatzes angewendet werden.
Die DevOps-Kultur
Manche DevOps-Evangelisten bezeichnen DevOps als eine Art Religion. Auch wenn diese Sichtweise vielleicht übertrieben ist, lebt DevOps doch von einer einzigartigen Kultur. Schauen wir uns die wesentlichen Merkmale dieser Kultur an.
Alles, was das Team tut, dient dazu, das Kundenerlebnis zu verbessern.
Klingt logisch – schließlich sollte ein Produkt dem Kunden einen Nutzen bieten. In der Realität entwickeln sich Projekte jedoch oft in andere Richtungen, weil:
- Teammitglieder zu technisch fokussiert sind,
- Anforderungen falsch interpretiert werden, oder
- eine „Das haben wir schon immer so gemacht“-Mentalität vorherrscht.
Im DevOps-Ansatz steht der Kunde explizit im Mittelpunkt jeder Aktivität. Man entwickelt immer mit dem Endziel vor Augen. Deshalb muss eine enge Verbindung zwischen Business und Kunde bestehen, um deren Bedürfnisse optimal zu erfüllen.
Nebenbemerkung: Genau aus diesem Grund halte ich Begriffe wie „BizDevOps“ für überflüssig – denn in DevOps ist bereits impliziert, dass man eng mit dem Business zusammenarbeitet.
Es gibt keine Silos oder Schuldzuweisungen – das Team trägt die Verantwortung als Ganzes.
In getrennten Teams gibt es oft die Tendenz, anderen die Schuld zuzuschieben, wenn etwas nicht funktioniert. Das gilt besonders für klassische Entwicklungs- und Betriebsteams.
Die DevOps-Kultur bekämpft dieses Problem, indem sie End-to-End-Verantwortung für Services festlegt:
- Ein Team ist für einen Service verantwortlich.
- Wenn etwas schiefläuft, ist das gesamte Team verantwortlich.
- Wer etwas baut, besitzt es auch („You build it, you own it“).
Das bedeutet, dass DevOps-Teams autonom und funktionsübergreifend arbeiten. Innerhalb des Teams geht es um Kompetenzen, nicht um klassische Rollen.
Teams experimentieren und suchen nach Verbesserungen – sie scheitern schnell oder lernen schnell.
Ein zentrales Ziel eines DevOps-Teams ist die kontinuierliche Verbesserung.
- Alles, was automatisiert werden kann, wird automatisiert.
- Teams experimentieren ständig mit neuen Methoden, um schneller und effizienter Wert zu liefern.
- Risiken werden bewusst eingegangen, aber Fehler werden schnell erkannt, korrigiert und das Gelernte wird mit dem Team geteilt.
- Feedback wird nicht als Kritik, sondern als wertvolle Gelegenheit zur Verbesserung betrachtet.
Ein DevOps-Team ist die Verkörperung einer Growth-Mindset-Kultur. 🚀
Sicherheitsverantwortlichkeiten eines DevOps-Teams
Da DevOps-Teams stark auf Automatisierung setzen und häufig Cloud-Technologien nutzen, höre ich oft, dass Sicherheit im DevOps-Umfeld völlig anders funktioniert oder dass bestimmte Sicherheitskontrollen nicht anwendbar seien, weil sie das Team in seiner Geschwindigkeit einschränken.
Ja, Schnelligkeit ist ein zentrales Element der DevOps-Kultur, aber schnell zu sein bedeutet nicht, essenzielle Aufgaben auszulassen, um Zeit zu sparen.
Sicherheitsprinzipien wie Least Privilege, Zero Trust oder Separation of Duties gelten auch für DevOps-Teams – eventuell in einer anderen Implementierungsform (z. B. Infrastructure as Code, Software Defined Firewalling), aber sie bleiben bestehen. Auch Sicherheitstests müssen genauso durchgeführt werden wie andere Qualitätsprüfungen – denn Sicherheit ist ein Teil der Qualität.
Wichtige Sicherheitsverantwortlichkeiten eines DevOps-Teams
Hier sind einige essenzielle Sicherheitsverantwortlichkeiten, die aus betrieblicher Sicht für DevOps-Teams gelten:
- Identity & Access Management
- Logging, Monitoring & Alerting
- Konfigurationsmanagement
- Patch-Management
- OS-Image-Management
- Backup
- Asset-Management
- Service-Management
- Compliance-Management (Einhaltung von Unternehmens-, IT- und Sicherheitsrichtlinien sowie gesetzlichen Vorgaben)
Diese Liste erscheint zunächst umfangreich, aber viele Unternehmen haben erfolgreich DevOps umgesetzt, indem sie ein zentrales Plattform-Team etabliert haben.
Die Rolle eines zentralen Plattform-Teams
Ein zentrales Plattform-Team stellt eine einheitliche Plattform bereit, die andere DevOps-Teams für ihre Projekte nutzen können.
Typischerweise übernimmt das Plattform-Team alle Verantwortlichkeiten bis auf OS-Level, sodass sich die einzelnen DevOps-Teams auf projektspezifische Aufgaben konzentrieren können.
Zusätzlich zu den oben genannten Sicherheitsverantwortlichkeiten kümmert sich das Plattform-Team um:
- Definition von Plattform-Standards gemäß Unternehmensrichtlinien und gesetzlichen Vorgaben
- Implementierung von Sicherheitsleitplanken und Compliance-Monitoring, um sicherzustellen, dass Projekte konform bleiben
- Plattform-Provisionierung
- Integration neuer Umgebungen
- Strategische Weiterentwicklung der Plattform
Vorteile eines zentralen Plattform-Teams für DevOps-Sicherheit
✅ Projektbezogene DevOps-Teams bleiben schnell, da viele Sicherheitsverantwortlichkeiten zentral geregelt sind.
✅ Standardisierte Sicherheits- und Compliance-Vorgaben erleichtern die Einhaltung von Vorschriften.
✅ DevOps-Teams können sich auf ihre Kernaufgaben konzentrieren (z. B. Testing, Service-Monitoring).
Fazit: Sicherheit ist ein fester Bestandteil von DevOps – ein gut strukturiertes Plattform-Team kann helfen, Geschwindigkeit und Sicherheit in Einklang zu bringen. 🚀
Zusammenfassung
DevOps ist ein großartiger Ansatz, der Projekten viele Vorteile bietet – insbesondere durch die DevOps-Kultur, die sich durch End-to-End-Verantwortung, hohe Automatisierung und kundenorientierte Aktivitäten auszeichnet.
Leider wird Sicherheit oft nicht als Teil von DevOps betrachtet, obwohl dieser Ansatz perfekt geeignet wäre, um exzellente Sicherheitsstandards zu erreichen.
Da Sicherheit keine separate Disziplin, sondern ein wesentlicher Bestandteil der Produktqualität ist, sind Begriffe wie DevSecOps unangebracht.
Sicherheitsrelevante Verantwortlichkeiten können zentral in einem dedizierten Plattform-Team gebündelt werden, um Effizienz und Sicherheit optimal zu vereinen. 🚀