Definition DevSecOps Was ist DevSecOps?

DevSecOps erweitert das DevOps-Konzept um Aspekte der Software-Sicherheit. Das Kunstwort setzt sich aus den Einzelbegriffen Entwicklung (Development), Sicherheit (Security) und Betrieb (Operations) zusammen. Es handelt sich um einen ganzheitlichen Ansatz, der die Sicherheit in allen Phasen des Lebenszyklus einer Software berücksichtigt und in die Prozesse integriert.

Firmen zum Thema

DevSecOps ist eine Erweiterung des DevOps-Konzepts um Sicherheitsaspekte.
DevSecOps ist eine Erweiterung des DevOps-Konzepts um Sicherheitsaspekte.
(Bild: gemeinfrei / Pixabay )

DevSecOps ist ein Kunstwort, das sich aus jeweils drei Buchstaben der drei Begriffe Development, Security und Operations zusammensetzt. "Dev" steht für Entwicklung, "Sec" für Sicherheit und "Ops" für Betrieb. Es handelt sich um ein Konzept, das den DevOps-Gedanken um die Aspekte der Software-Sicherheit erweitert. Der komplette Lebenszyklus einer Software von der Entwicklung bis zur Bereitstellung und zum Betrieb der Software wird durch den ganzheitlichen Ansatz berücksichtigt und um Aspekte der Cyber-Sicherheit ergänzt. Ganzheitliche Prozesse und der Einsatz von Automatisierung sollen vorhandene Lücken schließen und für eine bessere Zusammenarbeit der Betriebs-, Entwicklungs- und Sicherheitsteams sorgen.

Im Gegensatz zu klassischen Entwicklungs- und Betriebsprozessen, in denen die Software-Sicherheit jeweils nur in Teilbereichen, beispielsweise bei der Überführung einer Anwendung in den Betrieb, Berücksichtigung findet, ist sie bei DevSecOps in allen Phasen elementarer Bestandteil. Alle an den Prozessen beteiligte Teams verantworten die Cyber-Sicherheit gemeinsam. Der interdisziplinäre Ansatz sorgt für eine schnelle, agile Entwicklung von sicherer und qualitativ hochwertiger Software sowie deren sicheren Betrieb.

DevOps - das Basiskonzept für DevSecOps

DevSecOps ist auf Basis von DevOps entstanden und ergänzt den integrierten Betriebs- und Entwicklungsansatz um die Aspekte der Software-Sicherheit. Das DevOps-Konzept versucht die Schwächen der klassischen Software-Entwicklungsprozesse zu beheben, indem es für eine Verzahnung der Entwicklungs- und Betriebsprozesse sorgt. Dies erfordert eine engere Zusammenarbeit und die Koordination der zuvor getrennt agierenden Betriebs- und Entwicklungsteams. Mit reinem DevOps werden die Entwicklungs- und Bereitstellungsprozesse zwar agiler und schneller, die Cyber-Sicherheit wird aber nach wie vor getrennt betrachtet. Dies führt zu nachträglichem Verzug oder unsicherer Software. Dieses Manko soll DevSecOps beseitigen, indem es die Sicherheit in allen Phasen des Lebenszyklus einer Software als festen Bestandteil der Prozesse berücksichtigt.

Methoden und Strategien von DevSecOps

Eine der wichtigsten Strategien zur Berücksichtigung der Software-Sicherheit ist die Automatisierung der Prozesse und Sicherheitsfunktionen. Sie stellt sicher, dass die Sicherheitsmaßnahmen in allen Phasen berücksichtigt werden. So lassen sich beispielsweise schon während der Programmierung Sicherheitsprobleme durch automatisierte, systematische Scans aufdecken und umgehend beheben. Zu den automatisierten Prozessen zählen beispielsweise die Kontrolle des Quellcodes, Versionsverwaltung (Code-Repositories), Release-Automatisierung, CI/CD-Prozesse (Continuous Integration, Continuous Delivery Prozesse), Testing, Monitoring, die operative Verwaltung und einiges mehr.

Vorteile durch DevSecOps

Das DevSecOps-Konzept bietet durch die Zusammenführung von Entwicklung, Betrieb und Cyber-Sicherheit zahlreiche Vorteile wie:

  • Hohe Agilität und Geschwindigkeit in der Entwicklung und Bereitstellung neuer Software, ohne dass die Software-Sicherheit und die Stabilität darunter leidet.
  • Weniger Probleme im Live-Betrieb und höhere Verfügbarkeit der Software.
  • Einhaltung hoher Sicherheitsstandards.
  • Sicherheitsprobleme werden schon früh im Entwicklungsprozess erkannt und behoben. Keine erhöhten Aufwände und Kosten durch nachträgliche Arbeit an der Software-Sicherheit.
  • verbesserte Zusammenarbeit der an den Prozessen beteiligten Teams.
  • Kurze Release-Zyklen werden realisierbar.
  • Flexible Umsetzung von sich kurzfristig ändernden Anforderungen.
  • Für moderne cloudnative Technologien und Container- oder Microservice-basierte Anwendungen bestens geeignet.

(ID:47827143)